Skip to content

Latest commit

 

History

History
10845 lines (9910 loc) · 195 KB

bm-20241025-azure-x86_64-brandtbucher-justin_no_externs-3.14.0a1+-64b198a-pystats-dulwich_log.md

File metadata and controls

10845 lines (9910 loc) · 195 KB

Pystats results

  • benchmark: dulwich_log
  • fork: brandtbucher
  • ref: justin-no-externs
  • commit hash: 64b198a
  • commit date: 2024-10-25T10:03:36-07: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 58,480,400 20.4% 20.4%
LOAD_CONST 22,602,540 7.9% 28.3%
STORE_FAST 16,055,540 5.6% 33.9%
RESUME_CHECK 12,794,000 4.5% 38.4%
RETURN_VALUE 11,105,940 3.9% 42.3%
POP_JUMP_IF_FALSE 10,125,960 3.5% 45.8%
LOAD_ATTR_METHOD_NO_DICT 9,713,640 3.4% 49.2%
LOAD_ATTR_INSTANCE_VALUE 9,687,760 3.4% 52.6%
LOAD_GLOBAL_MODULE 9,007,180 3.1% 55.7%
STORE_ATTR_SLOT 7,692,360 2.7% 58.4%
CALL_PY_EXACT_ARGS 7,479,860 2.6% 61.0%
LOAD_FAST_LOAD_FAST 6,821,460 2.4% 63.4%
LOAD_GLOBAL_BUILTIN 6,368,900 2.2% 65.6%
LOAD_ATTR_SLOT 6,157,440 2.2% 67.8%
TO_BOOL_BOOL 3,933,540 1.4% 69.2%
COMPARE_OP 3,904,420 1.4% 70.5%
POP_TOP 3,886,840 1.4% 71.9%
BINARY_OP_ADD_INT 3,522,960 1.2% 73.1%
STORE_FAST_STORE_FAST 3,189,780 1.1% 74.2%
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 3,173,280 1.1% 75.3%
UNPACK_SEQUENCE_TWO_TUPLE 3,002,100 1.0% 76.4%
POP_JUMP_IF_NONE 2,801,860 1.0% 77.4%
RETURN_CONST 2,621,340 0.9% 78.3%
LOAD_ATTR_METHOD_WITH_VALUES 2,430,260 0.8% 79.1%
BINARY_OP_MULTIPLY_INT 2,325,240 0.8% 79.9%
POP_JUMP_IF_TRUE 2,287,860 0.8% 80.7%
COMPARE_OP_INT 2,064,520 0.7% 81.5%
BUILD_LIST 2,064,240 0.7% 82.2%
BUILD_TUPLE 2,062,920 0.7% 82.9%
ENTER_EXECUTOR 2,061,860 0.7% 83.6%
NOP 2,059,140 0.7% 84.3%
LOAD_ATTR_PROPERTY 2,054,180 0.7% 85.1%
INTERPRETER_EXIT 1,946,760 0.7% 85.7%
BINARY_OP 1,875,580 0.7% 86.4%
CALL_BUILTIN_CLASS 1,874,100 0.7% 87.0%
POP_JUMP_IF_NOT_NONE 1,873,440 0.7% 87.7%
LOAD_DEREF 1,873,140 0.7% 88.4%
BINARY_SUBSCR 1,688,900 0.6% 88.9%
LOAD_ATTR_MODULE 1,679,220 0.6% 89.5%
BINARY_SLICE 1,574,880 0.6% 90.1%
PUSH_NULL 1,497,480 0.5% 90.6%
CALL_METHOD_DESCRIPTOR_FAST 1,496,760 0.5% 91.1%
CALL_METHOD_DESCRIPTOR_O 1,306,120 0.5% 91.6%
COPY 1,167,480 0.4% 92.0%
CALL_BUILTIN_O 1,125,600 0.4% 92.4%
GET_ITER 1,124,460 0.4% 92.8%
YIELD_VALUE 940,080 0.3% 93.1%
CALL_LEN 938,740 0.3% 93.4%
CONTAINS_OP 938,100 0.3% 93.8%
CONTAINS_OP_SET 935,040 0.3% 94.1%
CALL_BUILTIN_FAST 934,180 0.3% 94.4%
STORE_ATTR_INSTANCE_VALUE 753,840 0.3% 94.7%
CALL_NON_PY_GENERAL 751,380 0.3% 94.9%
CALL_ISINSTANCE 749,520 0.3% 95.2%
BINARY_SUBSCR_LIST_INT 749,160 0.3% 95.5%
CALL_PY_GENERAL 747,660 0.3% 95.7%
CALL_BUILTIN_FAST_WITH_KEYWORDS 746,400 0.3% 96.0%
FOR_ITER 564,640 0.2% 96.2%
LOAD_ATTR 563,280 0.2% 96.4%
UNPACK_SEQUENCE_LIST 563,040 0.2% 96.6%
UNPACK_SEQUENCE_TUPLE 563,040 0.2% 96.8%
COPY_FREE_VARS 560,220 0.2% 97.0%
CHECK_EXC_MATCH 559,800 0.2% 97.2%
POP_EXCEPT 559,800 0.2% 97.4%
PUSH_EXC_INFO 559,800 0.2% 97.6%
TO_BOOL_INT 417,960 0.1% 97.7%
UNARY_NEGATIVE 416,520 0.1% 97.8%
JUMP_FORWARD 378,540 0.1% 98.0%
CALL_LIST_APPEND 376,680 0.1% 98.1%
CALL_KW_PY 375,000 0.1% 98.2%
SWAP 373,920 0.1% 98.4%
BINARY_SUBSCR_DICT 373,920 0.1% 98.5%
BINARY_OP_ADD_UNICODE 372,480 0.1% 98.6%
BINARY_SUBSCR_GETITEM 371,640 0.1% 98.8%
MAKE_FUNCTION 187,860 0.1% 98.8%
BINARY_SUBSCR_TUPLE_INT 187,740 0.1% 98.9%
END_FOR 187,680 0.1% 99.0%
RETURN_GENERATOR 187,680 0.1% 99.0%
FOR_ITER_GEN 187,680 0.1% 99.1%
LOAD_SUPER_ATTR_METHOD 187,680 0.1% 99.2%
CALL_METHOD_DESCRIPTOR_NOARGS 187,520 0.1% 99.2%
LOAD_ATTR_METHOD_LAZY_DICT 187,320 0.1% 99.3%
MAKE_CELL 187,140 0.1% 99.3%
BINARY_OP_SUBTRACT_INT 186,840 0.1% 99.4%
TO_BOOL 186,420 0.1% 99.5%
EXIT_INIT_CHECK 186,360 0.1% 99.5%
EXTENDED_ARG 186,360 0.1% 99.6%
TO_BOOL_LIST 186,360 0.1% 99.7%
BINARY_OP_INPLACE_ADD_UNICODE 186,240 0.1% 99.7%
CALL_KW_NON_PY 186,240 0.1% 99.8%
FOR_ITER_LIST 186,240 0.1% 99.9%
FOR_ITER_TUPLE 186,240 0.1% 99.9%
TO_BOOL_STR 186,240 0.1% 100.0%
CALL_ALLOC_AND_ENTER_INIT 2,520 0.0% 100.0%
IS_OP 780 0.0% 100.0%
JUMP_BACKWARD 420 0.0% 100.0%
CALL 260 0.0% 100.0%
TO_BOOL_NONE 240 0.0% 100.0%
CALL_FUNCTION_EX 180 0.0% 100.0%
SET_FUNCTION_ATTRIBUTE 180 0.0% 100.0%
FOR_ITER_RANGE 180 0.0% 100.0%
BUILD_MAP 120 0.0% 100.0%
CALL_INTRINSIC_1 120 0.0% 100.0%
DICT_MERGE 120 0.0% 100.0%
IMPORT_FROM 120 0.0% 100.0%
IMPORT_NAME 120 0.0% 100.0%
LIST_EXTEND 120 0.0% 100.0%
COMPARE_OP_STR 120 0.0% 100.0%
STORE_SUBSCR_DICT 120 0.0% 100.0%
LOAD_GLOBAL 100 0.0% 100.0%
STORE_DEREF 60 0.0% 100.0%
BINARY_OP_SUBTRACT_FLOAT 60 0.0% 100.0%
UNPACK_SEQUENCE 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_CONST 8,097,360 2.8% 2.8%
LOAD_FAST LOAD_ATTR_INSTANCE_VALUE 7,816,020 2.7% 5.6%
RESUME_CHECK LOAD_FAST 7,740,020 2.7% 8.3%
CALL_PY_EXACT_ARGS RESUME_CHECK 7,105,880 2.5% 10.7%
STORE_FAST LOAD_FAST 7,054,820 2.5% 13.2%
POP_JUMP_IF_FALSE LOAD_FAST 6,748,980 2.4% 15.6%
LOAD_FAST STORE_ATTR_SLOT 6,192,360 2.2% 17.7%
LOAD_FAST LOAD_ATTR_SLOT 6,157,440 2.2% 19.9%
LOAD_GLOBAL_BUILTIN LOAD_FAST 4,686,740 1.6% 21.5%
LOAD_FAST LOAD_ATTR_METHOD_NO_DICT 4,116,960 1.4% 23.0%
LOAD_FAST LOAD_GLOBAL_MODULE 3,758,400 1.3% 24.3%
COMPARE_OP POP_JUMP_IF_FALSE 3,758,280 1.3% 25.6%
LOAD_ATTR_METHOD_NO_DICT LOAD_CONST 3,736,320 1.3% 26.9%
LOAD_FAST CALL_PY_EXACT_ARGS 3,560,300 1.2% 28.1%
LOAD_GLOBAL_MODULE COMPARE_OP 3,195,240 1.1% 29.2%
TO_BOOL_BOOL POP_JUMP_IF_FALSE 3,185,640 1.1% 30.4%
LOAD_CONST CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 3,173,280 1.1% 31.5%
LOAD_ATTR_INSTANCE_VALUE LOAD_FAST 2,880,000 1.0% 32.5%
LOAD_ATTR_METHOD_NO_DICT CALL_PY_EXACT_ARGS 2,797,560 1.0% 33.4%
STORE_ATTR_SLOT LOAD_FAST 2,627,520 0.9% 34.4%
UNPACK_SEQUENCE_TWO_TUPLE STORE_FAST_STORE_FAST 2,626,740 0.9% 35.3%
RETURN_VALUE LOAD_ATTR_METHOD_NO_DICT 2,610,240 0.9% 36.2%
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS RETURN_VALUE 2,610,240 0.9% 37.1%
LOAD_CONST LOAD_FAST 2,439,600 0.9% 38.0%
LOAD_GLOBAL_MODULE LOAD_FAST 2,438,160 0.9% 38.8%
LOAD_ATTR_METHOD_NO_DICT LOAD_FAST 2,430,940 0.8% 39.7%
POP_JUMP_IF_NONE LOAD_FAST 2,241,980 0.8% 40.4%
LOAD_FAST LOAD_ATTR_PROPERTY 2,054,180 0.7% 41.2%
LOAD_CONST STORE_FAST 2,024,940 0.7% 41.9%
LOAD_CONST BINARY_OP_MULTIPLY_INT 1,949,880 0.7% 42.5%
LOAD_FAST_LOAD_FAST LOAD_CONST 1,949,520 0.7% 43.2%
LOAD_CONST BINARY_OP_ADD_INT 1,948,440 0.7% 43.9%
STORE_FAST LOAD_CONST 1,876,980 0.7% 44.6%
STORE_FAST_STORE_FAST LOAD_FAST 1,876,380 0.7% 45.2%
STORE_FAST LOAD_GLOBAL_BUILTIN 1,876,080 0.7% 45.9%
LOAD_ATTR_PROPERTY RESUME_CHECK 1,867,940 0.7% 46.5%
LOAD_CONST COMPARE_OP_INT 1,691,440 0.6% 47.1%
LOAD_FAST STORE_FAST 1,688,640 0.6% 47.7%
LOAD_CONST BINARY_SUBSCR 1,688,420 0.6% 48.3%
LOAD_CONST BINARY_OP 1,687,680 0.6% 48.9%
NOP LOAD_FAST 1,683,900 0.6% 49.5%
LOAD_ATTR_SLOT RETURN_VALUE 1,679,040 0.6% 50.1%
CACHE RESUME_CHECK 1,572,180 0.5% 50.6%
LOAD_FAST LOAD_FAST 1,501,440 0.5% 51.1%
BUILD_TUPLE RETURN_VALUE 1,501,080 0.5% 51.7%
STORE_ATTR_SLOT LOAD_CONST 1,500,720 0.5% 52.2%
LOAD_FAST_LOAD_FAST STORE_ATTR_SLOT 1,500,000 0.5% 52.7%
RESUME_CHECK LOAD_GLOBAL_BUILTIN 1,500,000 0.5% 53.2%
STORE_FAST LOAD_GLOBAL_MODULE 1,498,240 0.5% 53.7%
POP_JUMP_IF_TRUE LOAD_FAST 1,492,720 0.5% 54.3%
POP_TOP LOAD_FAST 1,452,760 0.5% 54.8%
BINARY_OP_MULTIPLY_INT BINARY_OP_ADD_INT 1,387,200 0.5% 55.3%
POP_JUMP_IF_NOT_NONE LOAD_FAST 1,313,100 0.5% 55.7%
RETURN_VALUE UNPACK_SEQUENCE_TWO_TUPLE 1,313,040 0.5% 56.2%
LOAD_DEREF LOAD_ATTR_INSTANCE_VALUE 1,311,840 0.5% 56.6%
LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES 1,310,860 0.5% 57.1%
LOAD_ATTR_METHOD_WITH_VALUES LOAD_FAST 1,309,760 0.5% 57.6%
LOAD_FAST POP_JUMP_IF_NOT_NONE 1,309,260 0.5% 58.0%
RETURN_VALUE RETURN_VALUE 1,308,360 0.5% 58.5%
LOAD_GLOBAL_MODULE LOAD_ATTR_MODULE 1,306,680 0.5% 58.9%
LOAD_ATTR_SLOT POP_JUMP_IF_NONE 1,305,120 0.5% 59.4%
LOAD_ATTR_SLOT LOAD_ATTR_METHOD_NO_DICT 1,305,120 0.5% 59.8%
LOAD_ATTR_SLOT TO_BOOL_BOOL 1,305,120 0.5% 60.3%
BINARY_OP_ADD_INT BINARY_SLICE 1,199,520 0.4% 60.7%
BINARY_OP_ADD_INT STORE_FAST 1,199,160 0.4% 61.1%
RETURN_VALUE INTERPRETER_EXIT 1,196,760 0.4% 61.5%
CALL_BUILTIN_CLASS STORE_FAST 1,126,140 0.4% 61.9%
BUILD_LIST LOAD_FAST 1,125,960 0.4% 62.3%
STORE_ATTR_SLOT RETURN_CONST 1,125,720 0.4% 62.7%
RETURN_VALUE STORE_FAST 1,124,640 0.4% 63.1%
RESUME_CHECK LOAD_GLOBAL_MODULE 1,123,320 0.4% 63.5%
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_METHOD_NO_DICT 1,118,240 0.4% 63.9%
POP_JUMP_IF_FALSE POP_TOP 1,080,360 0.4% 64.3%
YIELD_VALUE UNPACK_SEQUENCE_TWO_TUPLE 940,080 0.3% 64.6%
ENTER_EXECUTOR YIELD_VALUE 940,080 0.3% 64.9%
STORE_FAST LOAD_FAST_LOAD_FAST 938,880 0.3% 65.3%
RETURN_CONST POP_TOP 938,520 0.3% 65.6%
BUILD_LIST STORE_FAST 938,160 0.3% 65.9%
STORE_FAST ENTER_EXECUTOR 938,160 0.3% 66.2%
CONTAINS_OP POP_JUMP_IF_FALSE 937,800 0.3% 66.6%
STORE_ATTR_SLOT LOAD_FAST_LOAD_FAST 937,320 0.3% 66.9%
COMPARE_OP_INT POP_JUMP_IF_TRUE 937,060 0.3% 67.2%
LOAD_ATTR_INSTANCE_VALUE CONTAINS_OP_SET 935,040 0.3% 67.6%
LOAD_FAST POP_JUMP_IF_NONE 934,380 0.3% 67.9%
RETURN_VALUE LOAD_FAST 934,200 0.3% 68.2%
LOAD_ATTR_MODULE PUSH_NULL 934,200 0.3% 68.5%
LOAD_FAST CALL_METHOD_DESCRIPTOR_O 933,580 0.3% 68.9%
RESUME_CHECK NOP 933,240 0.3% 69.2%
CONTAINS_OP_SET POP_JUMP_IF_FALSE 932,640 0.3% 69.5%
CALL_METHOD_DESCRIPTOR_O POP_TOP 930,760 0.3% 69.8%
BINARY_SLICE RETURN_VALUE 824,160 0.3% 70.1%
LOAD_ATTR_INSTANCE_VALUE LOAD_FAST_LOAD_FAST 824,160 0.3% 70.4%
LOAD_FAST CALL_LEN 753,000 0.3% 70.7%
CALL_LEN LOAD_CONST 753,000 0.3% 70.9%
POP_JUMP_IF_FALSE LOAD_GLOBAL_MODULE 751,560 0.3% 71.2%
LOAD_CONST LOAD_CONST 750,960 0.3% 71.5%
BINARY_SLICE STORE_FAST 750,720 0.3% 71.7%
COPY TO_BOOL_BOOL 750,720 0.3% 72.0%
LOAD_CONST CALL_METHOD_DESCRIPTOR_FAST 750,720 0.3% 72.3%
BINARY_OP_MULTIPLY_INT LOAD_FAST 750,720 0.3% 72.5%

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
BINARY_OP_ADD_INT 1,199,520 76.2%
LOAD_CONST 375,360 23.8%
Successors Count Percentage
RETURN_VALUE 824,160 52.3%
STORE_FAST 750,720 47.7%

CACHE

Successors and predecessors for CACHE
Successors Count Percentage
RESUME_CHECK 1,572,180 80.8%
COPY_FREE_VARS 187,680 9.6%
MAKE_CELL 186,960 9.6%

BINARY_SUBSCR

Successors and predecessors for BINARY_SUBSCR
Predecessors Count Percentage
LOAD_CONST 1,688,420 100.0%
BINARY_SUBSCR 480 0.0%
Successors Count Percentage
CALL_BUILTIN_CLASS 562,680 33.3%
LOAD_CONST 375,360 22.2%
STORE_FAST 375,360 22.2%
CALL_BUILTIN_O 375,000 22.2%
BINARY_SUBSCR 480 0.0%

BINARY_OP_INPLACE_ADD_UNICODE

Successors and predecessors for BINARY_OP_INPLACE_ADD_UNICODE
Predecessors Count Percentage
BINARY_OP_ADD_UNICODE 186,240 100.0%
Successors Count Percentage
ENTER_EXECUTOR 186,240 100.0%

CHECK_EXC_MATCH

Successors and predecessors for CHECK_EXC_MATCH
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 559,800 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 559,800 100.0%

END_FOR

Successors and predecessors for END_FOR
Predecessors Count Percentage
RETURN_CONST 187,680 100.0%
Successors Count Percentage
POP_TOP 187,680 100.0%

EXIT_INIT_CHECK

Successors and predecessors for EXIT_INIT_CHECK
Predecessors Count Percentage
RETURN_CONST 186,360 100.0%
Successors Count Percentage
RETURN_VALUE 186,360 100.0%

GET_ITER

Successors and predecessors for GET_ITER
Predecessors Count Percentage
CALL_BUILTIN_CLASS 375,000 33.3%
LOAD_FAST 373,980 33.3%
RETURN_GENERATOR 187,680 16.7%
RETURN_VALUE 187,680 16.7%
CALL_NON_PY_GENERAL 120 0.0%
Successors Count Percentage
FOR_ITER 564,240 50.2%
FOR_ITER_GEN 187,680 16.7%
FOR_ITER_LIST 186,240 16.6%
FOR_ITER_TUPLE 186,240 16.6%
FOR_ITER_RANGE 60 0.0%

INTERPRETER_EXIT

Successors and predecessors for INTERPRETER_EXIT
Predecessors Count Percentage
RETURN_VALUE 1,196,760 61.5%
RETURN_CONST 750,000 38.5%

MAKE_FUNCTION

Successors and predecessors for MAKE_FUNCTION
Predecessors Count Percentage
LOAD_CONST 187,860 100.0%
Successors Count Percentage
STORE_FAST 187,680 99.9%
SET_FUNCTION_ATTRIBUTE 180 0.1%

NOP

Successors and predecessors for NOP
Predecessors Count Percentage
RESUME_CHECK 933,240 45.3%
STORE_FAST 749,160 36.4%
POP_JUMP_IF_TRUE 189,060 9.2%
POP_JUMP_IF_FALSE 187,680 9.1%
Successors Count Percentage
LOAD_FAST 1,683,900 81.8%
LOAD_GLOBAL_MODULE 189,000 9.2%
LOAD_GLOBAL_BUILTIN 186,240 9.0%

POP_EXCEPT

Successors and predecessors for POP_EXCEPT
Predecessors Count Percentage
POP_TOP 559,800 100.0%
Successors Count Percentage
JUMP_FORWARD 373,560 66.7%
RETURN_CONST 186,240 33.3%

POP_TOP

Successors and predecessors for POP_TOP
Predecessors Count Percentage
POP_JUMP_IF_FALSE 1,080,360 27.8%
RETURN_CONST 938,520 24.1%
CALL_METHOD_DESCRIPTOR_O 930,760 23.9%
END_FOR 187,680 4.8%
SWAP 187,680 4.8%
Successors Count Percentage
LOAD_FAST 1,452,760 37.4%
POP_EXCEPT 559,800 14.4%
LOAD_CONST 375,480 9.7%
RETURN_CONST 374,220 9.6%
BUILD_LIST 187,800 4.8%

PUSH_EXC_INFO

Successors and predecessors for PUSH_EXC_INFO
Predecessors Count Percentage
BINARY_SUBSCR_DICT 373,560 66.7%
CALL_BUILTIN_FAST_WITH_KEYWORDS 186,240 33.3%
Successors Count Percentage
LOAD_GLOBAL_BUILTIN 559,800 100.0%

PUSH_NULL

Successors and predecessors for PUSH_NULL
Predecessors Count Percentage
LOAD_ATTR_MODULE 934,200 62.4%
LOAD_FAST 187,920 12.5%
RETURN_VALUE 187,680 12.5%
LOAD_ATTR 187,680 12.5%
Successors Count Percentage
LOAD_FAST 747,900 49.9%
CALL_NON_PY_GENERAL 188,080 12.6%
LOAD_FAST_LOAD_FAST 187,740 12.5%
LOAD_CONST 187,320 12.5%
LOAD_DEREF 186,360 12.4%

RETURN_GENERATOR

Successors and predecessors for RETURN_GENERATOR
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 187,680 100.0%
Successors Count Percentage
GET_ITER 187,680 100.0%

RETURN_VALUE

Successors and predecessors for RETURN_VALUE
Predecessors Count Percentage
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 2,610,240 23.5%
LOAD_ATTR_SLOT 1,679,040 15.1%
BUILD_TUPLE 1,501,080 13.5%
RETURN_VALUE 1,308,360 11.8%
BINARY_SLICE 824,160 7.4%
Successors Count Percentage
LOAD_ATTR_METHOD_NO_DICT 2,610,240 23.5%
UNPACK_SEQUENCE_TWO_TUPLE 1,313,040 11.8%
RETURN_VALUE 1,308,360 11.8%
INTERPRETER_EXIT 1,196,760 10.8%
STORE_FAST 1,124,640 10.1%

TO_BOOL

Successors and predecessors for TO_BOOL
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 186,320 99.9%
TO_BOOL 80 0.0%
LOAD_FAST 20 0.0%
Successors Count Percentage
POP_JUMP_IF_TRUE 186,260 99.9%
TO_BOOL 80 0.0%
POP_JUMP_IF_FALSE 60 0.0%
TO_BOOL_BOOL 20 0.0%

UNARY_NEGATIVE

Successors and predecessors for UNARY_NEGATIVE
Predecessors Count Percentage
LOAD_FAST 230,280 55.3%
RETURN_VALUE 186,240 44.7%
Successors Count Percentage
STORE_FAST 230,280 55.3%
LOAD_FAST 186,240 44.7%

BINARY_OP

Successors and predecessors for BINARY_OP
Predecessors Count Percentage
LOAD_CONST 1,687,680 90.0%
BINARY_OP_ADD_INT 187,320 10.0%
BINARY_OP 560 0.0%
LOAD_FAST 20 0.0%
Successors Count Percentage
STORE_FAST 750,000 40.0%
CALL_BUILTIN_CLASS 375,360 20.0%
TO_BOOL_INT 187,680 10.0%
LOAD_CONST 187,320 10.0%
LOAD_FAST 187,320 10.0%

BUILD_LIST

Successors and predecessors for BUILD_LIST
Predecessors Count Percentage
STORE_ATTR_SLOT 750,360 36.4%
STORE_FAST 563,040 27.3%
RESUME_CHECK 375,000 18.2%
LOAD_FAST 187,920 9.1%
POP_TOP 187,800 9.1%
Successors Count Percentage
LOAD_FAST 1,125,960 54.5%
STORE_FAST 938,160 45.4%
CALL_BUILTIN_CLASS 120 0.0%

BUILD_MAP

Successors and predecessors for BUILD_MAP
Predecessors Count Percentage
CALL_INTRINSIC_1 120 100.0%
Successors Count Percentage
LOAD_FAST 120 100.0%

BUILD_TUPLE

Successors and predecessors for BUILD_TUPLE
Predecessors Count Percentage
LOAD_FAST 749,460 36.3%
LOAD_FAST_LOAD_FAST 563,100 27.3%
BUILD_TUPLE 375,360 18.2%
CALL_METHOD_DESCRIPTOR_O 187,680 9.1%
RETURN_VALUE 187,320 9.1%
Successors Count Percentage
RETURN_VALUE 1,501,080 72.8%
BUILD_TUPLE 375,360 18.2%
CALL_BUILTIN_FAST 186,240 9.0%
LOAD_CONST 180 0.0%
CALL_METHOD_DESCRIPTOR_O 40 0.0%

CALL

Successors and predecessors for CALL
Predecessors Count Percentage
PUSH_NULL 80 30.8%
LOAD_FAST_LOAD_FAST 60 23.1%
LOAD_CONST 40 15.4%
BUILD_TUPLE 20 7.7%
LOAD_FAST 20 7.7%
Successors Count Percentage
CALL_NON_PY_GENERAL 100 38.5%
CALL_PY_EXACT_ARGS 80 30.8%
CALL_BUILTIN_CLASS 20 7.7%
CALL_METHOD_DESCRIPTOR_NOARGS 20 7.7%
CALL_METHOD_DESCRIPTOR_O 20 7.7%

CALL_FUNCTION_EX

Successors and predecessors for CALL_FUNCTION_EX
Predecessors Count Percentage
DICT_MERGE 120 66.7%
LOAD_FAST 60 33.3%
Successors Count Percentage
RETURN_VALUE 120 100.0%

CALL_INTRINSIC_1

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

COMPARE_OP

Successors and predecessors for COMPARE_OP
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 3,195,240 81.8%
LOAD_CONST 708,140 18.1%
COMPARE_OP 1,040 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 3,758,280 96.3%
STORE_FAST 145,080 3.7%
COMPARE_OP 1,040 0.0%
COMPARE_OP_INT 20 0.0%

CONTAINS_OP

Successors and predecessors for CONTAINS_OP
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 562,440 60.0%
LOAD_CONST 375,360 40.0%
CONTAINS_OP 300 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 937,800 100.0%
CONTAINS_OP 300 0.0%

COPY

Successors and predecessors for COPY
Predecessors Count Percentage
COMPARE_OP_INT 750,720 64.3%
LOAD_CONST 230,280 19.7%
LOAD_FAST 186,480 16.0%
Successors Count Percentage
TO_BOOL_BOOL 750,720 64.3%
TO_BOOL_INT 230,280 19.7%
LOAD_ATTR_INSTANCE_VALUE 186,240 16.0%
TO_BOOL_NONE 240 0.0%

COPY_FREE_VARS

Successors and predecessors for COPY_FREE_VARS
Predecessors Count Percentage
CACHE 187,680 33.5%
CALL_PY_EXACT_ARGS 186,300 33.3%
LOAD_ATTR_PROPERTY 186,240 33.2%
Successors Count Percentage
RESUME_CHECK 560,220 100.0%

DICT_MERGE

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

EXTENDED_ARG

Successors and predecessors for EXTENDED_ARG
Predecessors Count Percentage
TO_BOOL_LIST 186,360 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 186,360 100.0%

FOR_ITER

Successors and predecessors for FOR_ITER
Predecessors Count Percentage
GET_ITER 564,240 99.9%
FOR_ITER 220 0.0%
JUMP_BACKWARD 180 0.0%
Successors Count Percentage
STORE_FAST 189,240 33.5%
LOAD_FAST_LOAD_FAST 187,680 33.2%
UNPACK_SEQUENCE_TWO_TUPLE 187,320 33.2%
FOR_ITER 220 0.0%
RETURN_CONST 120 0.0%

IMPORT_FROM

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

IMPORT_NAME

Successors and predecessors for IMPORT_NAME
Predecessors Count Percentage
LOAD_CONST 120 100.0%
Successors Count Percentage
IMPORT_FROM 120 100.0%

IS_OP

Successors and predecessors for IS_OP
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 360 46.2%
LOAD_GLOBAL_MODULE 360 46.2%
LOAD_CONST 60 7.7%
Successors Count Percentage
POP_JUMP_IF_FALSE 720 92.3%
STORE_FAST 60 7.7%

JUMP_BACKWARD

Successors and predecessors for JUMP_BACKWARD
Predecessors Count Percentage
POP_TOP 300 71.4%
POP_JUMP_IF_TRUE 120 28.6%
Successors Count Percentage
FOR_ITER 180 42.9%
FOR_ITER_RANGE 120 28.6%
LOAD_FAST 100 23.8%
ENTER_EXECUTOR 20 4.8%

JUMP_FORWARD

Successors and predecessors for JUMP_FORWARD
Predecessors Count Percentage
POP_EXCEPT 373,560 98.7%
STORE_ATTR_INSTANCE_VALUE 2,760 0.7%
STORE_FAST 2,220 0.6%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 373,920 98.8%
LOAD_FAST 4,620 1.2%

LIST_EXTEND

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

LOAD_ATTR

Successors and predecessors for LOAD_ATTR
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 187,740 33.3%
LOAD_FAST_LOAD_FAST 187,700 33.3%
LOAD_ATTR_INSTANCE_VALUE 187,360 33.3%
LOAD_FAST 260 0.0%
LOAD_ATTR 220 0.0%
Successors Count Percentage
PUSH_NULL 187,680 33.3%
CALL_NON_PY_GENERAL 187,680 33.3%
CALL_PY_GENERAL 187,320 33.3%
LOAD_ATTR 220 0.0%
LOAD_CONST 120 0.0%

LOAD_CONST

Successors and predecessors for LOAD_CONST
Predecessors Count Percentage
LOAD_FAST 8,097,360 35.8%
LOAD_ATTR_METHOD_NO_DICT 3,736,320 16.5%
LOAD_FAST_LOAD_FAST 1,949,520 8.6%
STORE_FAST 1,876,980 8.3%
STORE_ATTR_SLOT 1,500,720 6.6%
Successors Count Percentage
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 3,173,280 14.0%
LOAD_FAST 2,439,600 10.8%
STORE_FAST 2,024,940 9.0%
BINARY_OP_MULTIPLY_INT 1,949,880 8.6%
BINARY_OP_ADD_INT 1,948,440 8.6%

LOAD_DEREF

Successors and predecessors for LOAD_DEREF
Predecessors Count Percentage
POP_JUMP_IF_FALSE 375,000 20.0%
RESUME_CHECK 373,200 19.9%
STORE_FAST 370,140 19.8%
LOAD_FAST 191,040 10.2%
PUSH_NULL 186,360 9.9%
Successors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 1,311,840 70.0%
LOAD_ATTR_METHOD_WITH_VALUES 370,080 19.8%
BINARY_OP_ADD_UNICODE 186,240 9.9%
STORE_ATTR_INSTANCE_VALUE 4,920 0.3%
STORE_FAST 60 0.0%

LOAD_FAST

Successors and predecessors for LOAD_FAST
Predecessors Count Percentage
RESUME_CHECK 7,740,020 13.2%
STORE_FAST 7,054,820 12.1%
POP_JUMP_IF_FALSE 6,748,980 11.5%
LOAD_GLOBAL_BUILTIN 4,686,740 8.0%
LOAD_ATTR_INSTANCE_VALUE 2,880,000 4.9%
Successors Count Percentage
LOAD_CONST 8,097,360 13.8%
LOAD_ATTR_INSTANCE_VALUE 7,816,020 13.4%
STORE_ATTR_SLOT 6,192,360 10.6%
LOAD_ATTR_SLOT 6,157,440 10.5%
LOAD_ATTR_METHOD_NO_DICT 4,116,960 7.0%

LOAD_FAST_LOAD_FAST

Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors Count Percentage
STORE_FAST 938,880 13.8%
STORE_ATTR_SLOT 937,320 13.7%
LOAD_ATTR_INSTANCE_VALUE 824,160 12.1%
LOAD_FAST_LOAD_FAST 563,040 8.3%
STORE_FAST_STORE_FAST 562,680 8.2%
Successors Count Percentage
LOAD_CONST 1,949,520 28.6%
STORE_ATTR_SLOT 1,500,000 22.0%
BUILD_TUPLE 563,100 8.3%
LOAD_FAST_LOAD_FAST 563,040 8.3%
LOAD_FAST 561,600 8.2%

LOAD_GLOBAL

Successors and predecessors for LOAD_GLOBAL
Predecessors Count Percentage
RESUME_CHECK 60 60.0%
POP_JUMP_IF_FALSE 20 20.0%
STORE_FAST 20 20.0%
Successors Count Percentage
LOAD_GLOBAL_MODULE 80 80.0%
LOAD_GLOBAL_BUILTIN 20 20.0%

MAKE_CELL

Successors and predecessors for MAKE_CELL
Predecessors Count Percentage
CACHE 186,960 99.9%
CALL_PY_GENERAL 180 0.1%
Successors Count Percentage
RESUME_CHECK 187,140 100.0%

POP_JUMP_IF_FALSE

Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors Count Percentage
COMPARE_OP 3,758,280 37.1%
TO_BOOL_BOOL 3,185,640 31.5%
CONTAINS_OP 937,800 9.3%
CONTAINS_OP_SET 932,640 9.2%
CHECK_EXC_MATCH 559,800 5.5%
Successors Count Percentage
LOAD_FAST 6,748,980 66.7%
POP_TOP 1,080,360 10.7%
LOAD_GLOBAL_MODULE 751,560 7.4%
LOAD_DEREF 375,000 3.7%
LOAD_FAST_LOAD_FAST 374,160 3.7%

POP_JUMP_IF_NONE

Successors and predecessors for POP_JUMP_IF_NONE
Predecessors Count Percentage
LOAD_ATTR_SLOT 1,305,120 46.6%
LOAD_FAST 934,380 33.3%
LOAD_ATTR_INSTANCE_VALUE 374,680 13.4%
CALL_BUILTIN_FAST 187,680 6.7%
Successors Count Percentage
LOAD_FAST 2,241,980 80.0%
LOAD_GLOBAL_BUILTIN 559,880 20.0%

POP_JUMP_IF_NOT_NONE

Successors and predecessors for POP_JUMP_IF_NOT_NONE
Predecessors Count Percentage
LOAD_FAST 1,309,260 69.9%
LOAD_ATTR_INSTANCE_VALUE 564,180 30.1%
Successors Count Percentage
LOAD_FAST 1,313,100 70.1%
LOAD_GLOBAL_MODULE 187,680 10.0%
LOAD_GLOBAL_BUILTIN 186,360 9.9%
RETURN_CONST 186,240 9.9%
LOAD_CONST 60 0.0%

POP_JUMP_IF_TRUE

Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors Count Percentage
COMPARE_OP_INT 937,060 41.0%
TO_BOOL_BOOL 747,900 32.7%
TO_BOOL_INT 230,280 10.1%
TO_BOOL 186,260 8.1%
TO_BOOL_STR 186,240 8.1%
Successors Count Percentage
LOAD_FAST 1,492,720 65.2%
STORE_FAST 230,280 10.1%
NOP 189,060 8.3%
LOAD_FAST_LOAD_FAST 187,680 8.2%
LOAD_GLOBAL_BUILTIN 187,680 8.2%

RETURN_CONST

Successors and predecessors for RETURN_CONST
Predecessors Count Percentage
STORE_ATTR_SLOT 1,125,720 42.9%
POP_TOP 374,220 14.3%
ENTER_EXECUTOR 373,920 14.3%
POP_JUMP_IF_FALSE 188,280 7.2%
STORE_ATTR_INSTANCE_VALUE 186,480 7.1%
Successors Count Percentage
POP_TOP 938,520 35.8%
INTERPRETER_EXIT 750,000 28.6%
STORE_FAST 372,540 14.2%
END_FOR 187,680 7.2%
EXIT_INIT_CHECK 186,360 7.1%

SET_FUNCTION_ATTRIBUTE

Successors and predecessors for SET_FUNCTION_ATTRIBUTE
Predecessors Count Percentage
MAKE_FUNCTION 180 100.0%
Successors Count Percentage
LOAD_FAST 120 66.7%
STORE_FAST 60 33.3%

STORE_DEREF

Successors and predecessors for STORE_DEREF
Predecessors Count Percentage
CALL_NON_PY_GENERAL 60 100.0%
Successors Count Percentage
LOAD_FAST 60 100.0%

STORE_FAST

Successors and predecessors for STORE_FAST
Predecessors Count Percentage
LOAD_CONST 2,024,940 12.6%
LOAD_FAST 1,688,640 10.5%
BINARY_OP_ADD_INT 1,199,160 7.5%
CALL_BUILTIN_CLASS 1,126,140 7.0%
RETURN_VALUE 1,124,640 7.0%
Successors Count Percentage
LOAD_FAST 7,054,820 43.9%
LOAD_CONST 1,876,980 11.7%
LOAD_GLOBAL_BUILTIN 1,876,080 11.7%
LOAD_GLOBAL_MODULE 1,498,240 9.3%
LOAD_FAST_LOAD_FAST 938,880 5.8%

STORE_FAST_STORE_FAST

Successors and predecessors for STORE_FAST_STORE_FAST
Predecessors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 2,626,740 82.3%
UNPACK_SEQUENCE_LIST 563,040 17.7%
Successors Count Percentage
LOAD_FAST 1,876,380 58.8%
LOAD_FAST_LOAD_FAST 562,680 17.6%
LOAD_GLOBAL_BUILTIN 375,360 11.8%
LOAD_GLOBAL_MODULE 187,680 5.9%
ENTER_EXECUTOR 187,680 5.9%

SWAP

Successors and predecessors for SWAP
Predecessors Count Percentage
RETURN_VALUE 187,680 50.2%
BINARY_OP_ADD_INT 186,240 49.8%
Successors Count Percentage
POP_TOP 187,680 50.2%
STORE_ATTR_INSTANCE_VALUE 186,240 49.8%

UNPACK_SEQUENCE

Successors and predecessors for UNPACK_SEQUENCE
Predecessors Count Percentage
CALL_METHOD_DESCRIPTOR_NOARGS 20 100.0%
Successors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 20 100.0%

YIELD_VALUE

Successors and predecessors for YIELD_VALUE
Predecessors Count Percentage
ENTER_EXECUTOR 940,080 100.0%
Successors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 940,080 100.0%

BINARY_OP_ADD_INT

Successors and predecessors for BINARY_OP_ADD_INT
Predecessors Count Percentage
LOAD_CONST 1,948,440 55.3%
BINARY_OP_MULTIPLY_INT 1,387,200 39.4%
BINARY_OP 187,320 5.3%
Successors Count Percentage
BINARY_SLICE 1,199,520 34.0%
STORE_FAST 1,199,160 34.0%
LOAD_CONST 375,360 10.7%
BINARY_OP_MULTIPLY_INT 375,360 10.7%
BINARY_OP 187,320 5.3%

BINARY_OP_ADD_UNICODE

Successors and predecessors for BINARY_OP_ADD_UNICODE
Predecessors Count Percentage
LOAD_DEREF 186,240 50.0%
LOAD_FAST 186,240 50.0%
Successors Count Percentage
BINARY_OP_INPLACE_ADD_UNICODE 186,240 50.0%
CALL_BUILTIN_FAST 186,240 50.0%

BINARY_OP_MULTIPLY_INT

Successors and predecessors for BINARY_OP_MULTIPLY_INT
Predecessors Count Percentage
LOAD_CONST 1,949,880 83.9%
BINARY_OP_ADD_INT 375,360 16.1%
Successors Count Percentage
BINARY_OP_ADD_INT 1,387,200 59.7%
LOAD_FAST 750,720 32.3%
LOAD_CONST 187,320 8.1%

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 186,840 100.0%
Successors Count Percentage
BINARY_SUBSCR_LIST_INT 186,840 100.0%

BINARY_SUBSCR_DICT

Successors and predecessors for BINARY_SUBSCR_DICT
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 187,680 50.2%
LOAD_FAST 186,240 49.8%
Successors Count Percentage
PUSH_EXC_INFO 373,560 99.9%
STORE_FAST 360 0.1%

BINARY_SUBSCR_GETITEM

Successors and predecessors for BINARY_SUBSCR_GETITEM
Predecessors Count Percentage
LOAD_FAST 371,640 100.0%
Successors Count Percentage
RESUME_CHECK 188,980 50.9%
ENTER_EXECUTOR 182,660 49.1%

BINARY_SUBSCR_LIST_INT

Successors and predecessors for BINARY_SUBSCR_LIST_INT
Predecessors Count Percentage
LOAD_CONST 374,640 50.0%
LOAD_FAST 187,680 25.1%
BINARY_OP_SUBTRACT_INT 186,840 24.9%
Successors Count Percentage
LOAD_CONST 374,640 50.0%
STORE_FAST 374,520 50.0%

BINARY_SUBSCR_TUPLE_INT

Successors and predecessors for BINARY_SUBSCR_TUPLE_INT
Predecessors Count Percentage
LOAD_CONST 187,720 100.0%
BINARY_SUBSCR 20 0.0%
Successors Count Percentage
STORE_FAST 187,740 100.0%

CALL_ALLOC_AND_ENTER_INIT

Successors and predecessors for CALL_ALLOC_AND_ENTER_INIT
Predecessors Count Percentage
LOAD_FAST 2,520 100.0%
Successors Count Percentage
ENTER_EXECUTOR 2,400 95.2%
RESUME_CHECK 120 4.8%

CALL_BUILTIN_CLASS

Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors Count Percentage
LOAD_FAST 749,320 40.0%
BINARY_SUBSCR 562,680 30.0%
BINARY_OP 375,360 20.0%
LOAD_GLOBAL_BUILTIN 186,600 10.0%
BUILD_LIST 120 0.0%
Successors Count Percentage
STORE_FAST 1,126,140 60.1%
GET_ITER 375,000 20.0%
LOAD_FAST 186,720 10.0%
RETURN_VALUE 186,240 9.9%

CALL_BUILTIN_FAST

Successors and predecessors for CALL_BUILTIN_FAST
Predecessors Count Percentage
LOAD_CONST 375,120 40.2%
LOAD_ATTR_INSTANCE_VALUE 186,460 20.0%
BUILD_TUPLE 186,240 19.9%
BINARY_OP_ADD_UNICODE 186,240 19.9%
RETURN_VALUE 120 0.0%
Successors Count Percentage
STORE_FAST 373,780 40.0%
POP_JUMP_IF_NONE 187,680 20.1%
RETURN_VALUE 186,360 19.9%
POP_TOP 186,240 19.9%
CALL_PY_EXACT_ARGS 120 0.0%

CALL_BUILTIN_FAST_WITH_KEYWORDS

Successors and predecessors for CALL_BUILTIN_FAST_WITH_KEYWORDS
Predecessors Count Percentage
LOAD_FAST 560,160 75.0%
LOAD_CONST 186,240 25.0%
Successors Count Percentage
STORE_FAST 372,480 49.9%
LOAD_CONST 187,680 25.1%
PUSH_EXC_INFO 186,240 25.0%

CALL_BUILTIN_O

Successors and predecessors for CALL_BUILTIN_O
Predecessors Count Percentage
LOAD_FAST 564,360 50.1%
BINARY_SUBSCR 375,000 33.3%
LOAD_ATTR_INSTANCE_VALUE 186,240 16.5%
Successors Count Percentage
STORE_FAST 563,040 50.0%
RETURN_VALUE 189,000 16.8%
CALL_LIST_APPEND 187,320 16.6%
UNPACK_SEQUENCE_TWO_TUPLE 186,240 16.5%

CALL_ISINSTANCE

Successors and predecessors for CALL_ISINSTANCE
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 561,840 75.0%
LOAD_GLOBAL_MODULE 187,680 25.0%
Successors Count Percentage
TO_BOOL_BOOL 749,520 100.0%

CALL_KW_NON_PY

Successors and predecessors for CALL_KW_NON_PY
Predecessors Count Percentage
LOAD_CONST 186,240 100.0%
Successors Count Percentage
RETURN_VALUE 186,240 100.0%

CALL_KW_PY

Successors and predecessors for CALL_KW_PY
Predecessors Count Percentage
LOAD_CONST 375,000 100.0%
Successors Count Percentage
RESUME_CHECK 375,000 100.0%

CALL_LEN

Successors and predecessors for CALL_LEN
Predecessors Count Percentage
LOAD_FAST 753,000 80.2%
LOAD_ATTR_INSTANCE_VALUE 185,740 19.8%
Successors Count Percentage
LOAD_CONST 753,000 80.2%
LOAD_GLOBAL_MODULE 185,740 19.8%

CALL_LIST_APPEND

Successors and predecessors for CALL_LIST_APPEND
Predecessors Count Percentage
LOAD_FAST 189,360 50.3%
CALL_BUILTIN_O 187,320 49.7%
Successors Count Percentage
ENTER_EXECUTOR 376,680 100.0%

CALL_METHOD_DESCRIPTOR_FAST

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors Count Percentage
LOAD_CONST 750,720 50.2%
LOAD_FAST 559,800 37.4%
LOAD_ATTR_MODULE 186,240 12.4%
Successors Count Percentage
STORE_FAST 561,600 37.5%
TO_BOOL_BOOL 560,160 37.4%
RETURN_VALUE 187,680 12.5%
POP_TOP 187,320 12.5%

CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
Predecessors Count Percentage
LOAD_CONST 3,173,280 100.0%
Successors Count Percentage
RETURN_VALUE 2,610,240 82.3%
UNPACK_SEQUENCE_LIST 563,040 17.7%

CALL_METHOD_DESCRIPTOR_NOARGS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_NOARGS
Predecessors Count Percentage
LOAD_ATTR_METHOD_NO_DICT 187,500 100.0%
CALL 20 0.0%
Successors Count Percentage
STORE_FAST 186,140 99.3%
RETURN_VALUE 1,320 0.7%
UNPACK_SEQUENCE_TWO_TUPLE 40 0.0%
UNPACK_SEQUENCE 20 0.0%

CALL_METHOD_DESCRIPTOR_O

Successors and predecessors for CALL_METHOD_DESCRIPTOR_O
Predecessors Count Percentage
LOAD_FAST 933,580 71.5%
RETURN_VALUE 372,480 28.5%
BUILD_TUPLE 40 0.0%
CALL 20 0.0%
Successors Count Percentage
POP_TOP 930,760 71.3%
BUILD_TUPLE 187,680 14.4%
CALL_NON_PY_GENERAL 187,680 14.4%

CALL_NON_PY_GENERAL

Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors Count Percentage
PUSH_NULL 188,080 25.0%
LOAD_ATTR 187,680 25.0%
LOAD_FAST 187,680 25.0%
CALL_METHOD_DESCRIPTOR_O 187,680 25.0%
LOAD_ATTR_INSTANCE_VALUE 120 0.0%
Successors Count Percentage
STORE_FAST 563,100 74.9%
LOAD_FAST 187,860 25.0%
POP_TOP 180 0.0%
GET_ITER 120 0.0%
RETURN_VALUE 60 0.0%

CALL_PY_EXACT_ARGS

Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors Count Percentage
LOAD_FAST 3,560,300 47.6%
LOAD_ATTR_METHOD_NO_DICT 2,797,560 37.4%
LOAD_ATTR_METHOD_WITH_VALUES 560,040 7.5%
LOAD_FAST_LOAD_FAST 374,000 5.0%
LOAD_SUPER_ATTR_METHOD 187,680 2.5%
Successors Count Percentage
RESUME_CHECK 7,105,880 95.0%
RETURN_GENERATOR 187,680 2.5%
COPY_FREE_VARS 186,300 2.5%

CALL_PY_GENERAL

Successors and predecessors for CALL_PY_GENERAL
Predecessors Count Percentage
LOAD_FAST 187,680 25.1%
LOAD_ATTR 187,320 25.1%
LOAD_CONST 186,280 24.9%
LOAD_FAST_LOAD_FAST 186,240 24.9%
LOAD_GLOBAL_MODULE 120 0.0%
Successors Count Percentage
RESUME_CHECK 747,480 100.0%
MAKE_CELL 180 0.0%

COMPARE_OP_INT

Successors and predecessors for COMPARE_OP_INT
Predecessors Count Percentage
LOAD_CONST 1,691,440 81.9%
LOAD_ATTR_INSTANCE_VALUE 187,320 9.1%
LOAD_GLOBAL_MODULE 185,740 9.0%
COMPARE_OP 20 0.0%
Successors Count Percentage
POP_JUMP_IF_TRUE 937,060 45.4%
COPY 750,720 36.4%
POP_JUMP_IF_FALSE 376,740 18.2%

COMPARE_OP_STR

Successors and predecessors for COMPARE_OP_STR
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 120 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 120 100.0%

CONTAINS_OP_SET

Successors and predecessors for CONTAINS_OP_SET
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 935,040 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 932,640 99.7%
STORE_FAST 2,400 0.3%

FOR_ITER_GEN

Successors and predecessors for FOR_ITER_GEN
Predecessors Count Percentage
GET_ITER 187,680 100.0%
Successors Count Percentage
POP_TOP 187,680 100.0%

FOR_ITER_LIST

Successors and predecessors for FOR_ITER_LIST
Predecessors Count Percentage
GET_ITER 186,240 100.0%
Successors Count Percentage
STORE_FAST 183,840 98.7%
LOAD_CONST 2,400 1.3%

FOR_ITER_RANGE

Successors and predecessors for FOR_ITER_RANGE
Predecessors Count Percentage
JUMP_BACKWARD 120 66.7%
GET_ITER 60 33.3%
Successors Count Percentage
STORE_FAST 120 66.7%
LOAD_FAST 60 33.3%

FOR_ITER_TUPLE

Successors and predecessors for FOR_ITER_TUPLE
Predecessors Count Percentage
GET_ITER 186,240 100.0%
Successors Count Percentage
STORE_FAST 186,240 100.0%

LOAD_ATTR_INSTANCE_VALUE

Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST 7,816,020 80.7%
LOAD_DEREF 1,311,840 13.5%
LOAD_FAST_LOAD_FAST 373,600 3.9%
COPY 186,240 1.9%
LOAD_ATTR 60 0.0%
Successors Count Percentage
LOAD_FAST 2,880,000 29.7%
LOAD_ATTR_METHOD_NO_DICT 1,118,240 11.5%
CONTAINS_OP_SET 935,040 9.7%
LOAD_FAST_LOAD_FAST 824,160 8.5%
RETURN_VALUE 564,180 5.8%

LOAD_ATTR_METHOD_LAZY_DICT

Successors and predecessors for LOAD_ATTR_METHOD_LAZY_DICT
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 187,320 100.0%
Successors Count Percentage
LOAD_FAST 187,320 100.0%

LOAD_ATTR_METHOD_NO_DICT

Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors Count Percentage
LOAD_FAST 4,116,960 42.4%
RETURN_VALUE 2,610,240 26.9%
LOAD_ATTR_SLOT 1,305,120 13.4%
LOAD_ATTR_INSTANCE_VALUE 1,118,240 11.5%
LOAD_CONST 375,360 3.9%
Successors Count Percentage
LOAD_CONST 3,736,320 38.5%
CALL_PY_EXACT_ARGS 2,797,560 28.8%
LOAD_FAST 2,430,940 25.0%
LOAD_FAST_LOAD_FAST 187,740 1.9%
CALL_METHOD_DESCRIPTOR_NOARGS 187,500 1.9%

LOAD_ATTR_METHOD_WITH_VALUES

Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors Count Percentage
LOAD_FAST 1,310,860 53.9%
RETURN_VALUE 749,280 30.8%
LOAD_DEREF 370,080 15.2%
LOAD_ATTR 40 0.0%
Successors Count Percentage
LOAD_FAST 1,309,760 53.9%
CALL_PY_EXACT_ARGS 560,040 23.0%
LOAD_FAST_LOAD_FAST 373,980 15.4%
LOAD_CONST 186,240 7.7%
LOAD_GLOBAL_BUILTIN 120 0.0%

LOAD_ATTR_MODULE

Successors and predecessors for LOAD_ATTR_MODULE
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 1,306,680 77.8%
LOAD_ATTR_MODULE 372,480 22.2%
LOAD_ATTR 60 0.0%
Successors Count Percentage
PUSH_NULL 934,200 55.6%
LOAD_ATTR_MODULE 372,480 22.2%
LOAD_FAST_LOAD_FAST 186,240 11.1%
CALL_METHOD_DESCRIPTOR_FAST 186,240 11.1%
STORE_FAST 60 0.0%

LOAD_ATTR_PROPERTY

Successors and predecessors for LOAD_ATTR_PROPERTY
Predecessors Count Percentage
LOAD_FAST 2,054,180 100.0%
Successors Count Percentage
RESUME_CHECK 1,867,940 90.9%
COPY_FREE_VARS 186,240 9.1%

LOAD_ATTR_SLOT

Successors and predecessors for LOAD_ATTR_SLOT
Predecessors Count Percentage
LOAD_FAST 6,157,440 100.0%
Successors Count Percentage
RETURN_VALUE 1,679,040 27.3%
POP_JUMP_IF_NONE 1,305,120 21.2%
LOAD_ATTR_METHOD_NO_DICT 1,305,120 21.2%
TO_BOOL_BOOL 1,305,120 21.2%
LOAD_FAST 375,000 6.1%

LOAD_GLOBAL_BUILTIN

Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors Count Percentage
STORE_FAST 1,876,080 29.5%
RESUME_CHECK 1,500,000 23.6%
LOAD_FAST 561,840 8.8%
POP_JUMP_IF_NONE 559,880 8.8%
PUSH_EXC_INFO 559,800 8.8%
Successors Count Percentage
LOAD_FAST 4,686,740 73.6%
CALL_ISINSTANCE 561,840 8.8%
CHECK_EXC_MATCH 559,800 8.8%
LOAD_GLOBAL_MODULE 373,920 5.9%
CALL_BUILTIN_CLASS 186,600 2.9%

LOAD_GLOBAL_MODULE

Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors Count Percentage
LOAD_FAST 3,758,400 41.7%
STORE_FAST 1,498,240 16.6%
RESUME_CHECK 1,123,320 12.5%
POP_JUMP_IF_FALSE 751,560 8.3%
LOAD_GLOBAL_BUILTIN 373,920 4.2%
Successors Count Percentage
COMPARE_OP 3,195,240 35.5%
LOAD_FAST 2,438,160 27.1%
LOAD_ATTR_MODULE 1,306,680 14.5%
CONTAINS_OP 562,440 6.2%
LOAD_CONST 375,360 4.2%

LOAD_SUPER_ATTR_METHOD

Successors and predecessors for LOAD_SUPER_ATTR_METHOD
Predecessors Count Percentage
LOAD_FAST 187,680 100.0%
Successors Count Percentage
CALL_PY_EXACT_ARGS 187,680 100.0%

RESUME_CHECK

Successors and predecessors for RESUME_CHECK
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 7,105,880 55.5%
LOAD_ATTR_PROPERTY 1,867,940 14.6%
CACHE 1,572,180 12.3%
CALL_PY_GENERAL 747,480 5.8%
COPY_FREE_VARS 560,220 4.4%
Successors Count Percentage
LOAD_FAST 7,740,020 60.5%
LOAD_GLOBAL_BUILTIN 1,500,000 11.7%
LOAD_GLOBAL_MODULE 1,123,320 8.8%
NOP 933,240 7.3%
LOAD_CONST 375,120 2.9%

STORE_ATTR_INSTANCE_VALUE

Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 374,520 49.7%
LOAD_FAST 188,160 25.0%
SWAP 186,240 24.7%
LOAD_DEREF 4,920 0.7%
Successors Count Percentage
LOAD_FAST 187,080 24.8%
LOAD_FAST_LOAD_FAST 187,080 24.8%
LOAD_GLOBAL_BUILTIN 186,840 24.8%
RETURN_CONST 186,480 24.7%
JUMP_FORWARD 2,760 0.4%

STORE_ATTR_SLOT

Successors and predecessors for STORE_ATTR_SLOT
Predecessors Count Percentage
LOAD_FAST 6,192,360 80.5%
LOAD_FAST_LOAD_FAST 1,500,000 19.5%
Successors Count Percentage
LOAD_FAST 2,627,520 34.2%
LOAD_CONST 1,500,720 19.5%
RETURN_CONST 1,125,720 14.6%
LOAD_FAST_LOAD_FAST 937,320 12.2%
BUILD_LIST 750,360 9.8%

STORE_SUBSCR_DICT

Successors and predecessors for STORE_SUBSCR_DICT
Predecessors Count Percentage
LOAD_CONST 120 100.0%
Successors Count Percentage
LOAD_FAST 120 100.0%

TO_BOOL_BOOL

Successors and predecessors for TO_BOOL_BOOL
Predecessors Count Percentage
LOAD_ATTR_SLOT 1,305,120 33.2%
COPY 750,720 19.1%
CALL_ISINSTANCE 749,520 19.1%
CALL_METHOD_DESCRIPTOR_FAST 560,160 14.2%
LOAD_FAST 194,680 4.9%
Successors Count Percentage
POP_JUMP_IF_FALSE 3,185,640 81.0%
POP_JUMP_IF_TRUE 747,900 19.0%

TO_BOOL_INT

Successors and predecessors for TO_BOOL_INT
Predecessors Count Percentage
COPY 230,280 55.1%
BINARY_OP 187,680 44.9%
Successors Count Percentage
POP_JUMP_IF_TRUE 230,280 55.1%
POP_JUMP_IF_FALSE 187,680 44.9%

TO_BOOL_LIST

Successors and predecessors for TO_BOOL_LIST
Predecessors Count Percentage
LOAD_ATTR_INSTANCE_VALUE 186,360 100.0%
Successors Count Percentage
EXTENDED_ARG 186,360 100.0%

TO_BOOL_NONE

Successors and predecessors for TO_BOOL_NONE
Predecessors Count Percentage
COPY 240 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 120 50.0%
POP_JUMP_IF_TRUE 120 50.0%

TO_BOOL_STR

Successors and predecessors for TO_BOOL_STR
Predecessors Count Percentage
LOAD_FAST 186,240 100.0%
Successors Count Percentage
POP_JUMP_IF_TRUE 186,240 100.0%

UNPACK_SEQUENCE_LIST

Successors and predecessors for UNPACK_SEQUENCE_LIST
Predecessors Count Percentage
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 563,040 100.0%
Successors Count Percentage
STORE_FAST_STORE_FAST 563,040 100.0%

UNPACK_SEQUENCE_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TUPLE
Predecessors Count Percentage
LOAD_FAST 375,360 66.7%
RETURN_VALUE 187,680 33.3%
Successors Count Percentage
LOAD_FAST 563,040 100.0%

UNPACK_SEQUENCE_TWO_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TWO_TUPLE
Predecessors Count Percentage
RETURN_VALUE 1,313,040 43.7%
YIELD_VALUE 940,080 31.3%
STORE_ATTR_SLOT 375,360 12.5%
FOR_ITER 187,320 6.2%
CALL_BUILTIN_O 186,240 6.2%
Successors Count Percentage
STORE_FAST_STORE_FAST 2,626,740 87.5%
LOAD_FAST 375,360 12.5%

ENTER_EXECUTOR

Successors and predecessors for ENTER_EXECUTOR
Predecessors Count Percentage
STORE_FAST 938,160 45.5%
CALL_LIST_APPEND 376,680 18.3%
STORE_FAST_STORE_FAST 187,680 9.1%
POP_TOP 187,560 9.1%
BINARY_OP_INPLACE_ADD_UNICODE 186,240 9.0%
Successors Count Percentage
YIELD_VALUE 940,080 45.6%
RETURN_VALUE 745,980 36.2%
RETURN_CONST 373,920 18.1%
RESUME_CHECK 1,380 0.1%
ENTER_EXECUTOR 380 0.0%

Specialization stats

Specialization stats by family

BINARY_OP

specialization stats for BINARY_OP family
Kind Count Ratio
deferred

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

1,875,000 21.7%
hit

Specialized instructions that complete.

6,781,140 78.3%
Success Count Ratio
Success 20 3.4%
Failure 560 96.6%
Failure kind Count Ratio
and int 240 42.9%
remainder 100 17.9%
true divide other 100 17.9%
lshift 60 10.7%
rshift 60 10.7%

BINARY_SLICE

specialization stats for BINARY_SLICE family
Kind Count Ratio
deferred

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

1,574,880 100.0%

BINARY_SUBSCR

specialization stats for BINARY_SUBSCR family
Kind Count Ratio
deferred

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

1,688,400 50.0%
hit

Specialized instructions that complete.

1,686,180 50.0%
Success Count Ratio
Success 20 4.0%
Failure 480 96.0%
Failure kind Count Ratio
buffer slice 320 66.7%
buffer int 100 20.8%
list slice 60 12.5%

CALL

specialization stats for CALL family
Kind Count Ratio
hit

Specialized instructions that complete.

27,516,540 100.0%
Success Count Ratio
Success 260 100.0%
Failure 0 0.0%

COMPARE_OP

specialization stats for COMPARE_OP family
Kind Count Ratio
deferred

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

3,903,360 52.3%
hit

Specialized instructions that complete.

3,561,780 47.7%
Success Count Ratio
Success 20 1.9%
Failure 1,040 98.1%
Failure kind Count Ratio
bytes 720 69.2%
different types 320 30.8%

CONTAINS_OP

specialization stats for CONTAINS_OP family
Kind Count Ratio
deferred

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

937,800 45.6%
hit

Specialized instructions that complete.

1,118,880 54.4%
Success Count Ratio
Success 0 0.0%
Failure 300 100.0%
Failure kind Count Ratio
tuple 200 66.7%
other 100 33.3%

FOR_ITER

specialization stats for FOR_ITER family
Kind Count Ratio
deferred

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

564,420 27.3%
hit

Specialized instructions that complete.

1,500,420 72.7%
Success Count Ratio
Success 0 0.0%
Failure 220 100.0%
Failure kind Count Ratio
other 60 27.3%
enumerate 60 27.3%
reversed list 60 27.3%
itertools 40 18.2%

LOAD_ATTR

specialization stats for LOAD_ATTR family
Kind Count Ratio
deferred

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

562,860 1.4%
hit

Specialized instructions that complete.

38,836,740 98.6%
Success Count Ratio
Success 200 47.6%
Failure 220 52.4%
Failure kind Count Ratio
method 140 63.6%
non overriding descriptor 60 27.3%

LOAD_GLOBAL

specialization stats for LOAD_GLOBAL family
Kind Count Ratio
hit

Specialized instructions that complete.

15,376,080 100.0%
Success Count Ratio
Success 100 100.0%
Failure 0 0.0%

LOAD_SUPER_ATTR

specialization stats for LOAD_SUPER_ATTR family
Kind Count Ratio
hit

Specialized instructions that complete.

187,680 100.0%

STORE_ATTR

specialization stats for STORE_ATTR family
Kind Count Ratio
hit

Specialized instructions that complete.

9,932,400 100.0%

STORE_SUBSCR

specialization stats for STORE_SUBSCR family
Kind Count Ratio
hit

Specialized instructions that complete.

120 100.0%

TO_BOOL

specialization stats for TO_BOOL family
Kind Count Ratio
deferred

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

186,320 2.5%
hit

Specialized instructions that complete.

7,349,940 97.5%
Success Count Ratio
Success 20 20.0%
Failure 80 80.0%
Failure kind Count Ratio
sequence 80 100.0%

UNPACK_SEQUENCE

specialization stats for UNPACK_SEQUENCE family
Kind Count Ratio
hit

Specialized instructions that complete.

4,692,900 100.0%
Success Count Ratio
Success 20 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.

163,184,540 57.0%
Not specialized

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

11,296,600 3.9%
Specialized hits

Specialized instructions, e.g. LOAD_ATTR_MODULE that complete.

111,854,280 39.1%
Specialized misses

Specialized instructions, e.g. LOAD_ATTR_MODULE that deopt.

0 0.0%

Deferred by instruction

Breakdown of deferred (not specialized) instruction counts by family
Name Count Ratio
COMPARE_OP 3,903,360 34.6%
BINARY_OP 1,875,000 16.6%
BINARY_SUBSCR 1,688,400 15.0%
BINARY_SLICE 1,574,880 13.9%
CONTAINS_OP 937,800 8.3%
FOR_ITER 564,420 5.0%
LOAD_ATTR 562,860 5.0%
TO_BOOL 186,320 1.6%
STORE_SLICE 0 0.0%
CACHE 0 0.0%

Misses by instruction

Breakdown of misses (specialized deopts) instruction counts by family

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 1,946,820 12.0%
Calls to Python functions inlined 14,221,620 88.0%
Calls via PyEval_EvalFrame (total) 1,946,820 12.0%
Calls via PyEval_EvalFrame (vector) 1,946,820 12.0%
Calls via PyEval_EvalFrame (generator) 0 0.0%
Calls via PyEval_EvalFrame (legacy) 0 0.0%
Calls via PyEval_EvalFrame (function vectorcall) 1,946,820 12.0%
Calls via PyEval_EvalFrame (build class) 0 0.0%
Calls via PyEval_EvalFrame (slot) 186,960 1.2%
Calls via PyEval_EvalFrame (function ex) 0 0.0%
Calls via PyEval_EvalFrame (api) 120 0.0%
Calls via PyEval_EvalFrame (method) 0 0.0%
Frame objects created 747,120 4.6%
Frames pushed 15,227,040 94.2%

Object stats

Allocations, frees and dict materializatons

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

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

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

Count Ratio
Allocations from freelist 12,443,400 30.3%
Frees to freelist 12,443,260
Allocations 28,603,420 69.7%
Allocations to 512 bytes 28,030,860 68.3%
Allocations to 4 kbytes 197,200 0.5%
Allocations over 4 kbytes 375,360 0.9%
Frees 29,131,580
Inline values 372,720
Interpreter mortal increfs 139,042,300 46.1%
Interpreter mortal decrefs 162,777,420 48.6%
Mortal increfs 69,102,700 22.9%
Mortal decrefs 83,968,713 25.1%
Interpreter immortal increfs 44,882,220 14.9%
Interpreter immortal decrefs 48,081,300 14.4%
Immortal increfs 48,566,564 16.1%
Immortal decrefs 39,780,687 11.9%
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 1,872,565
Method cache misses 188,075
Method cache collisions 188,257
Method cache dunder hits 1,497,551
Method cache dunder misses 949

GC stats

GC collections and effectiveness

Collected/visits gives some measure of efficiency.

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

Optimization (Tier 2) stats

statistics about the Tier 2 optimizer
Count Ratio
Optimization attempts

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

740
Traces created

The number of traces that were successfully created.

60 8.1%
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.

700 94.6%
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.

680 91.9%
Inner loop found

A trace is truncated because it has an inner loop

0 0.0%
Recursive call

A trace is truncated because it has a recursive call.

0 0.0%
Low confidence

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

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

4,871,720
Uops executed

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

161,299,100 3,310.9%
Count Ratio
Optimizer attempts

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

60
Optimizer successes

The number of traces that were successfully optimized.

60 100.0%
Optimizer no memory

The number of optimizations that failed due to no memory.

0 0.0%
Remove globals builtins changed

The builtins changed during optimization

0 0.0%
Remove globals incorrect keys

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

0 0.0%

Trace length histogram

trace length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 0 0.0%
<= 8 0 0.0%
<= 16 0 0.0%
<= 32 20 33.3%
<= 64 0 0.0%
<= 128 0 0.0%
<= 256 40 66.7%

Optimized trace length histogram

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

Trace run length histogram

trace run length histogram
Range Count Ratio
<= 1 0 0.0%

Uop execution stats

uop execution stats
Name Count Self Cumulative Miss ratio
_SET_IP 15,177,360 9.4% 9.4%
_CHECK_VALIDITY 12,174,160 7.5% 17.0%
_CHECK_PERIODIC 6,757,600 4.2% 21.1%
_GUARD_TYPE_VERSION 6,731,780 4.2% 25.3%
_MAKE_WARM 5,245,160 3.3% 28.6%
_LOAD_FAST_0 5,057,120 3.1% 31.7%
_START_EXECUTOR 4,871,720 3.0% 34.7%
_LOAD_CONST_INLINE 4,509,000 2.8% 37.5%
_LOAD_FAST_2 3,745,340 2.3% 39.8%
_GUARD_IS_FALSE_POP 3,745,080 2.3% 42.2% 5.0%
_EXIT_TRACE 3,557,620 2.2% 44.4%
_LOAD_FAST_1 3,368,760 2.1% 46.5%
_LOAD_CONST_INLINE_BORROW 3,366,500 2.1% 48.5%
_LOAD_ATTR_METHOD_NO_DICT 3,005,760 1.9% 50.4%
_PUSH_FRAME 3,003,080 1.9% 52.3%
_LOAD_FAST 2,997,120 1.9% 54.1%
_LOAD_FAST_6 2,811,840 1.7% 55.9%
_GUARD_IS_TRUE_POP 2,627,400 1.6% 57.5% 7.1%
_CHECK_VALIDITY_AND_SET_IP 2,439,720 1.5% 59.0%
_TO_BOOL_BOOL 2,250,960 1.4% 60.4%
_LOAD_CONST_INLINE_WITH_NULL 2,242,480 1.4% 61.8%
_SAVE_RETURN_OFFSET 1,875,440 1.2% 63.0%
_POP_TOP 1,873,340 1.2% 64.1%
_CALL_METHOD_DESCRIPTOR_FAST 1,692,480 1.0% 65.2%
_RESUME_CHECK 1,688,980 1.0% 66.2%
_STORE_FAST 1,685,880 1.0% 67.3%
_LOAD_FAST_3 1,684,440 1.0% 68.3%
_CHECK_MANAGED_OBJECT_HAS_VALUES 1,672,520 1.0% 69.3%
_LOAD_ATTR_INSTANCE_VALUE_0 1,672,520 1.0% 70.4%
_CHECK_FUNCTION_EXACT_ARGS 1,501,660 0.9% 71.3%
_CHECK_FUNCTION_VERSION 1,501,660 0.9% 72.2%
_PUSH_NULL 1,500,720 0.9% 73.2%
_TIER2_RESUME_CHECK 1,497,780 0.9% 74.1%
_COMPARE_OP_INT 1,497,140 0.9% 75.0%
_INIT_CALL_PY_EXACT_ARGS_1 1,315,300 0.8% 75.9%
_BUILD_TUPLE 1,314,720 0.8% 76.7%
_BINARY_SUBSCR 1,314,360 0.8% 77.5%
_DYNAMIC_EXIT 1,314,100 0.8% 78.3%
_RETURN_VALUE 1,312,440 0.8% 79.1%
_FOR_ITER_TIER_TWO 1,312,320 0.8% 79.9% 14.3%
_CALL_LEN 1,309,820 0.8% 80.7%
_CHECK_FUNCTION 1,306,340 0.8% 81.5%
_GUARD_DORV_NO_DICT 1,298,880 0.8% 82.3%
_STORE_ATTR_INSTANCE_VALUE 1,298,880 0.8% 83.2%
_TO_BOOL 1,127,140 0.7% 83.9%
_LOAD_FAST_5 1,127,040 0.7% 84.6%
_STORE_FAST_6 1,123,560 0.7% 85.2%
_CHECK_STACK_SPACE_OPERAND 942,580 0.6% 85.8%
_FOR_ITER_GEN_FRAME 940,080 0.6% 86.4%
_LOAD_FAST_4 939,720 0.6% 87.0%
_COMPARE_OP 938,760 0.6% 87.6%
_GUARD_IS_NOT_NONE_POP 938,500 0.6% 88.2%
_STORE_FAST_3 938,400 0.6% 88.7%
_LOAD_ATTR_SLOT_0 936,600 0.6% 89.3%
_LOAD_FAST_7 936,600 0.6% 89.9%
_GUARD_NOS_INT 935,180 0.6% 90.5%
_LOAD_DEREF 922,920 0.6% 91.1%
_STORE_FAST_2 751,780 0.5% 91.5%
_GUARD_IS_NONE_POP 746,500 0.5% 92.0%
_UNPACK_SEQUENCE_LIST 564,720 0.4% 92.3%
_CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS 564,720 0.4% 92.7%
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT 562,900 0.3% 93.0%
_GUARD_KEYS_VERSION 562,900 0.3% 93.4%
_LOAD_ATTR_METHOD_WITH_VALUES 562,900 0.3% 93.7%
_CALL_LIST_APPEND 561,960 0.3% 94.1%
_GUARD_BOTH_INT 561,960 0.3% 94.4%
_STORE_FAST_4 377,400 0.2% 94.7%
_CHECK_ATTR_METHOD_LAZY_DICT 375,360 0.2% 94.9%
_LOAD_ATTR_METHOD_LAZY_DICT 375,360 0.2% 95.1%
_CALL_BUILTIN_FAST 375,140 0.2% 95.4%
_LOAD_CONST 374,640 0.2% 95.6%
_TO_BOOL_INT 374,640 0.2% 95.8%
_BINARY_OP 374,640 0.2% 96.1%
_CALL_NON_PY_GENERAL 374,640 0.2% 96.3%
_CHECK_IS_NOT_PY_CALLABLE 374,640 0.2% 96.5%
_STORE_FAST_7 374,640 0.2% 96.8%
_CALL_METHOD_DESCRIPTOR_NOARGS 374,140 0.2% 97.0%
_CALL_BUILTIN_O 373,680 0.2% 97.2%
_JUMP_TO_TOP 373,440 0.2% 97.5%
_STORE_FAST_5 371,160 0.2% 97.7%
_GUARD_NOT_EXHAUSTED_LIST 187,560 0.1% 97.8% 98.0%
_ITER_CHECK_LIST 187,560 0.1% 97.9%
_BUILD_LIST 187,320 0.1% 98.0%
_BINARY_OP_ADD_INT 187,320 0.1% 98.1%
_CALL_BUILTIN_FAST_WITH_KEYWORDS 187,320 0.1% 98.3%
_CHECK_ATTR_MODULE 187,320 0.1% 98.4%
_CHECK_FUNCTION_VERSION_KW 187,320 0.1% 98.5%
_LOAD_ATTR_MODULE 187,320 0.1% 98.6%
_PY_FRAME_KW 187,320 0.1% 98.7%
_STORE_ATTR_SLOT 187,320 0.1% 98.8%
_LOAD_ATTR_PROPERTY_FRAME 186,460 0.1% 99.0%
_GET_ITER 186,360 0.1% 99.1%
_INIT_CALL_PY_EXACT_ARGS_0 186,360 0.1% 99.2%
_GUARD_NOT_EXHAUSTED_TUPLE 186,240 0.1% 99.3% 100.0%
_BUILD_MAP 186,240 0.1% 99.4%
_ITER_CHECK_TUPLE 186,240 0.1% 99.5%
_STORE_FAST_1 186,120 0.1% 99.7%
_CONTAINS_OP_SET 183,840 0.1% 99.8%
_CHECK_AND_ALLOCATE_OBJECT 183,840 0.1% 99.9%
_CREATE_INIT_FRAME 183,840 0.1% 100.0%
_BINARY_SUBSCR_CHECK_FUNC 3,720 0.0% 100.0%
_BINARY_SUBSCR_INIT_CALL 3,720 0.0% 100.0%
_ITER_NEXT_LIST 3,720 0.0% 100.0%
_CALL_METHOD_DESCRIPTOR_O 500 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.

Unsupported opcodes

unsupported opcodes

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-10-25