How do I make sense of why a very large, old ember app takes so long to build and rebuild?


Hey friends! I could use some knowledgeable experience about how to take some next steps understanding why an app’s build and rebuild is so slow. I’ve looked through the indicators that I know of (ember build output and heimdall viz, accessible below) but I’m not sure how to translate those to next steps.

Are there resources on how to translate the information here to actions I can take? What’s the best indicator to choose to dig in on that will have the biggest payoff?

Initial Build:

Build successful (121613ms) – Serving on

Slowest Nodes (totalTime => 5% )              | Total (avg)
Babel (143)                                   | 80397ms (562 ms)
EslintValidationFilter (7)                    | 13904ms (1986 ms)
Concat (14)                                   | 7086ms (506 ms)

A rebuild example

Build successful (11539ms) – Serving on

Slowest Nodes (totalTime => 5% )              | Total (avg)
SourceMapConcat: Vendor JS (1)                | 5513ms
SnippetFinder (1)                             | 784ms
SassCompiler (2)                              | 732ms (366 ms)


Here is the heimdall output:

Dev build sizes

2.4M editor.css
1.6M editor.js
25K test-support.css
461K test-support.js
1.1M tests.js
112K vendor.css
8.3M vendor.js 😩

Prod build sizes

 - dist/assets/editor-1ffa2063f6ec890da0727be7472819a41.js: 1 MB (173.12 KB gzipped)
 - dist/assets/editor-a66025ec9b814a129c9b609dd198c8441.css: 656.82 KB (150.84 KB gzipped)
 - dist/assets/vendor-0718fe56cfd95090f6a14f9f0596c7141.js: 2.52 MB (609.09 KB gzipped)
 - dist/assets/vendor-17dbc3868d5d4ed4423eb372bac7febe1.css: 28.95 KB (8.04 KB gzipped)

This is all done on a 2013 macbook pro with a SSD:



You don’t mention platform - those look like normal build times on Windows. :frowning:


This is on a mac. I’ve updated the post to reflect it.