Skip to content

Latest commit

 

History

History
9446 lines (8612 loc) · 164 KB

bm-20240525-azure-x86_64-python-e418fc3a6e7bade68ab5-3.14.0a0-e418fc3-pystats-python_startup.md

File metadata and controls

9446 lines (8612 loc) · 164 KB

Pystats results

  • benchmark: python_startup
  • fork: python
  • ref: e418fc3a6e7bade68ab5dfe72f14ddba28e6acb5
  • commit hash: e418fc3
  • commit date: 2024-05-25T21:01:36+01: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 68,080 21.6% 21.6%
LOAD_CONST 20,260 6.4% 28.0%
STORE_FAST 16,580 5.3% 33.3%
POP_JUMP_IF_FALSE 14,320 4.5% 37.8%
LOAD_GLOBAL_MODULE 12,440 3.9% 41.7%
RESUME_CHECK 9,740 3.1% 44.8%
LOAD_GLOBAL_BUILTIN 8,940 2.8% 47.7% 19.5%
LOAD_FAST_LOAD_FAST 8,200 2.6% 50.3%
LOAD_ATTR_INSTANCE_VALUE 7,880 2.5% 52.7%
LOAD_ATTR_MODULE 7,300 2.3% 55.1%
POP_TOP 7,280 2.3% 57.4%
STORE_ATTR_INSTANCE_VALUE 6,740 2.1% 59.5%
PUSH_NULL 5,940 1.9% 61.4%
TO_BOOL_BOOL 5,920 1.9% 63.3%
RETURN_VALUE 5,340 1.7% 65.0%
LOAD_ATTR 5,040 1.6% 66.6%
POP_JUMP_IF_NOT_NONE 4,620 1.5% 68.0%
RETURN_CONST 4,620 1.5% 69.5%
INTERPRETER_EXIT 4,220 1.3% 70.8%
COMPARE_OP_INT 3,800 1.2% 72.0%
CALL 3,640 1.2% 73.2%
NOP 3,520 1.1% 74.3%
LOAD_ATTR_METHOD_NO_DICT 3,360 1.1% 75.4% 13.1%
LOAD_DEREF 3,300 1.0% 76.4%
CALL_PY_EXACT_ARGS 3,300 1.0% 77.4%
LOAD_GLOBAL 3,180 1.0% 78.5%
TO_BOOL 2,920 0.9% 79.4%
CALL_BUILTIN_FAST 2,700 0.9% 80.2%
CALL_BUILTIN_FAST_WITH_KEYWORDS 2,700 0.9% 81.1%
POP_JUMP_IF_TRUE 2,460 0.8% 81.9%
POP_JUMP_IF_NONE 2,420 0.8% 82.6%
LOAD_ATTR_METHOD_WITH_VALUES 2,400 0.8% 83.4%
CALL_METHOD_DESCRIPTOR_FAST 2,160 0.7% 84.1%
STORE_ATTR 2,060 0.7% 84.7%
BUILD_TUPLE 1,980 0.6% 85.4%
CALL_ISINSTANCE 1,880 0.6% 86.0%
CALL_NON_PY_GENERAL 1,820 0.6% 86.5%
UNPACK_SEQUENCE_TWO_TUPLE 1,820 0.6% 87.1%
STORE_FAST_STORE_FAST 1,760 0.6% 87.7%
BINARY_OP 1,740 0.6% 88.2%
CALL_PY_GENERAL 1,600 0.5% 88.7%
JUMP_FORWARD 1,540 0.5% 89.2%
BUILD_LIST 1,320 0.4% 89.6%
CALL_FUNCTION_EX 1,320 0.4% 90.1%
DELETE_ATTR 1,320 0.4% 90.5%
BINARY_SLICE 1,100 0.3% 90.8%
COPY 1,100 0.3% 91.2%
MAKE_CELL 1,100 0.3% 91.5%
TO_BOOL_STR 1,080 0.3% 91.9% 20.4%
COMPARE_OP 1,020 0.3% 92.2%
CALL_BUILTIN_CLASS 1,000 0.3% 92.5%
TO_BOOL_NONE 1,000 0.3% 92.8%
BEFORE_WITH 880 0.3% 93.1%
BUILD_MAP 880 0.3% 93.4%
CALL_KW 880 0.3% 93.7%
COPY_FREE_VARS 880 0.3% 93.9%
DICT_MERGE 880 0.3% 94.2%
CALL_LEN 860 0.3% 94.5%
CALL_METHOD_DESCRIPTOR_O 800 0.3% 94.7%
TO_BOOL_INT 800 0.3% 95.0%
GET_ITER 700 0.2% 95.2%
SWAP 680 0.2% 95.4%
COMPARE_OP_STR 660 0.2% 95.6% 33.3%
EXTENDED_ARG 660 0.2% 95.8%
STORE_DEREF 660 0.2% 96.1%
RESUME 660 0.2% 96.3%
BINARY_OP_ADD_INT 660 0.2% 96.5%
BINARY_SUBSCR_LIST_INT 600 0.2% 96.7%
FOR_ITER_TUPLE 520 0.2% 96.8%
IS_OP 460 0.1% 97.0%
CHECK_EXC_MATCH 440 0.1% 97.1%
MAKE_FUNCTION 440 0.1% 97.3%
POP_EXCEPT 440 0.1% 97.4%
PUSH_EXC_INFO 440 0.1% 97.5%
RETURN_GENERATOR 440 0.1% 97.7%
SET_FUNCTION_ATTRIBUTE 440 0.1% 97.8%
YIELD_VALUE 440 0.1% 98.0%
CALL_BOUND_METHOD_EXACT_ARGS 400 0.1% 98.1% 100.0%
BINARY_SUBSCR_TUPLE_INT 400 0.1% 98.2%
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 400 0.1% 98.3%
CALL_METHOD_DESCRIPTOR_NOARGS 400 0.1% 98.5%
FOR_ITER_LIST 400 0.1% 98.6%
LOAD_ATTR_CLASS 400 0.1% 98.7%
LOAD_ATTR_METHOD_LAZY_DICT 400 0.1% 98.8%
LOAD_ATTR_SLOT 400 0.1% 99.0%
UNPACK_SEQUENCE 360 0.1% 99.1%
JUMP_BACKWARD 260 0.1% 99.2%
BINARY_OP_INPLACE_ADD_UNICODE 220 0.1% 99.2%
CALL_INTRINSIC_1 220 0.1% 99.3%
LIST_EXTEND 220 0.1% 99.4%
BINARY_OP_ADD_UNICODE 220 0.1% 99.4%
CALL_BOUND_METHOD_GENERAL 200 0.1% 99.5% 100.0%
BINARY_SUBSCR 200 0.1% 99.6%
CALL_STR_1 200 0.1% 99.6%
CALL_TUPLE_1 200 0.1% 99.7%
CALL_TYPE_1 200 0.1% 99.8%
STORE_SUBSCR_DICT 200 0.1% 99.8%
TO_BOOL_ALWAYS_TRUE 200 0.1% 99.9%
UNPACK_SEQUENCE_TUPLE 200 0.1% 99.9%
FOR_ITER 80 0.0% 100.0%
STORE_SUBSCR 40 0.0% 100.0%
CONTAINS_OP 40 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_FAST 7,920 2.5% 2.5%
STORE_FAST LOAD_FAST 7,740 2.5% 5.0%
POP_JUMP_IF_FALSE LOAD_FAST 7,040 2.2% 7.2%
LOAD_FAST LOAD_ATTR_INSTANCE_VALUE 6,780 2.1% 9.3%
LOAD_FAST LOAD_CONST 6,400 2.0% 11.4%
LOAD_GLOBAL_MODULE LOAD_ATTR_MODULE 5,960 1.9% 13.3%
LOAD_FAST STORE_ATTR_INSTANCE_VALUE 5,820 1.8% 15.1%
LOAD_GLOBAL_BUILTIN LOAD_FAST 5,600 1.8% 16.9%
TO_BOOL_BOOL POP_JUMP_IF_FALSE 4,500 1.4% 18.3%
LOAD_ATTR_MODULE PUSH_NULL 4,300 1.4% 19.7%
COMPARE_OP_INT POP_JUMP_IF_FALSE 3,800 1.2% 20.9%
PUSH_NULL LOAD_FAST 3,740 1.2% 22.1%
RESUME_CHECK LOAD_FAST 3,700 1.2% 23.2%
LOAD_CONST LOAD_FAST 3,520 1.1% 24.3%
CACHE RESUME_CHECK 3,320 1.1% 25.4%
LOAD_CONST LOAD_CONST 3,080 1.0% 26.4%
RESUME_CHECK LOAD_GLOBAL_MODULE 2,960 0.9% 27.3%
STORE_FAST LOAD_GLOBAL_MODULE 2,900 0.9% 28.2%
CALL_PY_EXACT_ARGS RESUME_CHECK 2,900 0.9% 29.2%
LOAD_FAST POP_JUMP_IF_NOT_NONE 2,860 0.9% 30.1%
STORE_ATTR_INSTANCE_VALUE LOAD_FAST 2,860 0.9% 31.0%
LOAD_FAST LOAD_ATTR 2,760 0.9% 31.8%
LOAD_CONST COMPARE_OP_INT 2,700 0.9% 32.7%
POP_TOP LOAD_FAST 2,640 0.8% 33.5%
LOAD_CONST STORE_FAST 2,640 0.8% 34.4%
LOAD_FAST LOAD_ATTR_METHOD_NO_DICT 2,480 0.8% 35.2%
RETURN_CONST INTERPRETER_EXIT 2,200 0.7% 35.8%
LOAD_FAST CALL_BUILTIN_FAST_WITH_KEYWORDS 2,180 0.7% 36.5%
LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES 2,160 0.7% 37.2%
LOAD_FAST RETURN_VALUE 1,980 0.6% 37.9%
LOAD_FAST_LOAD_FAST LOAD_FAST 1,980 0.6% 38.5%
POP_JUMP_IF_NOT_NONE LOAD_FAST 1,980 0.6% 39.1%
LOAD_FAST LOAD_GLOBAL_BUILTIN 1,960 0.6% 39.7%
LOAD_ATTR_METHOD_NO_DICT LOAD_FAST 1,960 0.6% 40.3%
STORE_ATTR_INSTANCE_VALUE LOAD_CONST 1,800 0.6% 40.9%
CALL_ISINSTANCE TO_BOOL_BOOL 1,780 0.6% 41.5%
LOAD_FAST POP_JUMP_IF_NONE 1,760 0.6% 42.0%
LOAD_FAST CALL_METHOD_DESCRIPTOR_FAST 1,760 0.6% 42.6%
LOAD_GLOBAL_MODULE LOAD_FAST 1,680 0.5% 43.1%
UNPACK_SEQUENCE_TWO_TUPLE STORE_FAST_STORE_FAST 1,620 0.5% 43.6%
TO_BOOL POP_JUMP_IF_FALSE 1,600 0.5% 44.2%
LOAD_FAST CALL_PY_EXACT_ARGS 1,600 0.5% 44.7%
RETURN_VALUE INTERPRETER_EXIT 1,580 0.5% 45.2%
NOP LOAD_FAST 1,540 0.5% 45.6%
LOAD_GLOBAL_BUILTIN CALL_ISINSTANCE 1,420 0.5% 46.1%
TO_BOOL_BOOL POP_JUMP_IF_TRUE 1,420 0.5% 46.5%
LOAD_FAST DELETE_ATTR 1,320 0.4% 47.0%
LOAD_FAST_LOAD_FAST LOAD_FAST_LOAD_FAST 1,320 0.4% 47.4%
POP_JUMP_IF_FALSE LOAD_FAST_LOAD_FAST 1,320 0.4% 47.8%
POP_JUMP_IF_NONE LOAD_FAST 1,320 0.4% 48.2%
RETURN_CONST POP_TOP 1,320 0.4% 48.6%
STORE_FAST STORE_FAST 1,320 0.4% 49.1%
CALL_BUILTIN_FAST_WITH_KEYWORDS STORE_FAST 1,300 0.4% 49.5%
LOAD_FAST LOAD_GLOBAL_MODULE 1,260 0.4% 49.9%
POP_JUMP_IF_FALSE LOAD_GLOBAL_MODULE 1,260 0.4% 50.3%
LOAD_ATTR_INSTANCE_VALUE LOAD_FAST 1,240 0.4% 50.7%
RESUME_CHECK LOAD_GLOBAL_BUILTIN 1,240 0.4% 51.1%
LOAD_FAST STORE_ATTR 1,220 0.4% 51.4%
CALL_PY_GENERAL RESUME_CHECK 1,200 0.4% 51.8%
POP_TOP RETURN_CONST 1,100 0.3% 52.2%
LOAD_FAST_LOAD_FAST BUILD_TUPLE 1,100 0.3% 52.5%
POP_JUMP_IF_FALSE RETURN_CONST 1,100 0.3% 52.9%
POP_JUMP_IF_TRUE LOAD_FAST 1,100 0.3% 53.2%
STORE_FAST LOAD_CONST 1,100 0.3% 53.6%
PUSH_NULL CALL_NON_PY_GENERAL 1,080 0.3% 53.9%
LOAD_GLOBAL_MODULE TO_BOOL_BOOL 1,080 0.3% 54.2%
CALL_METHOD_DESCRIPTOR_FAST STORE_FAST 1,060 0.3% 54.6%
STORE_ATTR_INSTANCE_VALUE RETURN_CONST 1,040 0.3% 54.9%
LOAD_GLOBAL LOAD_GLOBAL_MODULE 1,000 0.3% 55.2%
LOAD_ATTR_INSTANCE_VALUE POP_JUMP_IF_NOT_NONE 1,000 0.3% 55.5%
LOAD_FAST CALL 920 0.3% 55.8%
LOAD_ATTR_INSTANCE_VALUE TO_BOOL_BOOL 900 0.3% 56.1%
DELETE_ATTR LOAD_FAST 880 0.3% 56.4%
DICT_MERGE CALL_FUNCTION_EX 880 0.3% 56.7%
JUMP_FORWARD LOAD_FAST 880 0.3% 57.0%
LOAD_CONST CALL_KW 880 0.3% 57.2%
LOAD_FAST COPY 880 0.3% 57.5%
LOAD_FAST TO_BOOL_STR 880 0.3% 57.8%
POP_JUMP_IF_NONE LOAD_CONST 880 0.3% 58.1%
RETURN_CONST STORE_FAST 880 0.3% 58.4%
STORE_FAST NOP 880 0.3% 58.6%
LOAD_FAST TO_BOOL 860 0.3% 58.9%
TO_BOOL_STR POP_JUMP_IF_FALSE 860 0.3% 59.2%
LOAD_FAST CALL_LEN 840 0.3% 59.4%
COPY_FREE_VARS RESUME_CHECK 820 0.3% 59.7%
CALL_BUILTIN_FAST STORE_FAST 820 0.3% 60.0%
NOP LOAD_GLOBAL_BUILTIN 800 0.3% 60.2%
CALL_BUILTIN_CLASS STORE_FAST 800 0.3% 60.5%
LOAD_ATTR_INSTANCE_VALUE CALL_BUILTIN_FAST 800 0.3% 60.7%
LOAD_ATTR_METHOD_WITH_VALUES LOAD_FAST 800 0.3% 61.0%
TO_BOOL_INT POP_JUMP_IF_FALSE 800 0.3% 61.2%
LOAD_CONST CALL_BUILTIN_FAST 760 0.2% 61.5%
LOAD_GLOBAL_BUILTIN LOAD_GLOBAL_BUILTIN 760 0.2% 61.7%
LOAD_GLOBAL_MODULE LOAD_ATTR 760 0.2% 62.0%
LOAD_FAST CALL_PY_GENERAL 720 0.2% 62.2%
LOAD_FAST TO_BOOL_BOOL 720 0.2% 62.4%
STORE_FAST LOAD_GLOBAL_BUILTIN 720 0.2% 62.6%
LOAD_ATTR_MODULE LOAD_ATTR_MODULE 720 0.2% 62.9%
LOAD_ATTR LOAD_ATTR_INSTANCE_VALUE 700 0.2% 63.1%
LOAD_FAST_LOAD_FAST STORE_ATTR 700 0.2% 63.3%

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 660 60.0%
LOAD_CONST 440 40.0%
Successors Count Percentage
STORE_FAST 660 60.0%
GET_ITER 220 20.0%
LOAD_FAST 220 20.0%

CACHE

Successors and predecessors for CACHE
Successors Count Percentage
RESUME_CHECK 3,320 78.7%
POP_TOP 440 10.4%
RESUME 240 5.7%
MAKE_CELL 220 5.2%

BEFORE_WITH

Successors and predecessors for BEFORE_WITH
Predecessors Count Percentage
RETURN_VALUE 440 50.0%
CALL_NON_PY_GENERAL 200 22.7%
LOAD_ATTR_INSTANCE_VALUE 200 22.7%
CALL 20 2.3%
LOAD_ATTR 20 2.3%
Successors Count Percentage
POP_TOP 440 50.0%
STORE_FAST 440 50.0%

BINARY_OP_INPLACE_ADD_UNICODE

Successors and predecessors for BINARY_OP_INPLACE_ADD_UNICODE
Predecessors Count Percentage
BINARY_OP_ADD_UNICODE 220 100.0%
Successors Count Percentage
JUMP_BACKWARD 220 100.0%

BINARY_SUBSCR

Successors and predecessors for BINARY_SUBSCR
Predecessors Count Percentage
LOAD_CONST 200 100.0%
Successors Count Percentage
BINARY_SUBSCR_LIST_INT 60 30.0%
CALL 40 20.0%
STORE_FAST 40 20.0%
BINARY_SUBSCR_TUPLE_INT 40 20.0%
STORE_DEREF 20 10.0%

CHECK_EXC_MATCH

Successors and predecessors for CHECK_EXC_MATCH
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 420 95.5%
LOAD_GLOBAL 20 4.5%
Successors Count Percentage
POP_JUMP_IF_FALSE 440 100.0%

GET_ITER

Successors and predecessors for GET_ITER
Predecessors Count Percentage
LOAD_FAST 480 68.6%
BINARY_SLICE 220 31.4%
Successors Count Percentage
FOR_ITER_LIST 360 51.4%
FOR_ITER_TUPLE 260 37.1%
FOR_ITER 80 11.4%

INTERPRETER_EXIT

Successors and predecessors for INTERPRETER_EXIT
Predecessors Count Percentage
RETURN_CONST 2,200 52.1%
RETURN_VALUE 1,580 37.4%
YIELD_VALUE 440 10.4%

MAKE_FUNCTION

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

NOP

Successors and predecessors for NOP
Predecessors Count Percentage
STORE_FAST 880 25.0%
DELETE_ATTR 440 12.5%
POP_JUMP_IF_NOT_NONE 440 12.5%
RESUME_CHECK 400 11.4%
NOP 220 6.2%
Successors Count Percentage
LOAD_FAST 1,540 43.8%
LOAD_GLOBAL_BUILTIN 800 22.7%
LOAD_GLOBAL_MODULE 360 10.2%
NOP 220 6.2%
LOAD_CONST 220 6.2%

POP_EXCEPT

Successors and predecessors for POP_EXCEPT
Predecessors Count Percentage
POP_TOP 440 100.0%
Successors Count Percentage
RETURN_CONST 440 100.0%

POP_TOP

Successors and predecessors for POP_TOP
Predecessors Count Percentage
RETURN_CONST 1,320 18.1%
RETURN_VALUE 660 9.1%
POP_JUMP_IF_TRUE 660 9.1%
CALL_METHOD_DESCRIPTOR_O 600 8.2%
CACHE 440 6.0%
Successors Count Percentage
LOAD_FAST 2,640 36.3%
RETURN_CONST 1,100 15.1%
LOAD_CONST 660 9.1%
LOAD_GLOBAL_MODULE 540 7.4%
POP_EXCEPT 440 6.0%

PUSH_EXC_INFO

Successors and predecessors for PUSH_EXC_INFO
Predecessors Count Percentage
CALL_BUILTIN_FAST 420 95.5%
CALL 20 4.5%
Successors Count Percentage
LOAD_GLOBAL_BUILTIN 400 90.9%
LOAD_GLOBAL 40 9.1%

PUSH_NULL

Successors and predecessors for PUSH_NULL
Predecessors Count Percentage
LOAD_ATTR_MODULE 4,300 72.4%
LOAD_FAST 660 11.1%
LOAD_ATTR 540 9.1%
LOAD_DEREF 440 7.4%
Successors Count Percentage
LOAD_FAST 3,740 63.0%
CALL_NON_PY_GENERAL 1,080 18.2%
CALL 460 7.7%
LOAD_DEREF 440 7.4%
LOAD_CONST 220 3.7%

RETURN_GENERATOR

Successors and predecessors for RETURN_GENERATOR
Predecessors Count Percentage
CALL_FUNCTION_EX 440 100.0%
Successors Count Percentage
LOAD_FAST 440 100.0%

RETURN_VALUE

Successors and predecessors for RETURN_VALUE
Predecessors Count Percentage
LOAD_FAST 1,980 37.1%
BUILD_TUPLE 660 12.4%
CALL_BUILTIN_FAST 640 12.0%
CALL_NON_PY_GENERAL 620 11.6%
LOAD_ATTR_INSTANCE_VALUE 400 7.5%
Successors Count Percentage
INTERPRETER_EXIT 1,580 29.6%
POP_TOP 660 12.4%
STORE_FAST 660 12.4%
BEFORE_WITH 440 8.2%
TO_BOOL 260 4.9%

STORE_SUBSCR

Successors and predecessors for STORE_SUBSCR
Predecessors Count Percentage
LOAD_CONST 40 100.0%
Successors Count Percentage
LOAD_FAST 20 50.0%
STORE_SUBSCR_DICT 20 50.0%

TO_BOOL

Successors and predecessors for TO_BOOL
Predecessors Count Percentage
LOAD_FAST 860 29.5%
LOAD_ATTR_INSTANCE_VALUE 560 19.2%
LOAD_ATTR 280 9.6%
RETURN_VALUE 260 8.9%
TO_BOOL 240 8.2%
Successors Count Percentage
POP_JUMP_IF_FALSE 1,600 54.8%
TO_BOOL_BOOL 460 15.8%
TO_BOOL 240 8.2%
EXTENDED_ARG 220 7.5%
POP_JUMP_IF_TRUE 180 6.2%

BINARY_OP

Successors and predecessors for BINARY_OP
Predecessors Count Percentage
LOAD_FAST 660 37.9%
CALL_LEN 660 37.9%
BUILD_LIST 220 12.6%
BINARY_OP 200 11.5%
Successors Count Percentage
STORE_FAST 660 37.9%
COMPARE_OP_STR 660 37.9%
LOAD_FAST 220 12.6%
BINARY_OP 200 11.5%

BUILD_LIST

Successors and predecessors for BUILD_LIST
Predecessors Count Percentage
LOAD_FAST 440 33.3%
STORE_FAST 220 16.7%
CALL_STR_1 200 15.2%
LOAD_ATTR_INSTANCE_VALUE 200 15.2%
RESUME_CHECK 200 15.2%
Successors Count Percentage
STORE_FAST 660 50.0%
BINARY_OP 220 16.7%
LOAD_FAST 220 16.7%
LOAD_ATTR_METHOD_NO_DICT 180 13.6%
LOAD_ATTR 40 3.0%

BUILD_MAP

Successors and predecessors for BUILD_MAP
Predecessors Count Percentage
LOAD_FAST 440 50.0%
CALL_INTRINSIC_1 220 25.0%
LOAD_DEREF 220 25.0%
Successors Count Percentage
LOAD_FAST 660 75.0%
LOAD_DEREF 220 25.0%

BUILD_TUPLE

Successors and predecessors for BUILD_TUPLE
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 1,100 55.6%
LOAD_FAST 440 22.2%
LOAD_DEREF 220 11.1%
LOAD_GLOBAL_BUILTIN 200 10.1%
LOAD_GLOBAL 20 1.0%
Successors Count Percentage
RETURN_VALUE 660 33.3%
LOAD_CONST 440 22.2%
CALL_METHOD_DESCRIPTOR_O 360 18.2%
STORE_FAST 220 11.1%
CALL_ISINSTANCE 180 9.1%

CALL

Successors and predecessors for CALL
Predecessors Count Percentage
LOAD_FAST 920 25.3%
PUSH_NULL 460 12.6%
LOAD_CONST 460 12.6%
LOAD_GLOBAL_MODULE 280 7.7%
LOAD_GLOBAL_BUILTIN 260 7.1%
Successors Count Percentage
LOAD_FAST 540 14.8%
STORE_FAST 440 12.1%
POP_TOP 240 6.6%
RESUME 220 6.0%
CALL_PY_EXACT_ARGS 220 6.0%

CALL_FUNCTION_EX

Successors and predecessors for CALL_FUNCTION_EX
Predecessors Count Percentage
DICT_MERGE 880 66.7%
LOAD_FAST 440 33.3%
Successors Count Percentage
RETURN_GENERATOR 440 33.3%
POP_TOP 220 16.7%
COPY_FREE_VARS 220 16.7%
MAKE_CELL 220 16.7%
LOAD_GLOBAL_MODULE 180 13.6%

CALL_INTRINSIC_1

Successors and predecessors for CALL_INTRINSIC_1
Predecessors Count Percentage
LIST_EXTEND 220 100.0%
Successors Count Percentage
BUILD_MAP 220 100.0%

CALL_KW

Successors and predecessors for CALL_KW
Predecessors Count Percentage
LOAD_CONST 880 100.0%
Successors Count Percentage
RESUME_CHECK 400 45.5%
LOAD_FAST 220 25.0%
STORE_FAST 220 25.0%
RESUME 40 4.5%

COMPARE_OP

Successors and predecessors for COMPARE_OP
Predecessors Count Percentage
LOAD_CONST 600 58.8%
LOAD_FAST_LOAD_FAST 220 21.6%
LOAD_GLOBAL 60 5.9%
LOAD_GLOBAL_MODULE 60 5.9%
COMPARE_OP 40 3.9%
Successors Count Percentage
POP_JUMP_IF_FALSE 600 58.8%
COMPARE_OP_INT 380 37.3%
COMPARE_OP 40 3.9%

CONTAINS_OP

Successors and predecessors for CONTAINS_OP
Predecessors Count Percentage
LOAD_ATTR 40 100.0%
Successors Count Percentage
POP_JUMP_IF_TRUE 40 100.0%

COPY

Successors and predecessors for COPY
Predecessors Count Percentage
LOAD_FAST 880 80.0%
RETURN_VALUE 220 20.0%
Successors Count Percentage
TO_BOOL_NONE 540 49.1%
LOAD_FAST 220 20.0%
TO_BOOL_BOOL 180 16.4%
TO_BOOL 160 14.5%

COPY_FREE_VARS

Successors and predecessors for COPY_FREE_VARS
Predecessors Count Percentage
CALL_PY_GENERAL 400 45.5%
CALL_FUNCTION_EX 220 25.0%
CALL_PY_EXACT_ARGS 200 22.7%
CALL 60 6.8%
Successors Count Percentage
RESUME_CHECK 820 93.2%
RESUME 60 6.8%

DELETE_ATTR

Successors and predecessors for DELETE_ATTR
Predecessors Count Percentage
LOAD_FAST 1,320 100.0%
Successors Count Percentage
LOAD_FAST 880 66.7%
NOP 440 33.3%

DICT_MERGE

Successors and predecessors for DICT_MERGE
Predecessors Count Percentage
LOAD_FAST 660 75.0%
LOAD_DEREF 220 25.0%
Successors Count Percentage
CALL_FUNCTION_EX 880 100.0%

EXTENDED_ARG

Successors and predecessors for EXTENDED_ARG
Predecessors Count Percentage
LOAD_FAST 440 66.7%
TO_BOOL 220 33.3%
Successors Count Percentage
POP_JUMP_IF_FALSE 220 33.3%
POP_JUMP_IF_NONE 220 33.3%
POP_JUMP_IF_NOT_NONE 220 33.3%

FOR_ITER

Successors and predecessors for FOR_ITER
Predecessors Count Percentage
GET_ITER 80 100.0%
Successors Count Percentage
FOR_ITER_LIST 40 50.0%
NOP 20 25.0%
RETURN_CONST 20 25.0%

IS_OP

Successors and predecessors for IS_OP
Predecessors Count Percentage
LOAD_CONST 220 47.8%
LOAD_GLOBAL_MODULE 200 43.5%
LOAD_GLOBAL 40 8.7%
Successors Count Percentage
POP_JUMP_IF_FALSE 240 52.2%
STORE_FAST 220 47.8%

JUMP_BACKWARD

Successors and predecessors for JUMP_BACKWARD
Predecessors Count Percentage
BINARY_OP_INPLACE_ADD_UNICODE 220 84.6%
POP_JUMP_IF_TRUE 40 15.4%
Successors Count Percentage
FOR_ITER_TUPLE 260 100.0%

JUMP_FORWARD

Successors and predecessors for JUMP_FORWARD
Predecessors Count Percentage
STORE_FAST 660 42.9%
POP_JUMP_IF_FALSE 440 28.6%
POP_TOP 220 14.3%
POP_JUMP_IF_NOT_NONE 220 14.3%
Successors Count Percentage
LOAD_FAST 880 57.1%
LOAD_CONST 220 14.3%
LOAD_GLOBAL_BUILTIN 180 11.7%
LOAD_GLOBAL_MODULE 180 11.7%
LOAD_GLOBAL 80 5.2%

LIST_EXTEND

Successors and predecessors for LIST_EXTEND
Predecessors Count Percentage
LOAD_FAST 220 100.0%
Successors Count Percentage
CALL_INTRINSIC_1 220 100.0%

LOAD_ATTR

Successors and predecessors for LOAD_ATTR
Predecessors Count Percentage
LOAD_FAST 2,760 54.8%
LOAD_GLOBAL_MODULE 760 15.1%
LOAD_GLOBAL 540 10.7%
LOAD_ATTR 420 8.3%
CALL_TYPE_1 200 4.0%
Successors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 700 13.9%
LOAD_ATTR_MODULE 620 12.3%
PUSH_NULL 540 10.7%
LOAD_FAST_LOAD_FAST 540 10.7%
LOAD_ATTR 420 8.3%

LOAD_CONST

Successors and predecessors for LOAD_CONST
Predecessors Count Percentage
LOAD_FAST 6,400 31.6%
LOAD_CONST 3,080 15.2%
STORE_ATTR_INSTANCE_VALUE 1,800 8.9%
STORE_FAST 1,100 5.4%
POP_JUMP_IF_NONE 880 4.3%
Successors Count Percentage
LOAD_FAST 3,520 17.4%
LOAD_CONST 3,080 15.2%
COMPARE_OP_INT 2,700 13.3%
STORE_FAST 2,640 13.0%
CALL_KW 880 4.3%

LOAD_DEREF

Successors and predecessors for LOAD_DEREF
Predecessors Count Percentage
POP_JUMP_IF_FALSE 660 20.0%
PUSH_NULL 440 13.3%
LOAD_GLOBAL_MODULE 420 12.7%
LOAD_ATTR_MODULE 400 12.1%
NOP 220 6.7%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 660 20.0%
CALL_PY_EXACT_ARGS 540 16.4%
PUSH_NULL 440 13.3%
BUILD_MAP 220 6.7%
BUILD_TUPLE 220 6.7%

LOAD_FAST

Successors and predecessors for LOAD_FAST
Predecessors Count Percentage
LOAD_FAST 7,920 11.6%
STORE_FAST 7,740 11.4%
POP_JUMP_IF_FALSE 7,040 10.3%
LOAD_GLOBAL_BUILTIN 5,600 8.2%
PUSH_NULL 3,740 5.5%
Successors Count Percentage
LOAD_FAST 7,920 11.6%
LOAD_ATTR_INSTANCE_VALUE 6,780 10.0%
LOAD_CONST 6,400 9.4%
STORE_ATTR_INSTANCE_VALUE 5,820 8.5%
POP_JUMP_IF_NOT_NONE 2,860 4.2%

LOAD_FAST_LOAD_FAST

Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 1,320 16.1%
POP_JUMP_IF_FALSE 1,320 16.1%
LOAD_DEREF 660 8.0%
STORE_FAST_STORE_FAST 660 8.0%
LOAD_ATTR_METHOD_WITH_VALUES 600 7.3%
Successors Count Percentage
LOAD_FAST 1,980 24.1%
LOAD_FAST_LOAD_FAST 1,320 16.1%
BUILD_TUPLE 1,100 13.4%
STORE_ATTR 700 8.5%
LOAD_GLOBAL_BUILTIN 660 8.0%

LOAD_GLOBAL

Successors and predecessors for LOAD_GLOBAL
Predecessors Count Percentage
STORE_FAST 560 17.6%
LOAD_FAST 540 17.0%
POP_JUMP_IF_FALSE 420 13.2%
RESUME 220 6.9%
RESUME_CHECK 220 6.9%
Successors Count Percentage
LOAD_GLOBAL_MODULE 1,000 31.4%
LOAD_GLOBAL_BUILTIN 560 17.6%
LOAD_ATTR 540 17.0%
LOAD_FAST 440 13.8%
CALL 180 5.7%

MAKE_CELL

Successors and predecessors for MAKE_CELL
Predecessors Count Percentage
MAKE_CELL 440 40.0%
CACHE 220 20.0%
CALL_FUNCTION_EX 220 20.0%
CALL_PY_EXACT_ARGS 200 18.2%
CALL 20 1.8%
Successors Count Percentage
RESUME_CHECK 600 54.5%
MAKE_CELL 440 40.0%
RESUME 60 5.5%

POP_JUMP_IF_FALSE

Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors Count Percentage
TO_BOOL_BOOL 4,500 31.4%
COMPARE_OP_INT 3,800 26.5%
TO_BOOL 1,600 11.2%
TO_BOOL_STR 860 6.0%
TO_BOOL_INT 800 5.6%
Successors Count Percentage
LOAD_FAST 7,040 49.2%
LOAD_FAST_LOAD_FAST 1,320 9.2%
LOAD_GLOBAL_MODULE 1,260 8.8%
RETURN_CONST 1,100 7.7%
LOAD_CONST 660 4.6%

POP_JUMP_IF_NONE

Successors and predecessors for POP_JUMP_IF_NONE
Predecessors Count Percentage
LOAD_FAST 1,760 72.7%
LOAD_ATTR_INSTANCE_VALUE 400 16.5%
EXTENDED_ARG 220 9.1%
LOAD_ATTR 40 1.7%
Successors Count Percentage
LOAD_FAST 1,320 54.5%
LOAD_CONST 880 36.4%
NOP 220 9.1%

POP_JUMP_IF_NOT_NONE

Successors and predecessors for POP_JUMP_IF_NOT_NONE
Predecessors Count Percentage
LOAD_FAST 2,860 61.9%
LOAD_ATTR_INSTANCE_VALUE 1,000 21.6%
EXTENDED_ARG 220 4.8%
LOAD_DEREF 220 4.8%
LOAD_GLOBAL_MODULE 200 4.3%
Successors Count Percentage
LOAD_FAST 1,980 42.9%
LOAD_GLOBAL_BUILTIN 540 11.7%
NOP 440 9.5%
LOAD_CONST 440 9.5%
LOAD_GLOBAL_MODULE 360 7.8%

POP_JUMP_IF_TRUE

Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors Count Percentage
TO_BOOL_BOOL 1,420 57.7%
TO_BOOL_NONE 600 24.4%
TO_BOOL_STR 220 8.9%
TO_BOOL 180 7.3%
CONTAINS_OP 40 1.6%
Successors Count Percentage
LOAD_FAST 1,100 44.7%
POP_TOP 660 26.8%
LOAD_GLOBAL_MODULE 360 14.6%
NOP 220 8.9%
LOAD_GLOBAL 80 3.3%

RETURN_CONST

Successors and predecessors for RETURN_CONST
Predecessors Count Percentage
POP_TOP 1,100 23.8%
POP_JUMP_IF_FALSE 1,100 23.8%
STORE_ATTR_INSTANCE_VALUE 1,040 22.5%
STORE_ATTR 500 10.8%
POP_EXCEPT 440 9.5%
Successors Count Percentage
INTERPRETER_EXIT 2,200 47.6%
POP_TOP 1,320 28.6%
STORE_FAST 880 19.0%
TO_BOOL_NONE 180 3.9%
TO_BOOL 40 0.9%

SET_FUNCTION_ATTRIBUTE

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

STORE_ATTR

Successors and predecessors for STORE_ATTR
Predecessors Count Percentage
LOAD_FAST 1,220 59.2%
LOAD_FAST_LOAD_FAST 700 34.0%
STORE_ATTR 140 6.8%
Successors Count Percentage
STORE_ATTR_INSTANCE_VALUE 520 25.2%
RETURN_CONST 500 24.3%
LOAD_FAST 440 21.4%
LOAD_CONST 180 8.7%
LOAD_GLOBAL_MODULE 180 8.7%

STORE_DEREF

Successors and predecessors for STORE_DEREF
Predecessors Count Percentage
RETURN_VALUE 220 33.3%
BINARY_SUBSCR_LIST_INT 200 30.3%
CALL_NON_PY_GENERAL 200 30.3%
BINARY_SUBSCR 20 3.0%
CALL 20 3.0%
Successors Count Percentage
LOAD_GLOBAL_MODULE 360 54.5%
LOAD_FAST 220 33.3%
LOAD_GLOBAL 80 12.1%

STORE_FAST

Successors and predecessors for STORE_FAST
Predecessors Count Percentage
LOAD_CONST 2,640 15.9%
STORE_FAST 1,320 8.0%
CALL_BUILTIN_FAST_WITH_KEYWORDS 1,300 7.8%
CALL_METHOD_DESCRIPTOR_FAST 1,060 6.4%
RETURN_CONST 880 5.3%
Successors Count Percentage
LOAD_FAST 7,740 46.7%
LOAD_GLOBAL_MODULE 2,900 17.5%
STORE_FAST 1,320 8.0%
LOAD_CONST 1,100 6.6%
NOP 880 5.3%

STORE_FAST_STORE_FAST

Successors and predecessors for STORE_FAST_STORE_FAST
Predecessors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 1,620 92.0%
UNPACK_SEQUENCE 140 8.0%
Successors Count Percentage
LOAD_FAST 660 37.5%
LOAD_FAST_LOAD_FAST 660 37.5%
LOAD_CONST 440 25.0%

SWAP

Successors and predecessors for SWAP
Predecessors Count Percentage
LOAD_FAST 440 64.7%
RETURN_VALUE 220 32.4%
LOAD_GLOBAL 20 2.9%
Successors Count Percentage
LOAD_FAST 440 64.7%
LOAD_CONST 220 32.4%
POP_TOP 20 2.9%

UNPACK_SEQUENCE

Successors and predecessors for UNPACK_SEQUENCE
Predecessors Count Percentage
LOAD_CONST 120 33.3%
RETURN_VALUE 80 22.2%
CALL 80 22.2%
CALL_NON_PY_GENERAL 40 11.1%
CALL_BUILTIN_FAST 20 5.6%
Successors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 160 44.4%
STORE_FAST_STORE_FAST 140 38.9%
STORE_FAST 40 11.1%
UNPACK_SEQUENCE_TUPLE 20 5.6%

YIELD_VALUE

Successors and predecessors for YIELD_VALUE
Predecessors Count Percentage
LOAD_CONST 220 50.0%
LOAD_FAST 220 50.0%
Successors Count Percentage
INTERPRETER_EXIT 440 100.0%

RESUME

Successors and predecessors for RESUME
Predecessors Count Percentage
CACHE 240 36.4%
CALL 220 33.3%
COPY_FREE_VARS 60 9.1%
MAKE_CELL 60 9.1%
POP_TOP 40 6.1%
Successors Count Percentage
LOAD_FAST 300 45.5%
LOAD_GLOBAL 220 33.3%
NOP 40 6.1%
POP_TOP 40 6.1%
BUILD_LIST 20 3.0%

BINARY_OP_ADD_INT

Successors and predecessors for BINARY_OP_ADD_INT
Predecessors Count Percentage
LOAD_CONST 660 100.0%
Successors Count Percentage
STORE_FAST 660 100.0%

BINARY_OP_ADD_UNICODE

Successors and predecessors for BINARY_OP_ADD_UNICODE
Predecessors Count Percentage
LOAD_FAST 220 100.0%
Successors Count Percentage
BINARY_OP_INPLACE_ADD_UNICODE 220 100.0%

BINARY_SUBSCR_LIST_INT

Successors and predecessors for BINARY_SUBSCR_LIST_INT
Predecessors Count Percentage
LOAD_CONST 540 90.0%
BINARY_SUBSCR 60 10.0%
Successors Count Percentage
CALL_BUILTIN_CLASS 360 60.0%
STORE_DEREF 200 33.3%
CALL 40 6.7%

BINARY_SUBSCR_TUPLE_INT

Successors and predecessors for BINARY_SUBSCR_TUPLE_INT
Predecessors Count Percentage
LOAD_CONST 360 90.0%
BINARY_SUBSCR 40 10.0%
Successors Count Percentage
STORE_FAST 400 100.0%

CALL_BOUND_METHOD_EXACT_ARGS

Successors and predecessors for CALL_BOUND_METHOD_EXACT_ARGS
Predecessors Count Percentage
LOAD_CONST 360 90.0%
CALL 40 10.0%
Successors Count Percentage
POP_TOP 400 100.0%

CALL_BOUND_METHOD_GENERAL

Successors and predecessors for CALL_BOUND_METHOD_GENERAL
Predecessors Count Percentage
LOAD_CONST 180 90.0%
CALL 20 10.0%
Successors Count Percentage
POP_TOP 200 100.0%

CALL_BUILTIN_CLASS

Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors Count Percentage
LOAD_FAST 540 54.0%
BINARY_SUBSCR_LIST_INT 360 36.0%
CALL 100 10.0%
Successors Count Percentage
STORE_FAST 800 80.0%
CALL_BUILTIN_FAST_WITH_KEYWORDS 180 18.0%
CALL 20 2.0%

CALL_BUILTIN_FAST

Successors and predecessors for CALL_BUILTIN_FAST
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 800 29.6%
LOAD_CONST 760 28.1%
LOAD_FAST 580 21.5%
LOAD_FAST_LOAD_FAST 200 7.4%
CALL 180 6.7%
Successors Count Percentage
STORE_FAST 820 30.4%
RETURN_VALUE 640 23.7%
PUSH_EXC_INFO 420 15.6%
UNPACK_SEQUENCE_TWO_TUPLE 400 14.8%
POP_TOP 200 7.4%

CALL_BUILTIN_FAST_WITH_KEYWORDS

Successors and predecessors for CALL_BUILTIN_FAST_WITH_KEYWORDS
Predecessors Count Percentage
LOAD_FAST 2,180 80.7%
LOAD_FAST_LOAD_FAST 180 6.7%
CALL_BUILTIN_CLASS 180 6.7%
CALL 160 5.9%
Successors Count Percentage
STORE_FAST 1,300 48.1%
LOAD_FAST 600 22.2%
POP_TOP 400 14.8%
CALL_TUPLE_1 180 6.7%
TO_BOOL_BOOL 180 6.7%

CALL_ISINSTANCE

Successors and predecessors for CALL_ISINSTANCE
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 1,420 75.5%
BUILD_TUPLE 180 9.6%
LOAD_ATTR_MODULE 180 9.6%
CALL 100 5.3%
Successors Count Percentage
TO_BOOL_BOOL 1,780 94.7%
TO_BOOL 100 5.3%

CALL_LEN

Successors and predecessors for CALL_LEN
Predecessors Count Percentage
LOAD_FAST 840 97.7%
CALL 20 2.3%
Successors Count Percentage
BINARY_OP 660 76.7%
LOAD_CONST 200 23.3%

CALL_METHOD_DESCRIPTOR_FAST

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors Count Percentage
LOAD_FAST 1,760 81.5%
LOAD_CONST 180 8.3%
LOAD_ATTR_METHOD_LAZY_DICT 180 8.3%
CALL 40 1.9%
Successors Count Percentage
STORE_FAST 1,060 49.1%
LOAD_CONST 660 30.6%
TO_BOOL_BOOL 440 20.4%

CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
Predecessors Count Percentage
LOAD_DEREF 180 45.0%
LOAD_ATTR_METHOD_NO_DICT 180 45.0%
CALL 40 10.0%
Successors Count Percentage
RETURN_VALUE 200 50.0%
STORE_FAST 200 50.0%

CALL_METHOD_DESCRIPTOR_NOARGS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_NOARGS
Predecessors Count Percentage
LOAD_ATTR_METHOD_LAZY_DICT 180 45.0%
LOAD_ATTR_METHOD_NO_DICT 180 45.0%
CALL 40 10.0%
Successors Count Percentage
POP_TOP 200 50.0%
UNPACK_SEQUENCE_TWO_TUPLE 180 45.0%
UNPACK_SEQUENCE 20 5.0%

CALL_METHOD_DESCRIPTOR_O

Successors and predecessors for CALL_METHOD_DESCRIPTOR_O
Predecessors Count Percentage
BUILD_TUPLE 360 45.0%
LOAD_CONST 180 22.5%
LOAD_FAST 180 22.5%
CALL 80 10.0%
Successors Count Percentage
POP_TOP 600 75.0%
LOAD_CONST 200 25.0%

CALL_NON_PY_GENERAL

Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors Count Percentage
PUSH_NULL 1,080 59.3%
LOAD_FAST_LOAD_FAST 400 22.0%
LOAD_CONST 180 9.9%
CALL 160 8.8%
Successors Count Percentage
RETURN_VALUE 620 34.1%
POP_TOP 400 22.0%
UNPACK_SEQUENCE_TWO_TUPLE 360 19.8%
BEFORE_WITH 200 11.0%
STORE_DEREF 200 11.0%

CALL_PY_EXACT_ARGS

Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors Count Percentage
LOAD_FAST 1,600 48.5%
LOAD_DEREF 540 16.4%
LOAD_GLOBAL_MODULE 540 16.4%
CALL 220 6.7%
LOAD_FAST_LOAD_FAST 220 6.7%
Successors Count Percentage
RESUME_CHECK 2,900 87.9%
COPY_FREE_VARS 200 6.1%
MAKE_CELL 200 6.1%

CALL_PY_GENERAL

Successors and predecessors for CALL_PY_GENERAL
Predecessors Count Percentage
LOAD_FAST 720 45.0%
LOAD_ATTR_METHOD_WITH_VALUES 540 33.8%
LOAD_CONST 180 11.2%
CALL 160 10.0%
Successors Count Percentage
RESUME_CHECK 1,200 75.0%
COPY_FREE_VARS 400 25.0%

CALL_STR_1

Successors and predecessors for CALL_STR_1
Predecessors Count Percentage
LOAD_FAST 180 90.0%
CALL 20 10.0%
Successors Count Percentage
BUILD_LIST 200 100.0%

CALL_TUPLE_1

Successors and predecessors for CALL_TUPLE_1
Predecessors Count Percentage
CALL_BUILTIN_FAST_WITH_KEYWORDS 180 90.0%
CALL 20 10.0%
Successors Count Percentage
LOAD_FAST 200 100.0%

CALL_TYPE_1

Successors and predecessors for CALL_TYPE_1
Predecessors Count Percentage
LOAD_FAST 180 90.0%
CALL 20 10.0%
Successors Count Percentage
LOAD_ATTR 200 100.0%

COMPARE_OP_INT

Successors and predecessors for COMPARE_OP_INT
Predecessors Count Percentage
LOAD_CONST 2,700 71.1%
LOAD_GLOBAL_MODULE 540 14.2%
COMPARE_OP 380 10.0%
LOAD_ATTR_INSTANCE_VALUE 180 4.7%
Successors Count Percentage
POP_JUMP_IF_FALSE 3,800 100.0%

COMPARE_OP_STR

Successors and predecessors for COMPARE_OP_STR
Predecessors Count Percentage
BINARY_OP 660 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 660 100.0%

FOR_ITER_LIST

Successors and predecessors for FOR_ITER_LIST
Predecessors Count Percentage
GET_ITER 360 90.0%
FOR_ITER 40 10.0%
Successors Count Percentage
NOP 200 50.0%
RETURN_CONST 200 50.0%

FOR_ITER_TUPLE

Successors and predecessors for FOR_ITER_TUPLE
Predecessors Count Percentage
GET_ITER 260 50.0%
JUMP_BACKWARD 260 50.0%
Successors Count Percentage
STORE_FAST 280 53.8%
LOAD_FAST 220 42.3%
LOAD_GLOBAL 20 3.8%

LOAD_ATTR_CLASS

Successors and predecessors for LOAD_ATTR_CLASS
Predecessors Count Percentage
LOAD_FAST 360 90.0%
LOAD_ATTR 40 10.0%
Successors Count Percentage
LOAD_FAST 400 100.0%

LOAD_ATTR_INSTANCE_VALUE

Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST 6,780 86.0%
LOAD_ATTR 700 8.9%
LOAD_FAST_LOAD_FAST 400 5.1%
Successors Count Percentage
LOAD_FAST 1,240 15.7%
POP_JUMP_IF_NOT_NONE 1,000 12.7%
TO_BOOL_BOOL 900 11.4%
CALL_BUILTIN_FAST 800 10.2%
TO_BOOL 560 7.1%

LOAD_ATTR_METHOD_LAZY_DICT

Successors and predecessors for LOAD_ATTR_METHOD_LAZY_DICT
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 360 90.0%
LOAD_ATTR 40 10.0%
Successors Count Percentage
CALL_METHOD_DESCRIPTOR_FAST 180 45.0%
CALL_METHOD_DESCRIPTOR_NOARGS 180 45.0%
CALL 40 10.0%

LOAD_ATTR_METHOD_NO_DICT

Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors Count Percentage
LOAD_FAST 2,480 73.8%
LOAD_ATTR_INSTANCE_VALUE 540 16.1%
BUILD_LIST 180 5.4%
LOAD_ATTR 160 4.8%
Successors Count Percentage
LOAD_FAST 1,960 58.3%
LOAD_CONST 400 11.9%
LOAD_FAST_LOAD_FAST 400 11.9%
LOAD_DEREF 200 6.0%
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 180 5.4%

LOAD_ATTR_METHOD_WITH_VALUES

Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors Count Percentage
LOAD_FAST 2,160 90.0%
LOAD_ATTR 240 10.0%
Successors Count Percentage
LOAD_FAST 800 33.3%
LOAD_FAST_LOAD_FAST 600 25.0%
CALL_PY_GENERAL 540 22.5%
LOAD_CONST 200 8.3%
LOAD_GLOBAL_MODULE 180 7.5%

LOAD_ATTR_MODULE

Successors and predecessors for LOAD_ATTR_MODULE
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 5,960 81.6%
LOAD_ATTR_MODULE 720 9.9%
LOAD_ATTR 620 8.5%
Successors Count Percentage
PUSH_NULL 4,300 58.9%
LOAD_ATTR_MODULE 720 9.9%
LOAD_FAST 600 8.2%
LOAD_DEREF 400 5.5%
LOAD_ATTR_SLOT 360 4.9%

LOAD_ATTR_SLOT

Successors and predecessors for LOAD_ATTR_SLOT
Predecessors Count Percentage
LOAD_ATTR_MODULE 360 90.0%
LOAD_ATTR 40 10.0%
Successors Count Percentage
TO_BOOL_INT 360 90.0%
TO_BOOL 40 10.0%

LOAD_GLOBAL_BUILTIN

Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors Count Percentage
LOAD_FAST 1,960 21.9%
RESUME_CHECK 1,240 13.9%
NOP 800 8.9%
LOAD_GLOBAL_BUILTIN 760 8.5%
STORE_FAST 720 8.1%
Successors Count Percentage
LOAD_FAST 5,600 62.6%
CALL_ISINSTANCE 1,420 15.9%
LOAD_GLOBAL_BUILTIN 760 8.5%
CHECK_EXC_MATCH 420 4.7%
CALL 260 2.9%

LOAD_GLOBAL_MODULE

Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors Count Percentage
RESUME_CHECK 2,960 23.8%
STORE_FAST 2,900 23.3%
LOAD_FAST 1,260 10.1%
POP_JUMP_IF_FALSE 1,260 10.1%
LOAD_GLOBAL 1,000 8.0%
Successors Count Percentage
LOAD_ATTR_MODULE 5,960 47.9%
LOAD_FAST 1,680 13.5%
TO_BOOL_BOOL 1,080 8.7%
LOAD_ATTR 760 6.1%
CALL_PY_EXACT_ARGS 540 4.3%

RESUME_CHECK

Successors and predecessors for RESUME_CHECK
Predecessors Count Percentage
CACHE 3,320 34.1%
CALL_PY_EXACT_ARGS 2,900 29.8%
CALL_PY_GENERAL 1,200 12.3%
COPY_FREE_VARS 820 8.4%
MAKE_CELL 600 6.2%
Successors Count Percentage
LOAD_FAST 3,700 38.0%
LOAD_GLOBAL_MODULE 2,960 30.4%
LOAD_GLOBAL_BUILTIN 1,240 12.7%
NOP 400 4.1%
POP_TOP 400 4.1%

STORE_ATTR_INSTANCE_VALUE

Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST 5,820 86.4%
STORE_ATTR 520 7.7%
LOAD_FAST_LOAD_FAST 400 5.9%
Successors Count Percentage
LOAD_FAST 2,860 42.4%
LOAD_CONST 1,800 26.7%
RETURN_CONST 1,040 15.4%
LOAD_FAST_LOAD_FAST 420 6.2%
LOAD_GLOBAL_BUILTIN 400 5.9%

STORE_SUBSCR_DICT

Successors and predecessors for STORE_SUBSCR_DICT
Predecessors Count Percentage
LOAD_CONST 180 90.0%
STORE_SUBSCR 20 10.0%
Successors Count Percentage
LOAD_FAST 200 100.0%

TO_BOOL_ALWAYS_TRUE

Successors and predecessors for TO_BOOL_ALWAYS_TRUE
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 180 90.0%
TO_BOOL 20 10.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 200 100.0%

TO_BOOL_BOOL

Successors and predecessors for TO_BOOL_BOOL
Predecessors Count Percentage
CALL_ISINSTANCE 1,780 30.1%
LOAD_GLOBAL_MODULE 1,080 18.2%
LOAD_ATTR_INSTANCE_VALUE 900 15.2%
LOAD_FAST 720 12.2%
TO_BOOL 460 7.8%
Successors Count Percentage
POP_JUMP_IF_FALSE 4,500 76.0%
POP_JUMP_IF_TRUE 1,420 24.0%

TO_BOOL_INT

Successors and predecessors for TO_BOOL_INT
Predecessors Count Percentage
LOAD_ATTR_SLOT 360 45.0%
LOAD_FAST 180 22.5%
LOAD_ATTR_INSTANCE_VALUE 180 22.5%
TO_BOOL 80 10.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 800 100.0%

TO_BOOL_NONE

Successors and predecessors for TO_BOOL_NONE
Predecessors Count Percentage
COPY 540 54.0%
RETURN_CONST 180 18.0%
LOAD_ATTR_INSTANCE_VALUE 180 18.0%
TO_BOOL 100 10.0%
Successors Count Percentage
POP_JUMP_IF_TRUE 600 60.0%
POP_JUMP_IF_FALSE 400 40.0%

TO_BOOL_STR

Successors and predecessors for TO_BOOL_STR
Predecessors Count Percentage
LOAD_FAST 880 81.5%
RETURN_VALUE 180 16.7%
TO_BOOL 20 1.9%
Successors Count Percentage
POP_JUMP_IF_FALSE 860 79.6%
POP_JUMP_IF_TRUE 220 20.4%

UNPACK_SEQUENCE_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TUPLE
Predecessors Count Percentage
RETURN_VALUE 180 90.0%
UNPACK_SEQUENCE 20 10.0%
Successors Count Percentage
STORE_FAST 200 100.0%

UNPACK_SEQUENCE_TWO_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TWO_TUPLE
Predecessors Count Percentage
LOAD_CONST 540 29.7%
CALL_BUILTIN_FAST 400 22.0%
CALL_NON_PY_GENERAL 360 19.8%
RETURN_VALUE 180 9.9%
CALL_METHOD_DESCRIPTOR_NOARGS 180 9.9%
Successors Count Percentage
STORE_FAST_STORE_FAST 1,620 89.0%
STORE_FAST 200 11.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.

1,540 54.2%
hit

Specialized instructions that complete.

1,100 38.7%
Success Count Ratio
Success 0 0.0%
Failure 200 100.0%
Failure kind Count Ratio
add other 120 60.0%
add different types 40 20.0%
multiply different types 40 20.0%

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.

100 8.3%
hit

Specialized instructions that complete.

1,000 83.3%
Success Count Ratio
Success 100 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.

2,700 12.8%
hit

Specialized instructions that complete.

16,800 79.8%
miss

Specialized instructions that deopt.

600 2.9%
Success Count Ratio
Success 1,420 92.2%
Failure 120 7.8%
Failure kind Count Ratio
class no vectorcall 120 100.0%

COMPARE_OP

specialization stats for COMPARE_OP family
Kind Count Ratio
deferred

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

820 15.0%
hit

Specialized instructions that complete.

4,240 77.4%
miss

Specialized instructions that deopt.

220 4.0%
Success Count Ratio
Success 380 90.5%
Failure 40 9.5%
Failure kind Count Ratio
different types 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 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.

40 4.0%
hit

Specialized instructions that complete.

920 92.0%
Success Count Ratio
Success 40 100.0%
Failure 0 0.0%

LOAD_ATTR

specialization stats for LOAD_ATTR family
Kind Count Ratio
deferred

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

3,440 12.7%
hit

Specialized instructions that complete.

21,700 79.8%
miss

Specialized instructions that deopt.

440 1.6%
Success Count Ratio
Success 1,840 90.2%
Failure 200 9.8%
Failure kind Count Ratio
metaclass attribute 80 40.0%
shadowed 40 20.0%
class attr simple 40 20.0%
class attr descriptor 40 20.0%

LOAD_GLOBAL

specialization stats for LOAD_GLOBAL family
Kind Count Ratio
deferred

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

3,320 13.5%
hit

Specialized instructions that complete.

19,640 80.0%
miss

Specialized instructions that deopt.

1,740 7.1%
Success Count Ratio
Success 1,600 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

STORE_ATTR

specialization stats for STORE_ATTR family
Kind Count Ratio
deferred

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

1,400 15.9%
hit

Specialized instructions that complete.

6,740 76.6%
Success Count Ratio
Success 520 78.8%
Failure 140 21.2%
Failure kind Count Ratio
class attr simple 100 71.4%
not managed dict 40 28.6%

STORE_SUBSCR

specialization stats for STORE_SUBSCR family
Kind Count Ratio
deferred

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

20 8.3%
hit

Specialized instructions that complete.

200 83.3%
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.

2,220 18.9%
hit

Specialized instructions that complete.

8,580 73.2%
miss

Specialized instructions that deopt.

220 1.9%
Success Count Ratio
Success 680 73.9%
Failure 240 26.1%
Failure kind Count Ratio
bytes 80 33.3%
sequence 80 33.3%
bytearray 40 16.7%
tuple 40 16.7%

UNPACK_SEQUENCE

specialization stats for UNPACK_SEQUENCE family
Kind Count Ratio
deferred

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

180 7.6%
hit

Specialized instructions that complete.

2,020 84.9%
Success Count Ratio
Success 180 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.

170,780 54.1%
Not specialized

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

45,240 14.3%
Specialized hits

Specialized instructions, e.g. LOAD_ATTR_MODULE that complete.

96,300 30.5%
Specialized misses

Specialized instructions, e.g. LOAD_ATTR_MODULE that deopt.

3,220 1.0%

Deferred by instruction

Breakdown of deferred (not specialized) instruction counts by family
Name Count Ratio
LOAD_ATTR 3,440 21.7%
LOAD_GLOBAL 3,320 21.0%
CALL 2,700 17.1%
TO_BOOL 2,220 14.0%
BINARY_OP 1,540 9.7%
STORE_ATTR 1,400 8.8%
COMPARE_OP 820 5.2%
UNPACK_SEQUENCE 180 1.1%
BINARY_SUBSCR 100 0.6%
CONTAINS_OP 40 0.3%

Misses by instruction

Breakdown of misses (specialized deopts) instruction counts by family
Name Count Ratio
LOAD_GLOBAL_BUILTIN 1,740 54.0%
LOAD_ATTR_METHOD_NO_DICT 440 13.7%
CALL_BOUND_METHOD_EXACT_ARGS 400 12.4%
COMPARE_OP_STR 220 6.8%
TO_BOOL_STR 220 6.8%
CALL_BOUND_METHOD_GENERAL 200 6.2%
CACHE 0 0.0%
BEFORE_WITH 0 0.0%
BINARY_OP_INPLACE_ADD_UNICODE 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 4,220 38.9%
Calls to Python functions inlined 6,620 61.1%
Calls via PyEval_EvalFrame (total) 4,220 38.9%
Calls via PyEval_EvalFrame (vector) 3,340 30.8%
Calls via PyEval_EvalFrame (generator) 880 8.1%
Calls via PyEval_EvalFrame (legacy) 0 0.0%
Calls via PyEval_EvalFrame (function vectorcall) 3,340 30.8%
Calls via PyEval_EvalFrame (build class) 0 0.0%
Calls via PyEval_EvalFrame (slot) 0 0.0%
Calls via PyEval_EvalFrame (function ex) 880 8.1%
Calls via PyEval_EvalFrame (api) 440 4.1%
Calls via PyEval_EvalFrame (method) 0 0.0%
Frame objects created 440 4.1%
Frames pushed 9,960 91.9%

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 13,520 35.7%
Frees to freelist 13,680
Allocations 24,340 64.3%
Allocations to 512 bytes 23,460 62.0%
Allocations to 4 kbytes 220 0.6%
Allocations over 4 kbytes 660 1.7%
Frees 23,917
Inline values 1,100
Interpreter increfs 112,400 65.1%
Interpreter decrefs 134,460 65.6%
Increfs 60,170 34.9%
Decrefs 70,644 34.4%
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 15,319
Method cache misses 1,601
Method cache collisions 1,395
Method cache dunder hits 6,930
Method cache dunder misses 430

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

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-05-26