# Understanding and optimizing compiler time (just a bit)

**URL:** <https://discourse.julialang.org/t/understanding-and-optimizing-compiler-time-just-a-bit/51759>\
**Category:** General Usage\
**Tags:** question\
**Created:** [December 13, 2020, 12:11pm UTC](https://discourse.julialang.org/t/understanding-and-optimizing-compiler-time-just-a-bit/51759 "2020-12-13T12:11:37Z")\
**Posts on this page:** 1\
**Showing post:** 10

<div class="post-metadata">

**Author:** ![tim.holy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tim.holy/32/52_2.png) [@tim.holy](https://discourse.julialang.org/u/tim.holy)\
**Post date:** [December 13, 2020, 11:28pm UTC](https://discourse.julialang.org/t/understanding-and-optimizing-compiler-time-just-a-bit/51759/10 "2020-12-13T23:28:38Z")

</div>

I’m writing analysis tools right now; I think one important tool will be a scatter plot of “runtime vs compile time.” It might help direct attention to methods that just aren’t worth specializing. See [Add tools for analysis of specialization by timholy · Pull Request #169 · timholy/SnoopCompile.jl · GitHub](https://github.com/timholy/SnoopCompile.jl/pull/169). But the whole point of a package like LoopVectorization is to specialize, and so I’m not sure it will be as useful to LV as it might to other packages.

> Those 5-10 seconds easily get lost in the noise of hundreds of seconds of compilation, but are a very real part of the user experience.

Yep, this is what I’m really after. If you want to improve that user experience, better precompile files might help (especially once we can cache native code 😉). See [Add parcel for snoopi\_deep by timholy · Pull Request #168 · timholy/SnoopCompile.jl · GitHub](https://github.com/timholy/SnoopCompile.jl/pull/168). Docs will come eventually, but this is unfolding right now…

---

_[View the full topic](https://discourse.julialang.org/t/understanding-and-optimizing-compiler-time-just-a-bit/51759)._
