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

Issue 334713011: optimize Deoptimizer::GetOutputInfo to binary search (Closed)

Created:
6 years, 6 months ago by jianghua
Modified:
6 years, 5 months ago
CC:
v8-dev
Base URL:
https://github.com/v8/v8.git@master
Project:
v8
Visibility:
Public.

Description

optimize Deoptimizer::GetOutputInfo to binary search BUG=

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+21 lines, -7 lines) Patch
M src/deoptimizer.cc View 1 chunk +10 lines, -7 lines 0 comments Download
M src/full-codegen.h View 1 chunk +9 lines, -0 lines 0 comments Download
M src/full-codegen.cc View 1 chunk +1 line, -0 lines 0 comments Download
M src/utils.h View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 8 (0 generated)
jianghua
@yangguo , @kasper, please review it, thanks!
6 years, 5 months ago (2014-06-28 12:12:21 UTC) #1
Sven Panne
NOT LGTM: I don't think that anything deoptimizer-related is really performance-critical. (If we have benchmarks ...
6 years, 5 months ago (2014-06-30 06:12:55 UTC) #2
jianghua
On 2014/06/30 06:12:55, Sven Panne wrote: > NOT LGTM: I don't think that anything deoptimizer-related ...
6 years, 5 months ago (2014-06-30 09:08:06 UTC) #3
Yang
On 2014/06/30 09:08:06, jianghua wrote: > On 2014/06/30 06:12:55, Sven Panne wrote: > > NOT ...
6 years, 5 months ago (2014-06-30 09:10:17 UTC) #4
jianghua
On 2014/06/30 09:10:17, Yang wrote: > On 2014/06/30 09:08:06, jianghua wrote: > > On 2014/06/30 ...
6 years, 5 months ago (2014-06-30 09:12:06 UTC) #5
Jarin
On 2014/06/30 09:12:06, jianghua wrote: > On 2014/06/30 09:10:17, Yang wrote: > > On 2014/06/30 ...
6 years, 5 months ago (2014-06-30 09:29:11 UTC) #6
jianghua
On 2014/06/30 09:29:11, jarin wrote: > On 2014/06/30 09:12:06, jianghua wrote: > > On 2014/06/30 ...
6 years, 5 months ago (2014-06-30 09:45:36 UTC) #7
danno
6 years, 5 months ago (2014-06-30 12:59:03 UTC) #8
After discussing this with a colleague, you do seem to be measuring a build that
fundamentally looks like debug build. In release mode, GetOutputInfo only gets
called once per optimized code object. So you are replacing a O(ln(n) * m) with
a O(ln(n) * n + m * ln(n)) algorithm (where n == number of deopt points and m ==
number of opt/deopts cycles per SharedFunctionInfo). For a small m--which
something V8 strives for anyway--your patch likely makes the complexity and
performance worse.

Powered by Google App Engine
This is Rietveld 408576698