|
|
Created:
4 years, 8 months ago by Stefano Sanfilippo Modified:
4 years, 8 months ago Reviewers:
rmcilroy CC:
v8-reviews_googlegroups.com Base URL:
https://chromium.googlesource.com/v8/v8.git@viz-count-h2h Target Ref:
refs/pending/heads/master Project:
v8 Visibility:
Public. |
Description[Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py
In addition to top source-destination pairs,
bytecode_dispatches_report.py now prints the hottest bytecode handlers
by the number of times they are executed and dispatch to another one,
regardless of the dispatch target.
Be aware that this figure does not match the number of times a handler
is executed for those which may not or will never dispatch, e.g.
Return or Throw.
BUG=v8:4899
LOG=N
Committed: https://crrev.com/7fa7bfacf8e0cbbc8263a1322129cb8406cddb34
Cr-Commit-Position: refs/heads/master@{#35629}
Patch Set 1 #
Total comments: 6
Patch Set 2 : Separate flag for printing, print all the counters. #Patch Set 3 : Improve help text. #Patch Set 4 : Rebase on master. #
Total comments: 2
Patch Set 5 : Separate option for top counters and number of top counters to print. #Patch Set 6 : Use dashes instead of underscores, improve help text. #
Total comments: 2
Patch Set 7 : Renamings and help improvements. #
Messages
Total messages: 32 (17 generated)
Description was changed from ========== [Interpreter] Print top dispatch sources in bytecode_dispatches_report.py BUG=v8:4899 LOG=N ========== to ========== [Interpreter] Print top dispatch sources in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the top dispatch sources. That figure matches the number of times a certain handler is executed and dispatches to another one, regardless of the dispatch destination. Please notice that this figure is not necessarily equal to the number of times a handler is executed. In particular, the two counts will be different for those handler which may not or will never dispatch (i.e. Return or Throw). BUG=v8:4899 LOG=N ==========
Description was changed from ========== [Interpreter] Print top dispatch sources in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the top dispatch sources. That figure matches the number of times a certain handler is executed and dispatches to another one, regardless of the dispatch destination. Please notice that this figure is not necessarily equal to the number of times a handler is executed. In particular, the two counts will be different for those handler which may not or will never dispatch (i.e. Return or Throw). BUG=v8:4899 LOG=N ========== to ========== [Interpreter] Print top dispatch sources in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the top dispatch sources. That figure matches the number of times a certain handler is executed and dispatches to another one, regardless of the dispatch destination. Please notice that this figure is not necessarily equal to the number of times a handler is executed. In particular, the two counters will be different for those handler which may not or will never dispatch (i.e. Return or Throw). BUG=v8:4899 LOG=N ==========
ssanfilippo@chromium.org changed reviewers: + rmcilroy@chromium.org
Here's the follow-up to https://codereview.chromium.org/1869423002/ reporting top dispatch sources. PTAL.
https://codereview.chromium.org/1875263004/diff/1/tools/ignition/bytecode_dis... File tools/ignition/bytecode_dispatches_report.py (right): https://codereview.chromium.org/1875263004/diff/1/tools/ignition/bytecode_dis... tools/ignition/bytecode_dispatches_report.py:76: return heapq.nlargest(top_count, dispatch_sources_counters_generator(), I would probably default to printing all the bytecodes for this mode instead of a top x. https://codereview.chromium.org/1875263004/diff/1/tools/ignition/bytecode_dis... tools/ignition/bytecode_dispatches_report.py:82: print "Top {} dispatch sources:".format(top_count) Sources is not a good name since it isn't clear what that means except in the context of bytecode->bytecode dispatches. Just top_bytecodes is fine. Also rename the top_counters to top_bytecode_dispatches or similar. https://codereview.chromium.org/1875263004/diff/1/tools/ignition/bytecode_dis... tools/ignition/bytecode_dispatches_report.py:205: print_top_dispatch_sources(dispatches_table, program_options.top_count) Please make this a separate option (and be the default, with top_dispatches as a separate option). Also update the help text.
https://codereview.chromium.org/1875263004/diff/1/tools/ignition/bytecode_dis... File tools/ignition/bytecode_dispatches_report.py (right): https://codereview.chromium.org/1875263004/diff/1/tools/ignition/bytecode_dis... tools/ignition/bytecode_dispatches_report.py:76: return heapq.nlargest(top_count, dispatch_sources_counters_generator(), On 2016/04/13 08:45:54, rmcilroy wrote: > I would probably default to printing all the bytecodes for this mode instead of > a top x. Done. https://codereview.chromium.org/1875263004/diff/1/tools/ignition/bytecode_dis... tools/ignition/bytecode_dispatches_report.py:82: print "Top {} dispatch sources:".format(top_count) On 2016/04/13 08:45:54, rmcilroy wrote: > Sources is not a good name since it isn't clear what that means except in the > context of bytecode->bytecode dispatches. Just top_bytecodes is fine. Also > rename the top_counters to top_bytecode_dispatches or similar. Done. https://codereview.chromium.org/1875263004/diff/1/tools/ignition/bytecode_dis... tools/ignition/bytecode_dispatches_report.py:205: print_top_dispatch_sources(dispatches_table, program_options.top_count) On 2016/04/13 08:45:54, rmcilroy wrote: > Please make this a separate option (and be the default, with top_dispatches as a > separate option). Also update the help text. Done.
Description was changed from ========== [Interpreter] Print top dispatch sources in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the top dispatch sources. That figure matches the number of times a certain handler is executed and dispatches to another one, regardless of the dispatch destination. Please notice that this figure is not necessarily equal to the number of times a handler is executed. In particular, the two counters will be different for those handler which may not or will never dispatch (i.e. Return or Throw). BUG=v8:4899 LOG=N ========== to ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times a they are executed and dispatch to another one, regardless of the dispatch destination. Please notice that this datapoint does not necessarily match the number of times a handler is executed. In particular, the two counters will be different for those handler which may not or will never dispatch (i.e. Return or Throw). BUG=v8:4899 LOG=N ==========
Description was changed from ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times a they are executed and dispatch to another one, regardless of the dispatch destination. Please notice that this datapoint does not necessarily match the number of times a handler is executed. In particular, the two counters will be different for those handler which may not or will never dispatch (i.e. Return or Throw). BUG=v8:4899 LOG=N ========== to ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times a they are executed and dispatch to another one, regardless of the dispatch destination. Be aware that this figure does not match the number of times a handler is executed for those handler which may not or will never dispatch, i.e. Return or Throw. BUG=v8:4899 LOG=N ==========
Description was changed from ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times a they are executed and dispatch to another one, regardless of the dispatch destination. Be aware that this figure does not match the number of times a handler is executed for those handler which may not or will never dispatch, i.e. Return or Throw. BUG=v8:4899 LOG=N ========== to ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times they are executed and dispatch to another one, regardless of the dispatch destination. Be aware that this figure does not match the number of times a handler is executed for those handler which may not or will never dispatch, i.e. Return or Throw. BUG=v8:4899 LOG=N ==========
Description was changed from ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times they are executed and dispatch to another one, regardless of the dispatch destination. Be aware that this figure does not match the number of times a handler is executed for those handler which may not or will never dispatch, i.e. Return or Throw. BUG=v8:4899 LOG=N ========== to ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times they are executed and dispatch to another one, regardless of the dispatch target. Be aware that this figure does not match the number of times a handler is executed for those which may not or will never dispatch, e.g. Return or Throw. BUG=v8:4899 LOG=N ==========
The CQ bit was checked by ssanfilippo@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1875263004/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1875263004/60001
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
https://codereview.chromium.org/1875263004/diff/60001/tools/ignition/bytecode... File tools/ignition/bytecode_dispatches_report.py (right): https://codereview.chromium.org/1875263004/diff/60001/tools/ignition/bytecode... tools/ignition/bytecode_dispatches_report.py:161: "--top_count", "-t", This should not be used to specify that you want the top bytecode dispatches, there should be a seperate high level flag to that (similar to -p).
Patchset #7 (id:120001) has been deleted
Patchset #6 (id:100001) has been deleted
Patchset #6 (id:140001) has been deleted
https://codereview.chromium.org/1875263004/diff/60001/tools/ignition/bytecode... File tools/ignition/bytecode_dispatches_report.py (right): https://codereview.chromium.org/1875263004/diff/60001/tools/ignition/bytecode... tools/ignition/bytecode_dispatches_report.py:161: "--top_count", "-t", On 2016/04/19 10:36:02, rmcilroy wrote: > This should not be used to specify that you want the top bytecode dispatches, > there should be a seperate high level flag to that (similar to -p). Done.
https://codereview.chromium.org/1875263004/diff/160001/tools/ignition/bytecod... File tools/ignition/bytecode_dispatches_report.py (right): https://codereview.chromium.org/1875263004/diff/160001/tools/ignition/bytecod... tools/ignition/bytecode_dispatches_report.py:164: "--top-counters", "-t", This is still not a good name - what do counters mean in this context? I mentioned in a previous CL that top_counters should be changed for the functions below as well - i.e.: > Also rename the top_counters to top_bytecode_dispatches or similar.
https://codereview.chromium.org/1875263004/diff/160001/tools/ignition/bytecod... File tools/ignition/bytecode_dispatches_report.py (right): https://codereview.chromium.org/1875263004/diff/160001/tools/ignition/bytecod... tools/ignition/bytecode_dispatches_report.py:164: "--top-counters", "-t", On 2016/04/19 11:18:19, rmcilroy wrote: > This is still not a good name - what do counters mean in this context? I > mentioned in a previous CL that top_counters should be changed for the functions > below as well - i.e.: > > Also rename the top_counters to top_bytecode_dispatches or similar. Done.
The CQ bit was checked by ssanfilippo@chromium.org to run a CQ dry run
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1875263004/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1875263004/180001
The CQ bit was unchecked by commit-bot@chromium.org
Dry run: This issue passed the CQ dry run.
LGTM, thanks.
The CQ bit was checked by ssanfilippo@chromium.org
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1875263004/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1875263004/180001
Message was sent while issue was closed.
Description was changed from ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times they are executed and dispatch to another one, regardless of the dispatch target. Be aware that this figure does not match the number of times a handler is executed for those which may not or will never dispatch, e.g. Return or Throw. BUG=v8:4899 LOG=N ========== to ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times they are executed and dispatch to another one, regardless of the dispatch target. Be aware that this figure does not match the number of times a handler is executed for those which may not or will never dispatch, e.g. Return or Throw. BUG=v8:4899 LOG=N ==========
Message was sent while issue was closed.
Committed patchset #7 (id:180001)
Message was sent while issue was closed.
Description was changed from ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times they are executed and dispatch to another one, regardless of the dispatch target. Be aware that this figure does not match the number of times a handler is executed for those which may not or will never dispatch, e.g. Return or Throw. BUG=v8:4899 LOG=N ========== to ========== [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py In addition to top source-destination pairs, bytecode_dispatches_report.py now prints the hottest bytecode handlers by the number of times they are executed and dispatch to another one, regardless of the dispatch target. Be aware that this figure does not match the number of times a handler is executed for those which may not or will never dispatch, e.g. Return or Throw. BUG=v8:4899 LOG=N Committed: https://crrev.com/7fa7bfacf8e0cbbc8263a1322129cb8406cddb34 Cr-Commit-Position: refs/heads/master@{#35629} ==========
Message was sent while issue was closed.
Patchset 7 (id:??) landed as https://crrev.com/7fa7bfacf8e0cbbc8263a1322129cb8406cddb34 Cr-Commit-Position: refs/heads/master@{#35629} |