- benchmark: unpickle_pure_python
- fork: brandtbucher
- ref: justin-no-externs
- commit hash: 64b198a
- commit date: 2024-10-25T10:03:36-07:00
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 | 273,723,620 | 23.1% | 23.1% | |
LOAD_ATTR_INSTANCE_VALUE | 89,223,580 | 7.5% | 30.7% | |
LOAD_CONST | 68,166,520 | 5.8% | 36.4% | |
POP_JUMP_IF_TRUE | 58,958,220 | 5.0% | 41.4% | |
STORE_FAST | 58,225,380 | 4.9% | 46.4% | |
LOAD_GLOBAL_BUILTIN | 54,210,600 | 4.6% | 50.9% | |
RESUME_CHECK | 39,903,360 | 3.4% | 54.3% | |
RETURN_VALUE | 39,514,980 | 3.3% | 57.7% | |
TO_BOOL | 38,563,360 | 3.3% | 60.9% | |
BINARY_SUBSCR | 38,563,280 | 3.3% | 64.2% | |
POP_JUMP_IF_FALSE | 38,099,520 | 3.2% | 67.4% | |
POP_TOP | 32,069,420 | 2.7% | 70.1% | |
CALL_LEN | 26,169,000 | 2.2% | 72.3% | |
BINARY_SUBSCR_DICT | 22,771,260 | 1.9% | 74.2% | |
LOAD_GLOBAL_MODULE | 22,239,540 | 1.9% | 76.1% | |
LOAD_FAST_LOAD_FAST | 21,331,900 | 1.8% | 77.9% | |
CALL_PY_EXACT_ARGS | 20,984,300 | 1.8% | 79.7% | 62.8% |
PUSH_NULL | 20,782,920 | 1.8% | 81.5% | |
RETURN_CONST | 20,531,000 | 1.7% | 83.2% | |
TO_BOOL_BOOL | 20,365,840 | 1.7% | 84.9% | |
ENTER_EXECUTOR | 20,281,440 | 1.7% | 86.6% | |
CALL_ISINSTANCE | 20,231,460 | 1.7% | 88.3% | |
CALL_METHOD_DESCRIPTOR_FAST | 18,948,900 | 1.6% | 89.9% | |
COMPARE_OP_INT | 18,825,440 | 1.6% | 91.5% | 0.0% |
CALL_BOUND_METHOD_EXACT_ARGS | 18,803,400 | 1.6% | 93.1% | |
TO_BOOL_ALWAYS_TRUE | 18,473,640 | 1.6% | 94.7% | 1.8% |
LOAD_ATTR_METHOD_LAZY_DICT | 18,467,280 | 1.6% | 96.2% | |
CALL_BUILTIN_O | 11,704,260 | 1.0% | 97.2% | |
STORE_SUBSCR_DICT | 7,730,160 | 0.7% | 97.9% | |
CALL_BUILTIN_CLASS | 7,258,560 | 0.6% | 98.5% | |
STORE_ATTR_INSTANCE_VALUE | 3,168,300 | 0.3% | 98.8% | |
NOP | 2,966,040 | 0.3% | 99.0% | |
CALL_BUILTIN_FAST | 1,708,860 | 0.1% | 99.2% | |
LOAD_ATTR | 1,502,940 | 0.1% | 99.3% | |
BINARY_SUBSCR_TUPLE_INT | 925,680 | 0.1% | 99.4% | |
LOAD_ATTR_METHOD_NO_DICT | 794,640 | 0.1% | 99.4% | |
BUILD_LIST | 652,860 | 0.1% | 99.5% | |
LOAD_ATTR_METHOD_WITH_VALUES | 573,720 | 0.0% | 99.5% | |
TO_BOOL_NONE | 466,620 | 0.0% | 99.6% | 70.2% |
LOAD_ATTR_MODULE | 417,780 | 0.0% | 99.6% | |
CALL_NON_PY_GENERAL | 341,340 | 0.0% | 99.6% | |
BINARY_SUBSCR_LIST_INT | 307,320 | 0.0% | 99.7% | |
BUILD_MAP | 269,040 | 0.0% | 99.7% | |
CALL_LIST_APPEND | 268,800 | 0.0% | 99.7% | |
SWAP | 232,140 | 0.0% | 99.7% | |
INTERPRETER_EXIT | 230,640 | 0.0% | 99.8% | |
CALL_KW_NON_PY | 186,600 | 0.0% | 99.8% | |
GET_ITER | 154,320 | 0.0% | 99.8% | |
BINARY_OP_ADD_INT | 153,660 | 0.0% | 99.8% | |
FOR_ITER_RANGE | 153,660 | 0.0% | 99.8% | |
POP_JUMP_IF_NONE | 142,200 | 0.0% | 99.8% | |
LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES | 134,040 | 0.0% | 99.8% | |
CALL_PY_GENERAL | 119,040 | 0.0% | 99.8% | |
COMPARE_OP | 118,740 | 0.0% | 99.9% | |
COPY | 117,120 | 0.0% | 99.9% | |
EXIT_INIT_CHECK | 115,380 | 0.0% | 99.9% | |
STORE_SUBSCR | 115,320 | 0.0% | 99.9% | |
STORE_ATTR | 115,240 | 0.0% | 99.9% | |
CHECK_EXC_MATCH | 115,200 | 0.0% | 99.9% | |
POP_EXCEPT | 115,200 | 0.0% | 99.9% | |
PUSH_EXC_INFO | 115,200 | 0.0% | 99.9% | |
DELETE_FAST | 115,200 | 0.0% | 99.9% | |
RAISE_VARARGS | 115,200 | 0.0% | 99.9% | |
UNPACK_SEQUENCE_TUPLE | 115,200 | 0.0% | 100.0% | |
CALL_ALLOC_AND_ENTER_INIT | 109,680 | 0.0% | 100.0% | |
IS_OP | 94,680 | 0.0% | 100.0% | |
BUILD_TUPLE | 86,160 | 0.0% | 100.0% | |
CALL_TYPE_1 | 85,680 | 0.0% | 100.0% | |
CALL_FUNCTION_EX | 38,580 | 0.0% | 100.0% | |
CONTAINS_OP | 38,540 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_O | 25,680 | 0.0% | 100.0% | |
BINARY_OP | 24,160 | 0.0% | 100.0% | |
JUMP_FORWARD | 10,860 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_NOARGS | 9,840 | 0.0% | 100.0% | |
CONTAINS_OP_DICT | 9,300 | 0.0% | 100.0% | |
TO_BOOL_INT | 9,120 | 0.0% | 100.0% | |
CALL_BOUND_METHOD_GENERAL | 8,640 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS | 8,460 | 0.0% | 100.0% | |
EXTENDED_ARG | 8,400 | 0.0% | 100.0% | |
CALL | 1,140 | 0.0% | 100.0% | |
LOAD_GLOBAL | 1,020 | 0.0% | 100.0% | |
STORE_FAST_STORE_FAST | 660 | 0.0% | 100.0% | |
UNPACK_SEQUENCE_TWO_TUPLE | 660 | 0.0% | 100.0% | |
FOR_ITER | 580 | 0.0% | 100.0% | |
JUMP_BACKWARD | 420 | 0.0% | 100.0% | |
POP_JUMP_IF_NOT_NONE | 420 | 0.0% | 100.0% | |
FOR_ITER_LIST | 360 | 0.0% | 100.0% | |
CALL_KW_PY | 180 | 0.0% | 100.0% | |
LOAD_DEREF | 120 | 0.0% | 100.0% | |
COMPARE_OP_STR | 120 | 0.0% | 100.0% | |
MAKE_FUNCTION | 60 | 0.0% | 100.0% | |
CALL_INTRINSIC_1 | 60 | 0.0% | 100.0% | |
COPY_FREE_VARS | 60 | 0.0% | 100.0% | |
LIST_EXTEND | 60 | 0.0% | 100.0% | |
MAKE_CELL | 60 | 0.0% | 100.0% | |
SET_FUNCTION_ATTRIBUTE | 60 | 0.0% | 100.0% | |
STORE_DEREF | 60 | 0.0% | 100.0% | |
BINARY_OP_SUBTRACT_FLOAT | 60 | 0.0% | 100.0% | |
FOR_ITER_TUPLE | 60 | 0.0% | 100.0% | |
CALL_KW | 40 | 0.0% | 100.0% | |
UNPACK_SEQUENCE | 20 | 0.0% | 100.0% |
Pair counts for top 100 opcode pairs
Pairs of specialized operations that deoptimize and are then followed by the corresponding unspecialized instruction are not counted as pairs.
Pair | Count | Self | Cumulative |
---|---|---|---|
LOAD_FAST LOAD_ATTR_INSTANCE_VALUE | 89,223,200 | 7.5% | 7.5% |
STORE_FAST LOAD_FAST | 54,563,400 | 4.6% | 12.2% |
LOAD_GLOBAL_BUILTIN LOAD_FAST | 53,775,360 | 4.5% | 16.7% |
RESUME_CHECK LOAD_FAST | 39,361,660 | 3.3% | 20.0% |
POP_JUMP_IF_TRUE LOAD_GLOBAL_BUILTIN | 38,563,380 | 3.3% | 23.3% |
LOAD_FAST TO_BOOL | 38,553,740 | 3.3% | 26.5% |
TO_BOOL POP_JUMP_IF_TRUE | 38,553,720 | 3.3% | 29.8% |
LOAD_CONST BINARY_SUBSCR | 38,553,620 | 3.3% | 33.1% |
POP_JUMP_IF_FALSE LOAD_FAST | 37,445,220 | 3.2% | 36.2% |
LOAD_FAST CALL_LEN | 26,159,820 | 2.2% | 38.4% |
CALL_PY_EXACT_ARGS RESUME_CHECK | 20,735,500 | 1.8% | 40.2% |
PUSH_NULL LOAD_FAST | 20,618,460 | 1.7% | 41.9% |
RETURN_VALUE STORE_FAST | 20,429,220 | 1.7% | 43.7% |
LOAD_FAST_LOAD_FAST LOAD_CONST | 20,384,700 | 1.7% | 45.4% |
LOAD_FAST CALL_PY_EXACT_ARGS | 20,302,820 | 1.7% | 47.1% |
LOAD_FAST LOAD_GLOBAL_MODULE | 20,245,840 | 1.7% | 48.8% |
POP_JUMP_IF_TRUE LOAD_FAST_LOAD_FAST | 20,236,800 | 1.7% | 50.5% |
TO_BOOL_BOOL POP_JUMP_IF_TRUE | 20,232,120 | 1.7% | 52.2% |
CALL_ISINSTANCE TO_BOOL_BOOL | 20,231,400 | 1.7% | 54.0% |
RETURN_CONST POP_TOP | 20,175,920 | 1.7% | 55.7% |
LOAD_GLOBAL_MODULE CALL_ISINSTANCE | 20,121,780 | 1.7% | 57.4% |
BINARY_SUBSCR BINARY_SUBSCR_DICT | 20,121,620 | 1.7% | 59.1% |
BINARY_SUBSCR_DICT PUSH_NULL | 20,121,600 | 1.7% | 60.8% |
POP_TOP ENTER_EXECUTOR | 20,022,480 | 1.7% | 62.5% |
ENTER_EXECUTOR RETURN_VALUE | 20,006,400 | 1.7% | 64.1% |
LOAD_ATTR_INSTANCE_VALUE LOAD_CONST | 19,602,420 | 1.7% | 65.8% |
CALL_BOUND_METHOD_EXACT_ARGS RESUME_CHECK | 18,803,400 | 1.6% | 67.4% |
LOAD_FAST RETURN_VALUE | 18,701,220 | 1.6% | 69.0% |
COMPARE_OP_INT POP_JUMP_IF_FALSE | 18,700,220 | 1.6% | 70.6% |
CALL_METHOD_DESCRIPTOR_FAST STORE_FAST | 18,680,100 | 1.6% | 72.1% |
LOAD_ATTR_INSTANCE_VALUE TO_BOOL_ALWAYS_TRUE | 18,467,460 | 1.6% | 73.7% |
TO_BOOL_ALWAYS_TRUE POP_JUMP_IF_FALSE | 18,467,460 | 1.6% | 75.3% |
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_METHOD_LAZY_DICT | 18,457,800 | 1.6% | 76.8% |
LOAD_ATTR_METHOD_LAZY_DICT LOAD_FAST | 18,457,620 | 1.6% | 78.4% |
LOAD_FAST CALL_METHOD_DESCRIPTOR_FAST | 18,440,700 | 1.6% | 79.9% |
CALL_LEN LOAD_FAST | 18,432,180 | 1.6% | 81.5% |
LOAD_FAST COMPARE_OP_INT | 18,432,000 | 1.6% | 83.1% |
RETURN_VALUE LOAD_CONST | 17,548,800 | 1.5% | 84.5% |
LOAD_ATTR_INSTANCE_VALUE LOAD_FAST | 13,601,220 | 1.1% | 85.7% |
POP_TOP RETURN_CONST | 11,821,460 | 1.0% | 86.7% |
CALL_BUILTIN_O POP_TOP | 11,673,960 | 1.0% | 87.7% |
LOAD_CONST CALL_BOUND_METHOD_EXACT_ARGS | 11,596,800 | 1.0% | 88.7% |
BINARY_SUBSCR STORE_FAST | 10,214,400 | 0.9% | 89.5% |
LOAD_ATTR_INSTANCE_VALUE STORE_FAST | 7,997,220 | 0.7% | 90.2% |
LOAD_FAST LOAD_GLOBAL_BUILTIN | 7,683,280 | 0.6% | 90.8% |
BINARY_SUBSCR LOAD_FAST | 7,603,200 | 0.6% | 91.5% |
STORE_SUBSCR_DICT RETURN_CONST | 7,576,560 | 0.6% | 92.1% |
CALL_LEN STORE_SUBSCR_DICT | 7,564,800 | 0.6% | 92.8% |
LOAD_CONST CALL_BUILTIN_CLASS | 7,257,600 | 0.6% | 93.4% |
LOAD_CONST LOAD_CONST | 7,228,260 | 0.6% | 94.0% |
LOAD_FAST CALL_BOUND_METHOD_EXACT_ARGS | 7,180,800 | 0.6% | 94.6% |
LOAD_ATTR_INSTANCE_VALUE LOAD_GLOBAL_BUILTIN | 7,113,120 | 0.6% | 95.2% |
CALL_BUILTIN_CLASS CALL_BUILTIN_O | 7,104,000 | 0.6% | 95.8% |
NOP LOAD_FAST | 2,850,240 | 0.2% | 96.0% |
STORE_FAST NOP | 2,842,080 | 0.2% | 96.3% |
LOAD_FAST STORE_ATTR_INSTANCE_VALUE | 2,695,940 | 0.2% | 96.5% |
LOAD_FAST BINARY_SUBSCR_DICT | 2,649,640 | 0.2% | 96.7% |
BINARY_SUBSCR_DICT CALL_BUILTIN_O | 2,611,200 | 0.2% | 97.0% |
STORE_ATTR_INSTANCE_VALUE LOAD_FAST | 1,613,520 | 0.1% | 97.1% |
LOAD_CONST LOAD_FAST | 1,559,000 | 0.1% | 97.2% |
LOAD_ATTR LOAD_FAST | 1,267,740 | 0.1% | 97.3% |
LOAD_GLOBAL_MODULE LOAD_CONST | 1,051,980 | 0.1% | 97.4% |
RETURN_VALUE CALL_BUILTIN_FAST | 1,036,800 | 0.1% | 97.5% |
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR | 998,800 | 0.1% | 97.6% |
LOAD_ATTR_INSTANCE_VALUE LOAD_GLOBAL_MODULE | 971,660 | 0.1% | 97.7% |
LOAD_CONST BINARY_SUBSCR_TUPLE_INT | 925,660 | 0.1% | 97.7% |
BINARY_SUBSCR_TUPLE_INT CALL_BUILTIN_O | 921,600 | 0.1% | 97.8% |
CALL_BUILTIN_FAST LOAD_CONST | 921,600 | 0.1% | 97.9% |
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_METHOD_NO_DICT | 738,620 | 0.1% | 98.0% |
STORE_ATTR_INSTANCE_VALUE RETURN_CONST | 620,900 | 0.1% | 98.0% |
BINARY_SUBSCR CALL_BUILTIN_O | 537,600 | 0.0% | 98.1% |
BUILD_LIST LOAD_FAST | 537,600 | 0.0% | 98.1% |
LOAD_FAST CALL_BUILTIN_FAST | 514,400 | 0.0% | 98.2% |
LOAD_ATTR_METHOD_NO_DICT CALL_METHOD_DESCRIPTOR_FAST | 499,200 | 0.0% | 98.2% |
LOAD_FAST_LOAD_FAST STORE_ATTR_INSTANCE_VALUE | 472,360 | 0.0% | 98.2% |
LOAD_FAST LOAD_ATTR | 462,520 | 0.0% | 98.3% |
LOAD_ATTR_INSTANCE_VALUE TO_BOOL_NONE | 460,440 | 0.0% | 98.3% |
TO_BOOL_NONE POP_JUMP_IF_FALSE | 460,440 | 0.0% | 98.4% |
LOAD_GLOBAL_MODULE LOAD_ATTR_MODULE | 417,440 | 0.0% | 98.4% |
LOAD_FAST PUSH_NULL | 397,080 | 0.0% | 98.4% |
CALL_BUILTIN_FAST RETURN_VALUE | 384,000 | 0.0% | 98.5% |
LOAD_ATTR_METHOD_WITH_VALUES CALL_PY_EXACT_ARGS | 378,660 | 0.0% | 98.5% |
POP_JUMP_IF_FALSE LOAD_GLOBAL_MODULE | 353,300 | 0.0% | 98.5% |
STORE_ATTR_INSTANCE_VALUE LOAD_FAST_LOAD_FAST | 351,200 | 0.0% | 98.5% |
LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES | 339,360 | 0.0% | 98.6% |
LOAD_FAST LOAD_CONST | 334,520 | 0.0% | 98.6% |
LOAD_ATTR_METHOD_NO_DICT LOAD_FAST | 277,620 | 0.0% | 98.6% |
CALL_LIST_APPEND BUILD_LIST | 268,800 | 0.0% | 98.7% |
CALL_METHOD_DESCRIPTOR_FAST LOAD_FAST | 268,800 | 0.0% | 98.7% |
LOAD_ATTR_INSTANCE_VALUE CALL_LIST_APPEND | 268,800 | 0.0% | 98.7% |
LOAD_ATTR_MODULE PUSH_NULL | 264,060 | 0.0% | 98.7% |
LOAD_GLOBAL_MODULE LOAD_FAST | 263,640 | 0.0% | 98.7% |
LOAD_FAST_LOAD_FAST LOAD_FAST | 263,340 | 0.0% | 98.8% |
ENTER_EXECUTOR RETURN_CONST | 263,320 | 0.0% | 98.8% |
RESUME_CHECK LOAD_GLOBAL_BUILTIN | 257,620 | 0.0% | 98.8% |
CALL_PY_EXACT_ARGS CALL_PY_EXACT_ARGS | 248,740 | 0.0% | 98.8% |
STORE_ATTR_INSTANCE_VALUE LOAD_CONST | 236,360 | 0.0% | 98.8% |
CACHE RESUME_CHECK | 230,700 | 0.0% | 98.9% |
RETURN_CONST INTERPRETER_EXIT | 230,640 | 0.0% | 98.9% |
STORE_ATTR_INSTANCE_VALUE BUILD_LIST | 230,400 | 0.0% | 98.9% |
Top 5 predecessors and successors of each Tier 1 opcode.
This does not include the unspecialized instructions that occur after a specialized instruction deoptimizes.
Successors and predecessors for CACHE
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 230,700 | 100.0% |
Successors and predecessors for BINARY_SUBSCR
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 38,553,620 | 100.0% |
BINARY_SUBSCR | 9,640 | 0.0% |
LOAD_FAST | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_DICT | 20,121,620 | 52.2% |
STORE_FAST | 10,214,400 | 26.5% |
LOAD_FAST | 7,603,200 | 19.7% |
CALL_BUILTIN_O | 537,600 | 1.4% |
BUILD_TUPLE | 76,800 | 0.2% |
Successors and predecessors for CHECK_EXC_MATCH
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 115,200 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 115,200 | 100.0% |
Successors and predecessors for EXIT_INIT_CHECK
Predecessors | Count | Percentage |
---|---|---|
RETURN_CONST | 115,380 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 115,380 | 100.0% |
Successors and predecessors for GET_ITER
Predecessors | Count | Percentage |
---|---|---|
CALL_BUILTIN_CLASS | 153,900 | 99.7% |
LOAD_FAST | 420 | 0.3% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER_RANGE | 153,660 | 99.6% |
FOR_ITER | 300 | 0.2% |
FOR_ITER_LIST | 300 | 0.2% |
FOR_ITER_TUPLE | 60 | 0.0% |
Successors and predecessors for INTERPRETER_EXIT
Predecessors | Count | Percentage |
---|---|---|
RETURN_CONST | 230,640 | 100.0% |
Successors and predecessors for MAKE_FUNCTION
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
SET_FUNCTION_ATTRIBUTE | 60 | 100.0% |
Successors and predecessors for NOP
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 2,842,080 | 95.8% |
NOP | 115,200 | 3.9% |
POP_TOP | 7,980 | 0.3% |
STORE_FAST_STORE_FAST | 360 | 0.0% |
STORE_ATTR_INSTANCE_VALUE | 180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 2,850,240 | 96.1% |
NOP | 115,200 | 3.9% |
LOAD_GLOBAL_BUILTIN | 500 | 0.0% |
LOAD_GLOBAL | 60 | 0.0% |
LOAD_GLOBAL_MODULE | 40 | 0.0% |
Successors and predecessors for POP_EXCEPT
Predecessors | Count | Percentage |
---|---|---|
SWAP | 115,200 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST | 115,200 | 100.0% |
Successors and predecessors for POP_TOP
Predecessors | Count | Percentage |
---|---|---|
RETURN_CONST | 20,175,920 | 62.9% |
CALL_BUILTIN_O | 11,673,960 | 36.4% |
RETURN_VALUE | 141,120 | 0.4% |
CALL_KW_NON_PY | 38,460 | 0.1% |
CALL_BUILTIN_FAST | 38,400 | 0.1% |
Successors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 20,022,480 | 62.4% |
RETURN_CONST | 11,821,460 | 36.9% |
LOAD_FAST | 198,060 | 0.6% |
LOAD_FAST_LOAD_FAST | 9,120 | 0.0% |
EXTENDED_ARG | 8,400 | 0.0% |
Successors and predecessors for PUSH_EXC_INFO
Predecessors | Count | Percentage |
---|---|---|
RAISE_VARARGS | 115,200 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 115,200 | 100.0% |
Successors and predecessors for PUSH_NULL
Predecessors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_DICT | 20,121,600 | 96.8% |
LOAD_FAST | 397,080 | 1.9% |
LOAD_ATTR_MODULE | 264,060 | 1.3% |
LOAD_ATTR | 120 | 0.0% |
LOAD_DEREF | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 20,618,460 | 99.2% |
LOAD_CONST | 153,600 | 0.7% |
LOAD_FAST_LOAD_FAST | 8,760 | 0.0% |
LOAD_GLOBAL_MODULE | 1,220 | 0.0% |
CALL_NON_PY_GENERAL | 700 | 0.0% |
Successors and predecessors for RETURN_VALUE
Predecessors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 20,006,400 | 50.6% |
LOAD_FAST | 18,701,220 | 47.3% |
CALL_BUILTIN_FAST | 384,000 | 1.0% |
EXIT_INIT_CHECK | 115,380 | 0.3% |
RETURN_VALUE | 115,260 | 0.3% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 20,429,220 | 51.7% |
LOAD_CONST | 17,548,800 | 44.4% |
CALL_BUILTIN_FAST | 1,036,800 | 2.6% |
POP_TOP | 141,120 | 0.4% |
LOAD_FAST | 115,440 | 0.3% |
Successors and predecessors for STORE_SUBSCR
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 115,200 | 99.9% |
STORE_SUBSCR | 120 | 0.1% |
Successors | Count | Percentage |
---|---|---|
RETURN_CONST | 115,200 | 99.9% |
STORE_SUBSCR | 120 | 0.1% |
Successors and predecessors for TO_BOOL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 38,553,740 | 100.0% |
TO_BOOL | 9,460 | 0.0% |
CALL_ISINSTANCE | 60 | 0.0% |
LOAD_ATTR_INSTANCE_VALUE | 60 | 0.0% |
CALL_BUILTIN_FAST | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 38,553,720 | 100.0% |
TO_BOOL | 9,460 | 0.0% |
TO_BOOL_BOOL | 120 | 0.0% |
POP_JUMP_IF_FALSE | 60 | 0.0% |
Successors and predecessors for BINARY_OP
Predecessors | Count | Percentage |
---|---|---|
CALL_BUILTIN_FAST | 15,180 | 62.8% |
LOAD_FAST | 8,540 | 35.3% |
BINARY_OP | 360 | 1.5% |
LOAD_CONST | 80 | 0.3% |
Successors | Count | Percentage |
---|---|---|
CALL_BOUND_METHOD_EXACT_ARGS | 10,940 | 45.3% |
LOAD_FAST | 8,520 | 35.3% |
RETURN_VALUE | 4,020 | 16.6% |
BINARY_OP | 360 | 1.5% |
CALL_BUILTIN_O | 180 | 0.7% |
Successors and predecessors for BUILD_LIST
Predecessors | Count | Percentage |
---|---|---|
CALL_LIST_APPEND | 268,800 | 41.2% |
STORE_ATTR_INSTANCE_VALUE | 230,400 | 35.3% |
LOAD_ATTR_INSTANCE_VALUE | 115,200 | 17.6% |
BUILD_TUPLE | 38,400 | 5.9% |
LOAD_FAST | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 537,600 | 82.3% |
CALL_BUILTIN_O | 115,200 | 17.6% |
LOAD_DEREF | 60 | 0.0% |
Successors and predecessors for BUILD_MAP
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 153,600 | 57.1% |
STORE_ATTR_INSTANCE_VALUE | 115,380 | 42.9% |
LOAD_FAST | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_BUILTIN_O | 153,600 | 57.1% |
LOAD_FAST | 115,380 | 42.9% |
CALL_FUNCTION_EX | 60 | 0.0% |
Successors and predecessors for BUILD_TUPLE
Predecessors | Count | Percentage |
---|---|---|
BINARY_SUBSCR | 76,800 | 89.1% |
LOAD_FAST_LOAD_FAST | 9,240 | 10.7% |
LOAD_FAST | 120 | 0.1% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 47,520 | 55.2% |
BUILD_LIST | 38,400 | 44.6% |
LOAD_CONST | 60 | 0.1% |
STORE_FAST | 60 | 0.1% |
CALL_METHOD_DESCRIPTOR_O | 40 | 0.0% |
Successors and predecessors for CALL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 360 | 31.6% |
LOAD_CONST | 160 | 14.0% |
LOAD_FAST_LOAD_FAST | 120 | 10.5% |
LOAD_GLOBAL_MODULE | 120 | 10.5% |
LOAD_GLOBAL_BUILTIN | 100 | 8.8% |
Successors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 220 | 19.3% |
CALL_BUILTIN_FAST | 200 | 17.5% |
CALL_PY_GENERAL | 140 | 12.3% |
CALL_NON_PY_GENERAL | 100 | 8.8% |
CALL_BOUND_METHOD_EXACT_ARGS | 80 | 7.0% |
Successors and predecessors for CALL_FUNCTION_EX
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 38,460 | 99.7% |
BUILD_MAP | 60 | 0.2% |
CALL_INTRINSIC_1 | 60 | 0.2% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 38,400 | 99.7% |
POP_TOP | 60 | 0.2% |
RESUME_CHECK | 60 | 0.2% |
Successors and predecessors for CALL_INTRINSIC_1
Predecessors | Count | Percentage |
---|---|---|
LIST_EXTEND | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
CALL_FUNCTION_EX | 60 | 100.0% |
Successors and predecessors for CALL_KW
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 40 | 100.0% |
Successors | Count | Percentage |
---|---|---|
CALL_KW_NON_PY | 40 | 100.0% |
Successors and predecessors for COMPARE_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_MODULE | 115,200 | 97.0% |
LOAD_CONST | 1,860 | 1.6% |
COPY | 1,520 | 1.3% |
COMPARE_OP | 160 | 0.1% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 118,320 | 99.6% |
COMPARE_OP_INT | 220 | 0.2% |
COMPARE_OP | 160 | 0.1% |
COMPARE_OP_STR | 40 | 0.0% |
Successors and predecessors for CONTAINS_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 38,460 | 99.8% |
CONTAINS_OP | 60 | 0.2% |
LOAD_ATTR_INSTANCE_VALUE | 20 | 0.1% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 38,460 | 99.8% |
CONTAINS_OP | 60 | 0.2% |
CONTAINS_OP_DICT | 20 | 0.1% |
Successors and predecessors for COPY
Predecessors | Count | Percentage |
---|---|---|
SWAP | 116,940 | 99.8% |
LOAD_FAST | 180 | 0.2% |
Successors | Count | Percentage |
---|---|---|
COMPARE_OP_INT | 115,420 | 98.5% |
COMPARE_OP | 1,520 | 1.3% |
TO_BOOL_BOOL | 180 | 0.2% |
Successors and predecessors for COPY_FREE_VARS
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 60 | 100.0% |
Successors and predecessors for DELETE_FAST
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 115,200 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 115,200 | 100.0% |
Successors and predecessors for EXTENDED_ARG
Predecessors | Count | Percentage |
---|---|---|
POP_TOP | 8,400 | 100.0% |
Successors | Count | Percentage |
---|---|---|
JUMP_FORWARD | 8,400 | 100.0% |
Successors and predecessors for FOR_ITER
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 300 | 51.7% |
JUMP_BACKWARD | 240 | 41.4% |
FOR_ITER | 40 | 6.9% |
Successors | Count | Percentage |
---|---|---|
UNPACK_SEQUENCE_TWO_TUPLE | 360 | 62.1% |
LOAD_GLOBAL_BUILTIN | 120 | 20.7% |
LOAD_FAST | 60 | 10.3% |
FOR_ITER | 40 | 6.9% |
Successors and predecessors for IS_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_BUILTIN | 85,500 | 90.3% |
LOAD_GLOBAL_MODULE | 8,880 | 9.4% |
CALL_TYPE_1 | 180 | 0.2% |
LOAD_CONST | 60 | 0.1% |
LOAD_FAST | 60 | 0.1% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 56,220 | 59.4% |
POP_JUMP_IF_TRUE | 38,400 | 40.6% |
STORE_FAST | 60 | 0.1% |
Successors and predecessors for JUMP_BACKWARD
Predecessors | Count | Percentage |
---|---|---|
POP_TOP | 360 | 85.7% |
STORE_FAST | 60 | 14.3% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER | 240 | 57.1% |
CALL_BUILTIN_O | 60 | 14.3% |
CALL_PY_EXACT_ARGS | 60 | 14.3% |
FOR_ITER_LIST | 60 | 14.3% |
Successors and predecessors for JUMP_FORWARD
Predecessors | Count | Percentage |
---|---|---|
EXTENDED_ARG | 8,400 | 77.3% |
POP_JUMP_IF_FALSE | 1,440 | 13.3% |
POP_TOP | 900 | 8.3% |
STORE_FAST | 120 | 1.1% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 10,380 | 95.6% |
LOAD_FAST_LOAD_FAST | 420 | 3.9% |
LOAD_GLOBAL_BUILTIN | 40 | 0.4% |
LOAD_GLOBAL | 20 | 0.2% |
Successors and predecessors for LIST_EXTEND
Predecessors | Count | Percentage |
---|---|---|
LOAD_DEREF | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
CALL_INTRINSIC_1 | 60 | 100.0% |
Successors and predecessors for LOAD_ATTR
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 998,800 | 66.5% |
LOAD_FAST | 462,520 | 30.8% |
LOAD_GLOBAL_BUILTIN | 38,400 | 2.6% |
LOAD_ATTR | 3,020 | 0.2% |
LOAD_GLOBAL_MODULE | 160 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 1,267,740 | 84.4% |
STORE_FAST | 115,800 | 7.7% |
SWAP | 115,200 | 7.7% |
LOAD_ATTR | 3,020 | 0.2% |
LOAD_ATTR_INSTANCE_VALUE | 340 | 0.0% |
Successors and predecessors for LOAD_CONST
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 20,384,700 | 29.9% |
LOAD_ATTR_INSTANCE_VALUE | 19,602,420 | 28.8% |
RETURN_VALUE | 17,548,800 | 25.7% |
LOAD_CONST | 7,228,260 | 10.6% |
LOAD_GLOBAL_MODULE | 1,051,980 | 1.5% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR | 38,553,620 | 56.6% |
CALL_BOUND_METHOD_EXACT_ARGS | 11,596,800 | 17.0% |
CALL_BUILTIN_CLASS | 7,257,600 | 10.6% |
LOAD_CONST | 7,228,260 | 10.6% |
LOAD_FAST | 1,559,000 | 2.3% |
Successors and predecessors for LOAD_DEREF
Predecessors | Count | Percentage |
---|---|---|
BUILD_LIST | 60 | 50.0% |
RESUME_CHECK | 60 | 50.0% |
Successors | Count | Percentage |
---|---|---|
PUSH_NULL | 60 | 50.0% |
LIST_EXTEND | 60 | 50.0% |
Successors and predecessors for LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 54,563,400 | 19.9% |
LOAD_GLOBAL_BUILTIN | 53,775,360 | 19.6% |
RESUME_CHECK | 39,361,660 | 14.4% |
POP_JUMP_IF_FALSE | 37,445,220 | 13.7% |
PUSH_NULL | 20,618,460 | 7.5% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 89,223,200 | 32.6% |
TO_BOOL | 38,553,740 | 14.1% |
CALL_LEN | 26,159,820 | 9.6% |
CALL_PY_EXACT_ARGS | 20,302,820 | 7.4% |
LOAD_GLOBAL_MODULE | 20,245,840 | 7.4% |
Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 20,236,800 | 94.9% |
STORE_ATTR_INSTANCE_VALUE | 351,200 | 1.6% |
STORE_FAST | 153,660 | 0.7% |
BINARY_SUBSCR_LIST_INT | 153,600 | 0.7% |
RESUME_CHECK | 120,980 | 0.6% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST | 20,384,700 | 95.6% |
STORE_ATTR_INSTANCE_VALUE | 472,360 | 2.2% |
LOAD_FAST | 263,340 | 1.2% |
STORE_ATTR | 115,200 | 0.5% |
CALL_PY_EXACT_ARGS | 47,380 | 0.2% |
Successors and predecessors for LOAD_GLOBAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 220 | 21.6% |
STORE_FAST | 140 | 13.7% |
PUSH_NULL | 100 | 9.8% |
POP_JUMP_IF_FALSE | 80 | 7.8% |
NOP | 60 | 5.9% |
Successors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 520 | 51.0% |
LOAD_GLOBAL_BUILTIN | 500 | 49.0% |
Successors and predecessors for MAKE_CELL
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_GENERAL | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 60 | 100.0% |
Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors | Count | Percentage |
---|---|---|
COMPARE_OP_INT | 18,700,220 | 49.1% |
TO_BOOL_ALWAYS_TRUE | 18,467,460 | 48.5% |
TO_BOOL_NONE | 460,440 | 1.2% |
TO_BOOL_BOOL | 133,720 | 0.4% |
COMPARE_OP | 118,320 | 0.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 37,445,220 | 98.3% |
LOAD_GLOBAL_MODULE | 353,300 | 0.9% |
LOAD_GLOBAL_BUILTIN | 133,220 | 0.3% |
STORE_FAST | 115,200 | 0.3% |
LOAD_CONST | 41,640 | 0.1% |
Successors and predecessors for POP_JUMP_IF_NONE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 142,200 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST | 115,200 | 81.0% |
LOAD_FAST | 17,940 | 12.6% |
LOAD_GLOBAL_BUILTIN | 8,780 | 6.2% |
LOAD_FAST_LOAD_FAST | 180 | 0.1% |
RETURN_CONST | 60 | 0.0% |
Successors and predecessors for POP_JUMP_IF_NOT_NONE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 420 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 180 | 42.9% |
NOP | 60 | 14.3% |
LOAD_CONST | 60 | 14.3% |
LOAD_GLOBAL | 40 | 9.5% |
LOAD_GLOBAL_BUILTIN | 40 | 9.5% |
Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors | Count | Percentage |
---|---|---|
TO_BOOL | 38,553,720 | 65.4% |
TO_BOOL_BOOL | 20,232,120 | 34.3% |
COMPARE_OP_INT | 124,860 | 0.2% |
IS_OP | 38,400 | 0.1% |
CONTAINS_OP_DICT | 9,120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_BUILTIN | 38,563,380 | 65.4% |
LOAD_FAST_LOAD_FAST | 20,236,800 | 34.3% |
LOAD_GLOBAL_MODULE | 109,500 | 0.2% |
LOAD_FAST | 48,180 | 0.1% |
RETURN_CONST | 240 | 0.0% |
Successors and predecessors for RAISE_VARARGS
Predecessors | Count | Percentage |
---|---|---|
CALL_NON_PY_GENERAL | 115,200 | 100.0% |
Successors | Count | Percentage |
---|---|---|
PUSH_EXC_INFO | 115,200 | 100.0% |
Successors and predecessors for RETURN_CONST
Predecessors | Count | Percentage |
---|---|---|
POP_TOP | 11,821,460 | 57.6% |
STORE_SUBSCR_DICT | 7,576,560 | 36.9% |
STORE_ATTR_INSTANCE_VALUE | 620,900 | 3.0% |
ENTER_EXECUTOR | 263,320 | 1.3% |
STORE_SUBSCR | 115,200 | 0.6% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 20,175,920 | 98.3% |
INTERPRETER_EXIT | 230,640 | 1.1% |
EXIT_INIT_CHECK | 115,380 | 0.6% |
STORE_FAST | 9,000 | 0.0% |
RETURN_VALUE | 60 | 0.0% |
Successors and predecessors for SET_FUNCTION_ATTRIBUTE
Predecessors | Count | Percentage |
---|---|---|
MAKE_FUNCTION | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 60 | 100.0% |
Successors and predecessors for STORE_ATTR
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 115,200 | 100.0% |
STORE_ATTR | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_CONST | 115,200 | 100.0% |
STORE_ATTR | 40 | 0.0% |
Successors and predecessors for STORE_DEREF
Predecessors | Count | Percentage |
---|---|---|
CALL_NON_PY_GENERAL | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 60 | 100.0% |
Successors and predecessors for STORE_FAST
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 20,429,220 | 35.1% |
CALL_METHOD_DESCRIPTOR_FAST | 18,680,100 | 32.1% |
BINARY_SUBSCR | 10,214,400 | 17.5% |
LOAD_ATTR_INSTANCE_VALUE | 7,997,220 | 13.7% |
FOR_ITER_RANGE | 153,660 | 0.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 54,563,400 | 93.7% |
NOP | 2,842,080 | 4.9% |
LOAD_GLOBAL_MODULE | 224,960 | 0.4% |
LOAD_GLOBAL_BUILTIN | 210,080 | 0.4% |
LOAD_FAST_LOAD_FAST | 153,660 | 0.3% |
Successors and predecessors for STORE_FAST_STORE_FAST
Predecessors | Count | Percentage |
---|---|---|
UNPACK_SEQUENCE_TWO_TUPLE | 660 | 100.0% |
Successors | Count | Percentage |
---|---|---|
NOP | 360 | 54.5% |
LOAD_FAST | 300 | 45.5% |
Successors and predecessors for SWAP
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 116,940 | 50.4% |
LOAD_ATTR | 115,200 | 49.6% |
Successors | Count | Percentage |
---|---|---|
COPY | 116,940 | 50.4% |
POP_EXCEPT | 115,200 | 49.6% |
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% |
Successors and predecessors for BINARY_OP_ADD_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 153,640 | 100.0% |
BINARY_OP | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_LIST_INT | 153,600 | 100.0% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for BINARY_OP_SUBTRACT_FLOAT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 40 | 66.7% |
BINARY_OP | 20 | 33.3% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 60 | 100.0% |
Successors and predecessors for BINARY_SUBSCR_DICT
Predecessors | Count | Percentage |
---|---|---|
BINARY_SUBSCR | 20,121,620 | 88.4% |
LOAD_FAST | 2,649,640 | 11.6% |
Successors | Count | Percentage |
---|---|---|
PUSH_NULL | 20,121,600 | 88.4% |
CALL_BUILTIN_O | 2,611,200 | 11.5% |
LOAD_FAST | 38,400 | 0.2% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for BINARY_SUBSCR_LIST_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 153,720 | 50.0% |
BINARY_OP_ADD_INT | 153,600 | 50.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 153,600 | 50.0% |
STORE_SUBSCR_DICT | 153,600 | 50.0% |
CALL_BOUND_METHOD_EXACT_ARGS | 120 | 0.0% |
Successors and predecessors for BINARY_SUBSCR_TUPLE_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 925,660 | 100.0% |
BINARY_SUBSCR | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_BUILTIN_O | 921,600 | 99.6% |
CALL_PY_EXACT_ARGS | 4,020 | 0.4% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for CALL_ALLOC_AND_ENTER_INIT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 109,680 | 100.0% |
Successors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 104,160 | 95.0% |
RESUME_CHECK | 5,520 | 5.0% |
Successors and predecessors for CALL_BOUND_METHOD_EXACT_ARGS
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 11,596,800 | 61.7% |
LOAD_FAST | 7,180,800 | 38.2% |
RETURN_VALUE | 13,140 | 0.1% |
BINARY_OP | 10,940 | 0.1% |
LOAD_GLOBAL_MODULE | 1,520 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 18,803,400 | 100.0% |
Successors and predecessors for CALL_BOUND_METHOD_GENERAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 8,600 | 99.5% |
CALL | 40 | 0.5% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 8,640 | 100.0% |
Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 7,257,600 | 100.0% |
CALL_NON_PY_GENERAL | 420 | 0.0% |
LOAD_FAST | 340 | 0.0% |
LOAD_FAST_LOAD_FAST | 180 | 0.0% |
CALL | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_BUILTIN_O | 7,104,000 | 97.9% |
GET_ITER | 153,900 | 2.1% |
STORE_FAST | 480 | 0.0% |
LOAD_FAST | 180 | 0.0% |
Successors and predecessors for CALL_BUILTIN_FAST
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 1,036,800 | 60.7% |
LOAD_FAST | 514,400 | 30.1% |
LOAD_CONST | 109,800 | 6.4% |
LOAD_FAST_LOAD_FAST | 38,440 | 2.2% |
LOAD_GLOBAL_MODULE | 8,820 | 0.5% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST | 921,600 | 53.9% |
RETURN_VALUE | 384,000 | 22.5% |
CALL_NON_PY_GENERAL | 115,200 | 6.7% |
UNPACK_SEQUENCE_TUPLE | 115,200 | 6.7% |
TO_BOOL_BOOL | 109,720 | 6.4% |
Successors and predecessors for CALL_BUILTIN_O
Predecessors | Count | Percentage |
---|---|---|
CALL_BUILTIN_CLASS | 7,104,000 | 60.7% |
BINARY_SUBSCR_DICT | 2,611,200 | 22.3% |
BINARY_SUBSCR_TUPLE_INT | 921,600 | 7.9% |
BINARY_SUBSCR | 537,600 | 4.6% |
BUILD_MAP | 153,600 | 1.3% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 11,673,960 | 99.7% |
STORE_SUBSCR_DICT | 11,760 | 0.1% |
LOAD_FAST | 9,300 | 0.1% |
CALL_METHOD_DESCRIPTOR_FAST | 8,940 | 0.1% |
RETURN_VALUE | 180 | 0.0% |
Successors and predecessors for CALL_ISINSTANCE
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 20,121,780 | 99.5% |
LOAD_GLOBAL_BUILTIN | 109,620 | 0.5% |
CALL | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
TO_BOOL_BOOL | 20,231,400 | 100.0% |
TO_BOOL | 60 | 0.0% |
Successors and predecessors for CALL_KW_NON_PY
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 186,560 | 100.0% |
CALL_KW | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_WITH_VALUES | 109,680 | 58.8% |
POP_TOP | 38,460 | 20.6% |
RETURN_VALUE | 38,400 | 20.6% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for CALL_KW_PY
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 180 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 180 | 100.0% |
Successors and predecessors for CALL_LEN
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 26,159,820 | 100.0% |
LOAD_ATTR_INSTANCE_VALUE | 9,120 | 0.0% |
CALL | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 18,432,180 | 70.4% |
STORE_SUBSCR_DICT | 7,564,800 | 28.9% |
LOAD_CONST | 153,600 | 0.6% |
STORE_FAST | 18,240 | 0.1% |
CALL_BUILTIN_FAST | 180 | 0.0% |
Successors and predecessors for CALL_LIST_APPEND
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 268,800 | 100.0% |
Successors | Count | Percentage |
---|---|---|
BUILD_LIST | 268,800 | 100.0% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 18,440,700 | 97.3% |
LOAD_ATTR_METHOD_NO_DICT | 499,200 | 2.6% |
CALL_BUILTIN_O | 8,940 | 0.0% |
LOAD_GLOBAL_MODULE | 40 | 0.0% |
CALL | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 18,680,100 | 98.6% |
LOAD_FAST | 268,800 | 1.4% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 8,440 | 99.8% |
CALL | 20 | 0.2% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 8,460 | 100.0% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_NOARGS
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_LAZY_DICT | 9,480 | 96.3% |
LOAD_ATTR_METHOD_NO_DICT | 320 | 3.3% |
CALL | 40 | 0.4% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 9,360 | 95.1% |
LOAD_CONST | 240 | 2.4% |
STORE_FAST | 180 | 1.8% |
UNPACK_SEQUENCE_TWO_TUPLE | 40 | 0.4% |
UNPACK_SEQUENCE | 20 | 0.2% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_O
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 25,620 | 99.8% |
BUILD_TUPLE | 40 | 0.2% |
CALL | 20 | 0.1% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 25,620 | 99.8% |
POP_TOP | 60 | 0.2% |
Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 224,700 | 65.8% |
CALL_BUILTIN_FAST | 115,200 | 33.7% |
PUSH_NULL | 700 | 0.2% |
LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES | 420 | 0.1% |
LOAD_ATTR_METHOD_LAZY_DICT | 180 | 0.1% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 115,620 | 33.9% |
RAISE_VARARGS | 115,200 | 33.7% |
STORE_FAST | 109,920 | 32.2% |
CALL_BUILTIN_CLASS | 420 | 0.1% |
POP_TOP | 60 | 0.0% |
Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 20,302,820 | 96.8% |
LOAD_ATTR_METHOD_WITH_VALUES | 378,660 | 1.8% |
CALL_PY_EXACT_ARGS | 248,740 | 1.2% |
LOAD_FAST_LOAD_FAST | 47,380 | 0.2% |
BINARY_SUBSCR_TUPLE_INT | 4,020 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 20,735,500 | 98.8% |
CALL_PY_EXACT_ARGS | 248,740 | 1.2% |
COPY_FREE_VARS | 60 | 0.0% |
Successors and predecessors for CALL_PY_GENERAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 109,800 | 92.2% |
LOAD_ATTR_METHOD_WITH_VALUES | 8,940 | 7.5% |
CALL | 140 | 0.1% |
LOAD_ATTR | 120 | 0.1% |
LOAD_CONST | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 118,980 | 99.9% |
MAKE_CELL | 60 | 0.1% |
Successors and predecessors for CALL_TYPE_1
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 85,500 | 99.8% |
LOAD_CONST | 80 | 0.1% |
CALL | 60 | 0.1% |
LOAD_GLOBAL_BUILTIN | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_BUILTIN | 76,800 | 89.6% |
STORE_FAST | 8,700 | 10.2% |
IS_OP | 180 | 0.2% |
Successors and predecessors for COMPARE_OP_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 18,432,000 | 97.9% |
LOAD_CONST | 152,700 | 0.8% |
COPY | 115,420 | 0.6% |
LOAD_GLOBAL_MODULE | 115,380 | 0.6% |
LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES | 9,720 | 0.1% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 18,700,220 | 99.3% |
POP_JUMP_IF_TRUE | 124,860 | 0.7% |
LOAD_FAST | 360 | 0.0% |
Successors and predecessors for COMPARE_OP_STR
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 80 | 66.7% |
COMPARE_OP | 40 | 33.3% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 120 | 100.0% |
Successors and predecessors for CONTAINS_OP_DICT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 9,160 | 98.5% |
LOAD_FAST | 120 | 1.3% |
CONTAINS_OP | 20 | 0.2% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 9,120 | 98.1% |
POP_JUMP_IF_FALSE | 180 | 1.9% |
Successors and predecessors for FOR_ITER_LIST
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 300 | 83.3% |
JUMP_BACKWARD | 60 | 16.7% |
Successors | Count | Percentage |
---|---|---|
UNPACK_SEQUENCE_TWO_TUPLE | 240 | 66.7% |
LOAD_FAST | 60 | 16.7% |
STORE_FAST | 60 | 16.7% |
Successors and predecessors for FOR_ITER_RANGE
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 153,660 | 100.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 153,660 | 100.0% |
Successors and predecessors for FOR_ITER_TUPLE
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 60 | 100.0% |
Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 89,223,200 | 100.0% |
LOAD_ATTR | 340 | 0.0% |
LOAD_FAST_LOAD_FAST | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST | 19,602,420 | 22.0% |
TO_BOOL_ALWAYS_TRUE | 18,467,460 | 20.7% |
LOAD_ATTR_METHOD_LAZY_DICT | 18,457,800 | 20.7% |
LOAD_FAST | 13,601,220 | 15.2% |
STORE_FAST | 7,997,220 | 9.0% |
Successors and predecessors for LOAD_ATTR_METHOD_LAZY_DICT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 18,457,800 | 99.9% |
LOAD_FAST | 9,480 | 0.1% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 18,457,620 | 99.9% |
CALL_METHOD_DESCRIPTOR_NOARGS | 9,480 | 0.1% |
CALL_NON_PY_GENERAL | 180 | 0.0% |
Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 738,620 | 93.0% |
LOAD_FAST | 47,160 | 5.9% |
LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES | 8,700 | 1.1% |
LOAD_ATTR | 120 | 0.0% |
CALL_BUILTIN_FAST | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_METHOD_DESCRIPTOR_FAST | 499,200 | 62.8% |
LOAD_FAST | 277,620 | 34.9% |
LOAD_GLOBAL_BUILTIN | 8,940 | 1.1% |
LOAD_CONST | 8,460 | 1.1% |
CALL_METHOD_DESCRIPTOR_NOARGS | 320 | 0.0% |
Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 339,360 | 59.2% |
LOAD_ATTR_INSTANCE_VALUE | 124,500 | 21.7% |
CALL_KW_NON_PY | 109,680 | 19.1% |
LOAD_ATTR | 180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 378,660 | 66.0% |
LOAD_FAST | 147,300 | 25.7% |
LOAD_FAST_LOAD_FAST | 38,640 | 6.7% |
CALL_PY_GENERAL | 8,940 | 1.6% |
LOAD_CONST | 180 | 0.0% |
Successors and predecessors for LOAD_ATTR_MODULE
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 417,440 | 99.9% |
LOAD_ATTR | 180 | 0.0% |
LOAD_FAST | 160 | 0.0% |
Successors | Count | Percentage |
---|---|---|
PUSH_NULL | 264,060 | 63.2% |
COMPARE_OP | 115,200 | 27.6% |
LOAD_FAST | 38,460 | 9.2% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 133,200 | 99.4% |
LOAD_FAST_LOAD_FAST | 840 | 0.6% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 115,200 | 85.9% |
COMPARE_OP_INT | 9,720 | 7.3% |
LOAD_ATTR_METHOD_NO_DICT | 8,700 | 6.5% |
CALL_NON_PY_GENERAL | 420 | 0.3% |
Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 38,563,380 | 71.1% |
LOAD_FAST | 7,683,280 | 14.2% |
LOAD_ATTR_INSTANCE_VALUE | 7,113,120 | 13.1% |
RESUME_CHECK | 257,620 | 0.5% |
STORE_FAST | 210,080 | 0.4% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 53,775,360 | 99.2% |
LOAD_CONST | 153,720 | 0.3% |
CALL_ISINSTANCE | 109,620 | 0.2% |
IS_OP | 85,500 | 0.2% |
LOAD_GLOBAL_MODULE | 38,820 | 0.1% |
Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 20,245,840 | 91.0% |
LOAD_ATTR_INSTANCE_VALUE | 971,660 | 4.4% |
POP_JUMP_IF_FALSE | 353,300 | 1.6% |
STORE_FAST | 224,960 | 1.0% |
RESUME_CHECK | 154,040 | 0.7% |
Successors | Count | Percentage |
---|---|---|
CALL_ISINSTANCE | 20,121,780 | 90.5% |
LOAD_CONST | 1,051,980 | 4.7% |
LOAD_ATTR_MODULE | 417,440 | 1.9% |
LOAD_FAST | 263,640 | 1.2% |
COMPARE_OP_INT | 115,380 | 0.5% |
Successors and predecessors for RESUME_CHECK
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 20,735,500 | 52.0% |
CALL_BOUND_METHOD_EXACT_ARGS | 18,803,400 | 47.1% |
CACHE | 230,700 | 0.6% |
CALL_PY_GENERAL | 118,980 | 0.3% |
CALL_BOUND_METHOD_GENERAL | 8,640 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 39,361,660 | 98.6% |
LOAD_GLOBAL_BUILTIN | 257,620 | 0.6% |
LOAD_GLOBAL_MODULE | 154,040 | 0.4% |
LOAD_FAST_LOAD_FAST | 120,980 | 0.3% |
RETURN_CONST | 8,940 | 0.0% |
Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 2,695,940 | 85.1% |
LOAD_FAST_LOAD_FAST | 472,360 | 14.9% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 1,613,520 | 50.9% |
RETURN_CONST | 620,900 | 19.6% |
LOAD_FAST_LOAD_FAST | 351,200 | 11.1% |
LOAD_CONST | 236,360 | 7.5% |
BUILD_LIST | 230,400 | 7.3% |
Successors and predecessors for STORE_SUBSCR_DICT
Predecessors | Count | Percentage |
---|---|---|
CALL_LEN | 7,564,800 | 97.9% |
BINARY_SUBSCR_LIST_INT | 153,600 | 2.0% |
CALL_BUILTIN_O | 11,760 | 0.2% |
Successors | Count | Percentage |
---|---|---|
RETURN_CONST | 7,576,560 | 98.0% |
ENTER_EXECUTOR | 153,600 | 2.0% |
Successors and predecessors for TO_BOOL_ALWAYS_TRUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 18,467,460 | 100.0% |
TO_BOOL_NONE | 6,180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 18,467,460 | 100.0% |
TO_BOOL_NONE | 6,180 | 0.0% |
Successors and predecessors for TO_BOOL_BOOL
Predecessors | Count | Percentage |
---|---|---|
CALL_ISINSTANCE | 20,231,400 | 99.3% |
CALL_BUILTIN_FAST | 109,720 | 0.5% |
LOAD_ATTR_INSTANCE_VALUE | 15,220 | 0.1% |
LOAD_FAST | 9,160 | 0.0% |
COPY | 180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 20,232,120 | 99.3% |
POP_JUMP_IF_FALSE | 133,720 | 0.7% |
Successors and predecessors for TO_BOOL_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 9,120 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 9,120 | 100.0% |
Successors and predecessors for TO_BOOL_NONE
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 460,440 | 98.7% |
TO_BOOL_ALWAYS_TRUE | 6,180 | 1.3% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 460,440 | 98.7% |
TO_BOOL_ALWAYS_TRUE | 6,180 | 1.3% |
Successors and predecessors for UNPACK_SEQUENCE_TUPLE
Predecessors | Count | Percentage |
---|---|---|
CALL_BUILTIN_FAST | 115,200 | 100.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 115,200 | 100.0% |
Successors and predecessors for UNPACK_SEQUENCE_TWO_TUPLE
Predecessors | Count | Percentage |
---|---|---|
FOR_ITER | 360 | 54.5% |
FOR_ITER_LIST | 240 | 36.4% |
CALL_METHOD_DESCRIPTOR_NOARGS | 40 | 6.1% |
UNPACK_SEQUENCE | 20 | 3.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST_STORE_FAST | 660 | 100.0% |
Successors and predecessors for ENTER_EXECUTOR
Predecessors | Count | Percentage |
---|---|---|
POP_TOP | 20,022,480 | 98.7% |
STORE_SUBSCR_DICT | 153,600 | 0.8% |
CALL_ALLOC_AND_ENTER_INIT | 104,160 | 0.5% |
ENTER_EXECUTOR | 1,200 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 20,006,400 | 98.6% |
RETURN_CONST | 263,320 | 1.3% |
LOAD_FAST | 4,160 | 0.0% |
CALL_BUILTIN_O | 2,580 | 0.0% |
CALL_PY_EXACT_ARGS | 2,320 | 0.0% |
Specialization stats by family
specialization stats for BINARY_OP family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
23,760 | 0.5% |
hit
ⓘSpecialized instructions that complete. |
5,068,920 | 99.5% |
Success | Count | Ratio |
---|---|---|
Success | 40 | 10.0% |
Failure | 360 | 90.0% |
Failure kind | Count | Ratio |
---|---|---|
add other | 340 | 94.4% |
rshift | 20 | 5.6% |
specialization stats for BINARY_SUBSCR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
38,553,600 | 53.3% |
hit
ⓘSpecialized instructions that complete. |
33,834,720 | 46.7% |
Success | Count | Ratio |
---|---|---|
Success | 40 | 0.4% |
Failure | 9,640 | 99.6% |
Failure kind | Count | Ratio |
---|---|---|
buffer int | 7,540 | 78.2% |
out of range | 2,100 | 21.8% |
specialization stats for CALL family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
211,963,160 | 94.1% |
miss
ⓘSpecialized instructions that deopt. |
13,182,440 | 5.9% |
Success | Count | Ratio |
---|---|---|
Success | 249,920 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for CALL_KW family
specialization stats for COMPARE_OP family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
118,320 | 0.3% |
hit
ⓘSpecialized instructions that complete. |
38,734,440 | 99.7% |
miss
ⓘSpecialized instructions that deopt. |
540 | 0.0% |
Success | Count | Ratio |
---|---|---|
Success | 260 | 61.9% |
Failure | 160 | 38.1% |
Failure kind | Count | Ratio |
---|---|---|
big int | 160 | 100.0% |
specialization stats for CONTAINS_OP family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
38,460 | 76.1% |
hit
ⓘSpecialized instructions that complete. |
12,000 | 23.7% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 25.0% |
Failure | 60 | 75.0% |
Failure kind | Count | Ratio |
---|---|---|
str | 40 | 66.7% |
list | 20 | 33.3% |
specialization stats for FOR_ITER family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
540 | 0.3% |
hit
ⓘSpecialized instructions that complete. |
154,080 | 99.6% |
Success | Count | Ratio |
---|---|---|
Success | 0 | 0.0% |
Failure | 40 | 100.0% |
Failure kind | Count | Ratio |
---|---|---|
enumerate | 40 | 100.0% |
specialization stats for LOAD_ATTR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
1,499,100 | 0.9% |
hit
ⓘSpecialized instructions that complete. |
169,676,100 | 99.1% |
Success | Count | Ratio |
---|---|---|
Success | 3,100 | 80.7% |
Failure | 740 | 19.3% |
Failure kind | Count | Ratio |
---|---|---|
method | 680 | 91.9% |
builtin class method | 40 | 5.4% |
specialization stats for LOAD_GLOBAL family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
76,450,140 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 1,020 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for STORE_ATTR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
115,200 | 3.2% |
hit
ⓘSpecialized instructions that complete. |
3,497,100 | 96.8% |
Success | Count | Ratio |
---|---|---|
Success | 0 | 0.0% |
Failure | 40 | 100.0% |
Failure kind | Count | Ratio |
---|---|---|
not managed dict | 40 | 100.0% |
specialization stats for STORE_SUBSCR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
115,200 | 0.9% |
hit
ⓘSpecialized instructions that complete. |
12,645,420 | 99.1% |
Success | Count | Ratio |
---|---|---|
Success | 0 | 0.0% |
Failure | 120 | 100.0% |
Failure kind | Count | Ratio |
---|---|---|
out of range | 80 | 66.7% |
list slice | 40 | 33.3% |
specialization stats for TO_BOOL family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
38,553,780 | 64.4% |
hit
ⓘSpecialized instructions that complete. |
20,655,780 | 34.5% |
miss
ⓘSpecialized instructions that deopt. |
655,620 | 1.1% |
Success | Count | Ratio |
---|---|---|
Success | 12,480 | 56.9% |
Failure | 9,460 | 43.1% |
Failure kind | Count | Ratio |
---|---|---|
bytes | 9,420 | 99.6% |
sequence | 20 | 0.2% |
tuple | 20 | 0.2% |
specialization stats for UNPACK_SEQUENCE family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
125,160 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 100.0% |
Failure | 0 | 0.0% |
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. |
657,381,380 | 55.6% |
Not specialized
ⓘInstructions that could be specialized but aren't, e.g. |
79,044,380 | 6.7% |
Specialized hits
ⓘSpecialized instructions, e.g. |
432,575,080 | 36.6% |
Specialized misses
ⓘSpecialized instructions, e.g. |
13,838,600 | 1.2% |
Breakdown of deferred (not specialized) instruction counts by family
Name | Count | Ratio |
---|---|---|
TO_BOOL | 38,553,780 | 48.8% |
BINARY_SUBSCR | 38,553,600 | 48.8% |
LOAD_ATTR | 1,499,100 | 1.9% |
COMPARE_OP | 118,320 | 0.1% |
STORE_SUBSCR | 115,200 | 0.1% |
STORE_ATTR | 115,200 | 0.1% |
CONTAINS_OP | 38,460 | 0.0% |
BINARY_OP | 23,760 | 0.0% |
FOR_ITER | 540 | 0.0% |
BINARY_SLICE | 0 | 0.0% |
Breakdown of misses (specialized deopts) instruction counts by family
Name | Count | Ratio |
---|---|---|
CALL_PY_EXACT_ARGS | 13,182,440 | 95.3% |
TO_BOOL_ALWAYS_TRUE | 328,080 | 2.4% |
TO_BOOL_NONE | 327,540 | 2.4% |
COMPARE_OP_INT | 540 | 0.0% |
CACHE | 0 | 0.0% |
CHECK_EXC_MATCH | 0 | 0.0% |
EXIT_INIT_CHECK | 0 | 0.0% |
GET_ITER | 0 | 0.0% |
INTERPRETER_EXIT | 0 | 0.0% |
MAKE_FUNCTION | 0 | 0.0% |
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 | 230,700 | 0.4% |
Calls to Python functions inlined | 59,841,960 | 99.6% |
Calls via PyEval_EvalFrame (total) | 230,700 | 0.4% |
Calls via PyEval_EvalFrame (vector) | 230,700 | 0.4% |
Calls via PyEval_EvalFrame (generator) | 0 | 0.0% |
Calls via PyEval_EvalFrame (legacy) | 0 | 0.0% |
Calls via PyEval_EvalFrame (function vectorcall) | 230,700 | 0.4% |
Calls via PyEval_EvalFrame (build class) | 0 | 0.0% |
Calls via PyEval_EvalFrame (slot) | 0 | 0.0% |
Calls via PyEval_EvalFrame (function ex) | 60 | 0.0% |
Calls via PyEval_EvalFrame (api) | 0 | 0.0% |
Calls via PyEval_EvalFrame (method) | 0 | 0.0% |
Frame objects created | 230,400 | 0.4% |
Frames pushed | 60,188,040 | 100.2% |
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 | 3,248,340 | 14.2% |
Frees to freelist | 3,248,280 | |
Allocations | 19,691,700 | 85.8% |
Allocations to 512 bytes | 19,191,860 | 83.7% |
Allocations to 4 kbytes | 461,240 | 2.0% |
Allocations over 4 kbytes | 38,600 | 0.2% |
Frees | 20,189,780 | |
Inline values | 230,760 | |
Interpreter mortal increfs | 461,824,420 | 37.8% |
Interpreter mortal decrefs | 562,483,080 | 40.1% |
Mortal increfs | 316,472,507 | 25.9% |
Mortal decrefs | 237,176,553 | 16.9% |
Interpreter immortal increfs | 230,913,080 | 18.9% |
Interpreter immortal decrefs | 363,104,660 | 25.9% |
Immortal increfs | 213,021,041 | 17.4% |
Immortal decrefs | 238,392,297 | 17.0% |
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,820,859 | |
Method cache misses | 42,101 | |
Method cache collisions | 44,973 | |
Method cache dunder hits | 389,698 | |
Method cache dunder misses | 2,982 |
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 |
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. |
5,340 | |
Traces created
ⓘThe number of traces that were successfully created. |
280 | 5.2% |
Trace stack overflow
ⓘA trace is truncated because it would require more than 5 stack frames. |
0 | 0.0% |
Trace stack underflow
ⓘA potential trace is abandoned because it pops more frames than it pushes. |
5,200 | 97.4% |
Trace too long
ⓘA trace is truncated because it is longer than the instruction buffer. |
80 | 1.5% |
Trace too short
ⓘA potential trace is abandoced because it it too short. |
5,060 | 94.8% |
Inner loop found
ⓘA trace is truncated because it has an inner loop |
0 | 0.0% |
Recursive call
ⓘA trace is truncated because it has a recursive call. |
0 | 0.0% |
Low confidence
ⓘA trace is abandoned because the likelihood of the jump to top being taken is too low. |
20 | 0.4% |
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 |
40,448,320 | |
Uops executed
ⓘThe total number of uops (micro-operations) that were executed |
1,282,083,060 | 3,169.7% |
Count | Ratio | |
---|---|---|
Optimizer attempts
ⓘThe number of times the trace optimizer (_Py_uop_analyze_and_optimize) was run. |
280 | |
Optimizer successes
ⓘThe number of traces that were successfully optimized. |
280 | 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
Range | Count | Ratio |
---|---|---|
<= 1 | 0 | 0.0% |
<= 2 | 0 | 0.0% |
<= 4 | 0 | 0.0% |
<= 8 | 20 | 7.1% |
<= 16 | 40 | 14.3% |
<= 32 | 20 | 7.1% |
<= 64 | 0 | 0.0% |
<= 128 | 60 | 21.4% |
<= 256 | 0 | 0.0% |
<= 512 | 60 | 21.4% |
<= 1,024 | 80 | 28.6% |
optimized trace length histogram
Range | Count | Ratio |
---|---|---|
<= 1 | 0 | 0.0% |
<= 2 | 0 | 0.0% |
<= 4 | 20 | 7.1% |
<= 8 | 0 | 0.0% |
<= 16 | 40 | 14.3% |
<= 32 | 20 | 7.1% |
<= 64 | 0 | 0.0% |
<= 128 | 60 | 21.4% |
<= 256 | 60 | 21.4% |
<= 512 | 80 | 28.6% |
trace run length histogram
Range | Count | Ratio |
---|---|---|
<= 1 | 0 | 0.0% |
uop execution stats
Name | Count | Self | Cumulative | Miss ratio |
---|---|---|---|---|
_SET_IP | 109,940,360 | 8.6% | 8.6% | |
_CHECK_VALIDITY | 84,981,480 | 6.6% | 15.2% | |
_GUARD_TYPE_VERSION | 79,996,380 | 6.2% | 21.4% | |
_LOAD_FAST_1 | 69,908,360 | 5.5% | 26.9% | |
_LOAD_FAST_2 | 64,724,200 | 5.0% | 31.9% | |
_MAKE_WARM | 45,363,520 | 3.5% | 35.5% | |
_CHECK_PERIODIC | 45,168,600 | 3.5% | 39.0% | |
_LOAD_FAST_0 | 40,483,460 | 3.2% | 42.2% | |
_START_EXECUTOR | 40,448,320 | 3.2% | 45.3% | |
_EXIT_TRACE | 40,442,620 | 3.2% | 48.5% | |
_CHECK_MANAGED_OBJECT_HAS_VALUES | 40,097,120 | 3.1% | 51.6% | |
_LOAD_ATTR_INSTANCE_VALUE_0 | 39,976,460 | 3.1% | 54.7% | |
_GUARD_IS_TRUE_POP | 39,823,080 | 3.1% | 57.8% | 0.0% |
_LOAD_CONST_INLINE_BORROW | 25,089,300 | 2.0% | 59.8% | |
_PUSH_FRAME | 20,065,400 | 1.6% | 61.3% | |
_RESUME_CHECK | 20,059,700 | 1.6% | 62.9% | |
_SAVE_RETURN_OFFSET | 20,059,700 | 1.6% | 64.5% | |
_CHECK_FUNCTION_VERSION | 20,052,800 | 1.6% | 66.0% | 0.0% |
_CHECK_FUNCTION_EXACT_ARGS | 20,035,400 | 1.6% | 67.6% | |
_PUSH_NULL | 20,032,560 | 1.6% | 69.2% | |
_INIT_CALL_PY_EXACT_ARGS_1 | 20,026,620 | 1.6% | 70.7% | |
_CHECK_STACK_SPACE_OPERAND | 20,021,480 | 1.6% | 72.3% | |
_CHECK_CALL_BOUND_METHOD_EXACT_ARGS | 20,011,860 | 1.6% | 73.8% | |
_INIT_CALL_BOUND_METHOD_EXACT_ARGS | 20,011,860 | 1.6% | 75.4% | |
_TO_BOOL_NONE | 20,006,400 | 1.6% | 77.0% | 99.4% |
_LOAD_CONST_INLINE_WITH_NULL | 19,942,320 | 1.6% | 78.5% | |
_GUARD_IS_FALSE_POP | 19,923,660 | 1.6% | 80.1% | |
_CHECK_FUNCTION | 19,920,060 | 1.6% | 81.6% | |
_COMPARE_OP_INT | 19,909,420 | 1.6% | 83.2% | |
_CALL_METHOD_DESCRIPTOR_FAST | 19,905,960 | 1.6% | 84.7% | |
_CHECK_ATTR_METHOD_LAZY_DICT | 19,905,960 | 1.6% | 86.3% | |
_LOAD_ATTR_METHOD_LAZY_DICT | 19,905,960 | 1.6% | 87.8% | |
_REPLACE_WITH_TRUE | 19,905,960 | 1.6% | 89.4% | |
_STORE_FAST_2 | 19,905,900 | 1.6% | 90.9% | |
_GUARD_BOTH_INT | 19,900,500 | 1.6% | 92.5% | |
_CALL_LEN | 19,896,600 | 1.6% | 94.1% | |
_TO_BOOL | 19,891,200 | 1.6% | 95.6% | |
_LOAD_FAST_3 | 9,850,800 | 0.8% | 96.4% | |
_BINARY_SUBSCR_LIST_INT | 9,830,400 | 0.8% | 97.1% | |
_GUARD_NOT_EXHAUSTED_RANGE | 5,070,720 | 0.4% | 97.5% | 3.0% |
_ITER_CHECK_RANGE | 5,070,720 | 0.4% | 97.9% | |
_STORE_FAST_3 | 4,927,200 | 0.4% | 98.3% | |
_ITER_NEXT_RANGE | 4,917,060 | 0.4% | 98.7% | |
_STORE_SUBSCR_DICT | 4,915,260 | 0.4% | 99.1% | |
_BINARY_OP_ADD_INT | 4,915,200 | 0.4% | 99.5% | |
_JUMP_TO_TOP | 4,915,200 | 0.4% | 99.8% | |
_GUARD_DORV_NO_DICT | 328,800 | 0.0% | 99.9% | |
_STORE_ATTR_INSTANCE_VALUE | 328,800 | 0.0% | 99.9% | |
_POP_TOP | 284,800 | 0.0% | 99.9% | |
_CALL_BUILTIN_FAST | 129,120 | 0.0% | 99.9% | |
_LOAD_ATTR_INSTANCE_VALUE_1 | 120,660 | 0.0% | 99.9% | |
_TIER2_RESUME_CHECK | 109,600 | 0.0% | 100.0% | |
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT | 44,520 | 0.0% | 100.0% | |
_GUARD_KEYS_VERSION | 44,520 | 0.0% | 100.0% | |
_LOAD_CONST_INLINE | 33,240 | 0.0% | 100.0% | |
_LOAD_ATTR_METHOD_WITH_VALUES | 29,760 | 0.0% | 100.0% | |
_RETURN_VALUE | 26,860 | 0.0% | 100.0% | |
_PY_FRAME_GENERAL | 24,300 | 0.0% | 100.0% | |
_TO_BOOL_BOOL | 23,840 | 0.0% | 100.0% | |
_STORE_FAST_5 | 20,460 | 0.0% | 100.0% | |
_LOAD_FAST_5 | 18,840 | 0.0% | 100.0% | |
_LOAD_FAST | 18,480 | 0.0% | 100.0% | |
_LOAD_ATTR_METHOD_NO_DICT | 17,460 | 0.0% | 100.0% | |
_CHECK_VALIDITY_AND_SET_IP | 16,620 | 0.0% | 100.0% | |
_LOAD_FAST_4 | 15,060 | 0.0% | 100.0% | |
_LOAD_ATTR_NONDESCRIPTOR_WITH_VALUES | 14,760 | 0.0% | 100.0% | |
_STORE_FAST_6 | 14,760 | 0.0% | 100.0% | |
_STORE_FAST | 13,020 | 0.0% | 100.0% | |
_CALL_BUILTIN_O | 12,060 | 0.0% | 100.0% | |
_LOAD_FAST_7 | 11,160 | 0.0% | 100.0% | |
_IS_OP | 10,920 | 0.0% | 100.0% | |
_GUARD_IS_NONE_POP | 9,300 | 0.0% | 100.0% | 41.3% |
_UNPACK_SEQUENCE_TWO_TUPLE | 9,300 | 0.0% | 100.0% | |
_CALL_METHOD_DESCRIPTOR_NOARGS | 9,300 | 0.0% | 100.0% | |
_CHECK_METHOD_VERSION | 9,300 | 0.0% | 100.0% | |
_EXPAND_METHOD | 9,300 | 0.0% | 100.0% | |
_STORE_FAST_4 | 9,300 | 0.0% | 100.0% | |
_GUARD_NOS_INT | 8,540 | 0.0% | 100.0% | |
_GUARD_NOT_EXHAUSTED_LIST | 7,920 | 0.0% | 100.0% | 3.0% |
_ITER_CHECK_LIST | 7,920 | 0.0% | 100.0% | |
_ITER_NEXT_LIST | 7,680 | 0.0% | 100.0% | |
_GUARD_NOT_EXHAUSTED_TUPLE | 7,620 | 0.0% | 100.0% | 25.2% |
_ITER_CHECK_TUPLE | 7,620 | 0.0% | 100.0% | |
_LOAD_FAST_6 | 7,080 | 0.0% | 100.0% | |
_CALL_ISINSTANCE | 5,700 | 0.0% | 100.0% | |
_CALL_KW_NON_PY | 5,700 | 0.0% | 100.0% | |
_CALL_NON_PY_GENERAL | 5,700 | 0.0% | 100.0% | |
_CHECK_AND_ALLOCATE_OBJECT | 5,700 | 0.0% | 100.0% | |
_CHECK_IS_NOT_PY_CALLABLE | 5,700 | 0.0% | 100.0% | |
_CHECK_IS_NOT_PY_CALLABLE_KW | 5,700 | 0.0% | 100.0% | |
_CREATE_INIT_FRAME | 5,700 | 0.0% | 100.0% | |
_DYNAMIC_EXIT | 5,700 | 0.0% | 100.0% | |
_INIT_CALL_PY_EXACT_ARGS_0 | 5,700 | 0.0% | 100.0% | |
_ITER_NEXT_TUPLE | 5,700 | 0.0% | 100.0% | |
_CALL_TYPE_1 | 5,460 | 0.0% | 100.0% | |
_BINARY_OP | 5,460 | 0.0% | 100.0% | |
_CALL_METHOD_DESCRIPTOR_O | 5,460 | 0.0% | 100.0% | |
_GUARD_IS_NOT_NONE_POP | 5,460 | 0.0% | 100.0% | |
_LOAD_CONST_INLINE_BORROW_WITH_NULL | 5,460 | 0.0% | 100.0% | |
_STORE_FAST_7 | 5,460 | 0.0% | 100.0% | |
_INIT_CALL_PY_EXACT_ARGS_2 | 3,080 | 0.0% | 100.0% | |
_BUILD_TUPLE | 2,700 | 0.0% | 100.0% | |
_CONTAINS_OP_DICT | 2,700 | 0.0% | 100.0% | |
_TO_BOOL_INT | 2,700 | 0.0% | 100.0% | |
_CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS | 2,700 | 0.0% | 100.0% | |
_GET_ITER | 1,860 | 0.0% | 100.0% | |
_FOR_ITER_TIER_TWO | 1,800 | 0.0% | 100.0% | 10.0% |
_BINARY_SUBSCR_TUPLE_INT | 60 | 0.0% | 100.0% |
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
Optimization stopped after encountering this opcode
Counts of rare/unlikely events
Event | Count |
---|---|
set class
ⓘSetting an object's class, |
0 |
set bases
ⓘSetting the bases of a class, |
0 |
set eval frame func
ⓘSetting the PEP 523 frame eval function |
0 |
builtin dict
ⓘModifying the builtins, |
0 |
func modification
ⓘModifying a function, e.g. |
0 |
watched dict modification
ⓘA watched dict has been modified |
0 |
watched globals modification
ⓘA watched |
0 |
Meta statistics
Count | |
---|---|
Number of data files | 20 |
Stats gathered on: 2024-10-25