www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - Blog Post - Reducing vibe.d turnaround time (Part 2 Less Compiling)

reply Martin Nowak <code+news.digitalmars dawg.eu> writes:
Second part on my series to reduce vibe.d turnaround time.
In this part we'll reduce compilation time by 60%.

https://code.dawg.eu/reducing-vibed-turnaround-time-part-2-less-compiling.html

-Martin
Nov 17 2014
next sibling parent reply "Vladimir Panteleev" <vladimir thecybershadow.net> writes:
On Tuesday, 18 November 2014 at 00:41:42 UTC, Martin Nowak wrote:
 Second part on my series to reduce vibe.d turnaround time.
 In this part we'll reduce compilation time by 60%.

 https://code.dawg.eu/reducing-vibed-turnaround-time-part-2-less-compiling.html
From the post:
 I converted the resulting timings into the graph below but only 
 included the upper quartile sorted by compilation time. Take 
 the numbers with a salt of grain because they are based on 
 separate compilation. Usually you’ll compile multiple modules 
 (e.g. a library) at once which allows the compiler to reuse 
 module passes when something is imported multiple times.
I think I need to think of a different way to present imported module times in DBuildStat output, because the current way is unintuitive and easy to misinterpret. The blue bars of each module should not be summed together, they're there only to give you a clue of how much (in compiler time) a certain module is importing - but the time will be shared for all modules in non-incremental compilation (you can think of it as if the blue bars are actually overlapping each other). The total time will be proportional to the sum of the lengths of the non-blue bars (red/orange in Martin's blog post, green/red in DBuildStat's SVG visualizer). As far as I know, there's no reason to think DBuildStat's output is inaccurate, you just have to know how to interpret the data.
Nov 17 2014
parent "Martin Nowak" <code dawg.eu> writes:
On Tuesday, 18 November 2014 at 00:55:31 UTC, Vladimir Panteleev 
wrote:
 On Tuesday, 18 November 2014 at 00:41:42 UTC, Martin Nowak 
 wrote:
 Second part on my series to reduce vibe.d turnaround time.
 In this part we'll reduce compilation time by 60%.

 https://code.dawg.eu/reducing-vibed-turnaround-time-part-2-less-compiling.html
From the post: I think I need to think of a different way to present imported module times in DBuildStat output, because the current way is unintuitive and easy to misinterpret. The blue bars of each module should not be summed together, they're there only to give you a clue of how much (in compiler time) a certain module is importing - but the time will be shared for all modules in non-incremental compilation (you can think of it as if the blue bars are actually overlapping each other). The total time will be proportional to the sum of the lengths of the non-blue bars (red/orange in Martin's blog post, green/red in DBuildStat's SVG visualizer).
I think that's what I meant by https://github.com/CyberShadow/DBuildStat/issues/1.
 As far as I know, there's no reason to think DBuildStat's 
 output is inaccurate.
The timing noise is a slight problem, sometimes compilation is faster than parsing or justimports. Otherwise it's a really nice tool.
Nov 17 2014
prev sibling next sibling parent Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 11/17/14 4:41 PM, Martin Nowak wrote:
 Second part on my series to reduce vibe.d turnaround time.
 In this part we'll reduce compilation time by 60%.

 https://code.dawg.eu/reducing-vibed-turnaround-time-part-2-less-compiling.html
http://www.reddit.com/r/programming/comments/2moam6/reducing_vibed_turnaround_time_part_2_less/ https://twitter.com/D_Programming/status/534741185693089793 Andrei
Nov 18 2014
prev sibling next sibling parent Walter Bright <newshound2 digitalmars.com> writes:
On 11/17/2014 4:41 PM, Martin Nowak wrote:
 Second part on my series to reduce vibe.d turnaround time.
 In this part we'll reduce compilation time by 60%.

 https://code.dawg.eu/reducing-vibed-turnaround-time-part-2-less-compiling.html

 -Martin
There's no mention of your name as author in the blog!?
Nov 18 2014
prev sibling parent reply Walter Bright <newshound2 digitalmars.com> writes:
On 11/17/2014 4:41 PM, Martin Nowak wrote:
 Second part on my series to reduce vibe.d turnaround time.
 In this part we'll reduce compilation time by 60%.

 https://code.dawg.eu/reducing-vibed-turnaround-time-part-2-less-compiling.html

 -Martin
Should say in the title that you reduced build times by 60%. Otherwise, have to read all the way to the end to find it! It's a great statistic, and having it in the title people will have more reason to read the article.
Nov 18 2014
parent reply Martin Nowak <code+news.digitalmars dawg.eu> writes:
On 11/18/2014 08:34 PM, Walter Bright wrote:
 Should say in the title that you reduced build times by 60%. Otherwise,
 have to read all the way to the end to find it!

 It's a great statistic, and having it in the title people will have more
 reason to read the article.
Thanks for the tip, I now mention it in the second paragraph.
Nov 18 2014
parent Walter Bright <newshound2 digitalmars.com> writes:
On 11/18/2014 1:08 PM, Martin Nowak wrote:
 On 11/18/2014 08:34 PM, Walter Bright wrote:
 Should say in the title that you reduced build times by 60%. Otherwise,
 have to read all the way to the end to find it!

 It's a great statistic, and having it in the title people will have more
 reason to read the article.
Thanks for the tip, I now mention it in the second paragraph.
Much better! You might also want to introduce yourself in the reddit post and offer to answer any questions.
Nov 18 2014