summaryrefslogtreecommitdiff
path: root/yjit.rb
diff options
context:
space:
mode:
authorMaxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>2023-08-22 17:36:12 -0400
committerGitHub <noreply@github.com>2023-08-22 17:36:12 -0400
commitc23e2e19b7a5e4b919a8b87de0269c128bbb9a5e (patch)
treef8c85f21b2169d271a06e6edf2fe57fe6011776f /yjit.rb
parent2d75069779fd1e9fe94b2e4da5e269641daddf0f (diff)
YJIT: add code_region_overhead stat output (#8262)
Notes
Notes: Merged-By: maximecb <maximecb@ruby-lang.org>
Diffstat (limited to 'yjit.rb')
-rw-r--r--yjit.rb4
1 files changed, 4 insertions, 0 deletions
diff --git a/yjit.rb b/yjit.rb
index 01d3efc6d2..57c4efff8b 100644
--- a/yjit.rb
+++ b/yjit.rb
@@ -273,6 +273,8 @@ module RubyVM::YJIT
# Number of failed compiler invocations
compilation_failure = stats[:compilation_failure]
+ code_region_overhead = stats[:code_region_size] - (stats[:inline_code_size] + stats[:outlined_code_size])
+
out.puts "num_send: " + format_number(13, stats[:num_send])
out.puts "num_send_known_class: " + format_number_pct(13, stats[:num_send_known_class], stats[:num_send])
out.puts "num_send_polymorphic: " + format_number_pct(13, stats[:num_send_polymorphic], stats[:num_send])
@@ -318,6 +320,8 @@ module RubyVM::YJIT
out.puts "inline_code_size: " + format_number(13, stats[:inline_code_size])
out.puts "outlined_code_size: " + format_number(13, stats[:outlined_code_size])
out.puts "code_region_size: " + format_number(13, stats[:code_region_size])
+ out.puts "code_region_overhead: " + format_number_pct(13, code_region_overhead, stats[:code_region_size])
+
out.puts "freed_code_size: " + format_number(13, stats[:freed_code_size])
out.puts "yjit_alloc_size: " + format_number(13, stats[:yjit_alloc_size]) if stats.key?(:yjit_alloc_size)
out.puts "live_context_size: " + format_number(13, stats[:live_context_size])