Skip to content

Latest commit

 

History

History
12221 lines (11198 loc) · 219 KB

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

File metadata and controls

12221 lines (11198 loc) · 219 KB

Pystats results

  • benchmark: async_tree_tg
  • 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 343,458,880 20.1% 20.1%
LOAD_ATTR_INSTANCE_VALUE 122,448,980 7.2% 27.3%
POP_JUMP_IF_FALSE 93,326,760 5.5% 32.8%
RESUME_CHECK 93,325,740 5.5% 38.3% 0.0%
POP_TOP 86,602,800 5.1% 43.3%
LOAD_FAST_LOAD_FAST 85,850,760 5.0% 48.4%
LOAD_CONST 71,679,140 4.2% 52.6%
STORE_ATTR_SLOT 67,931,820 4.0% 56.6%
TO_BOOL_BOOL 58,233,620 3.4% 60.0%
RETURN_CONST 56,740,460 3.3% 63.3%
STORE_FAST 49,296,080 2.9% 66.2%
RETURN_VALUE 45,542,780 2.7% 68.9%
INTERPRETER_EXIT 44,790,500 2.6% 71.5%
LOAD_ATTR_METHOD_WITH_VALUES 44,051,300 2.6% 74.1%
CALL_PY_EXACT_ARGS 38,829,180 2.3% 76.4%
LOAD_ATTR_SLOT 29,121,240 1.7% 78.1%
LOAD_ATTR_METHOD_NO_DICT 27,626,800 1.6% 79.7%
CALL_METHOD_DESCRIPTOR_O 27,620,140 1.6% 81.3% 0.0%
POP_JUMP_IF_NOT_NONE 25,383,160 1.5% 82.8%
CALL_NON_PY_GENERAL 24,637,140 1.4% 84.2%
TO_BOOL_NONE 23,887,700 1.4% 85.6%
LOAD_GLOBAL_MODULE 22,401,960 1.3% 86.9%
PUSH_NULL 21,654,380 1.3% 88.2%
LOAD_ATTR_METHOD_LAZY_DICT 19,408,720 1.1% 89.4%
LOAD_ATTR_MODULE 17,172,940 1.0% 90.4%
ENTER_EXECUTOR 14,183,800 0.8% 91.2%
POP_JUMP_IF_NONE 13,437,680 0.8% 92.0%
STORE_ATTR_INSTANCE_VALUE 11,946,640 0.7% 92.7%
TO_BOOL 11,204,980 0.7% 93.3%
POP_JUMP_IF_TRUE 9,708,340 0.6% 93.9%
CALL_METHOD_DESCRIPTOR_NOARGS 9,707,000 0.6% 94.5% 0.0%
CALL_FUNCTION_EX 9,704,640 0.6% 95.0%
RETURN_GENERATOR 9,704,560 0.6% 95.6%
CALL_KW 9,704,480 0.6% 96.2%
LOAD_ATTR 8,973,900 0.5% 96.7%
SEND_GEN 5,972,140 0.4% 97.1%
END_SEND 5,972,080 0.4% 97.4%
GET_AWAITABLE 5,972,080 0.4% 97.8%
TO_BOOL_LIST 5,228,660 0.3% 98.1%
CALL 4,487,580 0.3% 98.3%
JUMP_FORWARD 4,482,660 0.3% 98.6%
COMPARE_OP_INT 4,482,600 0.3% 98.9%
CALL_PY_GENERAL 4,479,360 0.3% 99.1%
LOAD_GLOBAL_BUILTIN 1,502,160 0.1% 99.2% 0.0%
CALL_BUILTIN_CLASS 1,495,220 0.1% 99.3%
SEND 1,493,720 0.1% 99.4%
JUMP_BACKWARD_NO_INTERRUPT 1,493,120 0.1% 99.5%
YIELD_VALUE 1,493,120 0.1% 99.6%
CALL_BOUND_METHOD_EXACT_ARGS 760,860 0.0% 99.6% 100.0%
GET_ITER 751,540 0.0% 99.6%
NOP 751,480 0.0% 99.7%
BUILD_LIST 750,200 0.0% 99.7%
FOR_ITER_RANGE 748,680 0.0% 99.8%
BINARY_OP_SUBTRACT_INT 746,800 0.0% 99.8%
BEFORE_ASYNC_WITH 746,480 0.0% 99.9%
EXIT_INIT_CHECK 746,460 0.0% 99.9%
CALL_ALLOC_AND_ENTER_INIT 746,460 0.0% 100.0%
CALL_BUILTIN_FAST_WITH_KEYWORDS 746,460 0.0% 100.0%
CALL_LEN 4,740 0.0% 100.0%
LOAD_GLOBAL 3,900 0.0% 100.0%
STORE_ATTR 3,540 0.0% 100.0%
FOR_ITER_LIST 3,220 0.0% 100.0%
COPY 2,340 0.0% 100.0%
TO_BOOL_INT 1,960 0.0% 100.0%
CALL_INTRINSIC_1 1,880 0.0% 100.0%
LIST_EXTEND 1,880 0.0% 100.0%
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 1,780 0.0% 100.0%
RESUME 1,720 0.0% 100.0% 531.4%
BINARY_OP_ADD_FLOAT 1,580 0.0% 100.0%
LOAD_DEREF 1,220 0.0% 100.0%
COPY_FREE_VARS 1,060 0.0% 100.0%
JUMP_BACKWARD 1,040 0.0% 100.0%
BINARY_OP 800 0.0% 100.0%
BUILD_TUPLE 640 0.0% 100.0%
LOAD_SUPER_ATTR_METHOD 620 0.0% 100.0%
CALL_ISINSTANCE 520 0.0% 100.0%
COMPARE_OP 500 0.0% 100.0%
FOR_ITER 440 0.0% 100.0%
BUILD_MAP 400 0.0% 100.0%
IS_OP 400 0.0% 100.0%
LOAD_SUPER_ATTR 380 0.0% 100.0%
SWAP 340 0.0% 100.0%
MAKE_FUNCTION 240 0.0% 100.0%
SET_FUNCTION_ATTRIBUTE 240 0.0% 100.0%
CALL_BUILTIN_FAST 240 0.0% 100.0%
CALL_METHOD_DESCRIPTOR_FAST 200 0.0% 100.0%
CHECK_EXC_MATCH 180 0.0% 100.0%
POP_EXCEPT 180 0.0% 100.0%
PUSH_EXC_INFO 180 0.0% 100.0%
UNPACK_SEQUENCE_TWO_TUPLE 180 0.0% 100.0%
UNARY_INVERT 160 0.0% 100.0%
UNARY_NOT 160 0.0% 100.0%
STORE_FAST_STORE_FAST 160 0.0% 100.0%
BINARY_SUBSCR_DICT 140 0.0% 100.0%
LOAD_ATTR_CLASS 140 0.0% 100.0%
UNPACK_SEQUENCE 120 0.0% 100.0%
CALL_BUILTIN_O 120 0.0% 100.0%
IMPORT_NAME 100 0.0% 100.0%
CONTAINS_OP 80 0.0% 100.0%
DICT_MERGE 80 0.0% 100.0%
MAKE_CELL 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%
STORE_SUBSCR 60 0.0% 100.0%
BINARY_OP_ADD_INT 60 0.0% 100.0%
BINARY_OP_SUBTRACT_FLOAT 60 0.0% 100.0%
CALL_BOUND_METHOD_GENERAL 60 0.0% 100.0%
CALL_TYPE_1 60 0.0% 100.0%
CONTAINS_OP_DICT 60 0.0% 100.0%
CONTAINS_OP_SET 60 0.0% 100.0%
LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES 60 0.0% 100.0%
STORE_SUBSCR_DICT 60 0.0% 100.0%
BEFORE_WITH 40 0.0% 100.0%
BINARY_SUBSCR 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%
COMPARE_OP_STR 20 0.0% 100.0%
FOR_ITER_TUPLE 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 117,967,880 6.9% 6.9%
RESUME_CHECK LOAD_FAST 76,148,020 4.5% 11.4%
POP_JUMP_IF_FALSE LOAD_FAST 67,937,420 4.0% 15.4%
TO_BOOL_BOOL POP_JUMP_IF_FALSE 53,007,580 3.1% 18.5%
LOAD_ATTR_INSTANCE_VALUE TO_BOOL_BOOL 38,820,880 2.3% 20.8%
CACHE RESUME_CHECK 38,818,140 2.3% 23.0%
LOAD_FAST_LOAD_FAST STORE_ATTR_SLOT 38,817,760 2.3% 25.3%
POP_TOP LOAD_FAST 38,074,380 2.2% 27.5%
LOAD_CONST LOAD_FAST 37,327,780 2.2% 29.7%
STORE_FAST LOAD_FAST 34,355,280 2.0% 31.7%
CALL_PY_EXACT_ARGS RESUME_CHECK 34,349,280 2.0% 33.8%
LOAD_FAST LOAD_ATTR_SLOT 29,120,880 1.7% 35.5%
LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES 29,118,200 1.7% 37.2%
LOAD_FAST RETURN_VALUE 29,115,620 1.7% 38.9%
LOAD_FAST STORE_ATTR_SLOT 29,113,800 1.7% 40.6%
STORE_ATTR_SLOT LOAD_FAST_LOAD_FAST 29,113,380 1.7% 42.3%
LOAD_ATTR_METHOD_WITH_VALUES CALL_PY_EXACT_ARGS 28,369,560 1.7% 44.0%
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_METHOD_NO_DICT 27,623,980 1.6% 45.6%
RETURN_CONST INTERPRETER_EXIT 27,621,000 1.6% 47.2%
CALL_METHOD_DESCRIPTOR_O POP_TOP 27,620,120 1.6% 48.8%
RETURN_CONST POP_TOP 23,893,800 1.4% 50.2%
TO_BOOL_NONE POP_JUMP_IF_FALSE 23,887,700 1.4% 51.6%
LOAD_ATTR_METHOD_NO_DICT LOAD_FAST 23,141,220 1.4% 53.0%
LOAD_FAST CALL_METHOD_DESCRIPTOR_O 23,140,960 1.4% 54.3%
STORE_ATTR_SLOT LOAD_CONST 19,409,120 1.1% 55.5%
LOAD_ATTR_SLOT TO_BOOL_NONE 19,408,720 1.1% 56.6%
LOAD_FAST POP_JUMP_IF_NOT_NONE 18,664,400 1.1% 57.7%
CALL_NON_PY_GENERAL STORE_FAST 18,662,660 1.1% 58.8%
LOAD_FAST LOAD_ATTR_METHOD_LAZY_DICT 17,915,600 1.1% 59.8%
LOAD_ATTR_MODULE PUSH_NULL 17,172,260 1.0% 60.9%
LOAD_GLOBAL_MODULE LOAD_ATTR_MODULE 17,172,000 1.0% 61.9%
POP_JUMP_IF_FALSE RETURN_CONST 14,930,460 0.9% 62.7%
LOAD_ATTR_INSTANCE_VALUE RETURN_VALUE 14,930,340 0.9% 63.6%
RETURN_VALUE INTERPRETER_EXIT 14,930,060 0.9% 64.5%
RETURN_VALUE STORE_FAST 14,185,600 0.8% 65.3%
LOAD_FAST_LOAD_FAST LOAD_FAST_LOAD_FAST 14,183,760 0.8% 66.1%
PUSH_NULL LOAD_FAST_LOAD_FAST 14,183,600 0.8% 67.0%
LOAD_ATTR_METHOD_WITH_VALUES LOAD_FAST_LOAD_FAST 14,183,240 0.8% 67.8%
POP_TOP ENTER_EXECUTOR 14,182,600 0.8% 68.6%
POP_TOP RETURN_CONST 13,438,040 0.8% 69.4%
POP_JUMP_IF_NONE LOAD_FAST 12,690,400 0.7% 70.2%
LOAD_FAST STORE_ATTR_INSTANCE_VALUE 11,945,020 0.7% 70.9%
POP_TOP LOAD_CONST 11,200,940 0.7% 71.5%
LOAD_ATTR_INSTANCE_VALUE TO_BOOL 11,199,120 0.7% 72.2%
LOAD_CONST STORE_FAST 10,458,680 0.6% 72.8%
RESUME_CHECK LOAD_GLOBAL_MODULE 10,452,980 0.6% 73.4%
LOAD_FAST CALL_PY_EXACT_ARGS 9,708,640 0.6% 74.0%
POP_JUMP_IF_FALSE LOAD_CONST 9,708,000 0.6% 74.6%
STORE_FAST RETURN_CONST 9,705,720 0.6% 75.1%
RETURN_VALUE TO_BOOL_BOOL 9,704,960 0.6% 75.7%
LOAD_FAST_LOAD_FAST LOAD_FAST 9,704,880 0.6% 76.3%
POP_JUMP_IF_TRUE LOAD_FAST 9,704,660 0.6% 76.8%
STORE_ATTR_SLOT LOAD_FAST 9,704,660 0.6% 77.4%
STORE_ATTR_SLOT RETURN_CONST 9,704,660 0.6% 78.0%
CALL_FUNCTION_EX POP_TOP 9,704,560 0.6% 78.5%
LOAD_CONST CALL_KW 9,704,480 0.6% 79.1%
LOAD_ATTR_SLOT LOAD_ATTR_METHOD_WITH_VALUES 9,704,480 0.6% 79.7%
POP_TOP RESUME_CHECK 9,704,440 0.6% 80.2%
LOAD_FAST_LOAD_FAST CALL_NON_PY_GENERAL 9,704,400 0.6% 80.8%
POP_JUMP_IF_NOT_NONE LOAD_FAST_LOAD_FAST 9,704,400 0.6% 81.4%
LOAD_ATTR_METHOD_LAZY_DICT CALL_METHOD_DESCRIPTOR_NOARGS 9,704,240 0.6% 82.0%
CALL_METHOD_DESCRIPTOR_NOARGS TO_BOOL_BOOL 9,704,200 0.6% 82.5%
ENTER_EXECUTOR CALL_FUNCTION_EX 9,702,500 0.6% 83.1%
LOAD_FAST LOAD_ATTR 8,965,020 0.5% 83.6%
LOAD_FAST_LOAD_FAST LOAD_CONST 8,957,920 0.5% 84.1%
LOAD_FAST POP_JUMP_IF_NONE 8,211,840 0.5% 84.6%
TO_BOOL POP_JUMP_IF_FALSE 6,719,280 0.4% 85.0%
LOAD_ATTR_INSTANCE_VALUE POP_JUMP_IF_NOT_NONE 6,718,340 0.4% 85.4%
LOAD_FAST LOAD_CONST 5,974,380 0.4% 85.8%
GET_AWAITABLE LOAD_CONST 5,972,080 0.4% 86.1%
TO_BOOL_LIST POP_JUMP_IF_FALSE 5,228,660 0.3% 86.4%
LOAD_ATTR_INSTANCE_VALUE TO_BOOL_LIST 5,228,580 0.3% 86.7%
PUSH_NULL CALL_NON_PY_GENERAL 5,227,440 0.3% 87.0%
POP_JUMP_IF_NOT_NONE LOAD_FAST 5,227,220 0.3% 87.3%
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_METHOD_WITH_VALUES 5,227,160 0.3% 87.6%
STORE_ATTR_INSTANCE_VALUE LOAD_CONST 5,226,060 0.3% 87.9%
TO_BOOL_BOOL POP_JUMP_IF_TRUE 5,225,980 0.3% 88.3%
POP_JUMP_IF_NOT_NONE LOAD_GLOBAL_MODULE 5,225,760 0.3% 88.6%
CALL_NON_PY_GENERAL POP_TOP 5,225,640 0.3% 88.9%
END_SEND POP_TOP 5,225,600 0.3% 89.2%
LOAD_ATTR_INSTANCE_VALUE POP_JUMP_IF_NONE 5,225,580 0.3% 89.5%
SEND_GEN POP_TOP 5,225,500 0.3% 89.8%
LOAD_CONST SEND_GEN 5,225,440 0.3% 90.1%
COMPARE_OP_INT POP_JUMP_IF_FALSE 4,482,600 0.3% 90.4%
STORE_FAST JUMP_FORWARD 4,482,480 0.3% 90.6%
JUMP_FORWARD LOAD_FAST 4,481,040 0.3% 90.9%
LOAD_CONST COMPARE_OP_INT 4,480,920 0.3% 91.1%
TO_BOOL POP_JUMP_IF_TRUE 4,480,720 0.3% 91.4%
LOAD_FAST PUSH_NULL 4,479,380 0.3% 91.7%
CALL_PY_GENERAL RESUME_CHECK 4,479,360 0.3% 91.9%
CALL_PY_EXACT_ARGS RETURN_GENERATOR 4,479,260 0.3% 92.2%
LOAD_GLOBAL_MODULE LOAD_FAST_LOAD_FAST 4,479,200 0.3% 92.5%
RETURN_VALUE POP_TOP 4,479,120 0.3% 92.7%
LOAD_FAST_LOAD_FAST LOAD_ATTR_INSTANCE_VALUE 4,479,120 0.3% 93.0%
RETURN_CONST END_SEND 4,479,120 0.3% 93.2%
LOAD_ATTR_INSTANCE_VALUE CALL 4,479,100 0.3% 93.5%
CALL CALL_METHOD_DESCRIPTOR_O 4,479,080 0.3% 93.8%
CACHE POP_TOP 4,478,960 0.3% 94.0%
CALL_KW STORE_FAST 4,478,960 0.3% 94.3%
LOAD_ATTR_METHOD_NO_DICT LOAD_GLOBAL_MODULE 4,478,960 0.3% 94.6%

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.

CACHE

Successors and predecessors for CACHE
Successors Count Percentage
RESUME_CHECK 38,818,140 86.7%
POP_TOP 4,478,960 10.0%
RETURN_GENERATOR 1,492,960 3.3%
RESUME 260 0.0%
COPY_FREE_VARS 180 0.0%

BEFORE_ASYNC_WITH

Successors and predecessors for BEFORE_ASYNC_WITH
Predecessors Count Percentage
RETURN_VALUE 746,460 100.0%
CALL 20 0.0%
Successors Count Percentage
GET_AWAITABLE 746,480 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 40 100.0%
Successors Count Percentage
PUSH_EXC_INFO 20 50.0%
BINARY_SUBSCR_DICT 20 50.0%

CHECK_EXC_MATCH

Successors and predecessors for CHECK_EXC_MATCH
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 160 88.9%
LOAD_GLOBAL 20 11.1%
Successors Count Percentage
POP_JUMP_IF_FALSE 180 100.0%

END_SEND

Successors and predecessors for END_SEND
Predecessors Count Percentage
RETURN_CONST 4,479,120 75.0%
RETURN_VALUE 746,480 12.5%
SEND 746,480 12.5%
Successors Count Percentage
POP_TOP 5,225,600 87.5%
STORE_FAST 746,480 12.5%

EXIT_INIT_CHECK

Successors and predecessors for EXIT_INIT_CHECK
Predecessors Count Percentage
RETURN_CONST 746,460 100.0%
Successors Count Percentage
RETURN_VALUE 746,460 100.0%

GET_ITER

Successors and predecessors for GET_ITER
Predecessors Count Percentage
CALL_BUILTIN_CLASS 748,100 99.5%
LOAD_FAST 3,220 0.4%
CALL_METHOD_DESCRIPTOR_NOARGS 160 0.0%
CALL 60 0.0%
Successors Count Percentage
FOR_ITER_RANGE 748,040 99.5%
FOR_ITER_LIST 3,160 0.4%
FOR_ITER 320 0.0%
FOR_ITER_TUPLE 20 0.0%

INTERPRETER_EXIT

Successors and predecessors for INTERPRETER_EXIT
Predecessors Count Percentage
RETURN_CONST 27,621,000 61.7%
RETURN_VALUE 14,930,060 33.3%
RETURN_GENERATOR 1,492,960 3.3%
YIELD_VALUE 746,480 1.7%

MAKE_FUNCTION

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

NOP

Successors and predecessors for NOP
Predecessors Count Percentage
STORE_ATTR_INSTANCE_VALUE 746,460 99.3%
RESUME_CHECK 2,500 0.3%
STORE_FAST 1,760 0.2%
POP_TOP 400 0.1%
POP_JUMP_IF_NOT_NONE 160 0.0%
Successors Count Percentage
LOAD_FAST 750,920 99.9%
LOAD_GLOBAL_MODULE 320 0.0%
LOAD_DEREF 80 0.0%
LOAD_FAST_LOAD_FAST 80 0.0%
LOAD_GLOBAL 80 0.0%

POP_EXCEPT

Successors and predecessors for POP_EXCEPT
Predecessors Count Percentage
SWAP 100 55.6%
COPY 80 44.4%
Successors Count Percentage
RETURN_VALUE 100 55.6%
RERAISE 80 44.4%

POP_TOP

Successors and predecessors for POP_TOP
Predecessors Count Percentage
CALL_METHOD_DESCRIPTOR_O 27,620,120 31.9%
RETURN_CONST 23,893,800 27.6%
CALL_FUNCTION_EX 9,704,560 11.2%
CALL_NON_PY_GENERAL 5,225,640 6.0%
END_SEND 5,225,600 6.0%
Successors Count Percentage
LOAD_FAST 38,074,380 44.0%
ENTER_EXECUTOR 14,182,600 16.4%
RETURN_CONST 13,438,040 15.5%
LOAD_CONST 11,200,940 12.9%
RESUME_CHECK 9,704,440 11.2%

PUSH_EXC_INFO

Successors and predecessors for PUSH_EXC_INFO
Predecessors Count Percentage
RERAISE 80 44.4%
BINARY_SUBSCR_DICT 80 44.4%
BINARY_SUBSCR 20 11.1%
Successors Count Percentage
LOAD_GLOBAL_BUILTIN 160 88.9%
LOAD_GLOBAL 20 11.1%

PUSH_NULL

Successors and predecessors for PUSH_NULL
Predecessors Count Percentage
LOAD_ATTR_MODULE 17,172,260 79.3%
LOAD_FAST 4,479,380 20.7%
LOAD_ATTR 2,660 0.0%
LOAD_DEREF 80 0.0%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 14,183,600 65.5%
CALL_NON_PY_GENERAL 5,227,440 24.1%
LOAD_FAST 1,495,560 6.9%
CALL_ALLOC_AND_ENTER_INIT 746,440 3.4%
CALL 940 0.0%

RETURN_GENERATOR

Successors and predecessors for RETURN_GENERATOR
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 4,479,260 46.2%
ENTER_EXECUTOR 3,732,100 38.5%
CACHE 1,492,960 15.4%
CALL 80 0.0%
COPY_FREE_VARS 80 0.0%
Successors Count Percentage
CALL_PY_GENERAL 4,478,840 46.2%
GET_AWAITABLE 3,732,640 38.5%
INTERPRETER_EXIT 1,492,960 15.4%
CALL 80 0.0%
CALL_PY_EXACT_ARGS 40 0.0%

RETURN_VALUE

Successors and predecessors for RETURN_VALUE
Predecessors Count Percentage
LOAD_FAST 29,115,620 63.9%
LOAD_ATTR_INSTANCE_VALUE 14,930,340 32.8%
CALL_KW 746,480 1.6%
EXIT_INIT_CHECK 746,460 1.6%
CALL_NON_PY_GENERAL 1,700 0.0%
Successors Count Percentage
INTERPRETER_EXIT 14,930,060 32.8%
STORE_FAST 14,185,600 31.1%
TO_BOOL_BOOL 9,704,960 21.3%
POP_TOP 4,479,120 9.8%
LOAD_FAST 748,080 1.6%

STORE_SUBSCR

Successors and predecessors for STORE_SUBSCR
Predecessors Count Percentage
LOAD_ATTR 40 66.7%
LOAD_FAST 20 33.3%
Successors Count Percentage
LOAD_CONST 20 33.3%
LOAD_FAST 20 33.3%
STORE_SUBSCR_DICT 20 33.3%

TO_BOOL

Successors and predecessors for TO_BOOL
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 11,199,120 99.9%
TO_BOOL 3,800 0.0%
LOAD_ATTR 600 0.0%
RETURN_VALUE 480 0.0%
COPY 240 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 6,719,280 60.0%
POP_JUMP_IF_TRUE 4,480,720 40.0%
TO_BOOL 3,800 0.0%
TO_BOOL_BOOL 840 0.0%
TO_BOOL_INT 160 0.0%

UNARY_INVERT

Successors and predecessors for UNARY_INVERT
Predecessors Count Percentage
BINARY_OP 80 50.0%
LOAD_ATTR_MODULE 60 37.5%
LOAD_ATTR 20 12.5%
Successors Count Percentage
BINARY_OP 160 100.0%

UNARY_NOT

Successors and predecessors for UNARY_NOT
Predecessors Count Percentage
TO_BOOL_BOOL 60 37.5%
TO_BOOL_INT 60 37.5%
TO_BOOL 40 25.0%
Successors Count Percentage
COPY 80 50.0%
STORE_FAST 80 50.0%

BINARY_OP

Successors and predecessors for BINARY_OP
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 180 22.5%
UNARY_INVERT 160 20.0%
BINARY_OP 120 15.0%
LOAD_CONST 120 15.0%
POP_JUMP_IF_FALSE 80 10.0%
Successors Count Percentage
STORE_FAST 200 25.0%
COPY 160 20.0%
BINARY_OP 120 15.0%
UNARY_INVERT 80 10.0%
TO_BOOL 40 5.0%

BUILD_LIST

Successors and predecessors for BUILD_LIST
Predecessors Count Percentage
STORE_ATTR_INSTANCE_VALUE 746,680 99.5%
LOAD_ATTR_SLOT 1,860 0.2%
STORE_FAST 1,600 0.2%
STORE_ATTR 40 0.0%
LOAD_ATTR 20 0.0%
Successors Count Percentage
LOAD_FAST 748,600 99.8%
STORE_FAST 1,600 0.2%

BUILD_MAP

Successors and predecessors for BUILD_MAP
Predecessors Count Percentage
STORE_ATTR_INSTANCE_VALUE 140 35.0%
POP_TOP 80 20.0%
BUILD_TUPLE 80 20.0%
RESUME_CHECK 60 15.0%
STORE_ATTR 20 5.0%
Successors Count Percentage
LOAD_FAST 400 100.0%

BUILD_TUPLE

Successors and predecessors for BUILD_TUPLE
Predecessors Count Percentage
LOAD_FAST 240 37.5%
CALL 80 12.5%
LOAD_CONST 80 12.5%
LOAD_FAST_LOAD_FAST 80 12.5%
LOAD_GLOBAL_MODULE 80 12.5%
Successors Count Percentage
LOAD_CONST 240 37.5%
CALL 120 18.8%
RETURN_VALUE 80 12.5%
BUILD_MAP 80 12.5%
CALL_ISINSTANCE 40 6.2%

CALL

Successors and predecessors for CALL
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 4,479,100 99.8%
LOAD_FAST 1,640 0.0%
LOAD_ATTR 1,540 0.0%
CALL 1,460 0.0%
PUSH_NULL 940 0.0%
Successors Count Percentage
CALL_METHOD_DESCRIPTOR_O 4,479,080 99.8%
CALL 1,460 0.0%
CALL_PY_EXACT_ARGS 1,460 0.0%
RESUME 1,060 0.0%
CALL_NON_PY_GENERAL 620 0.0%

CALL_FUNCTION_EX

Successors and predecessors for CALL_FUNCTION_EX
Predecessors Count Percentage
ENTER_EXECUTOR 9,702,500 100.0%
CALL_INTRINSIC_1 1,880 0.0%
DICT_MERGE 80 0.0%
LOAD_FAST 80 0.0%
LOAD_ATTR_INSTANCE_VALUE 60 0.0%
Successors Count Percentage
POP_TOP 9,704,560 100.0%
COPY_FREE_VARS 80 0.0%

CALL_INTRINSIC_1

Successors and predecessors for CALL_INTRINSIC_1
Predecessors Count Percentage
LIST_EXTEND 1,880 100.0%
Successors Count Percentage
CALL_FUNCTION_EX 1,880 100.0%

CALL_KW

Successors and predecessors for CALL_KW
Predecessors Count Percentage
LOAD_CONST 9,704,480 100.0%
Successors Count Percentage
STORE_FAST 4,478,960 46.2%
RESUME_CHECK 4,478,940 46.2%
RETURN_VALUE 746,480 7.7%
POP_TOP 80 0.0%
RESUME 20 0.0%

COMPARE_OP

Successors and predecessors for COMPARE_OP
Predecessors Count Percentage
LOAD_CONST 220 44.0%
CALL_BUILTIN_CLASS 140 28.0%
COMPARE_OP 40 8.0%
RETURN_VALUE 20 4.0%
CALL 20 4.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 320 64.0%
COMPARE_OP_INT 120 24.0%
COMPARE_OP 40 8.0%
COPY 20 4.0%

CONTAINS_OP

Successors and predecessors for CONTAINS_OP
Predecessors Count Percentage
LOAD_ATTR 20 25.0%
LOAD_GLOBAL 20 25.0%
LOAD_ATTR_INSTANCE_VALUE 20 25.0%
LOAD_GLOBAL_MODULE 20 25.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 40 50.0%
CONTAINS_OP_DICT 20 25.0%
CONTAINS_OP_SET 20 25.0%

COPY

Successors and predecessors for COPY
Predecessors Count Percentage
CALL_LEN 1,580 67.5%
BINARY_OP 160 6.8%
LOAD_FAST 160 6.8%
CALL_BUILTIN_FAST 140 6.0%
UNARY_NOT 80 3.4%
Successors Count Percentage
TO_BOOL_INT 1,640 70.1%
TO_BOOL 240 10.3%
TO_BOOL_BOOL 200 8.5%
POP_EXCEPT 80 3.4%
LOAD_ATTR 80 3.4%

COPY_FREE_VARS

Successors and predecessors for COPY_FREE_VARS
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 640 60.4%
CACHE 180 17.0%
CALL 160 15.1%
CALL_FUNCTION_EX 80 7.5%
Successors Count Percentage
RESUME_CHECK 700 66.0%
RESUME 200 18.9%
RETURN_GENERATOR 80 7.5%
MAKE_CELL 80 7.5%

DICT_MERGE

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

ENTER_EXECUTOR

Successors and predecessors for ENTER_EXECUTOR
Predecessors Count Percentage
POP_TOP 14,182,600 100.0%
POP_JUMP_IF_FALSE 1,200 0.0%
Successors Count Percentage
CALL_FUNCTION_EX 9,702,500 68.4%
RETURN_GENERATOR 3,732,100 26.3%
POP_TOP 747,740 5.3%
RESUME_CHECK 1,180 0.0%
RETURN_CONST 280 0.0%

FOR_ITER

Successors and predecessors for FOR_ITER
Predecessors Count Percentage
GET_ITER 320 72.7%
FOR_ITER 80 18.2%
JUMP_BACKWARD 40 9.1%
Successors Count Percentage
RETURN_CONST 120 27.3%
LOAD_FAST 100 22.7%
FOR_ITER 80 18.2%
FOR_ITER_LIST 60 13.6%
STORE_FAST 40 9.1%

GET_AWAITABLE

Successors and predecessors for GET_AWAITABLE
Predecessors Count Percentage
RETURN_GENERATOR 3,732,640 62.5%
BEFORE_ASYNC_WITH 746,480 12.5%
CALL_BOUND_METHOD_EXACT_ARGS 746,460 12.5%
LOAD_ATTR_INSTANCE_VALUE 746,460 12.5%
CALL 20 0.0%
Successors Count Percentage
LOAD_CONST 5,972,080 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_CONST 400 100.0%
Successors Count Percentage
RETURN_VALUE 400 100.0%

JUMP_BACKWARD

Successors and predecessors for JUMP_BACKWARD
Predecessors Count Percentage
POP_TOP 680 65.4%
POP_JUMP_IF_FALSE 360 34.6%
Successors Count Percentage
FOR_ITER_RANGE 600 57.7%
LOAD_FAST 340 32.7%
FOR_ITER 40 3.8%
RETURN_GENERATOR 20 1.9%
CALL_FUNCTION_EX 20 1.9%

JUMP_BACKWARD_NO_INTERRUPT

Successors and predecessors for JUMP_BACKWARD_NO_INTERRUPT
Predecessors Count Percentage
RESUME_CHECK 1,493,040 100.0%
RESUME 80 0.0%
Successors Count Percentage
SEND_GEN 746,600 50.0%
SEND 746,520 50.0%

JUMP_FORWARD

Successors and predecessors for JUMP_FORWARD
Predecessors Count Percentage
STORE_FAST 4,482,480 100.0%
POP_TOP 100 0.0%
POP_JUMP_IF_FALSE 80 0.0%
Successors Count Percentage
LOAD_FAST 4,481,040 100.0%
LOAD_GLOBAL_BUILTIN 1,560 0.0%
LOAD_GLOBAL 40 0.0%
LOAD_FAST_CHECK 20 0.0%

LIST_EXTEND

Successors and predecessors for LIST_EXTEND
Predecessors Count Percentage
LOAD_ATTR_SLOT 1,860 98.9%
LOAD_ATTR 20 1.1%
Successors Count Percentage
CALL_INTRINSIC_1 1,880 100.0%

LOAD_ATTR

Successors and predecessors for LOAD_ATTR
Predecessors Count Percentage
LOAD_FAST 8,965,020 99.9%
LOAD_ATTR 3,860 0.0%
LOAD_ATTR_SLOT 1,960 0.0%
LOAD_GLOBAL_MODULE 820 0.0%
LOAD_GLOBAL 800 0.0%
Successors Count Percentage
TO_BOOL_NONE 4,478,920 49.9%
CALL_NON_PY_GENERAL 4,478,880 49.9%
LOAD_ATTR 3,860 0.0%
PUSH_NULL 2,660 0.0%
LOAD_ATTR_INSTANCE_VALUE 1,780 0.0%

LOAD_CONST

Successors and predecessors for LOAD_CONST
Predecessors Count Percentage
STORE_ATTR_SLOT 19,409,120 27.1%
POP_TOP 11,200,940 15.6%
POP_JUMP_IF_FALSE 9,708,000 13.5%
LOAD_FAST_LOAD_FAST 8,957,920 12.5%
LOAD_FAST 5,974,380 8.3%
Successors Count Percentage
LOAD_FAST 37,327,780 52.1%
STORE_FAST 10,458,680 14.6%
CALL_KW 9,704,480 13.5%
SEND_GEN 5,225,440 7.3%
COMPARE_OP_INT 4,480,920 6.3%

LOAD_DEREF

Successors and predecessors for LOAD_DEREF
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 620 50.8%
LOAD_GLOBAL 200 16.4%
STORE_FAST 160 13.1%
NOP 80 6.6%
LOAD_ATTR_METHOD_NO_DICT 80 6.6%
Successors Count Percentage
LOAD_FAST 820 67.2%
LOAD_CONST 160 13.1%
PUSH_NULL 80 6.6%
POP_JUMP_IF_NOT_NONE 80 6.6%
STORE_FAST 80 6.6%

LOAD_FAST

Successors and predecessors for LOAD_FAST
Predecessors Count Percentage
RESUME_CHECK 76,148,020 22.2%
POP_JUMP_IF_FALSE 67,937,420 19.8%
POP_TOP 38,074,380 11.1%
LOAD_CONST 37,327,780 10.9%
STORE_FAST 34,355,280 10.0%
Successors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 117,967,880 34.3%
LOAD_ATTR_SLOT 29,120,880 8.5%
LOAD_ATTR_METHOD_WITH_VALUES 29,118,200 8.5%
RETURN_VALUE 29,115,620 8.5%
STORE_ATTR_SLOT 29,113,800 8.5%

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 29,113,380 33.9%
LOAD_FAST_LOAD_FAST 14,183,760 16.5%
PUSH_NULL 14,183,600 16.5%
LOAD_ATTR_METHOD_WITH_VALUES 14,183,240 16.5%
POP_JUMP_IF_NOT_NONE 9,704,400 11.3%
Successors Count Percentage
STORE_ATTR_SLOT 38,817,760 45.2%
LOAD_FAST_LOAD_FAST 14,183,760 16.5%
LOAD_FAST 9,704,880 11.3%
CALL_NON_PY_GENERAL 9,704,400 11.3%
LOAD_CONST 8,957,920 10.4%

LOAD_GLOBAL

Successors and predecessors for LOAD_GLOBAL
Predecessors Count Percentage
RESUME 500 12.8%
RESUME_CHECK 480 12.3%
POP_TOP 460 11.8%
LOAD_FAST 380 9.7%
STORE_FAST 320 8.2%
Successors Count Percentage
LOAD_GLOBAL_MODULE 1,280 32.8%
LOAD_ATTR 800 20.5%
LOAD_GLOBAL_BUILTIN 600 15.4%
LOAD_FAST 320 8.2%
CALL 260 6.7%

LOAD_SUPER_ATTR

Successors and predecessors for LOAD_SUPER_ATTR
Predecessors Count Percentage
LOAD_FAST 380 100.0%
Successors Count Percentage
LOAD_SUPER_ATTR_METHOD 180 47.4%
CALL 120 31.6%
LOAD_FAST 60 15.8%
LOAD_FAST_LOAD_FAST 20 5.3%

MAKE_CELL

Successors and predecessors for MAKE_CELL
Predecessors Count Percentage
COPY_FREE_VARS 80 100.0%
Successors Count Percentage
RESUME_CHECK 60 75.0%
RESUME 20 25.0%

POP_JUMP_IF_FALSE

Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors Count Percentage
TO_BOOL_BOOL 53,007,580 56.8%
TO_BOOL_NONE 23,887,700 25.6%
TO_BOOL 6,719,280 7.2%
TO_BOOL_LIST 5,228,660 5.6%
COMPARE_OP_INT 4,482,600 4.8%
Successors Count Percentage
LOAD_FAST 67,937,420 72.8%
RETURN_CONST 14,930,460 16.0%
LOAD_CONST 9,708,000 10.4%
LOAD_GLOBAL_MODULE 746,640 0.8%
LOAD_GLOBAL_BUILTIN 1,580 0.0%

POP_JUMP_IF_NONE

Successors and predecessors for POP_JUMP_IF_NONE
Predecessors Count Percentage
LOAD_FAST 8,211,840 61.1%
LOAD_ATTR_INSTANCE_VALUE 5,225,580 38.9%
CALL_NON_PY_GENERAL 140 0.0%
LOAD_ATTR 100 0.0%
CALL 20 0.0%
Successors Count Percentage
LOAD_FAST 12,690,400 94.4%
LOAD_CONST 746,480 5.6%
RETURN_CONST 480 0.0%
LOAD_GLOBAL 100 0.0%
LOAD_GLOBAL_BUILTIN 100 0.0%

POP_JUMP_IF_NOT_NONE

Successors and predecessors for POP_JUMP_IF_NOT_NONE
Predecessors Count Percentage
LOAD_FAST 18,664,400 73.5%
LOAD_ATTR_INSTANCE_VALUE 6,718,340 26.5%
LOAD_GLOBAL_MODULE 220 0.0%
LOAD_ATTR 80 0.0%
LOAD_DEREF 80 0.0%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 9,704,400 38.2%
LOAD_FAST 5,227,220 20.6%
LOAD_GLOBAL_MODULE 5,225,760 20.6%
RETURN_CONST 4,478,880 17.6%
LOAD_CONST 746,500 2.9%

POP_JUMP_IF_TRUE

Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors Count Percentage
TO_BOOL_BOOL 5,225,980 53.8%
TO_BOOL 4,480,720 46.2%
TO_BOOL_INT 1,640 0.0%
Successors Count Percentage
LOAD_FAST 9,704,660 100.0%
LOAD_CONST 1,680 0.0%
STORE_FAST 1,600 0.0%
LOAD_GLOBAL_BUILTIN 100 0.0%
POP_TOP 80 0.0%

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_JUMP_IF_FALSE 14,930,460 26.3%
POP_TOP 13,438,040 23.7%
STORE_FAST 9,705,720 17.1%
STORE_ATTR_SLOT 9,704,660 17.1%
POP_JUMP_IF_NOT_NONE 4,478,880 7.9%
Successors Count Percentage
INTERPRETER_EXIT 27,621,000 48.7%
POP_TOP 23,893,800 42.1%
END_SEND 4,479,120 7.9%
EXIT_INIT_CHECK 746,460 1.3%
TO_BOOL 40 0.0%

SEND

Successors and predecessors for SEND
Predecessors Count Percentage
LOAD_CONST 746,640 50.0%
JUMP_BACKWARD_NO_INTERRUPT 746,520 50.0%
SEND 560 0.0%
Successors Count Percentage
END_SEND 746,480 50.0%
YIELD_VALUE 746,480 50.0%
SEND 560 0.0%
POP_TOP 100 0.0%
SEND_GEN 100 0.0%

SET_FUNCTION_ATTRIBUTE

Successors and predecessors for SET_FUNCTION_ATTRIBUTE
Predecessors Count Percentage
MAKE_FUNCTION 240 100.0%
Successors Count Percentage
STORE_FAST 240 100.0%

STORE_ATTR

Successors and predecessors for STORE_ATTR
Predecessors Count Percentage
LOAD_FAST 2,740 77.4%
LOAD_FAST_LOAD_FAST 300 8.5%
LOAD_ATTR_INSTANCE_VALUE 280 7.9%
STORE_ATTR 100 2.8%
SWAP 80 2.3%
Successors Count Percentage
STORE_ATTR_INSTANCE_VALUE 1,280 36.2%
LOAD_FAST 580 16.4%
LOAD_CONST 500 14.1%
RETURN_CONST 500 14.1%
STORE_ATTR_SLOT 260 7.3%

STORE_FAST

Successors and predecessors for STORE_FAST
Predecessors Count Percentage
CALL_NON_PY_GENERAL 18,662,660 37.9%
RETURN_VALUE 14,185,600 28.8%
LOAD_CONST 10,458,680 21.2%
CALL_KW 4,478,960 9.1%
FOR_ITER_RANGE 748,600 1.5%
Successors Count Percentage
LOAD_FAST 34,355,280 69.7%
RETURN_CONST 9,705,720 19.7%
JUMP_FORWARD 4,482,480 9.1%
LOAD_GLOBAL_BUILTIN 748,060 1.5%
NOP 1,760 0.0%

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 120 75.0%
UNPACK_SEQUENCE 40 25.0%
Successors Count Percentage
LOAD_FAST 80 50.0%
LOAD_GLOBAL 40 25.0%
LOAD_GLOBAL_MODULE 40 25.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 80 23.5%
LOAD_FAST 80 23.5%
BINARY_OP_ADD_INT 60 17.6%
BINARY_OP_SUBTRACT_INT 60 17.6%
BINARY_OP 40 11.8%
Successors Count Percentage
POP_EXCEPT 100 29.4%
STORE_ATTR 80 23.5%
STORE_FAST 80 23.5%
STORE_ATTR_INSTANCE_VALUE 80 23.5%

UNPACK_SEQUENCE

Successors and predecessors for UNPACK_SEQUENCE
Predecessors Count Percentage
RETURN_VALUE 40 33.3%
STORE_FAST 40 33.3%
CALL 20 16.7%
CALL_NON_PY_GENERAL 20 16.7%
Successors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 60 50.0%
STORE_FAST_STORE_FAST 40 33.3%
LOAD_FAST 20 16.7%

YIELD_VALUE

Successors and predecessors for YIELD_VALUE
Predecessors Count Percentage
YIELD_VALUE 746,640 50.0%
SEND 746,480 50.0%
Successors Count Percentage
YIELD_VALUE 746,640 50.0%
INTERPRETER_EXIT 746,480 50.0%

RESUME

Successors and predecessors for RESUME
Predecessors Count Percentage
CALL 1,060 61.6%
CACHE 260 15.1%
COPY_FREE_VARS 200 11.6%
POP_TOP 120 7.0%
SEND_GEN 40 2.3%
Successors Count Percentage
LOAD_FAST 800 46.5%
LOAD_GLOBAL 500 29.1%
LOAD_CONST 140 8.1%
NOP 100 5.8%
JUMP_BACKWARD_NO_INTERRUPT 80 4.7%

BINARY_OP_ADD_FLOAT

Successors and predecessors for BINARY_OP_ADD_FLOAT
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 1,560 98.7%
BINARY_OP 20 1.3%
Successors Count Percentage
STORE_FAST 1,580 100.0%

BINARY_OP_ADD_INT

Successors and predecessors for BINARY_OP_ADD_INT
Predecessors Count Percentage
LOAD_CONST 40 66.7%
BINARY_OP 20 33.3%
Successors Count Percentage
SWAP 60 100.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_CONST 746,760 100.0%
BINARY_OP 40 0.0%
Successors Count Percentage
CALL_PY_EXACT_ARGS 746,720 100.0%
SWAP 60 0.0%
CALL 20 0.0%

BINARY_SUBSCR_DICT

Successors and predecessors for BINARY_SUBSCR_DICT
Predecessors Count Percentage
RETURN_VALUE 80 57.1%
LOAD_FAST 40 28.6%
BINARY_SUBSCR 20 14.3%
Successors Count Percentage
PUSH_EXC_INFO 80 57.1%
RETURN_VALUE 60 42.9%

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_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
PUSH_NULL 746,440 100.0%
CALL 20 0.0%
Successors Count Percentage
RESUME_CHECK 746,460 100.0%

CALL_BOUND_METHOD_EXACT_ARGS

Successors and predecessors for CALL_BOUND_METHOD_EXACT_ARGS
Predecessors Count Percentage
LOAD_CONST 746,440 98.1%
CALL_BOUND_METHOD_EXACT_ARGS 14,340 1.9%
PUSH_NULL 40 0.0%
CALL 40 0.0%
Successors Count Percentage
GET_AWAITABLE 746,460 98.1%
CALL_BOUND_METHOD_EXACT_ARGS 14,340 1.9%
RETURN_GENERATOR 60 0.0%

CALL_BOUND_METHOD_GENERAL

Successors and predecessors for CALL_BOUND_METHOD_GENERAL
Predecessors Count Percentage
LOAD_ATTR 40 66.7%
CALL 20 33.3%
Successors Count Percentage
RESUME_CHECK 60 100.0%

CALL_BUILTIN_CLASS

Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 746,660 49.9%
LOAD_GLOBAL_MODULE 746,440 49.9%
LOAD_FAST 1,740 0.1%
CALL 180 0.0%
LOAD_ATTR_INSTANCE_VALUE 160 0.0%
Successors Count Percentage
GET_ITER 748,100 50.0%
LOAD_FAST 746,700 49.9%
COMPARE_OP 140 0.0%
LOAD_GLOBAL_BUILTIN 120 0.0%
STORE_FAST 80 0.0%

CALL_BUILTIN_FAST

Successors and predecessors for CALL_BUILTIN_FAST
Predecessors Count Percentage
LOAD_CONST 180 75.0%
CALL 40 16.7%
LOAD_FAST_LOAD_FAST 20 8.3%
Successors Count Percentage
COPY 140 58.3%
TO_BOOL_BOOL 80 33.3%
TO_BOOL 20 8.3%

CALL_BUILTIN_FAST_WITH_KEYWORDS

Successors and predecessors for CALL_BUILTIN_FAST_WITH_KEYWORDS
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 746,440 100.0%
CALL 20 0.0%
Successors Count Percentage
LOAD_FAST 746,460 100.0%

CALL_BUILTIN_O

Successors and predecessors for CALL_BUILTIN_O
Predecessors Count Percentage
CALL 40 33.3%
LOAD_CONST 40 33.3%
LOAD_FAST 40 33.3%
Successors Count Percentage
POP_TOP 120 100.0%

CALL_ISINSTANCE

Successors and predecessors for CALL_ISINSTANCE
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 380 73.1%
CALL 60 11.5%
BUILD_TUPLE 40 7.7%
LOAD_GLOBAL_MODULE 40 7.7%
Successors Count Percentage
TO_BOOL_BOOL 460 88.5%
TO_BOOL 60 11.5%

CALL_LEN

Successors and predecessors for CALL_LEN
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 4,680 98.7%
CALL 60 1.3%
Successors Count Percentage
STORE_FAST 3,160 66.7%
COPY 1,580 33.3%

CALL_METHOD_DESCRIPTOR_FAST

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 120 60.0%
RETURN_VALUE 40 20.0%
CALL 40 20.0%
Successors Count Percentage
RETURN_VALUE 140 70.0%
STORE_FAST 60 30.0%

CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 1,560 87.6%
LOAD_CONST 80 4.5%
CALL 60 3.4%
LOAD_ATTR 40 2.2%
LOAD_FAST 40 2.2%
Successors Count Percentage
STORE_FAST 1,580 88.8%
POP_TOP 120 6.7%
RETURN_VALUE 80 4.5%

CALL_METHOD_DESCRIPTOR_NOARGS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_NOARGS
Predecessors Count Percentage
LOAD_ATTR_METHOD_LAZY_DICT 9,704,240 100.0%
LOAD_ATTR_METHOD_NO_DICT 2,280 0.0%
CALL 360 0.0%
LOAD_FAST 120 0.0%
Successors Count Percentage
TO_BOOL_BOOL 9,704,200 100.0%
STORE_FAST 1,860 0.0%
POP_TOP 380 0.0%
GET_ITER 160 0.0%
TO_BOOL 100 0.0%

CALL_METHOD_DESCRIPTOR_O

Successors and predecessors for CALL_METHOD_DESCRIPTOR_O
Predecessors Count Percentage
LOAD_FAST 23,140,960 83.8%
CALL 4,479,080 16.2%
LOAD_CONST 100 0.0%
Successors Count Percentage
POP_TOP 27,620,120 100.0%
LOAD_CONST 20 0.0%

CALL_NON_PY_GENERAL

Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 9,704,400 39.4%
PUSH_NULL 5,227,440 21.2%
LOAD_ATTR 4,478,880 18.2%
LOAD_ATTR_METHOD_LAZY_DICT 4,478,880 18.2%
LOAD_CONST 746,520 3.0%
Successors Count Percentage
STORE_FAST 18,662,660 75.8%
POP_TOP 5,225,640 21.2%
LOAD_FAST 746,820 3.0%
RETURN_VALUE 1,700 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_ATTR_METHOD_WITH_VALUES 28,369,560 73.1%
LOAD_FAST 9,708,640 25.0%
BINARY_OP_SUBTRACT_INT 746,720 1.9%
LOAD_ATTR_METHOD_NO_DICT 1,960 0.0%
CALL 1,460 0.0%
Successors Count Percentage
RESUME_CHECK 34,349,280 88.5%
RETURN_GENERATOR 4,479,260 11.5%
COPY_FREE_VARS 640 0.0%

CALL_PY_GENERAL

Successors and predecessors for CALL_PY_GENERAL
Predecessors Count Percentage
RETURN_GENERATOR 4,478,840 100.0%
CALL 160 0.0%
LOAD_FAST 120 0.0%
LOAD_ATTR_METHOD_NO_DICT 120 0.0%
PUSH_NULL 40 0.0%
Successors Count Percentage
RESUME_CHECK 4,479,360 100.0%

CALL_TYPE_1

Successors and predecessors for CALL_TYPE_1
Predecessors Count Percentage
LOAD_FAST 40 66.7%
CALL 20 33.3%
Successors Count Percentage
LOAD_GLOBAL_MODULE 40 66.7%
LOAD_GLOBAL 20 33.3%

COMPARE_OP_INT

Successors and predecessors for COMPARE_OP_INT
Predecessors Count Percentage
LOAD_CONST 4,480,920 100.0%
LOAD_GLOBAL_MODULE 1,560 0.0%
COMPARE_OP 120 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 4,482,600 100.0%

COMPARE_OP_STR

Successors and predecessors for COMPARE_OP_STR
Predecessors Count Percentage
LOAD_CONST 20 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 20 100.0%

CONTAINS_OP_DICT

Successors and predecessors for CONTAINS_OP_DICT
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 40 66.7%
CONTAINS_OP 20 33.3%
Successors Count Percentage
POP_JUMP_IF_FALSE 60 100.0%

CONTAINS_OP_SET

Successors and predecessors for CONTAINS_OP_SET
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 40 66.7%
CONTAINS_OP 20 33.3%
Successors Count Percentage
POP_JUMP_IF_FALSE 60 100.0%

FOR_ITER_LIST

Successors and predecessors for FOR_ITER_LIST
Predecessors Count Percentage
GET_ITER 3,160 98.1%
FOR_ITER 60 1.9%
Successors Count Percentage
RETURN_CONST 1,640 50.9%
LOAD_FAST 1,580 49.1%

FOR_ITER_RANGE

Successors and predecessors for FOR_ITER_RANGE
Predecessors Count Percentage
GET_ITER 748,040 99.9%
JUMP_BACKWARD 600 0.1%
FOR_ITER 40 0.0%
Successors Count Percentage
STORE_FAST 748,600 100.0%
LOAD_CONST 80 0.0%

FOR_ITER_TUPLE

Successors and predecessors for FOR_ITER_TUPLE
Predecessors Count Percentage
GET_ITER 20 100.0%
Successors Count Percentage
STORE_FAST 20 100.0%

LOAD_ATTR_CLASS

Successors and predecessors for LOAD_ATTR_CLASS
Predecessors Count Percentage
LOAD_FAST 120 85.7%
LOAD_ATTR 20 14.3%
Successors Count Percentage
LOAD_FAST 140 100.0%

LOAD_ATTR_INSTANCE_VALUE

Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST 117,967,880 96.3%
LOAD_FAST_LOAD_FAST 4,479,120 3.7%
LOAD_ATTR 1,780 0.0%
LOAD_ATTR_INSTANCE_VALUE 120 0.0%
COPY 80 0.0%
Successors Count Percentage
TO_BOOL_BOOL 38,820,880 31.7%
LOAD_ATTR_METHOD_NO_DICT 27,623,980 22.6%
RETURN_VALUE 14,930,340 12.2%
TO_BOOL 11,199,120 9.1%
POP_JUMP_IF_NOT_NONE 6,718,340 5.5%

LOAD_ATTR_METHOD_LAZY_DICT

Successors and predecessors for LOAD_ATTR_METHOD_LAZY_DICT
Predecessors Count Percentage
LOAD_FAST 17,915,600 92.3%
LOAD_ATTR_INSTANCE_VALUE 1,492,880 7.7%
LOAD_ATTR 240 0.0%
Successors Count Percentage
CALL_METHOD_DESCRIPTOR_NOARGS 9,704,240 50.0%
CALL_NON_PY_GENERAL 4,478,880 23.1%
LOAD_FAST 4,478,860 23.1%
LOAD_CONST 746,460 3.8%
CALL 160 0.0%

LOAD_ATTR_METHOD_NO_DICT

Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 27,623,980 100.0%
LOAD_FAST 2,200 0.0%
LOAD_ATTR 540 0.0%
LOAD_FAST_LOAD_FAST 80 0.0%
Successors Count Percentage
LOAD_FAST 23,141,220 83.8%
LOAD_GLOBAL_MODULE 4,478,960 16.2%
CALL_METHOD_DESCRIPTOR_NOARGS 2,280 0.0%
CALL_PY_EXACT_ARGS 1,960 0.0%
LOAD_FAST_LOAD_FAST 1,720 0.0%

LOAD_ATTR_METHOD_WITH_VALUES

Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors Count Percentage
LOAD_FAST 29,118,200 66.1%
LOAD_ATTR_SLOT 9,704,480 22.0%
LOAD_ATTR_INSTANCE_VALUE 5,227,160 11.9%
LOAD_ATTR 1,100 0.0%
RETURN_VALUE 280 0.0%
Successors Count Percentage
CALL_PY_EXACT_ARGS 28,369,560 64.4%
LOAD_FAST_LOAD_FAST 14,183,240 32.2%
LOAD_FAST 1,497,580 3.4%
CALL 620 0.0%
LOAD_CONST 120 0.0%

LOAD_ATTR_MODULE

Successors and predecessors for LOAD_ATTR_MODULE
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 17,172,000 100.0%
LOAD_ATTR 820 0.0%
LOAD_FAST 120 0.0%
Successors Count Percentage
PUSH_NULL 17,172,260 100.0%
LOAD_ATTR 200 0.0%
LOAD_FAST 120 0.0%
LOAD_ATTR_SLOT 80 0.0%
UNARY_INVERT 60 0.0%

LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES

Successors and predecessors for LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES
Predecessors Count Percentage
LOAD_FAST 40 66.7%
LOAD_ATTR 20 33.3%
Successors Count Percentage
LOAD_FAST 60 100.0%

LOAD_ATTR_SLOT

Successors and predecessors for LOAD_ATTR_SLOT
Predecessors Count Percentage
LOAD_FAST 29,120,880 100.0%
LOAD_ATTR 280 0.0%
LOAD_ATTR_MODULE 80 0.0%
Successors Count Percentage
TO_BOOL_NONE 19,408,720 66.6%
LOAD_ATTR_METHOD_WITH_VALUES 9,704,480 33.3%
LOAD_ATTR 1,960 0.0%
TO_BOOL_BOOL 1,880 0.0%
BUILD_LIST 1,860 0.0%

LOAD_GLOBAL_BUILTIN

Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors Count Percentage
STORE_FAST 748,060 49.8%
STORE_ATTR_INSTANCE_VALUE 746,580 49.7%
RESUME_CHECK 2,640 0.2%
POP_JUMP_IF_FALSE 1,580 0.1%
JUMP_FORWARD 1,560 0.1%
Successors Count Percentage
CALL_BUILTIN_CLASS 746,660 49.7%
LOAD_GLOBAL_MODULE 746,480 49.7%
LOAD_FAST 7,620 0.5%
LOAD_DEREF 620 0.0%
CALL_ISINSTANCE 380 0.0%

LOAD_GLOBAL_MODULE

Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors Count Percentage
RESUME_CHECK 10,452,980 46.7%
POP_JUMP_IF_NOT_NONE 5,225,760 23.3%
LOAD_ATTR_METHOD_NO_DICT 4,478,960 20.0%
STORE_ATTR_INSTANCE_VALUE 746,800 3.3%
POP_JUMP_IF_FALSE 746,640 3.3%
Successors Count Percentage
LOAD_ATTR_MODULE 17,172,000 76.7%
LOAD_FAST_LOAD_FAST 4,479,200 20.0%
CALL_BUILTIN_CLASS 746,440 3.3%
COMPARE_OP_INT 1,560 0.0%
LOAD_ATTR 820 0.0%

LOAD_SUPER_ATTR_METHOD

Successors and predecessors for LOAD_SUPER_ATTR_METHOD
Predecessors Count Percentage
LOAD_FAST 440 71.0%
LOAD_SUPER_ATTR 180 29.0%
Successors Count Percentage
LOAD_FAST 260 41.9%
CALL_PY_EXACT_ARGS 200 32.3%
CALL 100 16.1%
LOAD_FAST_LOAD_FAST 60 9.7%

RESUME_CHECK

Successors and predecessors for RESUME_CHECK
Predecessors Count Percentage
CACHE 38,818,140 41.6%
CALL_PY_EXACT_ARGS 34,349,280 36.8%
POP_TOP 9,704,440 10.4%
CALL_PY_GENERAL 4,479,360 4.8%
CALL_KW 4,478,940 4.8%
Successors Count Percentage
LOAD_FAST 76,148,020 81.6%
LOAD_GLOBAL_MODULE 10,452,980 11.2%
RETURN_CONST 3,732,460 4.0%
LOAD_CONST 1,493,380 1.6%
JUMP_BACKWARD_NO_INTERRUPT 1,493,040 1.6%

SEND_GEN

Successors and predecessors for SEND_GEN
Predecessors Count Percentage
LOAD_CONST 5,225,440 87.5%
JUMP_BACKWARD_NO_INTERRUPT 746,600 12.5%
SEND 100 0.0%
Successors Count Percentage
POP_TOP 5,225,500 87.5%
RESUME_CHECK 746,600 12.5%
RESUME 40 0.0%

STORE_ATTR_INSTANCE_VALUE

Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST 11,945,020 100.0%
STORE_ATTR 1,280 0.0%
LOAD_FAST_LOAD_FAST 260 0.0%
SWAP 80 0.0%
Successors Count Percentage
LOAD_CONST 5,226,060 43.7%
LOAD_FAST 2,986,600 25.0%
RETURN_CONST 747,120 6.3%
LOAD_GLOBAL_MODULE 746,800 6.3%
BUILD_LIST 746,680 6.3%

STORE_ATTR_SLOT

Successors and predecessors for STORE_ATTR_SLOT
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 38,817,760 57.1%
LOAD_FAST 29,113,800 42.9%
STORE_ATTR 260 0.0%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 29,113,380 42.9%
LOAD_CONST 19,409,120 28.6%
LOAD_FAST 9,704,660 14.3%
RETURN_CONST 9,704,660 14.3%

STORE_SUBSCR_DICT

Successors and predecessors for STORE_SUBSCR_DICT
Predecessors Count Percentage
LOAD_ATTR 40 66.7%
STORE_SUBSCR 20 33.3%
Successors Count Percentage
LOAD_FAST 60 100.0%

TO_BOOL_BOOL

Successors and predecessors for TO_BOOL_BOOL
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 38,820,880 66.7%
RETURN_VALUE 9,704,960 16.7%
CALL_METHOD_DESCRIPTOR_NOARGS 9,704,200 16.7%
LOAD_ATTR_SLOT 1,880 0.0%
TO_BOOL 840 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 53,007,580 91.0%
POP_JUMP_IF_TRUE 5,225,980 9.0%
UNARY_NOT 60 0.0%

TO_BOOL_INT

Successors and predecessors for TO_BOOL_INT
Predecessors Count Percentage
COPY 1,640 83.7%
TO_BOOL 160 8.2%
LOAD_FAST 80 4.1%
BINARY_OP 40 2.0%
LOAD_ATTR_SLOT 40 2.0%
Successors Count Percentage
POP_JUMP_IF_TRUE 1,640 83.7%
POP_JUMP_IF_FALSE 260 13.3%
UNARY_NOT 60 3.1%

TO_BOOL_LIST

Successors and predecessors for TO_BOOL_LIST
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 5,228,580 100.0%
TO_BOOL 80 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 5,228,660 100.0%

TO_BOOL_NONE

Successors and predecessors for TO_BOOL_NONE
Predecessors Count Percentage
LOAD_ATTR_SLOT 19,408,720 81.2%
LOAD_ATTR 4,478,920 18.7%
TO_BOOL 60 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 23,887,700 100.0%

UNPACK_SEQUENCE_TWO_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TWO_TUPLE
Predecessors Count Percentage
UNPACK_SEQUENCE 60 33.3%
RETURN_VALUE 40 22.2%
STORE_FAST 40 22.2%
CALL_NON_PY_GENERAL 40 22.2%
Successors Count Percentage
STORE_FAST_STORE_FAST 120 66.7%
LOAD_FAST 60 33.3%

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.

580 0.1%
hit

Specialized instructions that complete.

748,500 99.9%
Success Count Ratio
Success 100 45.5%
Failure 120 54.5%
Failure kind Count Ratio
and int 80 66.7%
or 40 33.3%

BINARY_SUBSCR

specialization stats for BINARY_SUBSCR family
Kind Count Ratio
deferred

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

20 7.1%
hit

Specialized instructions that complete.

240 85.7%
Success Count Ratio
Success 20 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.

5,229,720 6.2%
hit

Specialized instructions that complete.

79,151,860 93.8%
miss

Specialized instructions that deopt.

761,180 0.9%
Success Count Ratio
Success 17,660 92.8%
Failure 1,380 7.2%
Failure kind Count Ratio
class no vectorcall 1,340 97.1%
wrong number arguments 40 2.9%
init not inline values 40 2.9%

COMPARE_OP

specialization stats for COMPARE_OP family
Kind Count Ratio
deferred

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

340 0.0%
hit

Specialized instructions that complete.

4,482,620 100.0%
Success Count Ratio
Success 120 75.0%
Failure 40 25.0%
Failure kind Count Ratio
bool 40 100.0%

CONTAINS_OP

specialization stats for CONTAINS_OP family
Kind Count Ratio
deferred

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

40 20.0%
hit

Specialized instructions that complete.

120 60.0%
Success Count Ratio
Success 40 100.0%
Failure 0 0.0%

FOR_ITER

specialization stats for FOR_ITER family
Kind Count Ratio
deferred

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

260 0.0%
hit

Specialized instructions that complete.

751,920 99.9%
Success Count Ratio
Success 100 55.6%
Failure 80 44.4%
Failure kind Count Ratio
dict items 80 100.0%

LOAD_ATTR

specialization stats for LOAD_ATTR family
Kind Count Ratio
deferred

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

8,966,060 3.3%
hit

Specialized instructions that complete.

259,830,180 96.7%
Success Count Ratio
Success 4,800 61.2%
Failure 3,040 38.8%
Failure kind Count Ratio
method 1,520 50.0%
class attr descriptor 1,280 42.1%
not managed dict 140 4.6%
metaclass attribute 60 2.0%
class attr simple 40 1.3%

LOAD_GLOBAL

specialization stats for LOAD_GLOBAL family
Kind Count Ratio
deferred

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

2,100 0.0%
deopt

Specialized instructions that deopt.

80 0.0%
hit

Specialized instructions that complete.

23,904,040 100.0%
miss

Specialized instructions that deopt.

80 0.0%
Success Count Ratio
Success 1,880 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.

200 20.0%
hit

Specialized instructions that complete.

620 62.0%
Success Count Ratio
Success 180 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.

1,493,060 20.0%
hit

Specialized instructions that complete.

5,972,140 80.0%
Success Count Ratio
Success 100 15.2%
Failure 560 84.8%
Failure kind Count Ratio
other 560 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.

1,900 0.0%
hit

Specialized instructions that complete.

79,878,460 100.0%
Success Count Ratio
Success 1,540 93.9%
Failure 100 6.1%
Failure kind Count Ratio
overridden 80 80.0%
overriding descriptor 20 20.0%

STORE_SUBSCR

specialization stats for STORE_SUBSCR family
Kind Count Ratio
deferred

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

40 33.3%
hit

Specialized instructions that complete.

60 50.0%
Success Count Ratio
Success 20 100.0%
Failure 0 0.0%

TO_BOOL

specialization stats for TO_BOOL family
Kind Count Ratio
deferred

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

11,200,040 11.4%
hit

Specialized instructions that complete.

87,351,940 88.6%
Success Count Ratio
Success 1,140 23.1%
Failure 3,800 76.9%
Failure kind Count Ratio
set 3,700 97.4%
sequence 100 2.6%

UNPACK_SEQUENCE

specialization stats for UNPACK_SEQUENCE family
Kind Count Ratio
deferred

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

60 20.0%
hit

Specialized instructions that complete.

180 60.0%
Success Count Ratio
Success 60 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.

872,087,440 51.1%
Not specialized

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

168,025,980 9.9%
Specialized hits

Specialized instructions, e.g. LOAD_ATTR_MODULE that complete.

664,505,980 39.0%
Specialized misses

Specialized instructions, e.g. LOAD_ATTR_MODULE that deopt.

770,400 0.0%

Deferred by instruction

Breakdown of deferred (not specialized) instruction counts by family
Name Count Ratio
TO_BOOL 11,200,040 41.6%
LOAD_ATTR 8,966,060 33.3%
CALL 5,229,720 19.4%
SEND 1,493,060 5.6%
LOAD_GLOBAL 2,100 0.0%
STORE_ATTR 1,900 0.0%
BINARY_OP 580 0.0%
COMPARE_OP 340 0.0%
FOR_ITER 260 0.0%
LOAD_SUPER_ATTR 200 0.0%

Misses by instruction

Breakdown of misses (specialized deopts) instruction counts by family
Name Count Ratio
CALL_BOUND_METHOD_EXACT_ARGS 760,800 97.6%
RESUME 9,140 1.2%
RESUME_CHECK 9,140 1.2%
CALL_METHOD_DESCRIPTOR_NOARGS 260 0.0%
CALL_METHOD_DESCRIPTOR_O 120 0.0%
LOAD_GLOBAL_BUILTIN 80 0.0%
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 44,790,500 39.7%
Calls to Python functions inlined 67,944,040 60.3%
Calls via PyEval_EvalFrame (total) 44,790,500 39.7%
Calls via PyEval_EvalFrame (vector) 39,565,060 35.1%
Calls via PyEval_EvalFrame (generator) 5,225,440 4.6%
Calls via PyEval_EvalFrame (legacy) 0 0.0%
Calls via PyEval_EvalFrame (function vectorcall) 39,565,060 35.1%
Calls via PyEval_EvalFrame (build class) 0 0.0%
Calls via PyEval_EvalFrame (slot) 0 0.0%
Calls via PyEval_EvalFrame (function ex) 80 0.0%
Calls via PyEval_EvalFrame (api) 4,479,100 4.0%
Calls via PyEval_EvalFrame (method) 19,408,800 17.2%
Frame objects created 180 0.0%
Frames pushed 102,283,320 90.7%

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 55,389,980 37.2%
Frees to freelist 55,436,100
Allocations 93,335,360 62.8%
Allocations to 512 bytes 92,530,280 62.2%
Allocations to 4 kbytes 804,980 0.5%
Allocations over 4 kbytes 100 0.0%
Frees 93,285,792
Inline values 746,900
Interpreter increfs 1,087,755,560 80.5%
Interpreter decrefs 1,125,625,580 75.9%
Increfs 262,788,620 19.5%
Decrefs 356,877,927 24.1%
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 38,084,510
Method cache misses 3,670
Method cache collisions 3,258
Method cache dunder hits 11,198,768
Method cache dunder misses 492

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 2,040 965,583,240
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.

3,820
Traces created

The number of traces that were successfully created.

360 9.4%
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.

1,020 26.7%
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.

3,460 90.6%
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.

20 0.5%
Low confidence

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

0 0.0%
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

28,366,820
Uops executed

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

681,454,380 2,402.3%
Count Ratio
Optimizer attempts

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

360
Optimizer successes

The number of traces that were successfully optimized.

80 22.2%
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 0 0.0%
<= 16 20 5.6%
<= 32 300 83.3%
<= 64 20 5.6%
<= 128 20 5.6%

Optimized trace length histogram

optimized trace length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 0 0.0%
<= 8 20 5.6%
<= 16 20 5.6%
<= 32 20 5.6%
<= 64 20 5.6%

Trace run length histogram

trace run length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 0 0.0%
<= 8 748,300 2.6%
<= 16 0 0.0%
<= 32 3,732,120 13.2%
<= 64 9,702,520 34.2%

Uop execution stats

uop execution stats
Name Count Self Cumulative Miss ratio
_GUARD_TYPE_VERSION 85,085,600 12.5% 12.5%
_LOAD_FAST_0 52,245,920 7.7% 20.2%
_SET_IP 42,543,400 6.2% 26.4%
_LOAD_ATTR_SLOT_0 38,810,080 5.7% 32.1%
_CHECK_VALIDITY 29,107,560 4.3% 36.4%
_TO_BOOL_BOOL 19,405,040 2.8% 39.2%
_CHECK_MANAGED_OBJECT_HAS_VALUES 19,405,040 2.8% 42.1%
_GUARD_IS_FALSE_POP 19,405,040 2.8% 44.9%
_LOAD_ATTR_INSTANCE_VALUE_0 19,405,040 2.8% 47.8%
_LOAD_ATTR_METHOD_NO_DICT 19,405,040 2.8% 50.6%
_LOAD_FAST_3 19,405,040 2.8% 53.4%
_START_EXECUTOR 14,184,140 2.1% 55.5%
_TIER2_RESUME_CHECK 14,183,860 2.1% 57.6%
_EXIT_TRACE 14,182,940 2.1% 59.7%
_COLD_EXIT 14,182,680 2.1% 61.8%
_GUARD_NOT_EXHAUSTED_RANGE 14,182,640 2.1% 63.9% 5.3%
_ITER_CHECK_RANGE 14,182,640 2.1% 65.9%
_CHECK_FUNCTION_EXACT_ARGS 13,435,840 2.0% 67.9%
_PUSH_FRAME 13,435,840 2.0% 69.9%
_SAVE_RETURN_OFFSET 13,435,840 2.0% 71.9%
_STORE_FAST_3 13,434,920 2.0% 73.8%
_ITER_NEXT_RANGE 13,434,640 2.0% 75.8%
_INIT_CALL_PY_EXACT_ARGS_0 9,703,720 1.4% 77.2%
_PUSH_NULL 9,702,520 1.4% 78.6%
_BUILD_LIST 9,702,520 1.4% 80.1%
_CALL_INTRINSIC_1 9,702,520 1.4% 81.5%
_LIST_EXTEND 9,702,520 1.4% 82.9%
_RESUME_CHECK 9,702,520 1.4% 84.3%
_CALL_METHOD_DESCRIPTOR_NOARGS 9,702,520 1.4% 85.8%
_CHECK_PERIODIC 9,702,520 1.4% 87.2%
_CHECK_STACK_SPACE_OPERAND 9,702,520 1.4% 88.6%
_CHECK_VALIDITY_AND_SET_IP 9,702,520 1.4% 90.0%
_LOAD_ATTR 9,702,520 1.4% 91.5%
_STORE_FAST 9,702,520 1.4% 92.9%
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT 7,465,440 1.1% 94.0%
_GUARD_KEYS_VERSION 7,465,440 1.1% 95.1%
_LOAD_ATTR_METHOD_WITH_VALUES 7,465,440 1.1% 96.2%
_CHECK_STACK_SPACE 3,733,320 0.5% 96.7%
_LOAD_CONST_INLINE_BORROW 3,732,400 0.5% 97.3%
_BINARY_OP_SUBTRACT_INT 3,732,120 0.5% 97.8%
_GUARD_NOS_INT 3,732,120 0.5% 98.4%
_INIT_CALL_PY_EXACT_ARGS_1 3,732,120 0.5% 98.9%
_LOAD_FAST_1 3,732,120 0.5% 99.5%
_LOAD_FAST_2 3,732,120 0.5% 100.0%
_DYNAMIC_EXIT 1,200 0.0% 100.0%
_POP_TOP 280 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 52,245,920 7.7% 7.7%
_GUARD_TYPE_VERSION _LOAD_ATTR_SLOT_0 38,810,080 5.7% 13.4%
_TO_BOOL_BOOL _GUARD_IS_FALSE_POP 19,405,040 2.8% 16.2%
_CHECK_MANAGED_OBJECT_HAS_VALUES _LOAD_ATTR_INSTANCE_VALUE_0 19,405,040 2.8% 19.1%
_GUARD_TYPE_VERSION _CHECK_MANAGED_OBJECT_HAS_VALUES 19,405,040 2.8% 21.9%
_GUARD_TYPE_VERSION _LOAD_ATTR_METHOD_NO_DICT 19,405,040 2.8% 24.8%
_LOAD_ATTR_METHOD_NO_DICT _SET_IP 19,405,040 2.8% 27.6%
_LOAD_ATTR_SLOT_0 _SET_IP 19,405,040 2.8% 30.4%
_LOAD_FAST_3 _GUARD_TYPE_VERSION 19,405,040 2.8% 33.3%
_START_EXECUTOR _TIER2_RESUME_CHECK 14,183,860 2.1% 35.4%
_ITER_CHECK_RANGE _GUARD_NOT_EXHAUSTED_RANGE 14,182,640 2.1% 37.5%
_TIER2_RESUME_CHECK _ITER_CHECK_RANGE 14,182,640 2.1% 39.5%
_SET_IP _CHECK_FUNCTION_EXACT_ARGS 13,435,840 2.0% 41.5%
_SAVE_RETURN_OFFSET _PUSH_FRAME 13,435,840 2.0% 43.5%
_GUARD_NOT_EXHAUSTED_RANGE _ITER_NEXT_RANGE 13,434,640 2.0% 45.5%
_INIT_CALL_PY_EXACT_ARGS_0 _SAVE_RETURN_OFFSET 9,703,720 1.4% 46.9%
_PUSH_NULL _LOAD_FAST_0 9,702,520 1.4% 48.3%
_BUILD_LIST _LOAD_FAST_0 9,702,520 1.4% 49.7%
_CALL_INTRINSIC_1 _CHECK_VALIDITY 9,702,520 1.4% 51.1%
_LIST_EXTEND _CHECK_VALIDITY_AND_SET_IP 9,702,520 1.4% 52.6%
_RESUME_CHECK _LOAD_FAST_0 9,702,520 1.4% 54.0%
_SET_IP _LIST_EXTEND 9,702,520 1.4% 55.4%
_SET_IP _CALL_METHOD_DESCRIPTOR_NOARGS 9,702,520 1.4% 56.8%
_SET_IP _LOAD_ATTR 9,702,520 1.4% 58.3%
_CALL_METHOD_DESCRIPTOR_NOARGS _CHECK_PERIODIC 9,702,520 1.4% 59.7%
_CHECK_FUNCTION_EXACT_ARGS _CHECK_STACK_SPACE_OPERAND 9,702,520 1.4% 61.1%
_CHECK_PERIODIC _CHECK_VALIDITY 9,702,520 1.4% 62.5%
_CHECK_STACK_SPACE_OPERAND _INIT_CALL_PY_EXACT_ARGS_0 9,702,520 1.4% 64.0%
_CHECK_VALIDITY _PUSH_NULL 9,702,520 1.4% 65.4%
_CHECK_VALIDITY _EXIT_TRACE 9,702,520 1.4% 66.8%
_CHECK_VALIDITY _STORE_FAST_3 9,702,520 1.4% 68.2%
_CHECK_VALIDITY_AND_SET_IP _CALL_INTRINSIC_1 9,702,520 1.4% 69.7%
_GUARD_IS_FALSE_POP _LOAD_FAST_0 9,702,520 1.4% 71.1%
_GUARD_IS_FALSE_POP _LOAD_FAST_3 9,702,520 1.4% 72.5%
_ITER_NEXT_RANGE _STORE_FAST 9,702,520 1.4% 73.9%
_LOAD_ATTR _CHECK_VALIDITY 9,702,520 1.4% 75.4%
_LOAD_ATTR_INSTANCE_VALUE_0 _TO_BOOL_BOOL 9,702,520 1.4% 76.8%
_LOAD_ATTR_INSTANCE_VALUE_0 _GUARD_TYPE_VERSION 9,702,520 1.4% 78.2%
_LOAD_ATTR_SLOT_0 _BUILD_LIST 9,702,520 1.4% 79.6%
_LOAD_ATTR_SLOT_0 _TO_BOOL_BOOL 9,702,520 1.4% 81.0%
_PUSH_FRAME _RESUME_CHECK 9,702,520 1.4% 82.5%
_STORE_FAST _LOAD_FAST_0 9,702,520 1.4% 83.9%
_STORE_FAST_3 _LOAD_FAST_3 9,702,520 1.4% 85.3%
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT _GUARD_KEYS_VERSION 7,465,440 1.1% 86.4%
_GUARD_KEYS_VERSION _LOAD_ATTR_METHOD_WITH_VALUES 7,465,440 1.1% 87.5%
_GUARD_TYPE_VERSION _GUARD_DORV_VALUES_INST_ATTR_FROM_DICT 7,465,440 1.1% 88.6%
_CHECK_FUNCTION_EXACT_ARGS _CHECK_STACK_SPACE 3,733,320 0.5% 89.2%
_BINARY_OP_SUBTRACT_INT _SET_IP 3,732,120 0.5% 89.7%
_CHECK_STACK_SPACE _INIT_CALL_PY_EXACT_ARGS_1 3,732,120 0.5% 90.2%
_GUARD_NOS_INT _BINARY_OP_SUBTRACT_INT 3,732,120 0.5% 90.8%
_INIT_CALL_PY_EXACT_ARGS_1 _SAVE_RETURN_OFFSET 3,732,120 0.5% 91.3%
_ITER_NEXT_RANGE _STORE_FAST_3 3,732,120 0.5% 91.9%
_LOAD_ATTR_METHOD_WITH_VALUES _LOAD_FAST_0 3,732,120 0.5% 92.4%
_LOAD_ATTR_METHOD_WITH_VALUES _LOAD_FAST_1 3,732,120 0.5% 93.0%
_LOAD_CONST_INLINE_BORROW _GUARD_NOS_INT 3,732,120 0.5% 93.5%
_LOAD_FAST_1 _LOAD_CONST_INLINE_BORROW 3,732,120 0.5% 94.1%
_LOAD_FAST_2 _GUARD_TYPE_VERSION 3,732,120 0.5% 94.6%
_PUSH_FRAME _EXIT_TRACE 3,732,120 0.5% 95.2%
_STORE_FAST_3 _LOAD_FAST_2 3,732,120 0.5% 95.7%
_GUARD_NOT_EXHAUSTED_RANGE _EXIT_TRACE 748,000 0.1% 95.8%
_CHECK_STACK_SPACE _INIT_CALL_PY_EXACT_ARGS_0 1,200 0.0% 95.8%
_LOAD_ATTR_METHOD_WITH_VALUES _SET_IP 1,200 0.0% 95.8%
_PUSH_FRAME _DYNAMIC_EXIT 1,200 0.0% 95.8%
_TIER2_RESUME_CHECK _LOAD_FAST_0 1,200 0.0% 95.8%
_POP_TOP _LOAD_CONST_INLINE_BORROW 280 0.0% 95.8%
_LOAD_CONST_INLINE_BORROW _STORE_FAST_3 280 0.0% 95.8%
_START_EXECUTOR _POP_TOP 280 0.0% 95.8%
_STORE_FAST_3 _EXIT_TRACE 280 0.0% 95.8%
_GUARD_NOT_EXHAUSTED_TUPLE _EXIT_TRACE 20 0.0% 95.8%
_ITER_CHECK_TUPLE _GUARD_NOT_EXHAUSTED_TUPLE 20 0.0% 95.8%
_TIER2_RESUME_CHECK _ITER_CHECK_TUPLE 20 0.0% 95.8%

Unsupported opcodes

unsupported opcodes
Opcode Count
CALL_FUNCTION_EX 2,480
SEND_GEN 280

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