forked from ruby/ruby
-
Notifications
You must be signed in to change notification settings - Fork 0
[pull] master from ruby:master #373
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
lobsters before: ``` ***ZJIT: Printing ZJIT statistics on exit*** Top-20 not inlined C methods (71.9% of total 15,247,103): Hash#[]: 4,516,006 (29.6%) Class#current: 1,154,273 ( 7.6%) Kernel#is_a?: 1,027,952 ( 6.7%) Regexp#match?: 398,256 ( 2.6%) String#empty?: 353,775 ( 2.3%) Hash#key?: 349,154 ( 2.3%) Hash#[]=: 344,347 ( 2.3%) String#start_with?: 337,386 ( 2.2%) Kernel#respond_to?: 316,003 ( 2.1%) ObjectSpace::WeakKeyMap#[]: 238,978 ( 1.6%) TrueClass#===: 235,771 ( 1.5%) FalseClass#===: 231,144 ( 1.5%) Array#include?: 211,339 ( 1.4%) Hash#fetch: 204,702 ( 1.3%) Kernel#block_given?: 181,789 ( 1.2%) ActiveSupport::OrderedOptions#_get: 181,272 ( 1.2%) Kernel#dup: 179,336 ( 1.2%) BasicObject#!=: 174,429 ( 1.1%) Class#new: 168,079 ( 1.1%) Kernel#kind_of?: 165,600 ( 1.1%) Top-20 not annotated C methods (72.5% of total 15,409,355): Hash#[]: 4,516,016 (29.3%) Kernel#is_a?: 1,209,970 ( 7.9%) Class#current: 1,154,273 ( 7.5%) Regexp#match?: 398,256 ( 2.6%) String#empty?: 361,013 ( 2.3%) Hash#key?: 349,154 ( 2.3%) Hash#[]=: 344,347 ( 2.2%) String#start_with?: 337,386 ( 2.2%) Kernel#respond_to?: 316,003 ( 2.1%) ObjectSpace::WeakKeyMap#[]: 238,978 ( 1.6%) TrueClass#===: 235,771 ( 1.5%) FalseClass#===: 231,144 ( 1.5%) Array#include?: 211,339 ( 1.4%) Hash#fetch: 204,702 ( 1.3%) Kernel#block_given?: 191,658 ( 1.2%) ActiveSupport::OrderedOptions#_get: 181,272 ( 1.2%) Kernel#dup: 179,343 ( 1.2%) BasicObject#!=: 174,613 ( 1.1%) Class#new: 168,079 ( 1.1%) Kernel#kind_of?: 165,634 ( 1.1%) Top-2 not optimized method types for send (100.0% of total 71,083): cfunc: 47,637 (67.0%) iseq: 23,446 (33.0%) Top-6 not optimized method types for send_without_block (100.0% of total 4,482,446): iseq: 2,227,443 (49.7%) bmethod: 985,679 (22.0%) optimized: 952,914 (21.3%) alias: 310,750 ( 6.9%) null: 5,106 ( 0.1%) cfunc: 554 ( 0.0%) Top-13 not optimized instructions (100.0% of total 4,264,922): invokesuper: 2,346,296 (55.0%) invokeblock: 809,163 (19.0%) sendforward: 505,446 (11.9%) opt_eq: 454,244 (10.7%) opt_plus: 74,059 ( 1.7%) opt_minus: 36,227 ( 0.8%) opt_send_without_block: 21,396 ( 0.5%) opt_neq: 7,247 ( 0.2%) opt_mult: 6,752 ( 0.2%) opt_or: 3,617 ( 0.1%) opt_lt: 348 ( 0.0%) opt_ge: 91 ( 0.0%) opt_gt: 36 ( 0.0%) Top-9 send fallback reasons (100.0% of total 27,366,538): send_without_block_polymorphic: 9,222,828 (33.7%) send_no_profiles: 5,892,897 (21.5%) send_without_block_not_optimized_method_type: 4,482,446 (16.4%) not_optimized_instruction: 4,264,922 (15.6%) send_without_block_no_profiles: 3,407,046 (12.4%) send_not_optimized_method_type: 71,083 ( 0.3%) send_without_block_cfunc_array_variadic: 15,135 ( 0.1%) obj_to_string_not_string: 9,919 ( 0.0%) send_without_block_direct_too_many_args: 262 ( 0.0%) Top-9 unhandled YARV insns (100.0% of total 688,292): expandarray: 328,369 (47.7%) checkkeyword: 190,697 (27.7%) getclassvariable: 59,286 ( 8.6%) getblockparam: 48,651 ( 7.1%) invokesuperforward: 48,162 ( 7.0%) opt_duparray_send: 11,978 ( 1.7%) getconstant: 840 ( 0.1%) checkmatch: 290 ( 0.0%) once: 19 ( 0.0%) Top-2 compile error reasons (100.0% of total 3,675,808): register_spill_on_alloc: 3,459,950 (94.1%) register_spill_on_ccall: 215,858 ( 5.9%) Top-14 side exit reasons (100.0% of total 10,732,532): compile_error: 3,675,808 (34.2%) guard_type_failure: 2,616,693 (24.4%) guard_shape_failure: 1,902,102 (17.7%) unhandled_yarv_insn: 688,292 ( 6.4%) block_param_proxy_not_iseq_or_ifunc: 534,943 ( 5.0%) unhandled_kwarg: 421,996 ( 3.9%) patchpoint: 359,831 ( 3.4%) unknown_newarray_send: 314,665 ( 2.9%) unhandled_splat: 121,910 ( 1.1%) unhandled_hir_insn: 76,393 ( 0.7%) block_param_proxy_modified: 19,193 ( 0.2%) interrupt: 528 ( 0.0%) obj_to_string_fallback: 156 ( 0.0%) guard_type_not_failure: 22 ( 0.0%) send_count: 66,343,482 dynamic_send_count: 27,366,538 (41.2%) optimized_send_count: 38,976,944 (58.8%) iseq_optimized_send_count: 17,935,768 (27.0%) inline_cfunc_optimized_send_count: 5,794,073 ( 8.7%) non_variadic_cfunc_optimized_send_count: 12,588,582 (19.0%) variadic_cfunc_optimized_send_count: 2,658,521 ( 4.0%) dynamic_getivar_count: 7,321,990 dynamic_setivar_count: 7,231,183 compiled_iseq_count: 4,770 failed_iseq_count: 468 compile_time: 7,466ms profile_time: 52ms gc_time: 33ms invalidation_time: 116ms vm_write_pc_count: 64,768,186 vm_write_sp_count: 63,445,066 vm_write_locals_count: 63,445,066 vm_write_stack_count: 63,445,066 vm_write_to_parent_iseq_local_count: 292,445 vm_read_from_parent_iseq_local_count: 6,461,354 code_region_bytes: 22,446,080 side_exit_count: 10,732,532 total_insn_count: 515,600,654 vm_insn_count: 163,640,874 zjit_insn_count: 351,959,780 ratio_in_zjit: 68.3% ``` lobsters after: ``` ***ZJIT: Printing ZJIT statistics on exit*** Top-20 not inlined C methods (72.3% of total 14,893,304): Hash#[]: 4,515,997 (30.3%) Class#current: 1,154,273 ( 7.8%) Kernel#is_a?: 1,027,957 ( 6.9%) Regexp#match?: 398,259 ( 2.7%) Hash#key?: 349,149 ( 2.3%) Hash#[]=: 344,347 ( 2.3%) String#start_with?: 337,386 ( 2.3%) Kernel#respond_to?: 316,003 ( 2.1%) ObjectSpace::WeakKeyMap#[]: 238,978 ( 1.6%) TrueClass#===: 235,771 ( 1.6%) FalseClass#===: 231,144 ( 1.6%) Array#include?: 211,333 ( 1.4%) Hash#fetch: 204,703 ( 1.4%) Kernel#block_given?: 181,781 ( 1.2%) ActiveSupport::OrderedOptions#_get: 181,272 ( 1.2%) Kernel#dup: 179,337 ( 1.2%) BasicObject#!=: 174,429 ( 1.2%) Class#new: 168,079 ( 1.1%) Kernel#kind_of?: 165,600 ( 1.1%) String#==: 154,751 ( 1.0%) Top-20 not annotated C methods (72.9% of total 15,048,318): Hash#[]: 4,516,007 (30.0%) Kernel#is_a?: 1,209,975 ( 8.0%) Class#current: 1,154,273 ( 7.7%) Regexp#match?: 398,259 ( 2.6%) Hash#key?: 349,149 ( 2.3%) Hash#[]=: 344,347 ( 2.3%) String#start_with?: 337,386 ( 2.2%) Kernel#respond_to?: 316,003 ( 2.1%) ObjectSpace::WeakKeyMap#[]: 238,978 ( 1.6%) TrueClass#===: 235,771 ( 1.6%) FalseClass#===: 231,144 ( 1.5%) Array#include?: 211,333 ( 1.4%) Hash#fetch: 204,703 ( 1.4%) Kernel#block_given?: 191,650 ( 1.3%) ActiveSupport::OrderedOptions#_get: 181,272 ( 1.2%) Kernel#dup: 179,344 ( 1.2%) BasicObject#!=: 174,613 ( 1.2%) Class#new: 168,079 ( 1.1%) Kernel#kind_of?: 165,634 ( 1.1%) String#==: 160,682 ( 1.1%) Top-2 not optimized method types for send (100.0% of total 71,084): cfunc: 47,638 (67.0%) iseq: 23,446 (33.0%) Top-6 not optimized method types for send_without_block (100.0% of total 4,482,444): iseq: 2,227,440 (49.7%) bmethod: 985,679 (22.0%) optimized: 952,916 (21.3%) alias: 310,749 ( 6.9%) null: 5,106 ( 0.1%) cfunc: 554 ( 0.0%) Top-13 not optimized instructions (100.0% of total 4,264,913): invokesuper: 2,346,301 (55.0%) invokeblock: 809,153 (19.0%) sendforward: 505,445 (11.9%) opt_eq: 454,244 (10.7%) opt_plus: 74,056 ( 1.7%) opt_minus: 36,227 ( 0.8%) opt_send_without_block: 21,396 ( 0.5%) opt_neq: 7,247 ( 0.2%) opt_mult: 6,752 ( 0.2%) opt_or: 3,617 ( 0.1%) opt_lt: 348 ( 0.0%) opt_ge: 91 ( 0.0%) opt_gt: 36 ( 0.0%) Top-9 send fallback reasons (100.0% of total 27,366,491): send_without_block_polymorphic: 9,222,820 (33.7%) send_no_profiles: 5,892,885 (21.5%) send_without_block_not_optimized_method_type: 4,482,444 (16.4%) not_optimized_instruction: 4,264,913 (15.6%) send_without_block_no_profiles: 3,407,030 (12.4%) send_not_optimized_method_type: 71,084 ( 0.3%) send_without_block_cfunc_array_variadic: 15,134 ( 0.1%) obj_to_string_not_string: 9,919 ( 0.0%) send_without_block_direct_too_many_args: 262 ( 0.0%) Top-9 unhandled YARV insns (100.0% of total 688,291): expandarray: 328,368 (47.7%) checkkeyword: 190,697 (27.7%) getclassvariable: 59,286 ( 8.6%) getblockparam: 48,651 ( 7.1%) invokesuperforward: 48,162 ( 7.0%) opt_duparray_send: 11,978 ( 1.7%) getconstant: 840 ( 0.1%) checkmatch: 290 ( 0.0%) once: 19 ( 0.0%) Top-2 compile error reasons (100.0% of total 3,675,807): register_spill_on_alloc: 3,459,949 (94.1%) register_spill_on_ccall: 215,858 ( 5.9%) Top-14 side exit reasons (100.0% of total 10,732,546): compile_error: 3,675,807 (34.2%) guard_type_failure: 2,616,699 (24.4%) guard_shape_failure: 1,902,100 (17.7%) unhandled_yarv_insn: 688,291 ( 6.4%) block_param_proxy_not_iseq_or_ifunc: 534,950 ( 5.0%) unhandled_kwarg: 421,993 ( 3.9%) patchpoint: 359,837 ( 3.4%) unknown_newarray_send: 314,667 ( 2.9%) unhandled_splat: 121,913 ( 1.1%) unhandled_hir_insn: 76,393 ( 0.7%) block_param_proxy_modified: 19,193 ( 0.2%) interrupt: 525 ( 0.0%) obj_to_string_fallback: 156 ( 0.0%) guard_type_not_failure: 22 ( 0.0%) send_count: 66,343,388 dynamic_send_count: 27,366,491 (41.2%) optimized_send_count: 38,976,897 (58.8%) iseq_optimized_send_count: 17,935,730 (27.0%) inline_cfunc_optimized_send_count: 6,147,863 ( 9.3%) non_variadic_cfunc_optimized_send_count: 12,234,780 (18.4%) variadic_cfunc_optimized_send_count: 2,658,524 ( 4.0%) dynamic_getivar_count: 7,321,987 dynamic_setivar_count: 7,231,160 compiled_iseq_count: 4,770 failed_iseq_count: 468 compile_time: 7,223ms profile_time: 51ms gc_time: 32ms invalidation_time: 107ms vm_write_pc_count: 64,414,293 vm_write_sp_count: 63,091,183 vm_write_locals_count: 63,091,183 vm_write_stack_count: 63,091,183 vm_write_to_parent_iseq_local_count: 292,443 vm_read_from_parent_iseq_local_count: 6,461,326 code_region_bytes: 22,446,080 side_exit_count: 10,732,546 total_insn_count: 515,600,823 vm_insn_count: 163,641,263 zjit_insn_count: 351,959,560 ratio_in_zjit: 68.3% ```
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )