Skip to content

Latest commit

 

History

History
14415 lines (13301 loc) · 261 KB

bm-20240615-azure-x86_64-python-a19bb261a327e1008f21-3.13.0b2+-a19bb26-pystats-asyncio_tcp.md

File metadata and controls

14415 lines (13301 loc) · 261 KB

Pystats results

  • benchmark: asyncio_tcp
  • fork: python
  • ref: a19bb261a327e1008f219b62f6465941c981899b
  • commit hash: a19bb26
  • commit date: 2024-06-15T19:10:50+00:00

Execution counts

Execution counts for Tier 1 instructions.

The "miss ratio" column shows the percentage of times the instruction executed that it deoptimized. When this happens, the base unspecialized instruction is not counted.

Name Count Self Cumulative Miss ratio
LOAD_FAST 76,777,085 21.4% 21.4%
LOAD_ATTR_INSTANCE_VALUE 21,274,244 5.9% 27.4%
RESUME_CHECK 20,261,959 5.7% 33.0%
POP_JUMP_IF_FALSE 15,155,341 4.2% 37.3%
CALL_PY_EXACT_ARGS 14,633,982 4.1% 41.3%
STORE_FAST 13,499,545 3.8% 45.1%
TO_BOOL_BOOL 12,862,863 3.6% 48.7%
POP_TOP 12,859,084 3.6% 52.3%
RETURN_VALUE 12,549,439 3.5% 55.8%
LOAD_CONST 11,627,619 3.2% 59.0%
LOAD_ATTR 11,226,535 3.1% 62.2%
LOAD_ATTR_METHOD_WITH_VALUES 10,216,174 2.9% 65.0% 0.0%
RETURN_CONST 7,763,412 2.2% 67.2%
LOAD_FAST_LOAD_FAST 7,093,748 2.0% 69.2%
LOAD_GLOBAL_MODULE 6,760,455 1.9% 71.1%
LOAD_ATTR_SLOT 6,707,833 1.9% 72.9%
LOAD_GLOBAL_BUILTIN 6,404,499 1.8% 74.7% 0.0%
STORE_ATTR_SLOT 5,612,502 1.6% 76.3%
POP_JUMP_IF_TRUE 5,077,416 1.4% 77.7%
LOAD_ATTR_METHOD_NO_DICT 4,797,682 1.3% 79.0%
NOP 4,323,974 1.2% 80.2%
LOAD_ATTR_MODULE 3,421,450 1.0% 81.2%
CALL_NON_PY_GENERAL 3,312,996 0.9% 82.1%
PUSH_NULL 3,026,944 0.8% 83.0%
TO_BOOL_INT 2,834,291 0.8% 83.8%
BINARY_OP 2,753,560 0.8% 84.5%
COMPARE_OP_INT 2,745,849 0.8% 85.3%
INTERPRETER_EXIT 2,666,956 0.7% 86.0%
ENTER_EXECUTOR 2,428,078 0.7% 86.7%
POP_JUMP_IF_NONE 2,287,695 0.6% 87.4%
POP_JUMP_IF_NOT_NONE 1,697,680 0.5% 87.8%
CALL_LEN 1,677,763 0.5% 88.3%
JUMP_FORWARD 1,651,009 0.5% 88.8%
SEND_GEN 1,636,480 0.5% 89.2%
STORE_ATTR_INSTANCE_VALUE 1,626,030 0.5% 89.7%
TO_BOOL 1,425,956 0.4% 90.1%
COPY 1,325,668 0.4% 90.4%
CALL_ISINSTANCE 1,315,148 0.4% 90.8%
YIELD_VALUE 1,307,664 0.4% 91.2%
JUMP_BACKWARD_NO_INTERRUPT 1,307,584 0.4% 91.5%
GET_ITER 1,297,474 0.4% 91.9%
UNARY_NOT 1,280,164 0.4% 92.3%
CALL_METHOD_DESCRIPTOR_O 1,094,216 0.3% 92.6% 0.0%
STORE_FAST_STORE_FAST 1,086,459 0.3% 92.9%
UNPACK_SEQUENCE_TWO_TUPLE 1,086,019 0.3% 93.2%
CALL_METHOD_DESCRIPTOR_NOARGS 1,025,714 0.3% 93.5% 0.1%
CALL_FUNCTION_EX 1,024,460 0.3% 93.7%
END_SEND 987,028 0.3% 94.0%
CALL_PY_GENERAL 986,721 0.3% 94.3%
CALL_METHOD_DESCRIPTOR_FAST 979,855 0.3% 94.6%
BUILD_LIST 968,758 0.3% 94.8%
CALL_INTRINSIC_1 961,778 0.3% 95.1%
LIST_EXTEND 961,778 0.3% 95.4%
LOAD_DEREF 727,162 0.2% 95.6%
CALL 720,725 0.2% 95.8%
CALL_BUILTIN_CLASS 719,316 0.2% 96.0%
SWAP 710,736 0.2% 96.2%
COPY_FREE_VARS 691,618 0.2% 96.4%
GET_AWAITABLE 667,112 0.2% 96.6%
BUILD_TUPLE 664,354 0.2% 96.7%
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 661,914 0.2% 96.9%
TO_BOOL_NONE 661,632 0.2% 97.1%
SEND 659,232 0.2% 97.3%
LOAD_ATTR_METHOD_LAZY_DICT 658,812 0.2% 97.5%
STORE_ATTR 650,782 0.2% 97.7%
FOR_ITER_LIST 648,817 0.2% 97.8%
UNARY_INVERT 648,548 0.2% 98.0%
TO_BOOL_LIST 644,757 0.2% 98.2%
LOAD_SUPER_ATTR_METHOD 642,482 0.2% 98.4%
FOR_ITER_RANGE 642,177 0.2% 98.6%
BINARY_OP_ADD_FLOAT 641,257 0.2% 98.7%
CALL_LIST_APPEND 373,723 0.1% 98.8%
BINARY_SLICE 373,663 0.1% 98.9%
CALL_KW 346,928 0.1% 99.0%
LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES 344,099 0.1% 99.1%
RETURN_GENERATOR 338,716 0.1% 99.2%
STORE_SUBSCR_DICT 336,633 0.1% 99.3%
CALL_BOUND_METHOD_EXACT_ARGS 336,088 0.1% 99.4%
LOAD_ATTR_PROPERTY 321,136 0.1% 99.5%
CONTAINS_OP_DICT 320,561 0.1% 99.6%
BINARY_OP_ADD_INT 320,536 0.1% 99.7%
DELETE_SUBSCR 320,316 0.1% 99.8%
BUILD_SLICE 320,316 0.1% 99.9%
BINARY_OP_MULTIPLY_INT 320,276 0.1% 100.0%
CALL_BUILTIN_FAST_WITH_KEYWORDS 60,847 0.0% 100.0%
COMPARE_OP 19,052 0.0% 100.0%
BINARY_SUBSCR_DICT 16,952 0.0% 100.0%
LOAD_GLOBAL 9,860 0.0% 100.0%
FOR_ITER 9,540 0.0% 100.0%
BINARY_OP_SUBTRACT_INT 8,180 0.0% 100.0%
RESUME 4,380 0.0% 100.0%
JUMP_BACKWARD 3,554 0.0% 100.0%
IS_OP 2,080 0.0% 100.0%
MAKE_CELL 1,440 0.0% 100.0%
CALL_TYPE_1 940 0.0% 100.0%
LOAD_SUPER_ATTR 900 0.0% 100.0%
STORE_DEREF 880 0.0% 100.0%
BUILD_MAP 800 0.0% 100.0%
UNPACK_SEQUENCE 680 0.0% 100.0%
CALL_BUILTIN_FAST 680 0.0% 100.0%
LOAD_SUPER_ATTR_ATTR 680 0.0% 100.0%
CHECK_EXC_MATCH 660 0.0% 100.0%
POP_EXCEPT 660 0.0% 100.0%
PUSH_EXC_INFO 660 0.0% 100.0%
MAKE_FUNCTION 640 0.0% 100.0%
SET_FUNCTION_ATTRIBUTE 640 0.0% 100.0%
CONTAINS_OP 580 0.0% 100.0%
CONTAINS_OP_SET 580 0.0% 100.0%
STORE_SUBSCR 500 0.0% 100.0%
BUILD_SET 400 0.0% 100.0%
LOAD_ATTR_CLASS 380 0.0% 100.0%
CALL_BUILTIN_O 240 0.0% 100.0% 25.0%
DICT_MERGE 240 0.0% 100.0%
EXTENDED_ARG 240 0.0% 100.0%
COMPARE_OP_STR 200 0.0% 100.0%
EXIT_INIT_CHECK 180 0.0% 100.0%
CALL_ALLOC_AND_ENTER_INIT 180 0.0% 100.0%
UNPACK_SEQUENCE_TUPLE 180 0.0% 100.0%
BINARY_SUBSCR 160 0.0% 100.0%
FOR_ITER_TUPLE 160 0.0% 100.0%
CALL_BOUND_METHOD_GENERAL 120 0.0% 100.0% 50.0%
IMPORT_NAME 100 0.0% 100.0%
BEFORE_ASYNC_WITH 80 0.0% 100.0%
LIST_APPEND 80 0.0% 100.0%
LOAD_FAST_AND_CLEAR 80 0.0% 100.0%
RAISE_VARARGS 80 0.0% 100.0%
RERAISE 80 0.0% 100.0%
BINARY_SUBSCR_GETITEM 80 0.0% 100.0%
BINARY_OP_SUBTRACT_FLOAT 60 0.0% 100.0%
BINARY_SUBSCR_LIST_INT 60 0.0% 100.0%
BEFORE_WITH 40 0.0% 100.0%
IMPORT_FROM 20 0.0% 100.0%
LOAD_FAST_CHECK 20 0.0% 100.0%
STORE_FAST_LOAD_FAST 20 0.0% 100.0%
STORE_GLOBAL 20 0.0% 100.0%
BINARY_SUBSCR_TUPLE_INT 20 0.0% 100.0%

Pair counts

Pair counts for top 100 opcode pairs

Pairs of specialized operations that deoptimize and are then followed by the corresponding unspecialized instruction are not counted as pairs.

Pair Count Self Cumulative
LOAD_FAST LOAD_ATTR_INSTANCE_VALUE 20,276,557 5.7% 5.7%
CALL_PY_EXACT_ARGS RESUME_CHECK 13,639,072 3.8% 9.5%
RESUME_CHECK LOAD_FAST 12,948,951 3.6% 13.1%
LOAD_FAST LOAD_ATTR 9,558,931 2.7% 15.7%
TO_BOOL_BOOL POP_JUMP_IF_FALSE 8,614,197 2.4% 18.2%
STORE_FAST LOAD_FAST 8,598,086 2.4% 20.6%
POP_JUMP_IF_FALSE LOAD_FAST 8,174,101 2.3% 22.8%
LOAD_FAST LOAD_ATTR_SLOT 6,698,953 1.9% 24.7%
RETURN_CONST POP_TOP 6,389,110 1.8% 26.5%
LOAD_CONST LOAD_FAST 5,883,674 1.6% 28.1%
LOAD_FAST CALL_PY_EXACT_ARGS 5,632,194 1.6% 29.7%
POP_TOP LOAD_FAST 5,335,937 1.5% 31.2%
LOAD_ATTR_METHOD_WITH_VALUES CALL_PY_EXACT_ARGS 4,938,341 1.4% 32.6%
LOAD_ATTR_METHOD_WITH_VALUES LOAD_FAST 4,608,369 1.3% 33.9%
LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES 4,602,260 1.3% 35.1%
LOAD_ATTR_INSTANCE_VALUE TO_BOOL_BOOL 4,226,649 1.2% 36.3%
LOAD_GLOBAL_BUILTIN LOAD_FAST 4,002,059 1.1% 37.4%
LOAD_FAST RETURN_VALUE 3,956,643 1.1% 38.5%
LOAD_GLOBAL_MODULE LOAD_ATTR_MODULE 3,419,410 1.0% 39.5%
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_METHOD_NO_DICT 3,321,201 0.9% 40.4%
RETURN_VALUE STORE_FAST 3,303,663 0.9% 41.3%
RETURN_VALUE TO_BOOL_BOOL 3,259,443 0.9% 42.3%
POP_TOP RETURN_CONST 3,101,940 0.9% 43.1%
POP_JUMP_IF_TRUE LOAD_FAST 3,071,372 0.9% 44.0%
NOP LOAD_FAST 3,009,706 0.8% 44.8%
LOAD_FAST STORE_ATTR_SLOT 2,977,310 0.8% 45.7%
TO_BOOL_BOOL POP_JUMP_IF_TRUE 2,968,642 0.8% 46.5%
LOAD_ATTR_INSTANCE_VALUE RETURN_VALUE 2,965,589 0.8% 47.3%
LOAD_FAST LOAD_CONST 2,953,896 0.8% 48.1%
COMPARE_OP_INT POP_JUMP_IF_FALSE 2,745,649 0.8% 48.9%
CACHE RESUME_CHECK 2,664,136 0.7% 49.6%
LOAD_FAST_LOAD_FAST STORE_ATTR_SLOT 2,634,732 0.7% 50.4%
LOAD_ATTR CALL_PY_EXACT_ARGS 2,430,434 0.7% 51.1%
LOAD_ATTR_METHOD_NO_DICT LOAD_FAST 2,401,553 0.7% 51.7%
LOAD_FAST LOAD_GLOBAL_MODULE 2,397,521 0.7% 52.4%
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_METHOD_WITH_VALUES 2,334,618 0.7% 53.0%
RESUME_CHECK NOP 2,291,998 0.6% 53.7%
TO_BOOL_INT POP_JUMP_IF_FALSE 2,125,941 0.6% 54.3%
LOAD_ATTR LOAD_FAST 2,071,065 0.6% 54.9%
RESUME_CHECK LOAD_GLOBAL_BUILTIN 2,019,317 0.6% 55.4%
LOAD_ATTR_MODULE PUSH_NULL 2,014,170 0.6% 56.0%
POP_TOP LOAD_CONST 2,004,125 0.6% 56.5%
STORE_ATTR_SLOT LOAD_FAST_LOAD_FAST 1,975,709 0.6% 57.1%
POP_JUMP_IF_NONE LOAD_FAST 1,964,419 0.5% 57.6%
LOAD_ATTR_SLOT LOAD_ATTR_METHOD_WITH_VALUES 1,962,865 0.5% 58.2%
LOAD_CONST COMPARE_OP_INT 1,958,120 0.5% 58.7%
LOAD_ATTR_SLOT TO_BOOL_BOOL 1,777,137 0.5% 59.2%
CALL_NON_PY_GENERAL STORE_FAST 1,698,386 0.5% 59.7%
RESUME_CHECK LOAD_GLOBAL_MODULE 1,675,117 0.5% 60.2%
STORE_ATTR_SLOT LOAD_CONST 1,645,773 0.5% 60.6%
JUMP_FORWARD LOAD_FAST 1,644,889 0.5% 61.1%
LOAD_FAST LOAD_GLOBAL_BUILTIN 1,634,764 0.5% 61.6%
LOAD_FAST STORE_ATTR_INSTANCE_VALUE 1,621,770 0.5% 62.0%
LOAD_CONST STORE_FAST 1,404,512 0.4% 62.4%
TO_BOOL POP_JUMP_IF_TRUE 1,401,004 0.4% 62.8%
LOAD_FAST POP_JUMP_IF_NOT_NONE 1,375,964 0.4% 63.2%
POP_JUMP_IF_FALSE RETURN_CONST 1,369,594 0.4% 63.6%
POP_JUMP_IF_FALSE LOAD_CONST 1,344,823 0.4% 63.9%
STORE_FAST JUMP_FORWARD 1,329,388 0.4% 64.3%
CALL_ISINSTANCE TO_BOOL_BOOL 1,314,888 0.4% 64.7%
RETURN_VALUE RETURN_VALUE 1,314,828 0.4% 65.0%
LOAD_FAST_LOAD_FAST LOAD_FAST 1,314,751 0.4% 65.4%
LOAD_GLOBAL_MODULE LOAD_FAST 1,314,288 0.4% 65.8%
LOAD_GLOBAL_BUILTIN CALL_ISINSTANCE 1,314,168 0.4% 66.1%
LOAD_FAST STORE_FAST 1,313,488 0.4% 66.5%
NOP LOAD_GLOBAL_MODULE 1,313,428 0.4% 66.9%
LOAD_FAST POP_JUMP_IF_NONE 1,309,001 0.4% 67.2%
RESUME_CHECK JUMP_BACKWARD_NO_INTERRUPT 1,307,024 0.4% 67.6%
RETURN_VALUE INTERPRETER_EXIT 1,300,914 0.4% 68.0%
LOAD_ATTR TO_BOOL_BOOL 1,296,096 0.4% 68.3%
LOAD_ATTR_INSTANCE_VALUE CALL_LEN 1,288,634 0.4% 68.7%
CALL_NON_PY_GENERAL RETURN_VALUE 1,283,154 0.4% 69.0%
TO_BOOL_BOOL UNARY_NOT 1,280,024 0.4% 69.4%
CALL_METHOD_DESCRIPTOR_O POP_TOP 1,094,136 0.3% 69.7%
LOAD_FAST LOAD_ATTR_METHOD_NO_DICT 1,093,318 0.3% 70.0%
UNPACK_SEQUENCE_TWO_TUPLE STORE_FAST_STORE_FAST 1,085,899 0.3% 70.3%
STORE_FAST_STORE_FAST LOAD_FAST 1,085,659 0.3% 70.6%
BINARY_OP TO_BOOL_INT 1,066,927 0.3% 70.9%
PUSH_NULL LOAD_FAST 1,057,784 0.3% 71.2%
LOAD_FAST CALL_METHOD_DESCRIPTOR_O 1,048,175 0.3% 71.5%
RETURN_CONST INTERPRETER_EXIT 1,036,686 0.3% 71.8%
POP_JUMP_IF_NOT_NONE LOAD_FAST 1,034,117 0.3% 72.1%
CALL_FUNCTION_EX POP_TOP 1,023,900 0.3% 72.4%
RETURN_VALUE LOAD_FAST 1,015,020 0.3% 72.6%
LOAD_GLOBAL_MODULE BINARY_OP 1,002,707 0.3% 72.9%
PUSH_NULL LOAD_FAST_LOAD_FAST 995,556 0.3% 73.2%
POP_JUMP_IF_FALSE POP_TOP 988,921 0.3% 73.5%
LOAD_FAST TO_BOOL 988,746 0.3% 73.8%
STORE_ATTR_SLOT LOAD_FAST 987,530 0.3% 74.0%
STORE_ATTR_SLOT RETURN_CONST 987,530 0.3% 74.3%
CALL_PY_GENERAL RESUME_CHECK 986,601 0.3% 74.6%
POP_JUMP_IF_TRUE LOAD_CONST 985,089 0.3% 74.9%
YIELD_VALUE YIELD_VALUE 978,708 0.3% 75.1%
JUMP_BACKWARD_NO_INTERRUPT SEND_GEN 978,368 0.3% 75.4%
SEND_GEN RESUME_CHECK 978,308 0.3% 75.7%
PUSH_NULL CALL_NON_PY_GENERAL 971,304 0.3% 75.9%
LOAD_ATTR_METHOD_NO_DICT CALL_PY_EXACT_ARGS 969,964 0.3% 76.2%
LOAD_ATTR_INSTANCE_VALUE POP_JUMP_IF_NONE 969,388 0.3% 76.5%
LOAD_ATTR PUSH_NULL 963,158 0.3% 76.8%
BUILD_LIST LOAD_FAST 962,178 0.3% 77.0%

Predecessor/Successor Pairs

Top 5 predecessors and successors of each Tier 1 opcode.

This does not include the unspecialized instructions that occur after a specialized instruction deoptimizes.

BINARY_SLICE

Successors and predecessors for BINARY_SLICE
Predecessors Count Percentage
LOAD_FAST 320,316 85.7%
LOAD_CONST 53,347 14.3%
Successors Count Percentage
CALL 320,356 85.7%
CALL_METHOD_DESCRIPTOR_O 44,921 12.0%
STORE_FAST 7,906 2.1%
LIST_EXTEND 240 0.1%
UNPACK_SEQUENCE_TWO_TUPLE 200 0.1%

CACHE

Successors and predecessors for CACHE
Successors Count Percentage
RESUME_CHECK 2,664,136 99.9%
COPY_FREE_VARS 1,200 0.0%
RESUME 660 0.0%
POP_TOP 400 0.0%
RETURN_GENERATOR 320 0.0%

BEFORE_ASYNC_WITH

Successors and predecessors for BEFORE_ASYNC_WITH
Predecessors Count Percentage
LOAD_FAST 80 100.0%
Successors Count Percentage
GET_AWAITABLE 80 100.0%

BEFORE_WITH

Successors and predecessors for BEFORE_WITH
Predecessors Count Percentage
LOAD_GLOBAL 40 100.0%
Successors Count Percentage
POP_TOP 40 100.0%

BINARY_SUBSCR

Successors and predecessors for BINARY_SUBSCR
Predecessors Count Percentage
LOAD_FAST 80 50.0%
RETURN_VALUE 40 25.0%
LOAD_CONST 40 25.0%
Successors Count Percentage
BINARY_SUBSCR_DICT 60 37.5%
PUSH_EXC_INFO 40 25.0%
STORE_FAST 20 12.5%
UNPACK_SEQUENCE 20 12.5%
BINARY_SUBSCR_LIST_INT 20 12.5%

CHECK_EXC_MATCH

Successors and predecessors for CHECK_EXC_MATCH
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 460 69.7%
BUILD_TUPLE 160 24.2%
LOAD_GLOBAL 40 6.1%
Successors Count Percentage
POP_JUMP_IF_FALSE 660 100.0%

DELETE_SUBSCR

Successors and predecessors for DELETE_SUBSCR
Predecessors Count Percentage
BUILD_SLICE 320,316 100.0%
Successors Count Percentage
LOAD_FAST 320,316 100.0%

END_SEND

Successors and predecessors for END_SEND
Predecessors Count Percentage
RETURN_CONST 336,876 34.1%
SEND 328,796 33.3%
RETURN_VALUE 321,356 32.6%
Successors Count Percentage
POP_TOP 665,832 67.5%
STORE_FAST 320,796 32.5%
UNPACK_SEQUENCE 120 0.0%
UNPACK_SEQUENCE_TWO_TUPLE 120 0.0%
RETURN_VALUE 80 0.0%

EXIT_INIT_CHECK

Successors and predecessors for EXIT_INIT_CHECK
Predecessors Count Percentage
RETURN_CONST 180 100.0%
Successors Count Percentage
RETURN_VALUE 180 100.0%

GET_ITER

Successors and predecessors for GET_ITER
Predecessors Count Percentage
LOAD_FAST 647,637 49.9%
CALL_BUILTIN_CLASS 641,437 49.4%
LOAD_ATTR_INSTANCE_VALUE 8,040 0.6%
CALL_METHOD_DESCRIPTOR_NOARGS 160 0.0%
CALL 80 0.0%
Successors Count Percentage
FOR_ITER_LIST 647,257 49.9%
FOR_ITER_RANGE 641,377 49.4%
FOR_ITER 8,600 0.7%
EXTENDED_ARG 80 0.0%
LOAD_FAST_AND_CLEAR 80 0.0%

INTERPRETER_EXIT

Successors and predecessors for INTERPRETER_EXIT
Predecessors Count Percentage
RETURN_VALUE 1,300,914 48.8%
RETURN_CONST 1,036,686 38.9%
YIELD_VALUE 328,956 12.3%
RETURN_GENERATOR 400 0.0%

MAKE_FUNCTION

Successors and predecessors for MAKE_FUNCTION
Predecessors Count Percentage
LOAD_CONST 640 100.0%
Successors Count Percentage
SET_FUNCTION_ATTRIBUTE 640 100.0%

NOP

Successors and predecessors for NOP
Predecessors Count Percentage
RESUME_CHECK 2,291,998 53.0%
POP_JUMP_IF_FALSE 694,864 16.1%
STORE_FAST 663,114 15.3%
POP_JUMP_IF_TRUE 328,702 7.6%
STORE_ATTR_INSTANCE_VALUE 320,296 7.4%
Successors Count Percentage
LOAD_FAST 3,009,706 69.6%
LOAD_GLOBAL_MODULE 1,313,428 30.4%
LOAD_GLOBAL_BUILTIN 320 0.0%
LOAD_GLOBAL 280 0.0%
LOAD_DEREF 160 0.0%

POP_EXCEPT

Successors and predecessors for POP_EXCEPT
Predecessors Count Percentage
SWAP 420 63.6%
POP_TOP 160 24.2%
COPY 80 12.1%
Successors Count Percentage
RETURN_VALUE 420 63.6%
POP_TOP 80 12.1%
JUMP_BACKWARD_NO_INTERRUPT 80 12.1%
RERAISE 80 12.1%

POP_TOP

Successors and predecessors for POP_TOP
Predecessors Count Percentage
RETURN_CONST 6,389,110 49.7%
CALL_METHOD_DESCRIPTOR_O 1,094,136 8.5%
CALL_FUNCTION_EX 1,023,900 8.0%
POP_JUMP_IF_FALSE 988,921 7.7%
END_SEND 665,832 5.2%
Successors Count Percentage
LOAD_FAST 5,335,937 41.5%
RETURN_CONST 3,101,940 24.1%
LOAD_CONST 2,004,125 15.6%
ENTER_EXECUTOR 771,326 6.0%
RESUME_CHECK 658,152 5.1%

PUSH_EXC_INFO

Successors and predecessors for PUSH_EXC_INFO
Predecessors Count Percentage
BINARY_SUBSCR_DICT 380 57.6%
RERAISE 80 12.1%
CALL_METHOD_DESCRIPTOR_NOARGS 80 12.1%
CALL_METHOD_DESCRIPTOR_O 60 9.1%
BINARY_SUBSCR 40 6.1%
Successors Count Percentage
LOAD_GLOBAL_BUILTIN 520 78.8%
LOAD_GLOBAL 140 21.2%

PUSH_NULL

Successors and predecessors for PUSH_NULL
Predecessors Count Percentage
LOAD_ATTR_MODULE 2,014,170 66.5%
LOAD_ATTR 963,158 31.8%
LOAD_DEREF 47,516 1.6%
LOAD_FAST 2,100 0.1%
Successors Count Percentage
LOAD_FAST 1,057,784 34.9%
LOAD_FAST_LOAD_FAST 995,556 32.9%
CALL_NON_PY_GENERAL 971,304 32.1%
CALL 1,540 0.1%
LOAD_CONST 480 0.0%

RETURN_GENERATOR

Successors and predecessors for RETURN_GENERATOR
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 337,116 99.5%
CALL 440 0.1%
CALL_KW 400 0.1%
CACHE 320 0.1%
MAKE_CELL 240 0.1%
Successors Count Percentage
GET_AWAITABLE 337,916 99.8%
INTERPRETER_EXIT 400 0.1%
STORE_FAST 160 0.0%
CALL 80 0.0%
LIST_APPEND 80 0.0%

RETURN_VALUE

Successors and predecessors for RETURN_VALUE
Predecessors Count Percentage
LOAD_FAST 3,956,643 31.5%
LOAD_ATTR_INSTANCE_VALUE 2,965,589 23.6%
RETURN_VALUE 1,314,828 10.5%
CALL_NON_PY_GENERAL 1,283,154 10.2%
CALL_METHOD_DESCRIPTOR_FAST 656,814 5.2%
Successors Count Percentage
STORE_FAST 3,303,663 26.3%
TO_BOOL_BOOL 3,259,443 26.0%
RETURN_VALUE 1,314,828 10.5%
INTERPRETER_EXIT 1,300,914 10.4%
LOAD_FAST 1,015,020 8.1%

STORE_SUBSCR

Successors and predecessors for STORE_SUBSCR
Predecessors Count Percentage
LOAD_ATTR 240 48.0%
LOAD_CONST 120 24.0%
LOAD_FAST 100 20.0%
STORE_SUBSCR 40 8.0%
Successors Count Percentage
RETURN_CONST 180 36.0%
STORE_SUBSCR_DICT 140 28.0%
LOAD_FAST 60 12.0%
STORE_SUBSCR 40 8.0%
LOAD_CONST 40 8.0%

TO_BOOL

Successors and predecessors for TO_BOOL
Predecessors Count Percentage
LOAD_FAST 988,746 69.3%
LOAD_ATTR_INSTANCE_VALUE 323,096 22.7%
LOAD_ATTR 108,474 7.6%
TO_BOOL 2,280 0.2%
RETURN_VALUE 1,000 0.1%
Successors Count Percentage
POP_JUMP_IF_TRUE 1,401,004 98.3%
POP_JUMP_IF_FALSE 19,472 1.4%
TO_BOOL_BOOL 2,320 0.2%
TO_BOOL 2,280 0.2%
TO_BOOL_INT 400 0.0%

UNARY_INVERT

Successors and predecessors for UNARY_INVERT
Predecessors Count Percentage
LOAD_ATTR_MODULE 328,187 50.6%
BINARY_OP 320,321 49.4%
LOAD_ATTR 40 0.0%
Successors Count Percentage
BINARY_OP 648,548 100.0%

UNARY_NOT

Successors and predecessors for UNARY_NOT
Predecessors Count Percentage
TO_BOOL_BOOL 1,280,024 100.0%
TO_BOOL 80 0.0%
TO_BOOL_INT 60 0.0%
Successors Count Percentage
COPY 640,082 50.0%
RETURN_VALUE 640,002 50.0%
STORE_FAST 80 0.0%

BINARY_OP

Successors and predecessors for BINARY_OP
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 1,002,707 36.4%
LOAD_ATTR_MODULE 754,572 27.4%
UNARY_INVERT 648,548 23.6%
POP_JUMP_IF_FALSE 328,787 11.9%
LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES 7,946 0.3%
Successors Count Percentage
TO_BOOL_INT 1,066,927 38.7%
COPY 679,066 24.7%
STORE_FAST 670,020 24.3%
UNARY_INVERT 320,321 11.6%
LOAD_FAST_LOAD_FAST 7,906 0.3%

BUILD_LIST

Successors and predecessors for BUILD_LIST
Predecessors Count Percentage
LOAD_ATTR_SLOT 641,437 66.2%
LOAD_FAST_LOAD_FAST 320,081 33.0%
STORE_FAST 5,620 0.6%
LOAD_FAST 640 0.1%
STORE_ATTR_INSTANCE_VALUE 360 0.0%
Successors Count Percentage
LOAD_FAST 962,178 99.3%
STORE_FAST 6,100 0.6%
RETURN_VALUE 240 0.0%
STORE_DEREF 160 0.0%
SWAP 80 0.0%

BUILD_MAP

Successors and predecessors for BUILD_MAP
Predecessors Count Percentage
BUILD_TUPLE 240 30.0%
STORE_ATTR_INSTANCE_VALUE 140 17.5%
POP_TOP 80 10.0%
LOAD_FAST 80 10.0%
POP_JUMP_IF_NOT_NONE 80 10.0%
Successors Count Percentage
LOAD_FAST 560 70.0%
STORE_FAST 240 30.0%

BUILD_SET

Successors and predecessors for BUILD_SET
Predecessors Count Percentage
LOAD_ATTR_MODULE 360 90.0%
LOAD_ATTR 40 10.0%
Successors Count Percentage
CONTAINS_OP_SET 320 80.0%
CONTAINS_OP 80 20.0%

BUILD_SLICE

Successors and predecessors for BUILD_SLICE
Predecessors Count Percentage
LOAD_FAST 320,316 100.0%
Successors Count Percentage
DELETE_SUBSCR 320,316 100.0%

BUILD_TUPLE

Successors and predecessors for BUILD_TUPLE
Predecessors Count Percentage
LOAD_CONST 328,147 49.4%
LOAD_FAST 321,041 48.3%
LOAD_FAST_LOAD_FAST 8,706 1.3%
BINARY_OP 5,340 0.8%
LOAD_GLOBAL_BUILTIN 560 0.1%
Successors Count Percentage
CALL_PY_EXACT_ARGS 335,973 50.6%
CALL_NON_PY_GENERAL 320,281 48.2%
CALL_LIST_APPEND 5,300 0.8%
LOAD_CONST 640 0.1%
RETURN_VALUE 400 0.1%

CALL

Successors and predecessors for CALL
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 321,096 44.6%
BINARY_SLICE 320,356 44.4%
LOAD_GLOBAL_MODULE 53,207 7.4%
ENTER_EXECUTOR 7,486 1.0%
LOAD_FAST 5,120 0.7%
Successors Count Percentage
STORE_FAST 321,136 44.6%
LOAD_CONST 320,476 44.5%
RETURN_VALUE 53,167 7.4%
LOAD_FAST 9,086 1.3%
CALL_PY_EXACT_ARGS 3,640 0.5%

CALL_FUNCTION_EX

Successors and predecessors for CALL_FUNCTION_EX
Predecessors Count Percentage
CALL_INTRINSIC_1 961,778 93.9%
ENTER_EXECUTOR 62,182 6.1%
DICT_MERGE 240 0.0%
LOAD_FAST 160 0.0%
LOAD_ATTR_INSTANCE_VALUE 60 0.0%
Successors Count Percentage
POP_TOP 1,023,900 99.9%
RESUME_CHECK 220 0.0%
GET_AWAITABLE 160 0.0%
COPY_FREE_VARS 80 0.0%
MAKE_CELL 80 0.0%

CALL_INTRINSIC_1

Successors and predecessors for CALL_INTRINSIC_1
Predecessors Count Percentage
LIST_EXTEND 961,778 100.0%
Successors Count Percentage
CALL_FUNCTION_EX 961,778 100.0%

CALL_KW

Successors and predecessors for CALL_KW
Predecessors Count Percentage
LOAD_CONST 346,928 100.0%
Successors Count Percentage
RETURN_VALUE 328,876 94.8%
COPY_FREE_VARS 15,812 4.6%
STORE_FAST 800 0.2%
RESUME_CHECK 420 0.1%
RETURN_GENERATOR 400 0.1%

COMPARE_OP

Successors and predecessors for COMPARE_OP
Predecessors Count Percentage
LOAD_ATTR 16,052 84.3%
LOAD_CONST 980 5.1%
LOAD_ATTR_MODULE 940 4.9%
COMPARE_OP 540 2.8%
CALL_BUILTIN_CLASS 140 0.7%
Successors Count Percentage
POP_JUMP_IF_FALSE 17,772 93.3%
COMPARE_OP 540 2.8%
COMPARE_OP_INT 500 2.6%
POP_JUMP_IF_TRUE 120 0.6%
COMPARE_OP_STR 60 0.3%

CONTAINS_OP

Successors and predecessors for CONTAINS_OP
Predecessors Count Percentage
LOAD_FAST 240 41.4%
BUILD_SET 80 13.8%
CONTAINS_OP 60 10.3%
LOAD_ATTR 60 10.3%
LOAD_FAST_LOAD_FAST 40 6.9%
Successors Count Percentage
POP_JUMP_IF_FALSE 360 62.1%
CONTAINS_OP_DICT 80 13.8%
CONTAINS_OP 60 10.3%
CONTAINS_OP_SET 60 10.3%
POP_JUMP_IF_TRUE 20 3.4%

COPY

Successors and predecessors for COPY
Predecessors Count Percentage
BINARY_OP 679,066 51.2%
UNARY_NOT 640,082 48.3%
CALL_LEN 5,440 0.4%
LOAD_FAST 320 0.0%
CALL_BUILTIN_FAST 220 0.0%
Successors Count Percentage
TO_BOOL_INT 684,246 51.6%
TO_BOOL_BOOL 640,282 48.3%
TO_BOOL 480 0.0%
LOAD_ATTR 240 0.0%
COMPARE_OP_INT 120 0.0%

COPY_FREE_VARS

Successors and predecessors for COPY_FREE_VARS
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 657,734 95.1%
CALL_KW 15,812 2.3%
CALL_BOUND_METHOD_EXACT_ARGS 15,792 2.3%
CACHE 1,200 0.2%
LOAD_ATTR_PROPERTY 580 0.1%
Successors Count Percentage
RESUME_CHECK 690,858 99.9%
RESUME 600 0.1%
RETURN_GENERATOR 80 0.0%
MAKE_CELL 80 0.0%

DICT_MERGE

Successors and predecessors for DICT_MERGE
Predecessors Count Percentage
LOAD_FAST 240 100.0%
Successors Count Percentage
CALL_FUNCTION_EX 240 100.0%

ENTER_EXECUTOR

Successors and predecessors for ENTER_EXECUTOR
Predecessors Count Percentage
POP_TOP 771,326 31.8%
POP_JUMP_IF_FALSE 640,877 26.4%
CALL_LIST_APPEND 373,083 15.4%
POP_JUMP_IF_TRUE 320,056 13.2%
STORE_FAST 319,896 13.2%
Successors Count Percentage
RETURN_CONST 639,797 26.3%
RETURN_VALUE 636,977 26.2%
POP_TOP 383,043 15.8%
CALL_LIST_APPEND 368,083 15.2%
SEND_GEN 319,896 13.2%

EXTENDED_ARG

Successors and predecessors for EXTENDED_ARG
Predecessors Count Percentage
GET_ITER 80 33.3%
POP_TOP 80 33.3%
JUMP_BACKWARD 80 33.3%
Successors Count Percentage
FOR_ITER 160 66.7%
JUMP_BACKWARD 80 33.3%

FOR_ITER

Successors and predecessors for FOR_ITER
Predecessors Count Percentage
GET_ITER 8,600 90.1%
JUMP_BACKWARD 500 5.2%
FOR_ITER 260 2.7%
EXTENDED_ARG 160 1.7%
SWAP 20 0.2%
Successors Count Percentage
STORE_FAST 8,300 87.0%
RETURN_CONST 460 4.8%
FOR_ITER 260 2.7%
FOR_ITER_LIST 240 2.5%
LOAD_FAST 180 1.9%

GET_AWAITABLE

Successors and predecessors for GET_AWAITABLE
Predecessors Count Percentage
RETURN_GENERATOR 337,916 50.7%
LOAD_ATTR_INSTANCE_VALUE 320,296 48.0%
LOAD_FAST 8,240 1.2%
RETURN_VALUE 240 0.0%
CALL_FUNCTION_EX 160 0.0%
Successors Count Percentage
LOAD_CONST 667,112 100.0%

IMPORT_FROM

Successors and predecessors for IMPORT_FROM
Predecessors Count Percentage
IMPORT_NAME 20 100.0%
Successors Count Percentage
STORE_FAST 20 100.0%

IMPORT_NAME

Successors and predecessors for IMPORT_NAME
Predecessors Count Percentage
LOAD_CONST 100 100.0%
Successors Count Percentage
STORE_FAST 80 80.0%
IMPORT_FROM 20 20.0%

IS_OP

Successors and predecessors for IS_OP
Predecessors Count Percentage
LOAD_FAST 720 34.6%
LOAD_GLOBAL_MODULE 720 34.6%
LOAD_CONST 560 26.9%
LOAD_FAST_LOAD_FAST 80 3.8%
Successors Count Percentage
POP_JUMP_IF_FALSE 1,520 73.1%
RETURN_VALUE 400 19.2%
LOAD_DEREF 160 7.7%

JUMP_BACKWARD

Successors and predecessors for JUMP_BACKWARD
Predecessors Count Percentage
POP_TOP 1,740 49.0%
POP_JUMP_IF_FALSE 474 13.3%
CALL_LIST_APPEND 440 12.4%
POP_JUMP_IF_TRUE 340 9.6%
STORE_FAST 340 9.6%
Successors Count Percentage
FOR_ITER_LIST 1,260 35.5%
LOAD_FAST 754 21.2%
FOR_ITER_RANGE 740 20.8%
FOR_ITER 500 14.1%
POP_TOP 80 2.3%

JUMP_BACKWARD_NO_INTERRUPT

Successors and predecessors for JUMP_BACKWARD_NO_INTERRUPT
Predecessors Count Percentage
RESUME_CHECK 1,307,024 100.0%
RESUME 480 0.0%
POP_EXCEPT 80 0.0%
Successors Count Percentage
SEND_GEN 978,368 74.8%
SEND 329,136 25.2%
LOAD_CONST 80 0.0%

JUMP_FORWARD

Successors and predecessors for JUMP_FORWARD
Predecessors Count Percentage
STORE_FAST 1,329,388 80.5%
POP_TOP 320,841 19.4%
STORE_ATTR 320 0.0%
POP_JUMP_IF_TRUE 160 0.0%
CALL_LIST_APPEND 140 0.0%
Successors Count Percentage
LOAD_FAST 1,644,889 99.6%
LOAD_GLOBAL_BUILTIN 5,660 0.3%
LOAD_DEREF 160 0.0%
LOAD_GLOBAL 160 0.0%
LOAD_GLOBAL_MODULE 120 0.0%

LIST_APPEND

Successors and predecessors for LIST_APPEND
Predecessors Count Percentage
RETURN_GENERATOR 80 100.0%
Successors Count Percentage
JUMP_BACKWARD 80 100.0%

LIST_EXTEND

Successors and predecessors for LIST_EXTEND
Predecessors Count Percentage
LOAD_ATTR_SLOT 641,437 66.7%
LOAD_FAST 320,081 33.3%
BINARY_SLICE 240 0.0%
LOAD_ATTR 20 0.0%
Successors Count Percentage
CALL_INTRINSIC_1 961,778 100.0%

LOAD_ATTR

Successors and predecessors for LOAD_ATTR
Predecessors Count Percentage
LOAD_FAST 9,558,931 85.1%
LOAD_ATTR_SLOT 961,878 8.6%
LOAD_ATTR_INSTANCE_VALUE 649,602 5.8%
LOAD_FAST_LOAD_FAST 32,244 0.3%
LOAD_ATTR 17,820 0.2%
Successors Count Percentage
CALL_PY_EXACT_ARGS 2,430,434 21.6%
LOAD_FAST 2,071,065 18.4%
TO_BOOL_BOOL 1,296,096 11.5%
PUSH_NULL 963,158 8.6%
SWAP 709,436 6.3%

LOAD_CONST

Successors and predecessors for LOAD_CONST
Predecessors Count Percentage
LOAD_FAST 2,953,896 25.4%
POP_TOP 2,004,125 17.2%
STORE_ATTR_SLOT 1,645,773 14.2%
POP_JUMP_IF_FALSE 1,344,823 11.6%
POP_JUMP_IF_TRUE 985,089 8.5%
Successors Count Percentage
LOAD_FAST 5,883,674 50.6%
COMPARE_OP_INT 1,958,120 16.8%
STORE_FAST 1,404,512 12.1%
CALL_NON_PY_GENERAL 656,863 5.6%
CALL_KW 346,928 3.0%

LOAD_DEREF

Successors and predecessors for LOAD_DEREF
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 643,162 88.4%
LOAD_ATTR 31,664 4.4%
STORE_FAST 16,372 2.3%
RESUME_CHECK 16,112 2.2%
CALL_LEN 15,792 2.2%
Successors Count Percentage
LOAD_FAST 659,674 90.7%
PUSH_NULL 47,516 6.5%
COMPARE_OP_INT 15,812 2.2%
LOAD_ATTR 960 0.1%
LOAD_CONST 560 0.1%

LOAD_FAST

Successors and predecessors for LOAD_FAST
Predecessors Count Percentage
RESUME_CHECK 12,948,951 16.9%
STORE_FAST 8,598,086 11.2%
POP_JUMP_IF_FALSE 8,174,101 10.6%
LOAD_CONST 5,883,674 7.7%
POP_TOP 5,335,937 6.9%
Successors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 20,276,557 26.4%
LOAD_ATTR 9,558,931 12.5%
LOAD_ATTR_SLOT 6,698,953 8.7%
CALL_PY_EXACT_ARGS 5,632,194 7.3%
LOAD_ATTR_METHOD_WITH_VALUES 4,602,260 6.0%

LOAD_FAST_AND_CLEAR

Successors and predecessors for LOAD_FAST_AND_CLEAR
Predecessors Count Percentage
GET_ITER 80 100.0%
Successors Count Percentage
SWAP 80 100.0%

LOAD_FAST_CHECK

Successors and predecessors for LOAD_FAST_CHECK
Predecessors Count Percentage
JUMP_FORWARD 20 100.0%
Successors Count Percentage
SWAP 20 100.0%

LOAD_FAST_LOAD_FAST

Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors Count Percentage
STORE_ATTR_SLOT 1,975,709 27.9%
PUSH_NULL 995,556 14.0%
LOAD_ATTR_METHOD_NO_DICT 728,307 10.3%
LOAD_FAST_LOAD_FAST 652,637 9.2%
LOAD_GLOBAL_MODULE 641,942 9.0%
Successors Count Percentage
STORE_ATTR_SLOT 2,634,732 37.1%
LOAD_FAST 1,314,751 18.5%
CALL_NON_PY_GENERAL 666,769 9.4%
CALL_METHOD_DESCRIPTOR_FAST 656,774 9.3%
LOAD_FAST_LOAD_FAST 652,637 9.2%

LOAD_GLOBAL

Successors and predecessors for LOAD_GLOBAL
Predecessors Count Percentage
LOAD_FAST 1,420 14.4%
POP_TOP 980 9.9%
RESUME 940 9.5%
RESUME_CHECK 920 9.3%
STORE_FAST 840 8.5%
Successors Count Percentage
LOAD_GLOBAL_MODULE 3,120 31.6%
LOAD_ATTR 1,920 19.5%
LOAD_GLOBAL_BUILTIN 1,740 17.6%
LOAD_FAST 900 9.1%
LOAD_DEREF 520 5.3%

LOAD_SUPER_ATTR

Successors and predecessors for LOAD_SUPER_ATTR
Predecessors Count Percentage
LOAD_FAST 900 100.0%
Successors Count Percentage
LOAD_SUPER_ATTR_METHOD 400 44.4%
LOAD_FAST 200 22.2%
CALL 140 15.6%
LOAD_FAST_LOAD_FAST 80 8.9%
LOAD_GLOBAL 40 4.4%

MAKE_CELL

Successors and predecessors for MAKE_CELL
Predecessors Count Percentage
MAKE_CELL 880 61.1%
CACHE 240 16.7%
CALL_KW 160 11.1%
CALL_FUNCTION_EX 80 5.6%
COPY_FREE_VARS 80 5.6%
Successors Count Percentage
MAKE_CELL 880 61.1%
RESUME_CHECK 260 18.1%
RETURN_GENERATOR 240 16.7%
RESUME 60 4.2%

POP_JUMP_IF_FALSE

Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors Count Percentage
TO_BOOL_BOOL 8,614,197 56.8%
COMPARE_OP_INT 2,745,649 18.1%
TO_BOOL_INT 2,125,941 14.0%
TO_BOOL_NONE 661,632 4.4%
TO_BOOL_LIST 644,577 4.3%
Successors Count Percentage
LOAD_FAST 8,174,101 53.9%
RETURN_CONST 1,369,594 9.0%
LOAD_CONST 1,344,823 8.9%
POP_TOP 988,921 6.5%
LOAD_GLOBAL_BUILTIN 961,378 6.3%

POP_JUMP_IF_NONE

Successors and predecessors for POP_JUMP_IF_NONE
Predecessors Count Percentage
LOAD_FAST 1,309,001 57.2%
LOAD_ATTR_INSTANCE_VALUE 969,388 42.4%
LOAD_ATTR 8,986 0.4%
CALL_NON_PY_GENERAL 140 0.0%
LOAD_DEREF 80 0.0%
Successors Count Percentage
LOAD_FAST 1,964,419 85.9%
LOAD_CONST 320,476 14.0%
RETURN_CONST 1,360 0.1%
LOAD_FAST_LOAD_FAST 400 0.0%
LOAD_GLOBAL 300 0.0%

POP_JUMP_IF_NOT_NONE

Successors and predecessors for POP_JUMP_IF_NOT_NONE
Predecessors Count Percentage
LOAD_FAST 1,375,964 81.0%
LOAD_ATTR_INSTANCE_VALUE 321,196 18.9%
LOAD_GLOBAL_MODULE 220 0.0%
LOAD_ATTR 100 0.0%
LOAD_DEREF 80 0.0%
Successors Count Percentage
LOAD_FAST 1,034,117 60.9%
LOAD_FAST_LOAD_FAST 330,236 19.5%
LOAD_GLOBAL_MODULE 329,747 19.4%
LOAD_CONST 2,220 0.1%
LOAD_GLOBAL 400 0.0%

POP_JUMP_IF_TRUE

Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors Count Percentage
TO_BOOL_BOOL 2,968,642 58.5%
TO_BOOL 1,401,004 27.6%
TO_BOOL_INT 707,030 13.9%
CONTAINS_OP_SET 220 0.0%
COMPARE_OP_INT 200 0.0%
Successors Count Percentage
LOAD_FAST 3,071,372 60.5%
LOAD_CONST 985,089 19.4%
NOP 328,702 6.5%
LOAD_GLOBAL_BUILTIN 320,296 6.3%
ENTER_EXECUTOR 320,056 6.3%

RAISE_VARARGS

Successors and predecessors for RAISE_VARARGS
Predecessors Count Percentage
LOAD_CONST 80 100.0%
Successors Count Percentage
COPY 80 100.0%

RERAISE

Successors and predecessors for RERAISE
Predecessors Count Percentage
POP_EXCEPT 80 100.0%
Successors Count Percentage
PUSH_EXC_INFO 80 100.0%

RETURN_CONST

Successors and predecessors for RETURN_CONST
Predecessors Count Percentage
POP_TOP 3,101,940 40.0%
POP_JUMP_IF_FALSE 1,369,594 17.6%
STORE_ATTR_SLOT 987,530 12.7%
STORE_FAST 705,299 9.1%
STORE_ATTR_INSTANCE_VALUE 641,537 8.3%
Successors Count Percentage
POP_TOP 6,389,110 82.3%
INTERPRETER_EXIT 1,036,686 13.4%
END_SEND 336,876 4.3%
RETURN_VALUE 240 0.0%
EXIT_INIT_CHECK 180 0.0%

SEND

Successors and predecessors for SEND
Predecessors Count Percentage
LOAD_CONST 329,376 50.0%
JUMP_BACKWARD_NO_INTERRUPT 329,136 49.9%
SEND 720 0.1%
Successors Count Percentage
END_SEND 328,796 49.9%
YIELD_VALUE 328,796 49.9%
SEND 720 0.1%
POP_TOP 460 0.1%
SEND_GEN 460 0.1%

SET_FUNCTION_ATTRIBUTE

Successors and predecessors for SET_FUNCTION_ATTRIBUTE
Predecessors Count Percentage
MAKE_FUNCTION 640 100.0%
Successors Count Percentage
STORE_FAST 560 87.5%
LOAD_FAST_LOAD_FAST 80 12.5%

STORE_ATTR

Successors and predecessors for STORE_ATTR
Predecessors Count Percentage
LOAD_FAST 646,702 99.4%
LOAD_FAST_LOAD_FAST 1,780 0.3%
STORE_ATTR 1,580 0.2%
LOAD_ATTR_INSTANCE_VALUE 280 0.0%
SWAP 240 0.0%
Successors Count Percentage
LOAD_FAST 641,542 98.6%
LOAD_CONST 2,220 0.3%
STORE_ATTR_INSTANCE_VALUE 2,120 0.3%
STORE_ATTR 1,580 0.2%
RETURN_CONST 1,020 0.2%

STORE_DEREF

Successors and predecessors for STORE_DEREF
Predecessors Count Percentage
LOAD_CONST 320 36.4%
BUILD_LIST 160 18.2%
CALL_KW 160 18.2%
BINARY_OP_ADD_INT 120 13.6%
CALL_NON_PY_GENERAL 60 6.8%
Successors Count Percentage
LOAD_FAST 480 54.5%
LOAD_CONST 160 18.2%
BUILD_LIST 80 9.1%
LOAD_DEREF 80 9.1%
LOAD_FAST_LOAD_FAST 80 9.1%

STORE_FAST

Successors and predecessors for STORE_FAST
Predecessors Count Percentage
RETURN_VALUE 3,303,663 24.5%
CALL_NON_PY_GENERAL 1,698,386 12.6%
LOAD_CONST 1,404,512 10.4%
LOAD_FAST 1,313,488 9.7%
SWAP 709,436 5.3%
Successors Count Percentage
LOAD_FAST 8,598,086 63.7%
JUMP_FORWARD 1,329,388 9.8%
UNPACK_SEQUENCE_TWO_TUPLE 709,276 5.3%
RETURN_CONST 705,299 5.2%
LOAD_GLOBAL_BUILTIN 695,058 5.1%

STORE_FAST_LOAD_FAST

Successors and predecessors for STORE_FAST_LOAD_FAST
Predecessors Count Percentage
COPY 20 100.0%
Successors Count Percentage
LOAD_ATTR 20 100.0%

STORE_FAST_STORE_FAST

Successors and predecessors for STORE_FAST_STORE_FAST
Predecessors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 1,085,899 99.9%
UNPACK_SEQUENCE 260 0.0%
POP_TOP 80 0.0%
COPY 80 0.0%
STORE_FAST_STORE_FAST 80 0.0%
Successors Count Percentage
LOAD_FAST 1,085,659 99.9%
LOAD_GLOBAL_MODULE 320 0.0%
LOAD_GLOBAL 160 0.0%
RETURN_VALUE 80 0.0%
LOAD_CONST 80 0.0%

STORE_GLOBAL

Successors and predecessors for STORE_GLOBAL
Predecessors Count Percentage
CALL 20 100.0%
Successors Count Percentage
LOAD_CONST 20 100.0%

SWAP

Successors and predecessors for SWAP
Predecessors Count Percentage
LOAD_ATTR 709,436 99.8%
LOAD_FAST 400 0.1%
BUILD_TUPLE 240 0.0%
BINARY_OP_ADD_INT 200 0.0%
LOAD_FAST_LOAD_FAST 160 0.0%
Successors Count Percentage
STORE_FAST 709,436 99.8%
POP_EXCEPT 420 0.1%
POP_TOP 240 0.0%
STORE_ATTR 240 0.0%
COPY 160 0.0%

UNPACK_SEQUENCE

Successors and predecessors for UNPACK_SEQUENCE
Predecessors Count Percentage
STORE_FAST 160 23.5%
END_SEND 120 17.6%
RETURN_VALUE 80 11.8%
LOAD_FAST 80 11.8%
FOR_ITER_LIST 80 11.8%
Successors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 280 41.2%
STORE_FAST_STORE_FAST 260 38.2%
UNPACK_SEQUENCE_TUPLE 60 8.8%
STORE_FAST 40 5.9%
POP_TOP 20 2.9%

YIELD_VALUE

Successors and predecessors for YIELD_VALUE
Predecessors Count Percentage
YIELD_VALUE 978,708 74.8%
SEND 328,796 25.1%
LOAD_CONST 160 0.0%
Successors Count Percentage
YIELD_VALUE 978,708 74.8%
INTERPRETER_EXIT 328,956 25.2%

RESUME

Successors and predecessors for RESUME
Predecessors Count Percentage
CALL 2,100 47.9%
CACHE 660 15.1%
COPY_FREE_VARS 600 13.7%
POP_TOP 480 11.0%
SEND_GEN 400 9.1%
Successors Count Percentage
LOAD_FAST 2,240 51.1%
LOAD_GLOBAL 940 21.5%
JUMP_BACKWARD_NO_INTERRUPT 480 11.0%
LOAD_CONST 240 5.5%
NOP 180 4.1%

BINARY_OP_ADD_FLOAT

Successors and predecessors for BINARY_OP_ADD_FLOAT
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 641,237 100.0%
BINARY_OP 20 0.0%
Successors Count Percentage
STORE_FAST 641,257 100.0%

BINARY_OP_ADD_INT

Successors and predecessors for BINARY_OP_ADD_INT
Predecessors Count Percentage
CALL_LEN 320,196 99.9%
LOAD_CONST 240 0.1%
BINARY_OP 100 0.0%
Successors Count Percentage
STORE_FAST 320,216 99.9%
SWAP 200 0.1%
STORE_DEREF 120 0.0%

BINARY_OP_MULTIPLY_INT

Successors and predecessors for BINARY_OP_MULTIPLY_INT
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 320,196 100.0%
BINARY_OP 40 0.0%
LOAD_CONST 40 0.0%
Successors Count Percentage
COMPARE_OP_INT 320,236 100.0%
COMPARE_OP 40 0.0%

BINARY_OP_SUBTRACT_FLOAT

Successors and predecessors for BINARY_OP_SUBTRACT_FLOAT
Predecessors Count Percentage
LOAD_FAST 40 66.7%
BINARY_OP 20 33.3%
Successors Count Percentage
STORE_FAST 60 100.0%

BINARY_OP_SUBTRACT_INT

Successors and predecessors for BINARY_OP_SUBTRACT_INT
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 7,960 97.3%
CALL_LEN 120 1.5%
BINARY_OP 60 0.7%
LOAD_CONST 40 0.5%
Successors Count Percentage
STORE_FAST 7,980 97.6%
RETURN_VALUE 140 1.7%
SWAP 60 0.7%

BINARY_SUBSCR_DICT

Successors and predecessors for BINARY_SUBSCR_DICT
Predecessors Count Percentage
RETURN_VALUE 15,852 93.5%
LOAD_FAST 1,040 6.1%
BINARY_SUBSCR 60 0.4%
Successors Count Percentage
STORE_FAST 15,792 93.2%
RETURN_VALUE 780 4.6%
PUSH_EXC_INFO 380 2.2%

BINARY_SUBSCR_GETITEM

Successors and predecessors for BINARY_SUBSCR_GETITEM
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 80 100.0%
Successors Count Percentage
RESUME_CHECK 80 100.0%

BINARY_SUBSCR_LIST_INT

Successors and predecessors for BINARY_SUBSCR_LIST_INT
Predecessors Count Percentage
LOAD_CONST 40 66.7%
BINARY_SUBSCR 20 33.3%
Successors Count Percentage
UNPACK_SEQUENCE_TUPLE 40 66.7%
UNPACK_SEQUENCE 20 33.3%

BINARY_SUBSCR_TUPLE_INT

Successors and predecessors for BINARY_SUBSCR_TUPLE_INT
Predecessors Count Percentage
LOAD_CONST 20 100.0%
Successors Count Percentage
RETURN_VALUE 20 100.0%

CALL_ALLOC_AND_ENTER_INIT

Successors and predecessors for CALL_ALLOC_AND_ENTER_INIT
Predecessors Count Percentage
CALL 60 33.3%
LOAD_FAST 40 22.2%
LOAD_FAST_LOAD_FAST 40 22.2%
LOAD_ATTR_INSTANCE_VALUE 40 22.2%
Successors Count Percentage
RESUME_CHECK 180 100.0%

CALL_BOUND_METHOD_EXACT_ARGS

Successors and predecessors for CALL_BOUND_METHOD_EXACT_ARGS
Predecessors Count Percentage
LOAD_ATTR 320,276 95.3%
CALL_BUILTIN_CLASS 15,772 4.7%
CALL 40 0.0%
Successors Count Percentage
RESUME_CHECK 320,296 95.3%
COPY_FREE_VARS 15,792 4.7%

CALL_BOUND_METHOD_GENERAL

Successors and predecessors for CALL_BOUND_METHOD_GENERAL
Predecessors Count Percentage
CALL 40 33.3%
LOAD_ATTR 40 33.3%
LOAD_CONST 40 33.3%
Successors Count Percentage
GET_AWAITABLE 60 50.0%
RESUME_CHECK 60 50.0%

CALL_BUILTIN_CLASS

Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors Count Percentage
LOAD_FAST 657,429 91.4%
LOAD_ATTR 60,827 8.5%
LOAD_GLOBAL_BUILTIN 380 0.1%
CALL 280 0.0%
LOAD_ATTR_INSTANCE_VALUE 160 0.0%
Successors Count Percentage
GET_ITER 641,437 89.2%
CALL_BUILTIN_FAST_WITH_KEYWORDS 60,827 8.5%
CALL_BOUND_METHOD_EXACT_ARGS 15,772 2.2%
STORE_FAST 500 0.1%
LOAD_FAST 400 0.1%

CALL_BUILTIN_FAST

Successors and predecessors for CALL_BUILTIN_FAST
Predecessors Count Percentage
LOAD_CONST 460 67.6%
LOAD_ATTR_SLOT 120 17.6%
CALL 80 11.8%
LOAD_FAST_LOAD_FAST 20 2.9%
Successors Count Percentage
TO_BOOL_BOOL 280 41.2%
COPY 220 32.4%
POP_TOP 140 20.6%
TO_BOOL 40 5.9%

CALL_BUILTIN_FAST_WITH_KEYWORDS

Successors and predecessors for CALL_BUILTIN_FAST_WITH_KEYWORDS
Predecessors Count Percentage
CALL_BUILTIN_CLASS 60,827 100.0%
CALL 20 0.0%
Successors Count Percentage
RETURN_VALUE 60,847 100.0%

CALL_BUILTIN_O

Successors and predecessors for CALL_BUILTIN_O
Predecessors Count Percentage
LOAD_FAST 120 50.0%
CALL 80 33.3%
LOAD_CONST 40 16.7%
Successors Count Percentage
POP_TOP 180 75.0%
CALL_BUILTIN_CLASS 40 16.7%
CALL 20 8.3%

CALL_ISINSTANCE

Successors and predecessors for CALL_ISINSTANCE
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 1,314,168 99.9%
BUILD_TUPLE 400 0.0%
CALL 260 0.0%
LOAD_ATTR_MODULE 160 0.0%
LOAD_GLOBAL_MODULE 160 0.0%
Successors Count Percentage
TO_BOOL_BOOL 1,314,888 100.0%
TO_BOOL 260 0.0%

CALL_LEN

Successors and predecessors for CALL_LEN
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 1,288,634 76.8%
LOAD_FAST 388,889 23.2%
CALL 240 0.0%
Successors Count Percentage
STORE_FAST 695,798 41.5%
LOAD_CONST 320,336 19.1%
BINARY_OP_ADD_INT 320,196 19.1%
LOAD_FAST 319,901 19.1%
LOAD_DEREF 15,792 0.9%

CALL_LIST_APPEND

Successors and predecessors for CALL_LIST_APPEND
Predecessors Count Percentage
ENTER_EXECUTOR 368,083 98.5%
BUILD_TUPLE 5,300 1.4%
LOAD_FAST 120 0.0%
LOAD_ATTR_MODULE 120 0.0%
CALL 100 0.0%
Successors Count Percentage
ENTER_EXECUTOR 373,083 99.8%
JUMP_BACKWARD 440 0.1%
JUMP_FORWARD 140 0.0%
LOAD_FAST 60 0.0%

CALL_METHOD_DESCRIPTOR_FAST

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 656,774 67.0%
RETURN_VALUE 320,281 32.7%
LOAD_FAST 2,720 0.3%
CALL 80 0.0%
Successors Count Percentage
RETURN_VALUE 656,814 67.0%
STORE_FAST 323,041 33.0%

CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
Predecessors Count Percentage
LOAD_FAST 336,053 50.8%
LOAD_ATTR 320,281 48.4%
LOAD_FAST_LOAD_FAST 5,420 0.8%
CALL 80 0.0%
LOAD_CONST 80 0.0%
Successors Count Percentage
POP_TOP 656,394 99.2%
STORE_FAST 5,440 0.8%
RETURN_VALUE 80 0.0%

CALL_METHOD_DESCRIPTOR_NOARGS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_NOARGS
Predecessors Count Percentage
LOAD_ATTR_METHOD_NO_DICT 695,478 67.8%
LOAD_ATTR_METHOD_LAZY_DICT 329,076 32.1%
CALL 760 0.1%
LOAD_FAST 360 0.0%
LOAD_ATTR 40 0.0%
Successors Count Percentage
STORE_FAST 694,518 67.7%
TO_BOOL_BOOL 329,036 32.1%
POP_TOP 620 0.1%
LOAD_FAST 460 0.0%
TO_BOOL 340 0.0%

CALL_METHOD_DESCRIPTOR_O

Successors and predecessors for CALL_METHOD_DESCRIPTOR_O
Predecessors Count Percentage
LOAD_FAST 1,048,175 95.8%
BINARY_SLICE 44,921 4.1%
CALL 860 0.1%
LOAD_CONST 260 0.0%
Successors Count Percentage
POP_TOP 1,094,136 100.0%
PUSH_EXC_INFO 60 0.0%
LOAD_CONST 20 0.0%

CALL_NON_PY_GENERAL

Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors Count Percentage
PUSH_NULL 971,304 29.3%
LOAD_FAST_LOAD_FAST 666,769 20.1%
LOAD_CONST 656,863 19.8%
LOAD_ATTR_INSTANCE_VALUE 320,636 9.7%
LOAD_ATTR 320,316 9.7%
Successors Count Percentage
STORE_FAST 1,698,386 51.3%
RETURN_VALUE 1,283,154 38.7%
POP_TOP 330,316 10.0%
LOAD_FAST 640 0.0%
POP_JUMP_IF_NONE 140 0.0%

CALL_PY_EXACT_ARGS

Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors Count Percentage
LOAD_FAST 5,632,194 38.5%
LOAD_ATTR_METHOD_WITH_VALUES 4,938,341 33.7%
LOAD_ATTR 2,430,434 16.6%
LOAD_ATTR_METHOD_NO_DICT 969,964 6.6%
BUILD_TUPLE 335,973 2.3%
Successors Count Percentage
RESUME_CHECK 13,639,072 93.2%
COPY_FREE_VARS 657,734 4.5%
RETURN_GENERATOR 337,116 2.3%
ENTER_EXECUTOR 60 0.0%

CALL_PY_GENERAL

Successors and predecessors for CALL_PY_GENERAL
Predecessors Count Percentage
LOAD_FAST 657,214 66.6%
LOAD_ATTR 328,027 33.2%
CALL 520 0.1%
LOAD_CONST 480 0.0%
LOAD_ATTR_METHOD_NO_DICT 360 0.0%
Successors Count Percentage
RESUME_CHECK 986,601 100.0%
RETURN_GENERATOR 120 0.0%

CALL_TYPE_1

Successors and predecessors for CALL_TYPE_1
Predecessors Count Percentage
LOAD_FAST 920 97.9%
CALL 20 2.1%
Successors Count Percentage
LOAD_FAST 720 76.6%
LOAD_GLOBAL_MODULE 200 21.3%
LOAD_GLOBAL 20 2.1%

COMPARE_OP_INT

Successors and predecessors for COMPARE_OP_INT
Predecessors Count Percentage
LOAD_CONST 1,958,120 71.3%
BINARY_OP_MULTIPLY_INT 320,236 11.7%
LOAD_ATTR_INSTANCE_VALUE 319,881 11.6%
LOAD_ATTR_SLOT 60,787 2.2%
LOAD_FAST_LOAD_FAST 52,921 1.9%
Successors Count Percentage
POP_JUMP_IF_FALSE 2,745,649 100.0%
POP_JUMP_IF_TRUE 200 0.0%

COMPARE_OP_STR

Successors and predecessors for COMPARE_OP_STR
Predecessors Count Percentage
LOAD_CONST 140 70.0%
COMPARE_OP 60 30.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 80 40.0%
COPY 60 30.0%
STORE_FAST 60 30.0%

CONTAINS_OP_DICT

Successors and predecessors for CONTAINS_OP_DICT
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 320,321 99.9%
LOAD_ATTR_SLOT 120 0.0%
CONTAINS_OP 80 0.0%
LOAD_FAST_LOAD_FAST 40 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 320,561 100.0%

CONTAINS_OP_SET

Successors and predecessors for CONTAINS_OP_SET
Predecessors Count Percentage
BUILD_SET 320 55.2%
LOAD_GLOBAL_MODULE 200 34.5%
CONTAINS_OP 60 10.3%
Successors Count Percentage
POP_JUMP_IF_FALSE 360 62.1%
POP_JUMP_IF_TRUE 220 37.9%

FOR_ITER_LIST

Successors and predecessors for FOR_ITER_LIST
Predecessors Count Percentage
GET_ITER 647,257 99.8%
JUMP_BACKWARD 1,260 0.2%
FOR_ITER 240 0.0%
SWAP 60 0.0%
Successors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 375,983 57.9%
RETURN_CONST 268,794 41.4%
LOAD_FAST 3,000 0.5%
STORE_FAST 660 0.1%
LOAD_DEREF 140 0.0%

FOR_ITER_RANGE

Successors and predecessors for FOR_ITER_RANGE
Predecessors Count Percentage
GET_ITER 641,377 99.9%
JUMP_BACKWARD 740 0.1%
FOR_ITER 60 0.0%
Successors Count Percentage
STORE_FAST 641,977 100.0%
LOAD_CONST 200 0.0%

FOR_ITER_TUPLE

Successors and predecessors for FOR_ITER_TUPLE
Predecessors Count Percentage
GET_ITER 80 50.0%
JUMP_BACKWARD 60 37.5%
FOR_ITER 20 12.5%
Successors Count Percentage
STORE_FAST 80 50.0%
LOAD_GLOBAL 40 25.0%
LOAD_GLOBAL_MODULE 40 25.0%

LOAD_ATTR_CLASS

Successors and predecessors for LOAD_ATTR_CLASS
Predecessors Count Percentage
LOAD_FAST 360 94.7%
LOAD_ATTR 20 5.3%
Successors Count Percentage
LOAD_FAST 380 100.0%

LOAD_ATTR_INSTANCE_VALUE

Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST 20,276,557 95.3%
LOAD_ATTR_INSTANCE_VALUE 656,654 3.1%
LOAD_FAST_LOAD_FAST 337,013 1.6%
LOAD_ATTR 3,500 0.0%
LOAD_DEREF 440 0.0%
Successors Count Percentage
TO_BOOL_BOOL 4,226,649 19.9%
LOAD_ATTR_METHOD_NO_DICT 3,321,201 15.6%
RETURN_VALUE 2,965,589 13.9%
LOAD_ATTR_METHOD_WITH_VALUES 2,334,618 11.0%
CALL_LEN 1,288,634 6.1%

LOAD_ATTR_METHOD_LAZY_DICT

Successors and predecessors for LOAD_ATTR_METHOD_LAZY_DICT
Predecessors Count Percentage
LOAD_FAST 657,792 99.8%
LOAD_ATTR 620 0.1%
LOAD_ATTR_INSTANCE_VALUE 400 0.1%
Successors Count Percentage
CALL_METHOD_DESCRIPTOR_NOARGS 329,076 49.9%
LOAD_CONST 328,616 49.9%
CALL 400 0.1%
CALL_NON_PY_GENERAL 280 0.0%
LOAD_FAST 260 0.0%

LOAD_ATTR_METHOD_NO_DICT

Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 3,321,201 69.2%
LOAD_FAST 1,093,318 22.8%
LOAD_ATTR 382,923 8.0%
LOAD_ATTR_SLOT 120 0.0%
LOAD_FAST_LOAD_FAST 80 0.0%
Successors Count Percentage
LOAD_FAST 2,401,553 50.1%
CALL_PY_EXACT_ARGS 969,964 20.2%
LOAD_FAST_LOAD_FAST 728,307 15.2%
CALL_METHOD_DESCRIPTOR_NOARGS 695,478 14.5%
LOAD_GLOBAL_MODULE 840 0.0%

LOAD_ATTR_METHOD_WITH_VALUES

Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors Count Percentage
LOAD_FAST 4,602,260 45.0%
LOAD_ATTR_INSTANCE_VALUE 2,334,618 22.9%
LOAD_ATTR_SLOT 1,962,865 19.2%
RETURN_VALUE 656,734 6.4%
LOAD_ATTR 339,176 3.3%
Successors Count Percentage
CALL_PY_EXACT_ARGS 4,938,341 48.3%
LOAD_FAST 4,608,369 45.1%
LOAD_FAST_LOAD_FAST 346,788 3.4%
LOAD_CONST 320,416 3.1%
CALL 1,340 0.0%

LOAD_ATTR_MODULE

Successors and predecessors for LOAD_ATTR_MODULE
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 3,419,410 99.9%
LOAD_ATTR 1,920 0.1%
LOAD_FAST 120 0.0%
Successors Count Percentage
PUSH_NULL 2,014,170 58.9%
BINARY_OP 754,572 22.1%
UNARY_INVERT 328,187 9.6%
LOAD_FAST 320,421 9.4%
COMPARE_OP 940 0.0%

LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES

Successors and predecessors for LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES
Predecessors Count Percentage
LOAD_FAST 343,999 100.0%
LOAD_ATTR 100 0.0%
Successors Count Percentage
LOAD_FAST 336,153 97.7%
BINARY_OP 7,946 2.3%

LOAD_ATTR_PROPERTY

Successors and predecessors for LOAD_ATTR_PROPERTY
Predecessors Count Percentage
LOAD_FAST 320,756 99.9%
LOAD_ATTR 220 0.1%
LOAD_DEREF 120 0.0%
LOAD_FAST_LOAD_FAST 40 0.0%
Successors Count Percentage
RESUME_CHECK 320,556 99.8%
COPY_FREE_VARS 580 0.2%

LOAD_ATTR_SLOT

Successors and predecessors for LOAD_ATTR_SLOT
Predecessors Count Percentage
LOAD_FAST 6,698,953 99.9%
LOAD_FAST_LOAD_FAST 7,960 0.1%
LOAD_ATTR 840 0.0%
LOAD_ATTR_MODULE 80 0.0%
Successors Count Percentage
LOAD_ATTR_METHOD_WITH_VALUES 1,962,865 29.3%
TO_BOOL_BOOL 1,777,137 26.5%
LOAD_ATTR 961,878 14.3%
TO_BOOL_NONE 660,552 9.8%
BUILD_LIST 641,437 9.6%

LOAD_GLOBAL_BUILTIN

Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors Count Percentage
RESUME_CHECK 2,019,317 31.5%
LOAD_FAST 1,634,764 25.5%
POP_JUMP_IF_FALSE 961,378 15.0%
STORE_FAST 695,058 10.9%
LOAD_GLOBAL_BUILTIN 442,810 6.9%
Successors Count Percentage
LOAD_FAST 4,002,059 62.5%
CALL_ISINSTANCE 1,314,168 20.5%
LOAD_DEREF 643,162 10.0%
LOAD_GLOBAL_BUILTIN 442,810 6.9%
BUILD_TUPLE 560 0.0%

LOAD_GLOBAL_MODULE

Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors Count Percentage
LOAD_FAST 2,397,521 35.5%
RESUME_CHECK 1,675,117 24.8%
NOP 1,313,428 19.4%
POP_TOP 333,127 4.9%
POP_JUMP_IF_NOT_NONE 329,747 4.9%
Successors Count Percentage
LOAD_ATTR_MODULE 3,419,410 50.6%
LOAD_FAST 1,314,288 19.4%
BINARY_OP 1,002,707 14.8%
LOAD_FAST_LOAD_FAST 641,942 9.5%
LOAD_GLOBAL_MODULE 320,281 4.7%

LOAD_SUPER_ATTR_ATTR

Successors and predecessors for LOAD_SUPER_ATTR_ATTR
Predecessors Count Percentage
LOAD_FAST 640 94.1%
LOAD_SUPER_ATTR 40 5.9%
Successors Count Percentage
LOAD_GLOBAL_MODULE 640 94.1%
LOAD_GLOBAL 40 5.9%

LOAD_SUPER_ATTR_METHOD

Successors and predecessors for LOAD_SUPER_ATTR_METHOD
Predecessors Count Percentage
LOAD_FAST 642,082 99.9%
LOAD_SUPER_ATTR 400 0.1%
Successors Count Percentage
LOAD_FAST 321,321 50.0%
LOAD_FAST_LOAD_FAST 320,721 49.9%
CALL_PY_EXACT_ARGS 320 0.0%
CALL 120 0.0%

RESUME_CHECK

Successors and predecessors for RESUME_CHECK
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 13,639,072 67.3%
CACHE 2,664,136 13.1%
CALL_PY_GENERAL 986,601 4.9%
SEND_GEN 978,308 4.8%
COPY_FREE_VARS 690,858 3.4%
Successors Count Percentage
LOAD_FAST 12,948,951 63.9%
NOP 2,291,998 11.3%
LOAD_GLOBAL_BUILTIN 2,019,317 10.0%
LOAD_GLOBAL_MODULE 1,675,117 8.3%
JUMP_BACKWARD_NO_INTERRUPT 1,307,024 6.5%

SEND_GEN

Successors and predecessors for SEND_GEN
Predecessors Count Percentage
JUMP_BACKWARD_NO_INTERRUPT 978,368 59.8%
LOAD_CONST 337,736 20.6%
ENTER_EXECUTOR 319,896 19.5%
SEND 460 0.0%
JUMP_BACKWARD 20 0.0%
Successors Count Percentage
RESUME_CHECK 978,308 59.8%
POP_TOP 657,772 40.2%
RESUME 400 0.0%

STORE_ATTR_INSTANCE_VALUE

Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST 1,621,770 99.7%
STORE_ATTR 2,120 0.1%
LOAD_FAST_LOAD_FAST 1,740 0.1%
LOAD_DEREF 320 0.0%
SWAP 80 0.0%
Successors Count Percentage
LOAD_FAST 658,577 40.5%
RETURN_CONST 641,537 39.5%
NOP 320,296 19.7%
LOAD_CONST 2,840 0.2%
LOAD_FAST_LOAD_FAST 780 0.0%

STORE_ATTR_SLOT

Successors and predecessors for STORE_ATTR_SLOT
Predecessors Count Percentage
LOAD_FAST 2,977,310 53.0%
LOAD_FAST_LOAD_FAST 2,634,732 46.9%
STORE_ATTR 460 0.0%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 1,975,709 35.2%
LOAD_CONST 1,645,773 29.3%
LOAD_FAST 987,530 17.6%
RETURN_CONST 987,530 17.6%
NOP 15,960 0.3%

STORE_SUBSCR_DICT

Successors and predecessors for STORE_SUBSCR_DICT
Predecessors Count Percentage
LOAD_ATTR 336,053 99.8%
LOAD_CONST 280 0.1%
LOAD_FAST 160 0.0%
STORE_SUBSCR 140 0.0%
Successors Count Percentage
LOAD_FAST 336,153 99.9%
NOP 140 0.0%
LOAD_CONST 140 0.0%
RETURN_CONST 140 0.0%
LOAD_FAST_LOAD_FAST 60 0.0%

TO_BOOL_BOOL

Successors and predecessors for TO_BOOL_BOOL
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 4,226,649 32.9%
RETURN_VALUE 3,259,443 25.3%
LOAD_ATTR_SLOT 1,777,137 13.8%
CALL_ISINSTANCE 1,314,888 10.2%
LOAD_ATTR 1,296,096 10.1%
Successors Count Percentage
POP_JUMP_IF_FALSE 8,614,197 67.0%
POP_JUMP_IF_TRUE 2,968,642 23.1%
UNARY_NOT 1,280,024 10.0%

TO_BOOL_INT

Successors and predecessors for TO_BOOL_INT
Predecessors Count Percentage
BINARY_OP 1,066,927 37.6%
LOAD_FAST 709,215 25.0%
COPY 684,246 24.1%
LOAD_ATTR 373,463 13.2%
TO_BOOL 400 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 2,125,941 75.0%
POP_JUMP_IF_TRUE 707,030 24.9%
ENTER_EXECUTOR 1,260 0.0%
UNARY_NOT 60 0.0%

TO_BOOL_LIST

Successors and predecessors for TO_BOOL_LIST
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 644,437 100.0%
TO_BOOL 200 0.0%
LOAD_FAST 120 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 644,577 100.0%
POP_JUMP_IF_TRUE 180 0.0%

TO_BOOL_NONE

Successors and predecessors for TO_BOOL_NONE
Predecessors Count Percentage
LOAD_ATTR_SLOT 660,552 99.8%
LOAD_FAST 520 0.1%
LOAD_ATTR 360 0.1%
TO_BOOL 200 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 661,632 100.0%

UNPACK_SEQUENCE_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TUPLE
Predecessors Count Percentage
LOAD_FAST 80 44.4%
UNPACK_SEQUENCE 60 33.3%
BINARY_SUBSCR_LIST_INT 40 22.2%
Successors Count Percentage
POP_TOP 60 33.3%
STORE_FAST 60 33.3%
STORE_FAST_STORE_FAST 60 33.3%

UNPACK_SEQUENCE_TWO_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TWO_TUPLE
Predecessors Count Percentage
STORE_FAST 709,276 65.3%
FOR_ITER_LIST 375,983 34.6%
UNPACK_SEQUENCE 280 0.0%
BINARY_SLICE 200 0.0%
END_SEND 120 0.0%
Successors Count Percentage
STORE_FAST_STORE_FAST 1,085,899 100.0%
LOAD_FAST 60 0.0%
STORE_FAST 60 0.0%

Specialization stats

Specialization stats by family

BINARY_OP

specialization stats for BINARY_OP family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

2,749,860 68.0%
hit

Specialized instructions that complete.

1,290,309 31.9%
Success Count Ratio
Success 240 6.5%
Failure 3,460 93.5%
Failure kind Count Ratio
and int 2,440 70.5%
or 960 27.7%
floor divide 40 1.2%
multiply different types 20 0.6%

BINARY_SLICE

specialization stats for BINARY_SLICE family

BINARY_SUBSCR

specialization stats for BINARY_SUBSCR family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

80 0.5%
hit

Specialized instructions that complete.

17,112 99.1%
Success Count Ratio
Success 80 100.0%
Failure 0 0.0%

CALL

specialization stats for CALL family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

713,505 3.0%
hit

Specialized instructions that complete.

23,214,734 97.0%
miss

Specialized instructions that deopt.

2,020 0.0%
Success Count Ratio
Success 7,960 86.1%
Failure 1,280 13.9%
Failure kind Count Ratio
class no vectorcall 1,180 92.2%
init not inline values 100 7.8%
wrong number arguments 60 4.7%
out of versions 40 3.1%

COMPARE_OP

specialization stats for COMPARE_OP family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

17,952 0.6%
hit

Specialized instructions that complete.

2,746,049 99.3%
Success Count Ratio
Success 560 50.9%
Failure 540 49.1%
Failure kind Count Ratio
other 220 40.7%
tuple 160 29.6%
different types 120 22.2%
bool 40 7.4%

CONTAINS_OP

specialization stats for CONTAINS_OP family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

380 0.1%
hit

Specialized instructions that complete.

321,141 99.8%
Success Count Ratio
Success 140 70.0%
Failure 60 30.0%
Failure kind Count Ratio
str 60 100.0%

FOR_ITER

specialization stats for FOR_ITER family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

8,960 0.7%
hit

Specialized instructions that complete.

1,291,154 99.3%
Success Count Ratio
Success 320 55.2%
Failure 260 44.8%
Failure kind Count Ratio
other 140 53.8%
dict items 80 30.8%
set 40 15.4%

LOAD_ATTR

specialization stats for LOAD_ATTR family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

11,203,795 19.0%
hit

Specialized instructions that complete.

47,737,570 81.0%
miss

Specialized instructions that deopt.

4,240 0.0%
Success Count Ratio
Success 11,540 42.8%
Failure 15,440 57.2%
Failure kind Count Ratio
not managed dict 6,660 43.1%
non string or split 5,800 37.6%
method 1,540 10.0%
class attr simple 940 6.1%
metaclass attribute 180 1.2%
class method obj 160 1.0%
non object slot 80 0.5%
class attr descriptor 60 0.4%
builtin class method 20 0.1%

LOAD_GLOBAL

specialization stats for LOAD_GLOBAL family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

5,080 0.0%
deopt

Specialized instructions that deopt.

80 0.0%
hit

Specialized instructions that complete.

13,164,874 99.9%
miss

Specialized instructions that deopt.

80 0.0%
Success Count Ratio
Success 4,860 100.0%
Failure 0 0.0%

LOAD_SUPER_ATTR

specialization stats for LOAD_SUPER_ATTR family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

460 0.1%
hit

Specialized instructions that complete.

643,162 99.9%
Success Count Ratio
Success 440 100.0%
Failure 0 0.0%

POP_JUMP_IF_FALSE

specialization stats for POP_JUMP_IF_FALSE family

POP_JUMP_IF_NONE

specialization stats for POP_JUMP_IF_NONE family

POP_JUMP_IF_NOT_NONE

specialization stats for POP_JUMP_IF_NOT_NONE family

POP_JUMP_IF_TRUE

specialization stats for POP_JUMP_IF_TRUE family

SEND

specialization stats for SEND family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

658,052 28.7%
hit

Specialized instructions that complete.

1,636,480 71.3%
Success Count Ratio
Success 460 39.0%
Failure 720 61.0%
Failure kind Count Ratio
other 720 100.0%

STORE_ATTR

specialization stats for STORE_ATTR family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

646,622 8.2%
hit

Specialized instructions that complete.

7,238,532 91.8%
Success Count Ratio
Success 2,580 62.0%
Failure 1,580 38.0%
Failure kind Count Ratio
non string or split 1,280 81.0%
class attr simple 120 7.6%
overridden 80 5.1%
no dict 60 3.8%
overriding descriptor 40 2.5%

STORE_SUBSCR

specialization stats for STORE_SUBSCR family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

320 0.1%
hit

Specialized instructions that complete.

336,633 99.9%
Success Count Ratio
Success 140 77.8%
Failure 40 22.2%
Failure kind Count Ratio
py simple 40 100.0%

TO_BOOL

specialization stats for TO_BOOL family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

1,420,556 7.7%
hit

Specialized instructions that complete.

17,003,543 92.3%
Success Count Ratio
Success 3,120 57.8%
Failure 2,280 42.2%
Failure kind Count Ratio
bytes 840 36.8%
sequence 600 26.3%
bytearray 260 11.4%
dict 180 7.9%
memory view 140 6.1%
mapping 120 5.3%
set 100 4.4%
float 20 0.9%
tuple 20 0.9%

UNPACK_SEQUENCE

specialization stats for UNPACK_SEQUENCE family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

340 0.0%
hit

Specialized instructions that complete.

1,086,199 99.9%
Success Count Ratio
Success 340 100.0%
Failure 0 0.0%

Specialization effectiveness

specialization effectiveness

All entries are execution counts. Should add up to the total number of Tier 1 instructions executed.

Instructions Count Ratio
Basic

Instructions that are not and cannot be specialized, e.g. LOAD_FAST.

174,229,588 48.6%
Not specialized

Instructions that could be specialized but aren't, e.g. LOAD_ATTR, BINARY_SLICE.

42,069,857 11.7%
Specialized hits

Specialized instructions, e.g. LOAD_ATTR_MODULE that complete.

141,953,140 39.6%
Specialized misses

Specialized instructions, e.g. LOAD_ATTR_MODULE that deopt.

6,340 0.0%

Deferred by instruction

Breakdown of deferred (not specialized) instruction counts by family
Name Count Ratio
LOAD_ATTR 11,203,795 64.3%
BINARY_OP 2,749,860 15.8%
TO_BOOL 1,420,556 8.2%
CALL 713,505 4.1%
SEND 658,052 3.8%
STORE_ATTR 646,622 3.7%
COMPARE_OP 17,952 0.1%
FOR_ITER 8,960 0.1%
LOAD_GLOBAL 5,080 0.0%
LOAD_SUPER_ATTR 460 0.0%

Misses by instruction

Breakdown of misses (specialized deopts) instruction counts by family
Name Count Ratio
LOAD_ATTR_METHOD_WITH_VALUES 4,240 66.9%
CALL_METHOD_DESCRIPTOR_NOARGS 1,420 22.4%
CALL_METHOD_DESCRIPTOR_O 480 7.6%
LOAD_GLOBAL_BUILTIN 80 1.3%
CALL_BOUND_METHOD_GENERAL 60 0.9%
CALL_BUILTIN_O 60 0.9%
CACHE 0 0.0%
BEFORE_ASYNC_WITH 0 0.0%
BEFORE_WITH 0 0.0%
CHECK_EXC_MATCH 0 0.0%

Call stats

Inlined calls and frame stats

This shows what fraction of calls to Python functions are inlined (i.e. not having a call at the C level) and for those that are not, where the call comes from. The various categories overlap.

Also includes the count of frame objects created.

Count Ratio
Calls to PyEval_EvalDefault 2,666,956 12.0%
Calls to Python functions inlined 19,612,171 88.0%
Calls via PyEval_EvalFrame (total) 2,666,956 12.0%
Calls via PyEval_EvalFrame (vector) 2,337,600 10.5%
Calls via PyEval_EvalFrame (generator) 329,356 1.5%
Calls via PyEval_EvalFrame (legacy) 0 0.0%
Calls via PyEval_EvalFrame (function vectorcall) 2,337,600 10.5%
Calls via PyEval_EvalFrame (build class) 0 0.0%
Calls via PyEval_EvalFrame (slot) 320 0.0%
Calls via PyEval_EvalFrame (function ex) 400 0.0%
Calls via PyEval_EvalFrame (api) 1,400 0.0%
Calls via PyEval_EvalFrame (method) 659,432 3.0%
Frame objects created 740 0.0%
Frames pushed 20,313,011 91.2%

Object stats

Allocations, frees and dict materializatons

Below, "allocations" means "allocations that are not from a freelist". Total allocations = "Allocations from freelist" + "Allocations".

"Inline values" is the number of values arrays inlined into objects.

The cache hit/miss numbers are for the MRO cache, split into dunder and other names.

Count Ratio
Allocations from freelist 9,612,680 43.1%
Frees to freelist 9,628,812
Allocations 12,701,274 56.9%
Allocations to 512 bytes 12,059,298 54.0%
Allocations to 4 kbytes 780 0.0%
Allocations over 4 kbytes 641,196 2.9%
Frees 13,163,938
Inline values 1,060
Interpreter increfs 175,369,576 80.0%
Interpreter decrefs 193,417,073 80.8%
Increfs 43,727,234 20.0%
Decrefs 46,037,305 19.2%
Materialize dict (on request) 0 0.0%
Materialize dict (new key) 0 0.0%
Materialize dict (too big) 0 0.0%
Materialize dict (str subclass) 0 0.0%
Method cache hits 12,838,605
Method cache misses 177,835
Method cache collisions 178,115
Method cache dunder hits 1,694,543
Method cache dunder misses 2,137

GC stats

GC collections and effectiveness

Collected/visits gives some measure of efficiency.

Generation Collections Objects collected Object visits
0 0 0 0
1 0 0 0
2 0 0 0

Optimization (Tier 2) stats

statistics about the Tier 2 optimizer
Count Ratio
Optimization attempts

The number of times a potential trace is identified. Specifically, this occurs in the JUMP BACKWARD instruction when the counter reaches a threshold.

1,680
Traces created

The number of traces that were successfully created.

340 20.2%
Trace stack overflow

A trace is truncated because it would require more than 5 stack frames.

0 0.0%
Trace stack underflow

A potential trace is abandoned because it pops more frames than it pushes.

780 46.4%
Trace too long

A trace is truncated because it is longer than the instruction buffer.

0 0.0%
Trace too short

A potential trace is abandoced because it it too short.

1,340 79.8%
Inner loop found

A trace is truncated because it has an inner loop

0 0.0%
Recursive call

A trace is truncated because it has a recursive call.

0 0.0%
Low confidence

A trace is abandoned because the likelihood of the jump to top being taken is too low.

80 4.8%
Executors invalidated

The number of executors that were invalidated due to watched dictionary changes.

0 0.0%
Traces executed

The number of traces that were executed

8,092,443
Uops executed

The total number of uops (micro-operations) that were executed

121,974,718 1,507.3%
Count Ratio
Optimizer attempts

The number of times the trace optimizer (_Py_uop_analyze_and_optimize) was run.

340
Optimizer successes

The number of traces that were successfully optimized.

340 100.0%
Optimizer no memory

The number of optimizations that failed due to no memory.

0 0.0%
Remove globals builtins changed

The builtins changed during optimization

0 0.0%
Remove globals incorrect keys

The keys in the globals dictionary aren't what was expected

0 0.0%

Trace length histogram

trace length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 0 0.0%
<= 8 20 5.9%
<= 16 20 5.9%
<= 32 80 23.5%
<= 64 60 17.6%
<= 128 80 23.5%
<= 256 80 23.5%

Optimized trace length histogram

optimized trace length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 20 5.9%
<= 8 20 5.9%
<= 16 20 5.9%
<= 32 120 35.3%
<= 64 60 17.6%
<= 128 100 29.4%

Trace run length histogram

trace run length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 636,977 7.9%
<= 8 2,034,300 25.1%
<= 16 120 0.0%
<= 32 1,015,435 12.5%
<= 64 967,133 12.0%
<= 128 378,143 4.7%

Uop execution stats

uop execution stats
Name Count Self Cumulative Miss ratio
_GUARD_TYPE_VERSION 8,578,956 7.0% 7.0%
_SET_IP 7,662,429 6.3% 13.3%
_LOAD_FAST_0 6,083,454 5.0% 18.3%
_CHECK_VALIDITY 5,979,457 4.9% 23.2%
_START_EXECUTOR 5,672,985 4.7% 27.9%
_CHECK_MANAGED_OBJECT_HAS_VALUES 5,218,065 4.3% 32.1%
_LOAD_ATTR_INSTANCE_VALUE_0 5,218,065 4.3% 36.4%
_EXIT_TRACE 5,024,428 4.1% 40.5%
_LOAD_CONST_INLINE_BORROW 4,660,045 3.8% 44.4%
_TIER2_RESUME_CHECK 3,065,055 2.5% 46.9%
_GUARD_IS_FALSE_POP 2,997,518 2.5% 49.3% 11.0%
_COLD_EXIT 2,419,458 2.0% 51.3%
_LOAD_FAST_1 1,956,703 1.6% 52.9%
_GUARD_IS_TRUE_POP 1,777,601 1.5% 54.4% 3.4%
_CHECK_FUNCTION_EXACT_ARGS 1,675,292 1.4% 55.7%
_PUSH_FRAME 1,675,292 1.4% 57.1%
_SAVE_RETURN_OFFSET 1,675,292 1.4% 58.5%
_POP_TOP 1,646,017 1.3% 59.8%
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT 1,605,490 1.3% 61.2%
_GUARD_KEYS_VERSION 1,605,490 1.3% 62.5%
_LOAD_ATTR_METHOD_WITH_VALUES 1,605,490 1.3% 63.8%
_CHECK_FUNCTION 1,602,765 1.3% 65.1%
_STORE_FAST_4 1,602,730 1.3% 66.4%
_LOAD_FAST_4 1,592,830 1.3% 67.7%
_LOAD_ATTR_METHOD_NO_DICT 1,506,533 1.2% 69.0%
_BINARY_OP 1,476,332 1.2% 70.2%
_LOAD_FAST 1,474,912 1.2% 71.4%
_TO_BOOL_INT 1,383,583 1.1% 72.5%
_GUARD_NOT_EXHAUSTED_LIST 1,381,703 1.1% 73.6% 73.2%
_ITER_CHECK_LIST 1,381,703 1.1% 74.8%
_COPY 1,375,863 1.1% 75.9%
_STORE_FAST_3 1,345,596 1.1% 77.0%
_LOAD_CONST_INLINE_WITH_NULL 1,283,074 1.1% 78.1%
_CALL_LEN 1,275,474 1.0% 79.1%
_STORE_FAST_1 1,275,474 1.0% 80.1%
_LOAD_FAST_3 1,129,644 0.9% 81.1%
_CHECK_PERIODIC 1,076,248 0.9% 82.0%
_CHECK_STACK_SPACE_OPERAND 1,026,815 0.8% 82.8%
_TO_BOOL 1,025,520 0.8% 83.6%
_INIT_CALL_PY_EXACT_ARGS_1 972,213 0.8% 84.4%
_COMPARE_OP_INT 965,513 0.8% 85.2%
_GUARD_NOS_INT 965,513 0.8% 86.0%
_TO_BOOL_LIST 950,898 0.8% 86.8%
_STORE_FAST 801,008 0.7% 87.5%
_CHECK_VALIDITY_AND_SET_IP 757,801 0.6% 88.1%
_LOAD_FAST_7 740,046 0.6% 88.7%
_RESUME_CHECK 714,499 0.6% 89.3%
_GUARD_NOT_EXHAUSTED_RANGE 711,019 0.6% 89.9% 90.2%
_ITER_CHECK_RANGE 711,019 0.6% 90.4%
_INIT_CALL_PY_EXACT_ARGS_0 703,079 0.6% 91.0%
_BUILD_LIST 698,019 0.6% 91.6%
_LOAD_FAST_2 643,657 0.5% 92.1%
_STORE_FAST_2 643,443 0.5% 92.6%
_CHECK_STACK_SPACE 640,877 0.5% 93.2%
_DYNAMIC_EXIT 640,877 0.5% 93.7%
_STORE_FAST_5 635,937 0.5% 94.2%
_GET_ITER 635,817 0.5% 94.7%
_CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 635,817 0.5% 95.3%
_LOAD_ATTR 476,031 0.4% 95.6%
_TO_BOOL_BOOL 450,905 0.4% 96.0%
_BUILD_TUPLE 375,683 0.3% 96.3%
_UNPACK_SEQUENCE_TWO_TUPLE 370,903 0.3% 96.6%
_ITER_NEXT_LIST 370,783 0.3% 96.9%
_STORE_FAST_6 370,783 0.3% 97.2%
_CALL_METHOD_DESCRIPTOR_FAST 370,663 0.3% 97.5%
_LOAD_FAST_5 370,663 0.3% 97.8%
_LOAD_FAST_6 370,663 0.3% 98.1%
_STORE_FAST_7 370,663 0.3% 98.5%
_RETURN_GENERATOR 319,916 0.3% 98.7%
_GET_AWAITABLE 319,916 0.3% 99.0%
_LOAD_CONST_INLINE 319,916 0.3% 99.2%
_GUARD_IS_NONE_POP 317,561 0.3% 99.5%
_LOAD_ATTR_SLOT_0 248,868 0.2% 99.7%
_ITER_NEXT_RANGE 69,862 0.1% 99.8%
_CALL_METHOD_DESCRIPTOR_NOARGS 62,262 0.1% 99.8%
_PUSH_NULL 62,202 0.1% 99.9%
_CALL_INTRINSIC_1 62,202 0.1% 99.9%
_LIST_EXTEND 62,202 0.1% 100.0%
_FOR_ITER_TIER_TWO 7,680 0.0% 100.0% 100.0%
_DEOPT 7,680 0.0% 100.0%
_CALL_ISINSTANCE 7,600 0.0% 100.0%
_CALL_NON_PY_GENERAL 7,506 0.0% 100.0%
_CHECK_IS_NOT_PY_CALLABLE 7,506 0.0% 100.0%
_LOAD_CONST_INLINE_BORROW_WITH_NULL 7,506 0.0% 100.0%
_SWAP 120 0.0% 100.0%
_GUARD_NOT_EXHAUSTED_TUPLE 20 0.0% 100.0% 100.0%
_ITER_CHECK_TUPLE 20 0.0% 100.0%

Pair counts

Pair counts for top 100 Non-JIT uop pairs

Pairs of specialized operations that deoptimize and are then followed by the corresponding unspecialized instruction are not counted as pairs.

Pair Count Self Cumulative
_LOAD_FAST_0 _GUARD_TYPE_VERSION 6,045,548 5.0% 5.0%
_CHECK_MANAGED_OBJECT_HAS_VALUES _LOAD_ATTR_INSTANCE_VALUE_0 5,218,065 4.3% 9.2%
_GUARD_TYPE_VERSION _CHECK_MANAGED_OBJECT_HAS_VALUES 5,218,065 4.3% 13.5%
_START_EXECUTOR _TIER2_RESUME_CHECK 3,065,055 2.5% 16.0%
_LOAD_ATTR_INSTANCE_VALUE_0 _SET_IP 1,922,731 1.6% 17.6%
_SET_IP _CHECK_FUNCTION_EXACT_ARGS 1,675,292 1.4% 19.0%
_SAVE_RETURN_OFFSET _PUSH_FRAME 1,675,292 1.4% 20.3%
_GUARD_IS_FALSE_POP _LOAD_FAST_0 1,657,008 1.4% 21.7%
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT _GUARD_KEYS_VERSION 1,605,490 1.3% 23.0%
_GUARD_KEYS_VERSION _LOAD_ATTR_METHOD_WITH_VALUES 1,605,490 1.3% 24.3%
_GUARD_TYPE_VERSION _GUARD_DORV_VALUES_INST_ATTR_FROM_DICT 1,605,490 1.3% 25.7%
_STORE_FAST_4 _LOAD_FAST_0 1,602,610 1.3% 27.0%
_GUARD_TYPE_VERSION _LOAD_ATTR_METHOD_NO_DICT 1,506,533 1.2% 28.2%
_BINARY_OP _CHECK_VALIDITY 1,476,332 1.2% 29.4%
_ITER_CHECK_LIST _GUARD_NOT_EXHAUSTED_LIST 1,381,703 1.1% 30.5%
_COPY _TO_BOOL_INT 1,375,863 1.1% 31.7%
_CHECK_VALIDITY _COPY 1,375,863 1.1% 32.8%
_LOAD_ATTR_INSTANCE_VALUE_0 _GUARD_TYPE_VERSION 1,335,176 1.1% 33.9%
_START_EXECUTOR _POP_TOP 1,276,774 1.0% 34.9%
_CALL_LEN _CHECK_VALIDITY 1,275,474 1.0% 36.0%
_SET_IP _CALL_LEN 1,275,474 1.0% 37.0%
_LOAD_CONST_INLINE_WITH_NULL _LOAD_FAST_0 1,275,474 1.0% 38.1%
_LOAD_FAST_4 _SET_IP 1,272,914 1.0% 39.1%
_SET_IP _BINARY_OP 1,108,249 0.9% 40.0%
_CHECK_PERIODIC _CHECK_VALIDITY 1,076,248 0.9% 40.9%
_LOAD_CONST_INLINE_BORROW _SET_IP 1,057,142 0.9% 41.8%
_CHECK_FUNCTION_EXACT_ARGS _CHECK_STACK_SPACE_OPERAND 1,026,815 0.8% 42.6%
_TO_BOOL _CHECK_VALIDITY 1,025,520 0.8% 43.5%
_SET_IP _TO_BOOL 1,017,920 0.8% 44.3%
_GUARD_NOT_EXHAUSTED_LIST _EXIT_TRACE 1,010,920 0.8% 45.1%
_LOAD_FAST_1 _LOAD_CONST_INLINE_BORROW 973,113 0.8% 45.9%
_INIT_CALL_PY_EXACT_ARGS_1 _SAVE_RETURN_OFFSET 972,213 0.8% 46.7%
_LOAD_CONST_INLINE_BORROW _STORE_FAST_4 966,793 0.8% 47.5%
_CHECK_FUNCTION _LOAD_CONST_INLINE_WITH_NULL 965,513 0.8% 48.3%
_GUARD_NOS_INT _COMPARE_OP_INT 965,513 0.8% 49.1%
_LOAD_CONST_INLINE_BORROW _GUARD_NOS_INT 965,513 0.8% 49.9%
_CHECK_STACK_SPACE_OPERAND _INIT_CALL_PY_EXACT_ARGS_1 964,613 0.8% 50.7%
_LOAD_ATTR_INSTANCE_VALUE_0 _TO_BOOL_LIST 950,898 0.8% 51.5%
_TO_BOOL_INT _GUARD_IS_TRUE_POP 755,941 0.6% 52.1%
_TIER2_RESUME_CHECK _ITER_CHECK_LIST 745,886 0.6% 52.7%
_CHECK_VALIDITY _STORE_FAST 738,746 0.6% 53.3%
_LOAD_FAST _SET_IP 738,746 0.6% 53.9%
_LOAD_FAST _LOAD_FAST 736,166 0.6% 54.5%
_LOAD_FAST_7 _LOAD_CONST_INLINE_BORROW 732,771 0.6% 55.1%
_PUSH_FRAME _RESUME_CHECK 714,499 0.6% 55.7%
_ITER_CHECK_RANGE _GUARD_NOT_EXHAUSTED_RANGE 711,019 0.6% 56.3%
_TIER2_RESUME_CHECK _ITER_CHECK_RANGE 711,019 0.6% 56.9%
_INIT_CALL_PY_EXACT_ARGS_0 _SAVE_RETURN_OFFSET 703,079 0.6% 57.4%
_POP_TOP _LOAD_CONST_INLINE_BORROW 699,099 0.6% 58.0%
_CHECK_VALIDITY _GUARD_IS_FALSE_POP 647,257 0.5% 58.5%
_LOAD_FAST_2 _SET_IP 643,657 0.5% 59.1%
_LOAD_ATTR_METHOD_NO_DICT _LOAD_FAST_1 643,323 0.5% 59.6%
_GUARD_NOT_EXHAUSTED_RANGE _EXIT_TRACE 641,157 0.5% 60.1%
_CHECK_FUNCTION_EXACT_ARGS _CHECK_STACK_SPACE 640,877 0.5% 60.6%
_CHECK_STACK_SPACE _INIT_CALL_PY_EXACT_ARGS_0 640,877 0.5% 61.2%
_LOAD_ATTR_METHOD_WITH_VALUES _SET_IP 640,877 0.5% 61.7%
_PUSH_FRAME _DYNAMIC_EXIT 640,877 0.5% 62.2%
_TIER2_RESUME_CHECK _LOAD_FAST_0 640,877 0.5% 62.7%
_LOAD_CONST_INLINE_BORROW _STORE_FAST_3 639,797 0.5% 63.3%
_STORE_FAST_3 _EXIT_TRACE 639,797 0.5% 63.8%
_TO_BOOL_LIST _GUARD_IS_FALSE_POP 639,657 0.5% 64.3%
_CHECK_VALIDITY _STORE_FAST_1 639,657 0.5% 64.8%
_COMPARE_OP_INT _GUARD_IS_FALSE_POP 639,657 0.5% 65.4%
_GUARD_IS_FALSE_POP _LOAD_CONST_INLINE_BORROW 639,657 0.5% 65.9%
_STORE_FAST_1 _LOAD_FAST_1 639,657 0.5% 66.4%
_TIER2_RESUME_CHECK _CHECK_FUNCTION 639,657 0.5% 66.9%
_LOAD_ATTR_METHOD_WITH_VALUES _LOAD_FAST_4 637,097 0.5% 67.5%
_POP_TOP _LOAD_FAST_3 636,977 0.5% 68.0%
_LOAD_FAST_3 _EXIT_TRACE 636,977 0.5% 68.5%
_GET_ITER _CHECK_VALIDITY 635,817 0.5% 69.0%
_BUILD_LIST _STORE_FAST_3 635,817 0.5% 69.6%
_SET_IP _GET_ITER 635,817 0.5% 70.1%
_SET_IP _CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 635,817 0.5% 70.6%
_CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS _CHECK_PERIODIC 635,817 0.5% 71.1%
_CHECK_VALIDITY _ITER_CHECK_LIST 635,817 0.5% 71.6%
_CHECK_VALIDITY _STORE_FAST_4 635,817 0.5% 72.2%
_GUARD_IS_TRUE_POP _STORE_FAST_2 635,817 0.5% 72.7%
_LOAD_ATTR_INSTANCE_VALUE_0 _STORE_FAST_5 635,817 0.5% 73.2%
_LOAD_CONST_INLINE_BORROW _STORE_FAST_1 635,817 0.5% 73.7%
_LOAD_FAST_1 _LOAD_FAST_2 635,817 0.5% 74.2%
_STORE_FAST_2 _BUILD_LIST 635,817 0.5% 74.8%
_STORE_FAST_3 _LOAD_FAST_0 635,817 0.5% 75.3%
_STORE_FAST_5 _LOAD_FAST_4 635,817 0.5% 75.8%
_LOAD_FAST_3 _GUARD_TYPE_VERSION 492,547 0.4% 76.2%
_SET_IP _LOAD_ATTR 476,031 0.4% 76.6%
_TO_BOOL_BOOL _GUARD_IS_FALSE_POP 443,305 0.4% 77.0%
_CHECK_VALIDITY _GUARD_IS_TRUE_POP 378,263 0.3% 77.3%
_LOAD_ATTR _CHECK_VALIDITY_AND_SET_IP 375,683 0.3% 77.6%
_LOAD_ATTR_INSTANCE_VALUE_0 _TO_BOOL_BOOL 373,443 0.3% 77.9%
_GUARD_NOT_EXHAUSTED_LIST _ITER_NEXT_LIST 370,783 0.3% 78.2%
_ITER_NEXT_LIST _UNPACK_SEQUENCE_TWO_TUPLE 370,783 0.3% 78.5%
_UNPACK_SEQUENCE_TWO_TUPLE _STORE_FAST_6 370,663 0.3% 78.8%
_SET_IP _CALL_METHOD_DESCRIPTOR_FAST 370,663 0.3% 79.1%
_CALL_METHOD_DESCRIPTOR_FAST _CHECK_PERIODIC 370,663 0.3% 79.4%
_GUARD_IS_TRUE_POP _LOAD_FAST_7 370,663 0.3% 79.7%
_LOAD_ATTR_METHOD_NO_DICT _LOAD_FAST_6 370,663 0.3% 80.0%
_LOAD_FAST_5 _GUARD_TYPE_VERSION 370,663 0.3% 80.3%
_LOAD_FAST_6 _SET_IP 370,663 0.3% 80.6%
_STORE_FAST _LOAD_FAST 370,663 0.3% 80.9%
_STORE_FAST_6 _STORE_FAST_7 370,663 0.3% 81.2%

Unsupported opcodes

unsupported opcodes
Opcode Count
CALL 360
SEND 160
CALL_FUNCTION_EX 120
CALL_LIST_APPEND 80
SEND_GEN 20

Optimizer errored out with opcode

Optimization stopped after encountering this opcode

Rare events

Counts of rare/unlikely events
Event Count
set class

Setting an object's class, obj.__class__ = ...

0
set bases

Setting the bases of a class, cls.__bases__ = ...

0
set eval frame func

Setting the PEP 523 frame eval function _PyInterpreterState_SetFrameEvalFunc()

0
builtin dict

Modifying the builtins, __builtins__.__dict__[var] = ...

0
func modification

Modifying a function, e.g. func.__defaults__ = ..., etc.

0
watched dict modification

A watched dict has been modified

0
watched globals modification

A watched globals() dict has been modified

0

Meta stats

Meta statistics
Count
Number of data files 20

Stats gathered on: 2024-06-16