Message ID | 20230607122411.3394702-1-fei2.wu@intel.com |
---|---|
Headers | show |
Series | TCG code quality tracking | expand |
On 6/7/2023 8:24 PM, Fei Wu wrote: > v15 > --- > This is a large change: > * remove all time related stuffs, including cmd 'info profile' > * remove the per-TB flag, use global flag instead > * remove tb_stats pause/filter, but add status > * remove qemu_log changes, and use monitor_printf > * use array instead of list for sorting > * remove async_safe_run_on_cpu for cmd info tb-list & tb I didn't realize async_safe_run_on_cpu has such a strong semantics, I will add it back if it's necessary. Thanks, Fei. > * use monitor_disas instead of regenerate TB, but **doesn't work yet** > * other cleanups > > > Alex Bennée (1): > tb-stats: reset the tracked TBs on a tb_flush > > Fei Wu (5): > accel/tcg: remove CONFIG_PROFILER > accel/tcg: add jit stats to TBStatistics > debug: add -d tb_stats to control TBStatistics > tb-stats: dump hot TBs at the end of the execution > docs: add tb-stats how to > > Vanderson M. do Rosario (4): > accel/tcg: introduce TBStatistics structure > accel: collecting TB execution count > monitor: adding tb_stats hmp command > tb-stats: Adding info [tb-list|tb] commands to HMP (WIP) > > MAINTAINERS | 1 + > accel/tcg/cpu-exec.c | 6 + > accel/tcg/meson.build | 1 + > accel/tcg/monitor.c | 184 +++++++++++++++-- > accel/tcg/tb-context.h | 1 + > accel/tcg/tb-hash.h | 7 + > accel/tcg/tb-maint.c | 20 ++ > accel/tcg/tb-stats.c | 365 ++++++++++++++++++++++++++++++++++ > accel/tcg/tcg-accel-ops.c | 10 - > accel/tcg/tcg-runtime.c | 1 + > accel/tcg/translate-all.c | 110 ++++++---- > accel/tcg/translator.c | 30 +++ > disas/disas.c | 2 + > docs/devel/tcg-tbstats.rst | 97 +++++++++ > hmp-commands-info.hx | 31 +-- > hmp-commands.hx | 16 ++ > include/exec/exec-all.h | 3 + > include/exec/gen-icount.h | 1 + > include/exec/tb-stats-dump.h | 21 ++ > include/exec/tb-stats-flags.h | 29 +++ > include/exec/tb-stats.h | 130 ++++++++++++ > include/monitor/hmp.h | 3 + > include/qemu/log.h | 1 + > include/qemu/timer.h | 9 - > include/tcg/tcg.h | 26 +-- > linux-user/exit.c | 2 + > meson.build | 2 - > meson_options.txt | 2 - > qapi/machine.json | 18 -- > scripts/meson-buildoptions.sh | 3 - > softmmu/runstate.c | 11 +- > stubs/meson.build | 1 + > stubs/tb-stats.c | 36 ++++ > tcg/tcg.c | 237 +++------------------- > tests/qtest/qmp-cmd-test.c | 3 - > util/log.c | 26 +++ > 36 files changed, 1093 insertions(+), 353 deletions(-) > create mode 100644 accel/tcg/tb-stats.c > create mode 100644 docs/devel/tcg-tbstats.rst > create mode 100644 include/exec/tb-stats-dump.h > create mode 100644 include/exec/tb-stats-flags.h > create mode 100644 include/exec/tb-stats.h > create mode 100644 stubs/tb-stats.c >
On 6/7/2023 8:24 PM, Fei Wu wrote: > v15 > --- > This is a large change: > * remove all time related stuffs, including cmd 'info profile' > * remove the per-TB flag, use global flag instead > * remove tb_stats pause/filter, but add status > * remove qemu_log changes, and use monitor_printf > * use array instead of list for sorting > * remove async_safe_run_on_cpu for cmd info tb-list & tb > * use monitor_disas instead of regenerate TB, but **doesn't work yet** > * other cleanups > Hi Richard, Could you please take a look at this series? I hope most of the comments on v14 have been addressed. Next revision I will change: * add async_safe_run_on_cpu back in case of any concurrency issue * add tbs->gpa_pc for monitor_disas, which requires get_page_addr_code_hostp() return both ram_addr_t and gpa * finalize the commit logs and documents Thanks, Fei. > > Alex Bennée (1): > tb-stats: reset the tracked TBs on a tb_flush > > Fei Wu (5): > accel/tcg: remove CONFIG_PROFILER > accel/tcg: add jit stats to TBStatistics > debug: add -d tb_stats to control TBStatistics > tb-stats: dump hot TBs at the end of the execution > docs: add tb-stats how to > > Vanderson M. do Rosario (4): > accel/tcg: introduce TBStatistics structure > accel: collecting TB execution count > monitor: adding tb_stats hmp command > tb-stats: Adding info [tb-list|tb] commands to HMP (WIP) > > MAINTAINERS | 1 + > accel/tcg/cpu-exec.c | 6 + > accel/tcg/meson.build | 1 + > accel/tcg/monitor.c | 184 +++++++++++++++-- > accel/tcg/tb-context.h | 1 + > accel/tcg/tb-hash.h | 7 + > accel/tcg/tb-maint.c | 20 ++ > accel/tcg/tb-stats.c | 365 ++++++++++++++++++++++++++++++++++ > accel/tcg/tcg-accel-ops.c | 10 - > accel/tcg/tcg-runtime.c | 1 + > accel/tcg/translate-all.c | 110 ++++++---- > accel/tcg/translator.c | 30 +++ > disas/disas.c | 2 + > docs/devel/tcg-tbstats.rst | 97 +++++++++ > hmp-commands-info.hx | 31 +-- > hmp-commands.hx | 16 ++ > include/exec/exec-all.h | 3 + > include/exec/gen-icount.h | 1 + > include/exec/tb-stats-dump.h | 21 ++ > include/exec/tb-stats-flags.h | 29 +++ > include/exec/tb-stats.h | 130 ++++++++++++ > include/monitor/hmp.h | 3 + > include/qemu/log.h | 1 + > include/qemu/timer.h | 9 - > include/tcg/tcg.h | 26 +-- > linux-user/exit.c | 2 + > meson.build | 2 - > meson_options.txt | 2 - > qapi/machine.json | 18 -- > scripts/meson-buildoptions.sh | 3 - > softmmu/runstate.c | 11 +- > stubs/meson.build | 1 + > stubs/tb-stats.c | 36 ++++ > tcg/tcg.c | 237 +++------------------- > tests/qtest/qmp-cmd-test.c | 3 - > util/log.c | 26 +++ > 36 files changed, 1093 insertions(+), 353 deletions(-) > create mode 100644 accel/tcg/tb-stats.c > create mode 100644 docs/devel/tcg-tbstats.rst > create mode 100644 include/exec/tb-stats-dump.h > create mode 100644 include/exec/tb-stats-flags.h > create mode 100644 include/exec/tb-stats.h > create mode 100644 stubs/tb-stats.c >
On 6/13/2023 11:29 AM, Wu, Fei wrote: > On 6/7/2023 8:24 PM, Fei Wu wrote: >> v15 >> --- >> This is a large change: >> * remove all time related stuffs, including cmd 'info profile' >> * remove the per-TB flag, use global flag instead >> * remove tb_stats pause/filter, but add status >> * remove qemu_log changes, and use monitor_printf >> * use array instead of list for sorting >> * remove async_safe_run_on_cpu for cmd info tb-list & tb >> * use monitor_disas instead of regenerate TB, but **doesn't work yet** >> * other cleanups >> > Hi Richard, > > Could you please take a look at this series? I hope most of the comments > on v14 have been addressed. > > Next revision I will change: > * add async_safe_run_on_cpu back in case of any concurrency issue > * add tbs->gpa_pc for monitor_disas, which requires > get_page_addr_code_hostp() return both ram_addr_t and gpa > * finalize the commit logs and documents > Should I send the new revision with these changes, or you take a look first then I address all of them together? Thanks, Fei. > Thanks, > Fei. > >> >> Alex Bennée (1): >> tb-stats: reset the tracked TBs on a tb_flush >> >> Fei Wu (5): >> accel/tcg: remove CONFIG_PROFILER >> accel/tcg: add jit stats to TBStatistics >> debug: add -d tb_stats to control TBStatistics >> tb-stats: dump hot TBs at the end of the execution >> docs: add tb-stats how to >> >> Vanderson M. do Rosario (4): >> accel/tcg: introduce TBStatistics structure >> accel: collecting TB execution count >> monitor: adding tb_stats hmp command >> tb-stats: Adding info [tb-list|tb] commands to HMP (WIP) >> >> MAINTAINERS | 1 + >> accel/tcg/cpu-exec.c | 6 + >> accel/tcg/meson.build | 1 + >> accel/tcg/monitor.c | 184 +++++++++++++++-- >> accel/tcg/tb-context.h | 1 + >> accel/tcg/tb-hash.h | 7 + >> accel/tcg/tb-maint.c | 20 ++ >> accel/tcg/tb-stats.c | 365 ++++++++++++++++++++++++++++++++++ >> accel/tcg/tcg-accel-ops.c | 10 - >> accel/tcg/tcg-runtime.c | 1 + >> accel/tcg/translate-all.c | 110 ++++++---- >> accel/tcg/translator.c | 30 +++ >> disas/disas.c | 2 + >> docs/devel/tcg-tbstats.rst | 97 +++++++++ >> hmp-commands-info.hx | 31 +-- >> hmp-commands.hx | 16 ++ >> include/exec/exec-all.h | 3 + >> include/exec/gen-icount.h | 1 + >> include/exec/tb-stats-dump.h | 21 ++ >> include/exec/tb-stats-flags.h | 29 +++ >> include/exec/tb-stats.h | 130 ++++++++++++ >> include/monitor/hmp.h | 3 + >> include/qemu/log.h | 1 + >> include/qemu/timer.h | 9 - >> include/tcg/tcg.h | 26 +-- >> linux-user/exit.c | 2 + >> meson.build | 2 - >> meson_options.txt | 2 - >> qapi/machine.json | 18 -- >> scripts/meson-buildoptions.sh | 3 - >> softmmu/runstate.c | 11 +- >> stubs/meson.build | 1 + >> stubs/tb-stats.c | 36 ++++ >> tcg/tcg.c | 237 +++------------------- >> tests/qtest/qmp-cmd-test.c | 3 - >> util/log.c | 26 +++ >> 36 files changed, 1093 insertions(+), 353 deletions(-) >> create mode 100644 accel/tcg/tb-stats.c >> create mode 100644 docs/devel/tcg-tbstats.rst >> create mode 100644 include/exec/tb-stats-dump.h >> create mode 100644 include/exec/tb-stats-flags.h >> create mode 100644 include/exec/tb-stats.h >> create mode 100644 stubs/tb-stats.c >> >