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

Issue 551062: Fix issue 571: display descriptive names for code objects from snapshot. (Closed)

Created:
10 years, 11 months ago by mnaganov (inactive)
Modified:
9 years, 7 months ago
Reviewers:
Erik Corry
CC:
v8-dev, Vitaly Repeshko
Visibility:
Public.

Description

Fix issue 571: display descriptive names for code objects from snapshot. As this is only needed for internal profiling (not for DevTools), the following approach had been chosen: - during snapshot creation, positions of serialized objects inside a snapshot are logged; - then during V8 initialization, positions of deserealized objects are logged; - those positions are used for retrieving code objects names from snapshot creation log, which needs to be supplied to tick processor script. Positions logging is controlled with the new flag: --log_snapshot_positions. This flag is turned off by default, and this adds no startup penalty. To plug this fix to Golem, the following actions are needed: - logs created using 'mksnapshot' need to be stored along with VM images; - tick processor script needs to be run with '--snapshot-log=...' cmdline argument. BUG=571 Committed: http://code.google.com/p/v8/source/detail?r=3635

Patch Set 1 #

Total comments: 1
Unified diffs Side-by-side diffs Delta from patch set Stats (+147 lines, -7 lines) Patch
M src/SConscript View 1 chunk +1 line, -1 line 0 comments Download
M src/flag-definitions.h View 1 chunk +2 lines, -0 lines 0 comments Download
M src/log.h View 2 chunks +3 lines, -0 lines 0 comments Download
M src/log.cc View 1 chunk +17 lines, -0 lines 0 comments Download
M src/mksnapshot.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M src/serialize.h View 2 chunks +3 lines, -0 lines 0 comments Download
M src/serialize.cc View 2 chunks +3 lines, -0 lines 1 comment Download
M src/snapshot-common.cc View 1 chunk +3 lines, -0 lines 0 comments Download
M tools/profile.js View 2 chunks +18 lines, -0 lines 0 comments Download
M tools/tickprocessor.js View 7 chunks +86 lines, -5 lines 0 comments Download
M tools/tickprocessor-driver.js View 1 chunk +7 lines, -1 line 0 comments Download

Messages

Total messages: 4 (0 generated)
mnaganov (inactive)
10 years, 11 months ago (2010-01-18 14:58:41 UTC) #1
Erik Corry
LGTM. The python version should probably be taught to ignore the new info if it ...
10 years, 11 months ago (2010-01-18 15:43:34 UTC) #2
Erik Corry
Just one thing: http://codereview.chromium.org/551062/diff/1/7 File src/serialize.cc (right): http://codereview.chromium.org/551062/diff/1/7#newcode700 src/serialize.cc:700: LOG(SnapshotPositionEvent(address, source_->position())); Putting this in an ...
10 years, 11 months ago (2010-01-18 15:47:51 UTC) #3
mnaganov (inactive)
10 years, 11 months ago (2010-01-18 16:07:03 UTC) #4
On 2010/01/18 15:47:51, Erik Corry wrote:
> Just one thing:
> 
> http://codereview.chromium.org/551062/diff/1/7
> File src/serialize.cc (right):
> 
> http://codereview.chromium.org/551062/diff/1/7#newcode700
> src/serialize.cc:700: LOG(SnapshotPositionEvent(address,
source_->position()));
> Putting this in an if (FLAG_log_snapshot_positions) would avoid the call, but
if
> you can't see the difference in benchmarks I guess it's not necessary.

Fixed to be on a safe side.


As for Python version: those records are only emitted by a request (when flag is
specified), so if one still uses Python version, he just should not set this
flag.

Powered by Google App Engine
This is Rietveld 408576698