Skip to content

Add turbo button#5272

Closed
IgorMinar wants to merge 8 commits into
angular:masterfrom
IgorMinar:add-turbo-button
Closed

Add turbo button#5272
IgorMinar wants to merge 8 commits into
angular:masterfrom
IgorMinar:add-turbo-button

Conversation

@IgorMinar
Copy link
Copy Markdown
Contributor

@IgorMinar IgorMinar added the action: review The PR is still awaiting reviews from at least one requested reviewer label Nov 13, 2015
@IgorMinar
Copy link
Copy Markdown
Contributor Author

I haven't adjusted the node and dart trees yet. Let's see if this passes on CI and if it does let's merge it. I'll redo the other two trees tomorrow in as followup PR.

note that I called the flag --projects. this is because I want to rename modules to projects (or just wait until modules goes away when @yjbanov's directory layout is implemented).

@IgorMinar
Copy link
Copy Markdown
Contributor Author

We can improve the perf further by dropping the ES6 emit when --projects is specified (or removing it completely as proposed by @alexeagle), but that should be done in a separate PR.

@vsavkin vsavkin added pr_state: LGTM action: cleanup The PR is in need of cleanup, either due to needing a rebase or in response to comments from reviews and removed action: review The PR is still awaiting reviews from at least one requested reviewer labels Nov 13, 2015
@vsavkin vsavkin assigned IgorMinar and unassigned vsavkin Nov 13, 2015
Comment thread gulpfile.js
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ಠ_ಠ

@IgorMinar IgorMinar force-pushed the add-turbo-button branch 2 times, most recently from 984e414 to e991007 Compare November 13, 2015 18:32
@IgorMinar
Copy link
Copy Markdown
Contributor Author

from casual testing it looks like --projects=angular2 speeds up the build as follows:

build time test time
first build 21s -> 17s 14s -> 12s
rebuild 4.5s -> 3.8s 11s -> 10s

We are still spending too much time in Funnels, so there is more we can do to optimize this.

Before:

Slowest Trees                                 | Total               
----------------------------------------------+---------------------
DiffingTSCompiler                             | 2285ms              
Funnel                                        | 753ms               
DiffingTSCompiler                             | 321ms               

Slowest Trees (cumulative)                    | Total (avg)         
----------------------------------------------+---------------------
DiffingTSCompiler (2)                         | 2606ms (1303 ms)    
Funnel (85)                                   | 1349ms (15 ms)      
MergeTrees (5)                                | 393ms (78 ms)       

After:

Slowest Trees                                 | Total               
----------------------------------------------+---------------------
DiffingTSCompiler                             | 1977ms              
Funnel                                        | 846ms               

Slowest Trees (cumulative)                    | Total (avg)         
----------------------------------------------+---------------------
DiffingTSCompiler (2)                         | 2092ms (1046 ms)    
Funnel (6)                                    | 1042ms (173 ms)     
MergeTrees (5)                                | 376ms (75 ms) 

Dropping the ES6 output is likely the most impactful thing we can do next.

@IgorMinar IgorMinar removed the action: cleanup The PR is in need of cleanup, either due to needing a rebase or in response to comments from reviews label Nov 13, 2015
@IgorMinar IgorMinar assigned vsavkin and unassigned IgorMinar Nov 13, 2015
This measures how long does it take for gulp to start the first task up after being invoked from command line.

I'm suspecting that we can optimize this significantly, but let's start tracking it first.
There is no need to recommend installing clang-format globally.
this is handy to conditionally create build graph but keep mergeTree() declarative - any input tree passed into
mergeTree that is null or undefined will simply be ignored
we can now filter build graph via --project flag to speed up build performance

usage:

gulp test.unit.js --project=angular2,angular2_material
@vsavkin vsavkin added the action: merge The PR is ready for merge by the caretaker label Nov 13, 2015
@mary-poppins
Copy link
Copy Markdown

Merging PR #5272 on behalf of @vsavkin to branch presubmit-vsavkin-pr-5272.

@mary-poppins mary-poppins removed the action: merge The PR is ready for merge by the caretaker label Nov 13, 2015
@IgorMinar IgorMinar closed this in 1d9c44b Nov 13, 2015
@angular-automatic-lock-bot
Copy link
Copy Markdown

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot Bot locked and limited conversation to collaborators Sep 7, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants