On Saturday, 24 July 2021 at 09:12:15 UTC, JG wrote:
>the slowest parts are in library code
This is really common. A lot of libraries do really weird things... if you want to keep quick builds it is best to use the language directly.
July 24, 2021 Re: Build time | ||||
---|---|---|---|---|
| ||||
Posted in reply to JG | On Saturday, 24 July 2021 at 09:12:15 UTC, JG wrote: >the slowest parts are in library code This is really common. A lot of libraries do really weird things... if you want to keep quick builds it is best to use the language directly. |
July 25, 2021 Re: Build time | ||||
---|---|---|---|---|
| ||||
Posted in reply to JG | On Saturday, 24 July 2021 at 09:12:15 UTC, JG wrote: >On Saturday, 24 July 2021 at 08:26:39 UTC, JG wrote: >On Friday, 23 July 2021 at 20:03:22 UTC, Dennis wrote: >On Friday, 23 July 2021 at 18:53:06 UTC, JG wrote: >[...] You can try profiling it with LDC 1.25 or later. Add this to dub.sdl: [...] Thanks for this suggestion. Unfortunately this makes the compile use too much memory for my system and so it gets killed before the end and no my-trace.tracy file is produced. I will try building on parts of the program with this and see if I can see what is going on. Got this to work after removing part of the program, the slowest parts are in library code (sumtype match to be precise). I will look into whether my usage can be improved. I should also mention that what I said about compile time was a little inaccurate, some of that time linking (which involves llvm). LLVM is known to be slow to compile If you are on windows i suggest to use DMD for iterating quickly, i get much faster compile time with it (probably on linux too, but i'm not a linux user) |
July 25, 2021 Re: Build time | ||||
---|---|---|---|---|
| ||||
Posted in reply to JG | One thing to add: With LDC you can add this flag |
August 08, 2021 Re: Build time | ||||
---|---|---|---|---|
| ||||
Posted in reply to JG | On Friday, 23 July 2021 at 18:53:06 UTC, JG wrote: >Any suggestion on how to try and improve the build time. You could try some of the tools listed on the wiki for build time profiling: https://wiki.dlang.org/Development_tools#Build_time_profiling (intentional bump to aid search results, as apparently this list is not very well known) |