Re: Profiling DMD's Compilation Time with dmdprof
On Sunday, 18 November 2018 at 01:12:04 UTC, Vladimir Panteleev wrote: On Saturday, 17 November 2018 at 23:01:23 UTC, Basile B. wrote: I put a start to the project then today i remembered callgrind... What are the pros and cons in comparison with callgrind ? By coincidence i had to callgrind dmd today and got answers to a performance issue in a very straight forward way because for example: $ valgrind --tool=callgrind generated/debug/dmd somefile.d is very simple procedure and produce a file that's easy to interpret in kcachegrind (which can then also produce a graph in ps format). Note that i don't try to discredit your work, i'm just curious to know. It sounds like you misunderstood the purpose of dmdprof. dmdprof will show you a profile graph of the source code *being compiled* (i.e. which parts take more time to compile and which parts cause other parts to get compiled), not of DMD source code. Damn, you're right. Actually i didn't try your stuff at all and instead used callgrind intuitively. Bad advice was here: https://github.com/dlang/dmd/pull/8945#issuecomment-439388332. Also along the thread there was discussion about building DMD and one saying that DMD had not been profiled for ages.
Re: Profiling DMD's Compilation Time with dmdprof
On Saturday, 17 November 2018 at 23:01:23 UTC, Basile B. wrote: I put a start to the project then today i remembered callgrind... What are the pros and cons in comparison with callgrind ? By coincidence i had to callgrind dmd today and got answers to a performance issue in a very straight forward way because for example: $ valgrind --tool=callgrind generated/debug/dmd somefile.d is very simple procedure and produce a file that's easy to interpret in kcachegrind (which can then also produce a graph in ps format). Note that i don't try to discredit your work, i'm just curious to know. It sounds like you misunderstood the purpose of dmdprof. dmdprof will show you a profile graph of the source code *being compiled* (i.e. which parts take more time to compile and which parts cause other parts to get compiled), not of DMD source code.
Re: Profiling DMD's Compilation Time with dmdprof
On Tuesday, 6 November 2018 at 18:00:22 UTC, Vladimir Panteleev wrote: This is a tool + article I wrote in February, but never got around to finishing / publishing until today. https://blog.thecybershadow.net/2018/02/07/dmdprof/ Hopefully someone will find it useful. I put a start to the project then today i remembered callgrind... What are the pros and cons in comparison with callgrind ? By coincidence i had to callgrind dmd today and got answers to a performance issue in a very straight forward way because for example: $ valgrind --tool=callgrind generated/debug/dmd somefile.d is very simple procedure and produce a file that's easy to interpret in kcachegrind (which can then also produce a graph in ps format). Note that i don't try to discredit your work, i'm just curious to know.
Ported js13k game underrun to D targeting webassembly
Underrun is small game build by Dominic Szablewski for the 2018 js13kGames competition. I decided to port it to D and to target webassembly. You can play the game here https://skoppe.github.io/spasm/examples/underrun/ It is part of my endeavour into the wonderful world of webassembly. I specifically choose this project so I could get a feel for how to call web api's other than the dom, i.e. WebGL and AudioContext. Porting went pretty smooth, except for the fact that I wanted it to be done in betterC, which turned out to cripple lots of things I am used to rely on. Things like: - having to write closures by hand - not being able to use stdx.allocator - almost no use of phobos (even at CTFE) D could definitely use some love in that area. I was specifically stumped that stdx.allocator doesn't work in betterC; if somewhere is a good place to use stdx.allocator you would expect it to be betterC, but alas. Had lots of fun though. Hope you like it.
Re: Profiling DMD's Compilation Time with dmdprof
On Saturday, 17 November 2018 at 12:36:30 UTC, rikki cattermole wrote: Just in case, did you disable your anti-virus first? Had to edit registry to turn that thing off and it still some times popup. Microsoft is so annoying. https://imgur.com/a/x3cKjZm
DIP 1016--ref T accepts r-values--Final Review Begins
The last chance for community feedback on DIP 1016, "ref T accepts r-values", is now underway. Please do not leave any feedback in this thread, but rather in the review thread in the General forum: https://forum.dlang.org/post/uxfftudiadniozpui...@forum.dlang.org
Re: Profiling DMD's Compilation Time with dmdprof
On 18/11/2018 1:29 AM, welkam wrote: I just updated DMD on my windows and tried to compile hello world. It took 7.4 sec. Something is not right. Can anyone reproduce? On the same mashine running linux it compiles and runs in 0.1 sec PS C:\Users\Welkam\Desktop\Projects> Measure-Command {dmd -run main.d} Days : 0 Hours : 0 Minutes : 0 Seconds : 7 Milliseconds : 418 Ticks : 74184371 TotalDays : 8.58615405092593E-05 TotalHours : 0.0020606769722 TotalMinutes : 0.12364061833 TotalSeconds : 7.4184371 TotalMilliseconds : 7418.4371 Just in case, did you disable your anti-virus first?
Re: Profiling DMD's Compilation Time with dmdprof
I just updated DMD on my windows and tried to compile hello world. It took 7.4 sec. Something is not right. Can anyone reproduce? On the same mashine running linux it compiles and runs in 0.1 sec PS C:\Users\Welkam\Desktop\Projects> Measure-Command {dmd -run main.d} Days : 0 Hours : 0 Minutes : 0 Seconds : 7 Milliseconds : 418 Ticks : 74184371 TotalDays : 8.58615405092593E-05 TotalHours: 0.0020606769722 TotalMinutes : 0.12364061833 TotalSeconds : 7.4184371 TotalMilliseconds : 7418.4371
Re: Profiling DMD's Compilation Time with dmdprof
On Saturday, 17 November 2018 at 06:21:20 UTC, Manu wrote: What was the batch size for module grouping? I just use dmd -i, which compiles everything at once (except Phobos/Druntime).