New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 616031 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome , Mac
Pri: 1
Type: Bug


Sign in to add a comment

Chrome should be able to compile V8 with O3 in GN

Project Member Reported by hablich@chromium.org, May 31 2016

Issue description

Chrome should be able to compile V8 with O3. Compile whole Chrome with O3 is not mandatory.

Compiling V8 with O2 will result in a performance regression. This is the status quo when a GN build is done.
 
Owner: dpranke@chromium.org
Status: Assigned (was: Available)
Status: Started (was: Assigned)
Work in progress: https://codereview.chromium.org/2048163002/
Project Member

Comment 5 by bugdroid1@chromium.org, Jun 8 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/96a6dfa2c30ab9b22abd20c87ed0e0d6ae41c40e

commit 96a6dfa2c30ab9b22abd20c87ed0e0d6ae41c40e
Author: dpranke <dpranke@chromium.org>
Date: Wed Jun 08 22:28:05 2016

Change //build/config/compiler:optimize_max to use -O3.

Certain components (e.g., v8) really want to be compiled with -O3,
but the current ":optimize_max" setting just used -O2. Since "max"
should theoretically mean "max", let's try making it be -O3 across
the board and see what happens.

R=brettw@chromium.org
BUG= 616031 

Review-Url: https://codereview.chromium.org/2048163002
Cr-Commit-Position: refs/heads/master@{#398704}

[modify] https://crrev.com/96a6dfa2c30ab9b22abd20c87ed0e0d6ae41c40e/build/config/compiler/BUILD.gn

Cc: dpranke@chromium.org
Owner: hablich@chromium.org
Hopefully this is fixed now, and I sent a note to the perf sheriffs asking for any updates on perf regressions (or improvements). If there's more validation you want to do on the v8 side (or if you need to roll //build into v8), I think you should be able to do that now, so I'll punt this back to you?
Owner: machenb...@chromium.org
Thanks Dirk. Moving to machenbach@ who is owning this.
Project Member

Comment 8 by bugdroid1@chromium.org, Jun 10 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c4dc398543c8a7cbd4b5f8bfe3495d6182dc3f19

commit c4dc398543c8a7cbd4b5f8bfe3495d6182dc3f19
Author: dpranke <dpranke@chromium.org>
Date: Fri Jun 10 21:41:19 2016

Revert of Change //build/config/compiler:optimize_max to use -O3. (patchset #1 id:1 of https://codereview.chromium.org/2048163002/ )

Reason for revert:
Reverting, this caused a size regression for cronet that is more important to them than any likely perf gains.

I'll re-land a different CL that's less broad.

Original issue's description:
> Change //build/config/compiler:optimize_max to use -O3.
>
> Certain components (e.g., v8) really want to be compiled with -O3,
> but the current ":optimize_max" setting just used -O2. Since "max"
> should theoretically mean "max", let's try making it be -O3 across
> the board and see what happens.
>
> R=brettw@chromium.org
> BUG= 616031 
>
> Committed: https://crrev.com/96a6dfa2c30ab9b22abd20c87ed0e0d6ae41c40e
> Cr-Commit-Position: refs/heads/master@{#398704}

TBR=brettw@chromium.org,machenbach@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 616031 

Review-Url: https://codereview.chromium.org/2062433002
Cr-Commit-Position: refs/heads/master@{#399276}

[modify] https://crrev.com/c4dc398543c8a7cbd4b5f8bfe3495d6182dc3f19/build/config/compiler/BUILD.gn

Project Member

Comment 9 by bugdroid1@chromium.org, Jun 15 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c4dc398543c8a7cbd4b5f8bfe3495d6182dc3f19

commit c4dc398543c8a7cbd4b5f8bfe3495d6182dc3f19
Author: dpranke <dpranke@chromium.org>
Date: Fri Jun 10 21:41:19 2016

Revert of Change //build/config/compiler:optimize_max to use -O3. (patchset #1 id:1 of https://codereview.chromium.org/2048163002/ )

Reason for revert:
Reverting, this caused a size regression for cronet that is more important to them than any likely perf gains.

I'll re-land a different CL that's less broad.

Original issue's description:
> Change //build/config/compiler:optimize_max to use -O3.
>
> Certain components (e.g., v8) really want to be compiled with -O3,
> but the current ":optimize_max" setting just used -O2. Since "max"
> should theoretically mean "max", let's try making it be -O3 across
> the board and see what happens.
>
> R=brettw@chromium.org
> BUG= 616031 
>
> Committed: https://crrev.com/96a6dfa2c30ab9b22abd20c87ed0e0d6ae41c40e
> Cr-Commit-Position: refs/heads/master@{#398704}

TBR=brettw@chromium.org,machenbach@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 616031 

Review-Url: https://codereview.chromium.org/2062433002
Cr-Commit-Position: refs/heads/master@{#399276}

[modify] https://crrev.com/c4dc398543c8a7cbd4b5f8bfe3495d6182dc3f19/build/config/compiler/BUILD.gn

Owner: dpranke@chromium.org
Project Member

Comment 11 by bugdroid1@chromium.org, Jun 20 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c266bec7641b1926f65d1f48614aafb2008a7c57

commit c266bec7641b1926f65d1f48614aafb2008a7c57
Author: dpranke <dpranke@chromium.org>
Date: Mon Jun 20 23:22:34 2016

Add a dedicated "optimize_speed" config to GN.

The various GN configs to select different optimization levels are
confusing, and sorting them out will take a decent amount of
perf testing, but in order to achieve parity w/ GYP, for now
we need a dedicated config to make sure some components (e.g., v8)
are compiled w/ -O3 where appropriate.

R=brettw@chromium.org, machenbach@chromium.org
BUG= 616031 , 618678, 621335

Review-Url: https://codereview.chromium.org/2078223002
Cr-Commit-Position: refs/heads/master@{#400828}

[modify] https://crrev.com/c266bec7641b1926f65d1f48614aafb2008a7c57/build/config/compiler/BUILD.gn
[modify] https://crrev.com/c266bec7641b1926f65d1f48614aafb2008a7c57/third_party/opus/BUILD.gn

Blocking: 431177 433082
Labels: -Pri-1 M-53 OS-Chrome OS-Mac Pri-2
Blocking: 621679 621681
Labels: -Pri-2 Pri-1
just waiting for the fix to roll into Chromium now ...
Status: Fixed (was: Started)
Rolled.

Comment 16 by kbr@chromium.org, Aug 22 2016

Blocking: 636489

Sign in to add a comment