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

Issue 18111006: Collect edge count profiling data and reorder basic blocks. (Closed)

Created:
7 years, 5 months ago by Kevin Millikin (Google)
Modified:
7 years, 3 months ago
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Collect edge count profiling data and reorder basic blocks. In unoptimized code, collect edge counts for all edges. Use the counts to reorder basic blocks in optimized code. Basic blocks are reordered by using Pettis and Hansen's "Profile Guided Code Positioning" bottom-up algorithm. R=fschneider@google.com, regis@google.com, srdjan@google.com Committed: https://code.google.com/p/dart/source/detail?r=26773

Patch Set 1 #

Total comments: 10

Patch Set 2 : Incorporated review comments. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+461 lines, -30 lines) Patch
A runtime/vm/block_scheduler.h View 1 chunk +30 lines, -0 lines 0 comments Download
A runtime/vm/block_scheduler.cc View 1 1 chunk +217 lines, -0 lines 0 comments Download
M runtime/vm/compiler.cc View 1 6 chunks +9 lines, -4 lines 0 comments Download
M runtime/vm/flow_graph.h View 1 2 chunks +4 lines, -0 lines 0 comments Download
M runtime/vm/flow_graph.cc View 1 1 chunk +1 line, -0 lines 0 comments Download
M runtime/vm/flow_graph_builder.cc View 1 2 chunks +14 lines, -5 lines 0 comments Download
M runtime/vm/flow_graph_compiler.h View 1 1 chunk +1 line, -1 line 0 comments Download
M runtime/vm/flow_graph_compiler.cc View 1 1 chunk +4 lines, -4 lines 0 comments Download
M runtime/vm/flow_graph_inliner.cc View 1 2 chunks +4 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language.h View 1 12 chunks +35 lines, -2 lines 0 comments Download
M runtime/vm/intermediate_language.cc View 1 5 chunks +4 lines, -14 lines 0 comments Download
M runtime/vm/intermediate_language_arm.cc View 1 1 chunk +22 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_ia32.cc View 1 1 chunk +44 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_mips.cc View 1 1 chunk +26 lines, -0 lines 0 comments Download
M runtime/vm/intermediate_language_x64.cc View 1 1 chunk +44 lines, -0 lines 0 comments Download
M runtime/vm/vm_sources.gypi View 1 1 chunk +2 lines, -0 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
Kevin Millikin (Google)
This a combination of a request for comment and a code review. Here's a short ...
7 years, 5 months ago (2013-07-05 11:41:04 UTC) #1
regis
LGTM You can try these sequences on ARM and MIPS: ARM: // Add an edge ...
7 years, 5 months ago (2013-07-08 19:13:31 UTC) #2
Florian Schneider
lgtm. To reduce unoptimized code size it would be great to eliminate counter code for ...
7 years, 4 months ago (2013-08-12 11:30:09 UTC) #3
Kevin Millikin (Google)
https://codereview.chromium.org/18111006/diff/1/runtime/vm/block_scheduler.cc File runtime/vm/block_scheduler.cc (right): https://codereview.chromium.org/18111006/diff/1/runtime/vm/block_scheduler.cc#newcode48 runtime/vm/block_scheduler.cc:48: double weight = 0.0; On 2013/08/12 11:30:09, Florian Schneider ...
7 years, 4 months ago (2013-08-13 11:14:57 UTC) #4
srdjan
LGTM https://codereview.chromium.org/18111006/diff/1/runtime/vm/block_scheduler.cc File runtime/vm/block_scheduler.cc (right): https://codereview.chromium.org/18111006/diff/1/runtime/vm/block_scheduler.cc#newcode14 runtime/vm/block_scheduler.cc:14: intptr_t deopt_id) { This seems like quite slow ...
7 years, 4 months ago (2013-08-14 00:28:23 UTC) #5
Kevin Millikin (Google)
7 years, 3 months ago (2013-08-28 09:17:26 UTC) #6
Message was sent while issue was closed.
Committed patchset #2 manually as r26773 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698