Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(48)

Issue 315673002: Enable FIXED_POINT and -O3 for Opus when building for ARM. (Closed)

Created:
6 years, 6 months ago by Solis
Modified:
6 years, 6 months ago
CC:
chromium-reviews, minyue
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Visibility:
Public.

Description

- Enable FIXED_POINT for Opus when building for arm64. This yields: ~21% speed up over floating point. 2.6% increase in executable size. - Also switched to late expansion of release_optimize in common.gypi (debug_optimize was already using it). This makes it possible to set optimization level via release_optimize in lower level targets. - Enable -O3 for Opus when building form arm32/arm64. This yields: arm32: Speed increase up to 21% (encode) and 5% (decode). arm32: 2.8% increase in executable size. arm32: Output is bit exact with the output when -Os is used. arm64: Speed increase up to 18% (encode) and 25% (decode). arm64: 7.4% increase in executable size. arm64: Output is exact within one LSB (max difference is 2) with the arm32 output. Measured using webrtc/audio_codec_speed_tests. BUG=chromium:354539 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=277414

Patch Set 1 #

Patch Set 2 : Rebase #

Total comments: 6

Patch Set 3 : Comments #

Patch Set 4 : Fix bug in common.gypi to allow setting optimization level using a variable. #

Patch Set 5 : Rebase #

Patch Set 6 : Rebase #

Patch Set 7 : Rebase #

Patch Set 8 : Rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+16 lines, -5 lines) Patch
M build/common.gypi View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M third_party/opus/opus.gyp View 1 2 3 2 chunks +15 lines, -4 lines 0 comments Download

Messages

Total messages: 12 (0 generated)
Solis
6 years, 6 months ago (2014-06-03 15:04:17 UTC) #1
Sergey Ulanov
https://codereview.chromium.org/315673002/diff/20001/third_party/opus/opus.gyp File third_party/opus/opus.gyp (right): https://codereview.chromium.org/315673002/diff/20001/third_party/opus/opus.gyp#newcode8 third_party/opus/opus.gyp:8: ['((OS=="android" or chromeos==1) and (target_arch=="arm" or target_arch=="arm64")) or (OS=="ios" ...
6 years, 6 months ago (2014-06-04 02:47:24 UTC) #2
Solis
https://codereview.chromium.org/315673002/diff/20001/third_party/opus/opus.gyp File third_party/opus/opus.gyp (right): https://codereview.chromium.org/315673002/diff/20001/third_party/opus/opus.gyp#newcode8 third_party/opus/opus.gyp:8: ['((OS=="android" or chromeos==1) and (target_arch=="arm" or target_arch=="arm64")) or (OS=="ios" ...
6 years, 6 months ago (2014-06-04 15:04:04 UTC) #3
Sergey Ulanov
https://codereview.chromium.org/315673002/diff/20001/third_party/opus/opus.gyp File third_party/opus/opus.gyp (right): https://codereview.chromium.org/315673002/diff/20001/third_party/opus/opus.gyp#newcode75 third_party/opus/opus.gyp:75: 'cflags': ['-O3'], On 2014/06/04 15:04:04, Solis wrote: > On ...
6 years, 6 months ago (2014-06-04 17:55:55 UTC) #4
Solis
https://codereview.chromium.org/315673002/diff/20001/third_party/opus/opus.gyp File third_party/opus/opus.gyp (right): https://codereview.chromium.org/315673002/diff/20001/third_party/opus/opus.gyp#newcode75 third_party/opus/opus.gyp:75: 'cflags': ['-O3'], On 2014/06/04 17:55:55, Sergey Ulanov wrote: > ...
6 years, 6 months ago (2014-06-04 19:55:42 UTC) #5
tlegrand1
Great clean-up of the gyp-file! LGTM On 2014/06/04 19:55:42, Solis wrote: > https://codereview.chromium.org/315673002/diff/20001/third_party/opus/opus.gyp > File ...
6 years, 6 months ago (2014-06-05 06:55:44 UTC) #6
Sergey Ulanov
lgtm
6 years, 6 months ago (2014-06-05 20:54:53 UTC) #7
tlegrand1
The CQ bit was checked by tlegrand@chromium.org
6 years, 6 months ago (2014-06-16 07:45:12 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/solenberg@chromium.org/315673002/130001
6 years, 6 months ago (2014-06-16 07:46:16 UTC) #9
commit-bot: I haz the power
Change committed as 277414
6 years, 6 months ago (2014-06-16 13:28:10 UTC) #10
Nico
A revert of this CL has been created in https://codereview.chromium.org/349293006/ by thakis@chromium.org. The reason for ...
6 years, 6 months ago (2014-06-23 22:08:50 UTC) #11
chromium-reviews
6 years, 6 months ago (2014-06-24 10:00:05 UTC) #12
Not entirely unexpected if that's the case, but:

- I don't see why the evaluation order of the optimize flags should be
different for release and debug targets, so either the change in my CL
should go in, or the <() >() for debug_optimize should be changed.
- FFMpeg is one of the libs that explicitly uses a different optimize
setting. If it doesn't work with the flag it uses, it should stick to the
default, hence, ffmpeg's .gypi should be fixed and this CL resubmitted.



On Tue, Jun 24, 2014 at 12:08 AM, <thakis@chromium.org> wrote:

> A revert of this CL has been created in
> https://codereview.chromium.org/349293006/ by thakis@chromium.org.
>
> The reason for reverting is: Media tests started failing consistently after
> this:
> http://build.chromium.org/p/chromium.memory.fyi/builders/
> Linux%20Tests%20%28tsan%29%281%29?numbuilds=200
>
> It doesn't look super related, but the <() / >() change in common.gypi
> looks a
> bit suspicious, so revert this speculatively and see if it helps..
>
> https://codereview.chromium.org/315673002/
>

To unsubscribe from this group and stop receiving emails from it, send an email
to chromium-reviews+unsubscribe@chromium.org.

Powered by Google App Engine
This is Rietveld 408576698