Thread overview
Blog Post - Reducing vibe.d turnaround time (Part 2 Less Compiling)
Nov 18, 2014
Martin Nowak
Nov 18, 2014
Vladimir Panteleev
Nov 18, 2014
Martin Nowak
Nov 18, 2014
Walter Bright
Nov 18, 2014
Walter Bright
Nov 18, 2014
Martin Nowak
Nov 18, 2014
Walter Bright
November 18, 2014
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
November 18, 2014
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.
November 18, 2014
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.
November 18, 2014
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

November 18, 2014
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!?
November 18, 2014
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.
November 18, 2014
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.
November 18, 2014
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.