- benchmark: chaos
- fork: python
- ref: 0ac40acec045c4ce780cf7d887fcbe4c661e82b7
- commit hash: 0ac40ac
- commit date: 2024-12-14T17:25:49+02: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 | 82,611,360 | 18.2% | 18.2% | |
LOAD_ATTR_INSTANCE_VALUE | 51,693,580 | 11.4% | 29.6% | |
RETURN_VALUE | 37,200,840 | 8.2% | 37.8% | |
STORE_FAST | 24,893,960 | 5.5% | 43.3% | |
LOAD_SMALL_INT | 23,443,080 | 5.2% | 48.4% | |
LOAD_FAST_LOAD_FAST | 23,199,620 | 5.1% | 53.6% | |
BINARY_OP | 14,434,720 | 3.2% | 56.7% | |
BINARY_SUBSCR_LIST_INT | 13,862,260 | 3.1% | 59.8% | |
ENTER_EXECUTOR | 11,509,560 | 2.5% | 62.3% | |
BINARY_OP_SUBTRACT_INT | 11,411,520 | 2.5% | 64.8% | |
LOAD_GLOBAL_BUILTIN | 9,613,020 | 2.1% | 67.0% | |
RESUME_CHECK | 9,610,500 | 2.1% | 69.1% | 0.0% |
POP_JUMP_IF_FALSE | 9,610,180 | 2.1% | 71.2% | |
COMPARE_OP | 8,402,100 | 1.9% | 73.0% | |
BINARY_OP_ADD_FLOAT | 8,400,240 | 1.9% | 74.9% | |
EXIT_INIT_CHECK | 8,400,120 | 1.9% | 76.7% | |
BINARY_SUBSCR_TUPLE_INT | 7,800,060 | 1.7% | 78.5% | |
STORE_SUBSCR_LIST_INT | 7,800,000 | 1.7% | 80.2% | |
CALL_PY_EXACT_ARGS | 6,600,360 | 1.5% | 81.6% | |
LOAD_ATTR_METHOD_WITH_VALUES | 6,600,360 | 1.5% | 83.1% | |
BINARY_OP_ADD_INT | 5,789,620 | 1.3% | 84.4% | |
CALL_LEN | 4,811,160 | 1.1% | 85.4% | |
GET_ITER | 4,200,420 | 0.9% | 86.4% | |
CALL_BUILTIN_CLASS | 4,200,420 | 0.9% | 87.3% | |
POP_JUMP_IF_TRUE | 4,200,180 | 0.9% | 88.2% | |
SWAP | 4,189,080 | 0.9% | 89.1% | |
LOAD_GLOBAL_MODULE | 3,884,520 | 0.9% | 90.0% | |
BUILD_TUPLE | 3,600,360 | 0.8% | 90.8% | |
PUSH_NULL | 3,418,700 | 0.8% | 91.5% | |
FOR_ITER_RANGE | 3,031,140 | 0.7% | 92.2% | |
INTERPRETER_EXIT | 3,000,120 | 0.7% | 92.9% | |
BINARY_OP_MULTIPLY_FLOAT | 3,000,000 | 0.7% | 93.5% | |
COMPARE_OP_INT | 2,409,880 | 0.5% | 94.1% | |
BINARY_OP_SUBTRACT_FLOAT | 2,400,300 | 0.5% | 94.6% | |
LOAD_CONST | 2,400,120 | 0.5% | 95.1% | |
COMPARE_OP_FLOAT | 2,400,000 | 0.5% | 95.6% | |
POP_TOP | 2,119,260 | 0.5% | 96.1% | |
LOAD_ATTR_MODULE | 2,084,340 | 0.5% | 96.6% | |
CALL_BUILTIN_O | 1,934,060 | 0.4% | 97.0% | |
BUILD_LIST | 1,230,840 | 0.3% | 97.3% | |
LIST_APPEND | 1,230,720 | 0.3% | 97.5% | |
LOAD_CONST_IMMORTAL | 1,212,320 | 0.3% | 97.8% | |
STORE_ATTR_INSTANCE_VALUE | 1,207,800 | 0.3% | 98.1% | |
CALL_NON_PY_GENERAL | 1,200,420 | 0.3% | 98.3% | |
LOAD_FAST_AND_CLEAR | 1,200,120 | 0.3% | 98.6% | |
CALL_ALLOC_AND_ENTER_INIT | 1,200,120 | 0.3% | 98.9% | |
COPY | 1,200,000 | 0.3% | 99.1% | |
TO_BOOL_BOOL | 600,300 | 0.1% | 99.3% | |
CALL_ISINSTANCE | 600,240 | 0.1% | 99.4% | |
JUMP_FORWARD | 600,060 | 0.1% | 99.5% | |
STORE_FAST_STORE_FAST | 600,060 | 0.1% | 99.7% | |
UNPACK_SEQUENCE_TWO_TUPLE | 600,060 | 0.1% | 99.8% | |
UNARY_NEGATIVE | 600,000 | 0.1% | 99.9% | |
CALL_BOUND_METHOD_GENERAL | 284,160 | 0.1% | 100.0% | |
JUMP_BACKWARD | 30,900 | 0.0% | 100.0% | |
BINARY_SUBSCR | 11,220 | 0.0% | 100.0% | |
LOAD_ATTR | 9,880 | 0.0% | 100.0% | |
LOAD_ATTR_METHOD_NO_DICT | 9,700 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_NOARGS | 9,640 | 0.0% | 100.0% | |
CALL | 260 | 0.0% | 100.0% | |
COPY_FREE_VARS | 180 | 0.0% | 100.0% | |
LOAD_DEREF | 180 | 0.0% | 100.0% | |
POP_JUMP_IF_NOT_NONE | 180 | 0.0% | 100.0% | |
CALL_PY_GENERAL | 180 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_FAST | 120 | 0.0% | 100.0% | 100.0% |
CALL_TYPE_1 | 120 | 0.0% | 100.0% | |
LOAD_SUPER_ATTR_METHOD | 120 | 0.0% | 100.0% | |
TO_BOOL_NONE | 120 | 0.0% | 100.0% | |
TO_BOOL | 100 | 0.0% | 100.0% | |
LOAD_GLOBAL | 100 | 0.0% | 100.0% | |
MAKE_FUNCTION | 60 | 0.0% | 100.0% | |
NOP | 60 | 0.0% | 100.0% | |
CALL_FUNCTION_EX | 60 | 0.0% | 100.0% | |
FOR_ITER | 60 | 0.0% | 100.0% | |
IS_OP | 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% | |
CALL_METHOD_DESCRIPTOR_O | 60 | 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 | 45,903,980 | 10.1% | 10.1% |
LOAD_ATTR_INSTANCE_VALUE LOAD_FAST | 18,070,180 | 4.0% | 14.1% |
RETURN_VALUE STORE_FAST | 13,800,300 | 3.0% | 17.1% |
STORE_FAST LOAD_FAST | 13,220,120 | 2.9% | 20.1% |
ENTER_EXECUTOR RETURN_VALUE | 11,075,120 | 2.4% | 22.5% |
LOAD_ATTR_INSTANCE_VALUE LOAD_SMALL_INT | 10,800,000 | 2.4% | 24.9% |
LOAD_FAST RETURN_VALUE | 9,925,040 | 2.2% | 27.1% |
LOAD_GLOBAL_BUILTIN LOAD_FAST | 9,011,820 | 2.0% | 29.0% |
EXIT_INIT_CHECK RETURN_VALUE | 8,400,120 | 1.9% | 30.9% |
RETURN_VALUE EXIT_INIT_CHECK | 8,400,120 | 1.9% | 32.7% |
LOAD_SMALL_INT BINARY_SUBSCR_TUPLE_INT | 7,800,040 | 1.7% | 34.5% |
STORE_SUBSCR_LIST_INT ENTER_EXECUTOR | 7,800,000 | 1.7% | 36.2% |
RETURN_VALUE LOAD_FAST_LOAD_FAST | 7,200,000 | 1.6% | 37.8% |
LOAD_FAST_LOAD_FAST STORE_SUBSCR_LIST_INT | 7,200,000 | 1.6% | 39.4% |
CALL_PY_EXACT_ARGS RESUME_CHECK | 6,600,300 | 1.5% | 40.8% |
RESUME_CHECK LOAD_FAST | 6,010,000 | 1.3% | 42.1% |
LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES | 6,000,320 | 1.3% | 43.5% |
BINARY_OP_SUBTRACT_INT BINARY_SUBSCR_LIST_INT | 6,000,000 | 1.3% | 44.8% |
STORE_FAST LOAD_FAST_LOAD_FAST | 5,409,940 | 1.2% | 46.0% |
LOAD_SMALL_INT BINARY_OP | 5,400,240 | 1.2% | 47.2% |
BINARY_OP LOAD_FAST | 5,400,120 | 1.2% | 48.4% |
LOAD_ATTR_INSTANCE_VALUE BINARY_OP_SUBTRACT_INT | 5,400,000 | 1.2% | 49.5% |
LOAD_SMALL_INT BINARY_OP_SUBTRACT_INT | 4,811,520 | 1.1% | 50.6% |
LOAD_ATTR_INSTANCE_VALUE CALL_LEN | 4,811,160 | 1.1% | 51.7% |
LOAD_ATTR_METHOD_WITH_VALUES CALL_PY_EXACT_ARGS | 4,800,120 | 1.1% | 52.7% |
COMPARE_OP POP_JUMP_IF_FALSE | 4,800,000 | 1.1% | 53.8% |
LOAD_FAST_LOAD_FAST LOAD_SMALL_INT | 4,800,000 | 1.1% | 54.8% |
BINARY_SUBSCR_TUPLE_INT COMPARE_OP | 4,800,000 | 1.1% | 55.9% |
LOAD_FAST_LOAD_FAST LOAD_ATTR_INSTANCE_VALUE | 4,589,540 | 1.0% | 56.9% |
POP_JUMP_IF_FALSE LOAD_FAST | 4,489,960 | 1.0% | 57.9% |
LOAD_FAST LOAD_SMALL_INT | 4,200,720 | 0.9% | 58.8% |
STORE_FAST LOAD_GLOBAL_BUILTIN | 4,200,120 | 0.9% | 59.7% |
CALL_LEN LOAD_FAST | 4,200,000 | 0.9% | 60.7% |
POP_JUMP_IF_FALSE LOAD_FAST_LOAD_FAST | 3,926,880 | 0.9% | 61.5% |
LOAD_SMALL_INT BINARY_OP_ADD_INT | 3,600,120 | 0.8% | 62.3% |
BINARY_OP BINARY_OP_ADD_FLOAT | 3,600,000 | 0.8% | 63.1% |
COMPARE_OP POP_JUMP_IF_TRUE | 3,600,000 | 0.8% | 63.9% |
BINARY_OP_ADD_FLOAT LOAD_FAST | 3,600,000 | 0.8% | 64.7% |
PUSH_NULL LOAD_FAST | 3,418,160 | 0.8% | 65.5% |
FOR_ITER_RANGE STORE_FAST | 3,031,080 | 0.7% | 66.1% |
LOAD_FAST BINARY_OP | 3,030,740 | 0.7% | 66.8% |
BUILD_TUPLE RETURN_VALUE | 3,011,160 | 0.7% | 67.5% |
GET_ITER FOR_ITER_RANGE | 3,000,300 | 0.7% | 68.1% |
CALL_BUILTIN_CLASS GET_ITER | 3,000,240 | 0.7% | 68.8% |
CACHE RESUME_CHECK | 3,000,180 | 0.7% | 69.4% |
RETURN_VALUE INTERPRETER_EXIT | 3,000,120 | 0.7% | 70.1% |
BINARY_SUBSCR_LIST_INT BUILD_TUPLE | 3,000,000 | 0.7% | 70.8% |
BINARY_SUBSCR_LIST_INT LOAD_FAST | 3,000,000 | 0.7% | 71.4% |
LOAD_ATTR_INSTANCE_VALUE LOAD_GLOBAL_BUILTIN | 3,000,000 | 0.7% | 72.1% |
LOAD_FAST BINARY_SUBSCR_LIST_INT | 2,462,260 | 0.5% | 72.6% |
COMPARE_OP_INT POP_JUMP_IF_FALSE | 2,409,880 | 0.5% | 73.2% |
RESUME_CHECK LOAD_GLOBAL_MODULE | 2,400,360 | 0.5% | 73.7% |
BINARY_OP STORE_FAST | 2,400,240 | 0.5% | 74.2% |
LOAD_FAST LOAD_CONST | 2,400,000 | 0.5% | 74.7% |
POP_JUMP_IF_TRUE LOAD_FAST_LOAD_FAST | 2,400,000 | 0.5% | 75.3% |
BINARY_OP_ADD_INT BINARY_SUBSCR_LIST_INT | 2,400,000 | 0.5% | 75.8% |
BINARY_SUBSCR_LIST_INT COMPARE_OP | 2,400,000 | 0.5% | 76.3% |
BINARY_SUBSCR_TUPLE_INT BINARY_SUBSCR_LIST_INT | 2,400,000 | 0.5% | 76.9% |
COMPARE_OP_FLOAT POP_JUMP_IF_FALSE | 2,400,000 | 0.5% | 77.4% |
LOAD_ATTR_INSTANCE_VALUE COMPARE_OP_FLOAT | 2,400,000 | 0.5% | 77.9% |
LOAD_ATTR_MODULE PUSH_NULL | 2,084,280 | 0.5% | 78.4% |
LOAD_GLOBAL_MODULE LOAD_ATTR_MODULE | 2,084,280 | 0.5% | 78.8% |
LOAD_FAST_LOAD_FAST COMPARE_OP_INT | 1,809,580 | 0.4% | 79.2% |
LOAD_ATTR_INSTANCE_VALUE BINARY_OP_ADD_FLOAT | 1,800,240 | 0.4% | 79.6% |
LOAD_ATTR_METHOD_WITH_VALUES LOAD_FAST | 1,800,180 | 0.4% | 80.0% |
LOAD_FAST CALL_PY_EXACT_ARGS | 1,800,000 | 0.4% | 80.4% |
BINARY_OP_ADD_FLOAT CALL_BUILTIN_O | 1,800,000 | 0.4% | 80.8% |
BINARY_OP_MULTIPLY_FLOAT BINARY_OP_ADD_FLOAT | 1,800,000 | 0.4% | 81.2% |
BINARY_OP_SUBTRACT_INT LOAD_SMALL_INT | 1,800,000 | 0.4% | 81.6% |
CALL_BUILTIN_O RETURN_VALUE | 1,800,000 | 0.4% | 82.0% |
POP_TOP LOAD_FAST | 1,518,660 | 0.3% | 82.4% |
BINARY_OP BINARY_OP | 1,203,500 | 0.3% | 82.6% |
LOAD_FAST CALL_BUILTIN_CLASS | 1,200,280 | 0.3% | 82.9% |
BINARY_OP_SUBTRACT_FLOAT LOAD_FAST | 1,200,240 | 0.3% | 83.1% |
LOAD_ATTR_INSTANCE_VALUE BINARY_OP | 1,200,240 | 0.3% | 83.4% |
LOAD_ATTR_INSTANCE_VALUE BINARY_OP_SUBTRACT_FLOAT | 1,200,240 | 0.3% | 83.7% |
GET_ITER LOAD_FAST_AND_CLEAR | 1,200,120 | 0.3% | 83.9% |
BUILD_LIST SWAP | 1,200,120 | 0.3% | 84.2% |
LOAD_FAST_AND_CLEAR SWAP | 1,200,120 | 0.3% | 84.5% |
SWAP GET_ITER | 1,200,120 | 0.3% | 84.7% |
SWAP BUILD_LIST | 1,200,120 | 0.3% | 85.0% |
CALL_ALLOC_AND_ENTER_INIT ENTER_EXECUTOR | 1,200,120 | 0.3% | 85.3% |
LOAD_GLOBAL_MODULE LOAD_FAST | 1,200,120 | 0.3% | 85.5% |
CALL_BUILTIN_CLASS STORE_FAST | 1,200,060 | 0.3% | 85.8% |
CALL_NON_PY_GENERAL STORE_FAST | 1,200,060 | 0.3% | 86.1% |
RETURN_VALUE RETURN_VALUE | 1,200,000 | 0.3% | 86.3% |
RETURN_VALUE BINARY_OP | 1,200,000 | 0.3% | 86.6% |
COPY LOAD_ATTR_INSTANCE_VALUE | 1,200,000 | 0.3% | 86.8% |
LIST_APPEND ENTER_EXECUTOR | 1,200,000 | 0.3% | 87.1% |
LOAD_CONST BINARY_OP_ADD_FLOAT | 1,200,000 | 0.3% | 87.4% |
LOAD_CONST BINARY_OP_SUBTRACT_FLOAT | 1,200,000 | 0.3% | 87.6% |
LOAD_FAST COPY | 1,200,000 | 0.3% | 87.9% |
LOAD_FAST BINARY_OP_ADD_INT | 1,200,000 | 0.3% | 88.2% |
LOAD_FAST_LOAD_FAST LOAD_FAST | 1,200,000 | 0.3% | 88.4% |
LOAD_FAST_LOAD_FAST BINARY_OP_SUBTRACT_INT | 1,200,000 | 0.3% | 88.7% |
SWAP STORE_ATTR_INSTANCE_VALUE | 1,200,000 | 0.3% | 89.0% |
BINARY_OP_ADD_FLOAT SWAP | 1,200,000 | 0.3% | 89.2% |
BINARY_OP_ADD_INT LOAD_FAST | 1,200,000 | 0.3% | 89.5% |
BINARY_OP_ADD_INT CALL_BUILTIN_CLASS | 1,200,000 | 0.3% | 89.8% |
BINARY_OP_MULTIPLY_FLOAT LOAD_FAST | 1,200,000 | 0.3% | 90.0% |
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 | 3,000,180 | 100.0% |
Successors and predecessors for BINARY_SUBSCR
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST_IMMORTAL | 11,160 | 99.5% |
BINARY_SUBSCR | 40 | 0.4% |
LOAD_SMALL_INT | 20 | 0.2% |
Successors | Count | Percentage |
---|---|---|
CALL_BOUND_METHOD_GENERAL | 11,160 | 99.5% |
BINARY_SUBSCR | 40 | 0.4% |
BINARY_SUBSCR_TUPLE_INT | 20 | 0.2% |
Successors and predecessors for EXIT_INIT_CHECK
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 8,400,120 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 8,400,120 | 100.0% |
Successors and predecessors for GET_ITER
Predecessors | Count | Percentage |
---|---|---|
CALL_BUILTIN_CLASS | 3,000,240 | 71.4% |
SWAP | 1,200,120 | 28.6% |
LOAD_FAST | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER_RANGE | 3,000,300 | 71.4% |
LOAD_FAST_AND_CLEAR | 1,200,120 | 28.6% |
Successors and predecessors for INTERPRETER_EXIT
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 3,000,120 | 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 |
---|---|---|
POP_JUMP_IF_TRUE | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 60 | 100.0% |
Successors and predecessors for POP_TOP
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 918,480 | 43.3% |
RETURN_VALUE | 600,300 | 28.3% |
SWAP | 588,840 | 27.8% |
ENTER_EXECUTOR | 11,280 | 0.5% |
CALL_NON_PY_GENERAL | 180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 1,518,660 | 71.7% |
RETURN_VALUE | 588,840 | 27.8% |
LOAD_GLOBAL_BUILTIN | 11,280 | 0.5% |
LOAD_CONST_IMMORTAL | 300 | 0.0% |
JUMP_BACKWARD | 180 | 0.0% |
Successors and predecessors for PUSH_NULL
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_MODULE | 2,084,280 | 61.0% |
BINARY_SUBSCR_LIST_INT | 1,200,000 | 35.1% |
LOAD_FAST | 134,420 | 3.9% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 3,418,160 | 100.0% |
CALL_NON_PY_GENERAL | 280 | 0.0% |
LOAD_GLOBAL_BUILTIN | 120 | 0.0% |
CALL | 80 | 0.0% |
LOAD_FAST_LOAD_FAST | 60 | 0.0% |
Successors and predecessors for RETURN_VALUE
Predecessors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 11,075,120 | 29.8% |
LOAD_FAST | 9,925,040 | 26.7% |
EXIT_INIT_CHECK | 8,400,120 | 22.6% |
BUILD_TUPLE | 3,011,160 | 8.1% |
CALL_BUILTIN_O | 1,800,000 | 4.8% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 13,800,300 | 37.1% |
EXIT_INIT_CHECK | 8,400,120 | 22.6% |
LOAD_FAST_LOAD_FAST | 7,200,000 | 19.4% |
INTERPRETER_EXIT | 3,000,120 | 8.1% |
RETURN_VALUE | 1,200,000 | 3.2% |
Successors and predecessors for TO_BOOL
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 60 | 60.0% |
TO_BOOL | 20 | 20.0% |
LOAD_FAST | 20 | 20.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 60 | 60.0% |
TO_BOOL | 20 | 20.0% |
TO_BOOL_BOOL | 20 | 20.0% |
Successors and predecessors for UNARY_NEGATIVE
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 600,000 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 600,000 | 100.0% |
Successors and predecessors for BINARY_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_SMALL_INT | 5,400,240 | 37.4% |
LOAD_FAST | 3,030,740 | 21.0% |
BINARY_OP | 1,203,500 | 8.3% |
LOAD_ATTR_INSTANCE_VALUE | 1,200,240 | 8.3% |
RETURN_VALUE | 1,200,000 | 8.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 5,400,120 | 37.4% |
BINARY_OP_ADD_FLOAT | 3,600,000 | 24.9% |
STORE_FAST | 2,400,240 | 16.6% |
BINARY_OP | 1,203,500 | 8.3% |
RETURN_VALUE | 600,000 | 4.2% |
Successors and predecessors for BUILD_LIST
Predecessors | Count | Percentage |
---|---|---|
SWAP | 1,200,120 | 97.5% |
LOAD_SMALL_INT | 30,720 | 2.5% |
Successors | Count | Percentage |
---|---|---|
SWAP | 1,200,120 | 97.5% |
LOAD_FAST | 30,720 | 2.5% |
Successors and predecessors for BUILD_TUPLE
Predecessors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_LIST_INT | 3,000,000 | 83.3% |
RETURN_VALUE | 600,000 | 16.7% |
LOAD_GLOBAL_BUILTIN | 240 | 0.0% |
LOAD_FAST | 60 | 0.0% |
LOAD_FAST_LOAD_FAST | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 3,011,160 | 83.6% |
SWAP | 588,840 | 16.4% |
CALL_ISINSTANCE | 240 | 0.0% |
LOAD_CONST | 60 | 0.0% |
CALL_METHOD_DESCRIPTOR_O | 40 | 0.0% |
Successors and predecessors for CALL
Predecessors | Count | Percentage |
---|---|---|
PUSH_NULL | 80 | 30.8% |
LOAD_FAST_LOAD_FAST | 60 | 23.1% |
LOAD_CONST_IMMORTAL | 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% |
Successors and predecessors for CALL_FUNCTION_EX
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 60 | 100.0% |
Successors and predecessors for COMPARE_OP
Predecessors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_TUPLE_INT | 4,800,000 | 57.1% |
BINARY_SUBSCR_LIST_INT | 2,400,000 | 28.6% |
LOAD_SMALL_INT | 600,020 | 7.1% |
LOAD_FAST | 600,000 | 7.1% |
COMPARE_OP | 2,080 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 4,800,000 | 57.1% |
POP_JUMP_IF_TRUE | 3,600,000 | 42.8% |
COMPARE_OP | 2,080 | 0.0% |
COMPARE_OP_INT | 20 | 0.0% |
Successors and predecessors for COPY
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 1,200,000 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 1,200,000 | 100.0% |
Successors and predecessors for COPY_FREE_VARS
Predecessors | Count | Percentage |
---|---|---|
CALL_BOUND_METHOD_GENERAL | 120 | 66.7% |
CALL_PY_EXACT_ARGS | 60 | 33.3% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 180 | 100.0% |
Successors and predecessors for FOR_ITER
Predecessors | Count | Percentage |
---|---|---|
JUMP_BACKWARD | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 60 | 100.0% |
Successors and predecessors for IS_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST_IMMORTAL | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 60 | 100.0% |
Successors and predecessors for JUMP_BACKWARD
Predecessors | Count | Percentage |
---|---|---|
LIST_APPEND | 30,720 | 99.4% |
POP_TOP | 180 | 0.6% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER_RANGE | 30,840 | 99.8% |
FOR_ITER | 60 | 0.2% |
Successors and predecessors for JUMP_FORWARD
Predecessors | Count | Percentage |
---|---|---|
STORE_ATTR_INSTANCE_VALUE | 600,000 | 100.0% |
STORE_FAST | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 600,060 | 100.0% |
Successors and predecessors for LIST_APPEND
Predecessors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_LIST_INT | 1,200,000 | 97.5% |
BINARY_OP | 30,720 | 2.5% |
Successors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 1,200,000 | 97.5% |
JUMP_BACKWARD | 30,720 | 2.5% |
Successors and predecessors for LOAD_ATTR
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 9,720 | 98.4% |
LOAD_GLOBAL_MODULE | 60 | 0.6% |
LOAD_ATTR | 40 | 0.4% |
LOAD_ATTR_INSTANCE_VALUE | 40 | 0.4% |
LOAD_FAST_LOAD_FAST | 20 | 0.2% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 9,580 | 97.0% |
LOAD_FAST_LOAD_FAST | 60 | 0.6% |
LOAD_ATTR_INSTANCE_VALUE | 60 | 0.6% |
LOAD_ATTR_MODULE | 60 | 0.6% |
LOAD_ATTR | 40 | 0.4% |
Successors and predecessors for LOAD_CONST
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 2,400,000 | 100.0% |
BUILD_TUPLE | 60 | 0.0% |
POP_JUMP_IF_NOT_NONE | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_OP_ADD_FLOAT | 1,200,000 | 50.0% |
BINARY_OP_SUBTRACT_FLOAT | 1,200,000 | 50.0% |
MAKE_FUNCTION | 60 | 0.0% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for LOAD_DEREF
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_BUILTIN | 120 | 66.7% |
STORE_FAST | 60 | 33.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 120 | 66.7% |
STORE_FAST | 60 | 33.3% |
Successors and predecessors for LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 18,070,180 | 21.9% |
STORE_FAST | 13,220,120 | 16.0% |
LOAD_GLOBAL_BUILTIN | 9,011,820 | 10.9% |
RESUME_CHECK | 6,010,000 | 7.3% |
BINARY_OP | 5,400,120 | 6.5% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 45,903,980 | 55.6% |
RETURN_VALUE | 9,925,040 | 12.0% |
LOAD_ATTR_METHOD_WITH_VALUES | 6,000,320 | 7.3% |
LOAD_SMALL_INT | 4,200,720 | 5.1% |
BINARY_OP | 3,030,740 | 3.7% |
Successors and predecessors for LOAD_FAST_AND_CLEAR
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 1,200,120 | 100.0% |
Successors | Count | Percentage |
---|---|---|
SWAP | 1,200,120 | 100.0% |
Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 7,200,000 | 31.0% |
STORE_FAST | 5,409,940 | 23.3% |
POP_JUMP_IF_FALSE | 3,926,880 | 16.9% |
POP_JUMP_IF_TRUE | 2,400,000 | 10.3% |
LOAD_ATTR_INSTANCE_VALUE | 1,200,000 | 5.2% |
Successors | Count | Percentage |
---|---|---|
STORE_SUBSCR_LIST_INT | 7,200,000 | 31.0% |
LOAD_SMALL_INT | 4,800,000 | 20.7% |
LOAD_ATTR_INSTANCE_VALUE | 4,589,540 | 19.8% |
COMPARE_OP_INT | 1,809,580 | 7.8% |
LOAD_FAST | 1,200,000 | 5.2% |
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% |
Successors and predecessors for LOAD_SMALL_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 10,800,000 | 46.1% |
LOAD_FAST_LOAD_FAST | 4,800,000 | 20.5% |
LOAD_FAST | 4,200,720 | 17.9% |
BINARY_OP_SUBTRACT_INT | 1,800,000 | 7.7% |
STORE_FAST | 630,720 | 2.7% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_TUPLE_INT | 7,800,040 | 33.3% |
BINARY_OP | 5,400,240 | 23.0% |
BINARY_OP_SUBTRACT_INT | 4,811,520 | 20.5% |
BINARY_OP_ADD_INT | 3,600,120 | 15.4% |
COMPARE_OP | 600,020 | 2.6% |
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 | 4,800,000 | 49.9% |
COMPARE_OP_INT | 2,409,880 | 25.1% |
COMPARE_OP_FLOAT | 2,400,000 | 25.0% |
TO_BOOL_BOOL | 120 | 0.0% |
TO_BOOL_NONE | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 4,489,960 | 46.7% |
LOAD_FAST_LOAD_FAST | 3,926,880 | 40.9% |
LOAD_SMALL_INT | 600,000 | 6.2% |
LOAD_CONST_IMMORTAL | 593,040 | 6.2% |
LOAD_GLOBAL_BUILTIN | 280 | 0.0% |
Successors and predecessors for POP_JUMP_IF_NOT_NONE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 180 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 120 | 66.7% |
LOAD_CONST | 60 | 33.3% |
Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors | Count | Percentage |
---|---|---|
COMPARE_OP | 3,600,000 | 85.7% |
TO_BOOL_BOOL | 600,180 | 14.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 2,400,000 | 57.1% |
LOAD_FAST | 918,480 | 21.9% |
LOAD_GLOBAL_MODULE | 600,000 | 14.3% |
ENTER_EXECUTOR | 281,520 | 6.7% |
LOAD_GLOBAL_BUILTIN | 120 | 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_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 | 13,800,300 | 55.4% |
FOR_ITER_RANGE | 3,031,080 | 12.2% |
BINARY_OP | 2,400,240 | 9.6% |
CALL_BUILTIN_CLASS | 1,200,060 | 4.8% |
CALL_NON_PY_GENERAL | 1,200,060 | 4.8% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 13,220,120 | 53.1% |
LOAD_FAST_LOAD_FAST | 5,409,940 | 21.7% |
LOAD_GLOBAL_BUILTIN | 4,200,120 | 16.9% |
POP_TOP | 918,480 | 3.7% |
LOAD_SMALL_INT | 630,720 | 2.5% |
Successors and predecessors for STORE_FAST_STORE_FAST
Predecessors | Count | Percentage |
---|---|---|
UNPACK_SEQUENCE_TWO_TUPLE | 600,060 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 600,000 | 100.0% |
LOAD_FAST | 60 | 0.0% |
Successors and predecessors for SWAP
Predecessors | Count | Percentage |
---|---|---|
BUILD_LIST | 1,200,120 | 28.6% |
LOAD_FAST_AND_CLEAR | 1,200,120 | 28.6% |
BINARY_OP_ADD_FLOAT | 1,200,000 | 28.6% |
BUILD_TUPLE | 588,840 | 14.1% |
Successors | Count | Percentage |
---|---|---|
GET_ITER | 1,200,120 | 28.6% |
BUILD_LIST | 1,200,120 | 28.6% |
STORE_ATTR_INSTANCE_VALUE | 1,200,000 | 28.6% |
POP_TOP | 588,840 | 14.1% |
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_FLOAT
Predecessors | Count | Percentage |
---|---|---|
BINARY_OP | 3,600,000 | 42.9% |
LOAD_ATTR_INSTANCE_VALUE | 1,800,240 | 21.4% |
BINARY_OP_MULTIPLY_FLOAT | 1,800,000 | 21.4% |
LOAD_CONST | 1,200,000 | 14.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 3,600,000 | 42.9% |
CALL_BUILTIN_O | 1,800,000 | 21.4% |
SWAP | 1,200,000 | 14.3% |
STORE_FAST | 600,000 | 7.1% |
CALL_ALLOC_AND_ENTER_INIT | 600,000 | 7.1% |
Successors and predecessors for BINARY_OP_ADD_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_SMALL_INT | 3,600,120 | 62.2% |
LOAD_FAST | 1,200,000 | 20.7% |
BINARY_SUBSCR_LIST_INT | 989,500 | 17.1% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_LIST_INT | 2,400,000 | 41.5% |
LOAD_FAST | 1,200,000 | 20.7% |
CALL_BUILTIN_CLASS | 1,200,000 | 20.7% |
COMPARE_OP_INT | 600,000 | 10.4% |
STORE_FAST | 389,500 | 6.7% |
Successors and predecessors for BINARY_OP_MULTIPLY_FLOAT
Predecessors | Count | Percentage |
---|---|---|
BINARY_OP_SUBTRACT_FLOAT | 1,200,000 | 40.0% |
LOAD_ATTR_INSTANCE_VALUE | 1,200,000 | 40.0% |
LOAD_FAST_LOAD_FAST | 600,000 | 20.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_OP_ADD_FLOAT | 1,800,000 | 60.0% |
LOAD_FAST | 1,200,000 | 40.0% |
Successors and predecessors for BINARY_OP_SUBTRACT_FLOAT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 1,200,240 | 50.0% |
LOAD_CONST | 1,200,000 | 50.0% |
LOAD_FAST | 40 | 0.0% |
BINARY_OP | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 1,200,240 | 50.0% |
BINARY_OP_MULTIPLY_FLOAT | 1,200,000 | 50.0% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for BINARY_OP_SUBTRACT_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 5,400,000 | 47.3% |
LOAD_SMALL_INT | 4,811,520 | 42.2% |
LOAD_FAST_LOAD_FAST | 1,200,000 | 10.5% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_LIST_INT | 6,000,000 | 52.6% |
LOAD_SMALL_INT | 1,800,000 | 15.8% |
CALL_BUILTIN_CLASS | 1,200,000 | 10.5% |
LOAD_GLOBAL_BUILTIN | 1,200,000 | 10.5% |
STORE_FAST | 600,360 | 5.3% |
Successors and predecessors for BINARY_SUBSCR_LIST_INT
Predecessors | Count | Percentage |
---|---|---|
BINARY_OP_SUBTRACT_INT | 6,000,000 | 43.3% |
LOAD_FAST | 2,462,260 | 17.8% |
BINARY_OP_ADD_INT | 2,400,000 | 17.3% |
BINARY_SUBSCR_TUPLE_INT | 2,400,000 | 17.3% |
LOAD_FAST_LOAD_FAST | 600,000 | 4.3% |
Successors | Count | Percentage |
---|---|---|
BUILD_TUPLE | 3,000,000 | 21.6% |
LOAD_FAST | 3,000,000 | 21.6% |
COMPARE_OP | 2,400,000 | 17.3% |
PUSH_NULL | 1,200,000 | 8.7% |
LIST_APPEND | 1,200,000 | 8.7% |
Successors and predecessors for BINARY_SUBSCR_TUPLE_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_SMALL_INT | 7,800,040 | 100.0% |
BINARY_SUBSCR | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
COMPARE_OP | 4,800,000 | 61.5% |
BINARY_SUBSCR_LIST_INT | 2,400,000 | 30.8% |
BINARY_OP | 600,000 | 7.7% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for CALL_ALLOC_AND_ENTER_INIT
Predecessors | Count | Percentage |
---|---|---|
BINARY_OP | 600,000 | 50.0% |
BINARY_OP_ADD_FLOAT | 600,000 | 50.0% |
LOAD_SMALL_INT | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 1,200,120 | 100.0% |
Successors and predecessors for CALL_BOUND_METHOD_GENERAL
Predecessors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_LIST_INT | 272,760 | 96.0% |
BINARY_SUBSCR | 11,160 | 3.9% |
LOAD_FAST | 120 | 0.0% |
BINARY_OP_ADD_INT | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 284,040 | 100.0% |
COPY_FREE_VARS | 120 | 0.0% |
Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 1,200,280 | 28.6% |
BINARY_OP_ADD_INT | 1,200,000 | 28.6% |
BINARY_OP_SUBTRACT_INT | 1,200,000 | 28.6% |
CALL_LEN | 600,000 | 14.3% |
LOAD_ATTR_INSTANCE_VALUE | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
GET_ITER | 3,000,240 | 71.4% |
STORE_FAST | 1,200,060 | 28.6% |
LOAD_SMALL_INT | 120 | 0.0% |
Successors and predecessors for CALL_BUILTIN_O
Predecessors | Count | Percentage |
---|---|---|
BINARY_OP_ADD_FLOAT | 1,800,000 | 93.1% |
LOAD_FAST | 134,060 | 6.9% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 1,800,000 | 93.1% |
STORE_FAST | 134,060 | 6.9% |
Successors and predecessors for CALL_ISINSTANCE
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 600,000 | 100.0% |
BUILD_TUPLE | 240 | 0.0% |
Successors | Count | Percentage |
---|---|---|
TO_BOOL_BOOL | 600,240 | 100.0% |
Successors and predecessors for CALL_LEN
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 4,811,160 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 4,200,000 | 87.3% |
CALL_BUILTIN_CLASS | 600,000 | 12.5% |
LOAD_SMALL_INT | 11,160 | 0.2% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 120 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 120 | 100.0% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_NOARGS
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_NO_DICT | 9,620 | 99.8% |
CALL | 20 | 0.2% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 9,580 | 99.4% |
UNPACK_SEQUENCE_TWO_TUPLE | 40 | 0.4% |
UNPACK_SEQUENCE | 20 | 0.2% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_O
Predecessors | Count | Percentage |
---|---|---|
BUILD_TUPLE | 40 | 66.7% |
CALL | 20 | 33.3% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 60 | 100.0% |
Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 600,000 | 50.0% |
BINARY_OP_ADD_FLOAT | 600,000 | 50.0% |
PUSH_NULL | 280 | 0.0% |
CALL | 100 | 0.0% |
LOAD_FAST_LOAD_FAST | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 1,200,060 | 100.0% |
POP_TOP | 180 | 0.0% |
RETURN_VALUE | 60 | 0.0% |
LOAD_FAST | 60 | 0.0% |
STORE_DEREF | 60 | 0.0% |
Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_WITH_VALUES | 4,800,120 | 72.7% |
LOAD_FAST | 1,800,000 | 27.3% |
CALL | 80 | 0.0% |
LOAD_FAST_LOAD_FAST | 80 | 0.0% |
LOAD_ATTR_INSTANCE_VALUE | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 6,600,300 | 100.0% |
COPY_FREE_VARS | 60 | 0.0% |
Successors and predecessors for CALL_PY_GENERAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 120 | 66.7% |
LOAD_CONST_IMMORTAL | 40 | 22.2% |
CALL | 20 | 11.1% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 120 | 66.7% |
MAKE_CELL | 60 | 33.3% |
Successors and predecessors for CALL_TYPE_1
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST_IMMORTAL | 120 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_BUILTIN | 120 | 100.0% |
Successors and predecessors for COMPARE_OP_FLOAT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 2,400,000 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 2,400,000 | 100.0% |
Successors and predecessors for COMPARE_OP_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 1,809,580 | 75.1% |
BINARY_OP_ADD_INT | 600,000 | 24.9% |
LOAD_SMALL_INT | 280 | 0.0% |
COMPARE_OP | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 2,409,880 | 100.0% |
Successors and predecessors for FOR_ITER_RANGE
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 3,000,300 | 99.0% |
JUMP_BACKWARD | 30,840 | 1.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 3,031,080 | 100.0% |
LOAD_FAST | 60 | 0.0% |
Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 45,903,980 | 88.8% |
LOAD_FAST_LOAD_FAST | 4,589,540 | 8.9% |
COPY | 1,200,000 | 2.3% |
LOAD_ATTR | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 18,070,180 | 35.0% |
LOAD_SMALL_INT | 10,800,000 | 20.9% |
BINARY_OP_SUBTRACT_INT | 5,400,000 | 10.4% |
CALL_LEN | 4,811,160 | 9.3% |
LOAD_GLOBAL_BUILTIN | 3,000,000 | 5.8% |
Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 9,580 | 98.8% |
LOAD_ATTR_INSTANCE_VALUE | 80 | 0.8% |
LOAD_ATTR | 40 | 0.4% |
Successors | Count | Percentage |
---|---|---|
CALL_METHOD_DESCRIPTOR_NOARGS | 9,620 | 99.2% |
LOAD_FAST_LOAD_FAST | 60 | 0.6% |
CALL | 20 | 0.2% |
Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 6,000,320 | 90.9% |
BINARY_SUBSCR_LIST_INT | 600,000 | 9.1% |
LOAD_ATTR | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 4,800,120 | 72.7% |
LOAD_FAST | 1,800,180 | 27.3% |
LOAD_FAST_LOAD_FAST | 60 | 0.0% |
Successors and predecessors for LOAD_ATTR_MODULE
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 2,084,280 | 100.0% |
LOAD_ATTR | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
PUSH_NULL | 2,084,280 | 100.0% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for LOAD_CONST_IMMORTAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 600,000 | 49.5% |
POP_JUMP_IF_FALSE | 593,040 | 48.9% |
LOAD_ATTR_INSTANCE_VALUE | 11,160 | 0.9% |
STORE_ATTR_INSTANCE_VALUE | 7,280 | 0.6% |
POP_TOP | 300 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 600,500 | 49.5% |
BINARY_OP | 600,000 | 49.5% |
BINARY_SUBSCR | 11,160 | 0.9% |
LOAD_FAST | 120 | 0.0% |
STORE_FAST | 120 | 0.0% |
Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 4,200,120 | 43.7% |
LOAD_ATTR_INSTANCE_VALUE | 3,000,000 | 31.2% |
BINARY_OP_SUBTRACT_INT | 1,200,000 | 12.5% |
LOAD_GLOBAL_BUILTIN | 600,720 | 6.2% |
RESUME_CHECK | 600,000 | 6.2% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 9,011,820 | 93.7% |
LOAD_GLOBAL_BUILTIN | 600,720 | 6.2% |
BUILD_TUPLE | 240 | 0.0% |
LOAD_DEREF | 120 | 0.0% |
LOAD_CONST_IMMORTAL | 120 | 0.0% |
Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors | Count | Percentage |
---|---|---|
RESUME_CHECK | 2,400,360 | 61.8% |
LOAD_FAST | 872,760 | 22.5% |
POP_JUMP_IF_TRUE | 600,000 | 15.4% |
BINARY_OP_SUBTRACT_INT | 11,160 | 0.3% |
STORE_FAST | 160 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_MODULE | 2,084,280 | 53.7% |
LOAD_FAST | 1,200,120 | 30.9% |
CALL_ISINSTANCE | 600,000 | 15.4% |
LOAD_ATTR | 60 | 0.0% |
LOAD_FAST_LOAD_FAST | 60 | 0.0% |
Successors and predecessors for LOAD_SUPER_ATTR_METHOD
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 120 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 120 | 100.0% |
Successors and predecessors for RESUME_CHECK
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 6,600,300 | 68.7% |
CACHE | 3,000,180 | 31.2% |
ENTER_EXECUTOR | 9,660 | 0.1% |
COPY_FREE_VARS | 180 | 0.0% |
CALL_PY_GENERAL | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 6,010,000 | 62.5% |
LOAD_GLOBAL_MODULE | 2,400,360 | 25.0% |
LOAD_FAST_LOAD_FAST | 600,080 | 6.2% |
LOAD_GLOBAL_BUILTIN | 600,000 | 6.2% |
LOAD_GLOBAL | 60 | 0.0% |
Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors | Count | Percentage |
---|---|---|
SWAP | 1,200,000 | 99.4% |
LOAD_FAST | 7,560 | 0.6% |
LOAD_FAST_LOAD_FAST | 240 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 600,360 | 49.7% |
JUMP_FORWARD | 600,000 | 49.7% |
LOAD_CONST_IMMORTAL | 7,280 | 0.6% |
LOAD_FAST_LOAD_FAST | 160 | 0.0% |
Successors and predecessors for STORE_SUBSCR_LIST_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 7,200,000 | 92.3% |
BINARY_OP_SUBTRACT_INT | 600,000 | 7.7% |
Successors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 7,800,000 | 100.0% |
Successors and predecessors for TO_BOOL_BOOL
Predecessors | Count | Percentage |
---|---|---|
CALL_ISINSTANCE | 600,240 | 100.0% |
LOAD_FAST | 40 | 0.0% |
TO_BOOL | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 600,180 | 100.0% |
POP_JUMP_IF_FALSE | 120 | 0.0% |
Successors and predecessors for TO_BOOL_NONE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 120 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 120 | 100.0% |
Successors and predecessors for UNPACK_SEQUENCE_TWO_TUPLE
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 600,000 | 100.0% |
CALL_METHOD_DESCRIPTOR_NOARGS | 40 | 0.0% |
UNPACK_SEQUENCE | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST_STORE_FAST | 600,060 | 100.0% |
Successors and predecessors for ENTER_EXECUTOR
Predecessors | Count | Percentage |
---|---|---|
STORE_SUBSCR_LIST_INT | 7,800,000 | 67.8% |
CALL_ALLOC_AND_ENTER_INIT | 1,200,120 | 10.4% |
LIST_APPEND | 1,200,000 | 10.4% |
STORE_FAST | 513,980 | 4.5% |
CALL_BOUND_METHOD_GENERAL | 284,040 | 2.5% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 11,075,120 | 96.2% |
ENTER_EXECUTOR | 229,900 | 2.0% |
LOAD_FAST | 121,340 | 1.1% |
LOAD_FAST_LOAD_FAST | 62,260 | 0.5% |
POP_TOP | 11,280 | 0.1% |
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. |
14,431,200 | 31.8% |
hit
ⓘSpecialized instructions that complete. |
31,001,680 | 68.2% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 0.6% |
Failure | 3,500 | 99.4% |
Failure kind | Count | Ratio |
---|---|---|
power | 1,320 | 37.7% |
multiply different types | 1,020 | 29.1% |
true divide float | 560 | 16.0% |
add different types | 140 | 4.0% |
add other | 140 | 4.0% |
subtract other | 140 | 4.0% |
true divide other | 140 | 4.0% |
true divide different types | 40 | 1.1% |
specialization stats for BINARY_SUBSCR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
11,160 | 0.1% |
hit
ⓘSpecialized instructions that complete. |
21,662,320 | 99.9% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 33.3% |
Failure | 40 | 66.7% |
Failure kind | Count | Ratio |
---|---|---|
out of range | 40 | 100.0% |
specialization stats for CALL family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
19,356,180 | 100.0% |
miss
ⓘSpecialized instructions that deopt. |
120 | 0.0% |
Success | Count | Ratio |
---|---|---|
Success | 260 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for COMPARE_OP family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
8,400,000 | 63.6% |
hit
ⓘSpecialized instructions that complete. |
4,809,880 | 36.4% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 1.0% |
Failure | 2,080 | 99.0% |
Failure kind | Count | Ratio |
---|---|---|
float long | 2,080 | 100.0% |
specialization stats for FOR_ITER family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
60 | 0.0% |
hit
ⓘSpecialized instructions that complete. |
3,031,140 | 100.0% |
specialization stats for LOAD_ATTR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
9,640 | 0.0% |
hit
ⓘSpecialized instructions that complete. |
60,387,980 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 200 | 83.3% |
Failure | 40 | 16.7% |
Failure kind | Count | Ratio |
---|---|---|
method | 20 | 50.0% |
specialization stats for LOAD_GLOBAL family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
13,497,540 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 100 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for LOAD_SUPER_ATTR family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
120 | 100.0% |
specialization stats for STORE_ATTR family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
1,207,800 | 100.0% |
specialization stats for STORE_SUBSCR family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
7,800,000 | 100.0% |
specialization stats for TO_BOOL family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
60 | 0.0% |
hit
ⓘSpecialized instructions that complete. |
600,420 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 50.0% |
Failure | 20 | 50.0% |
Failure kind | Count | Ratio |
---|---|---|
sequence | 20 | 100.0% |
specialization stats for UNPACK_SEQUENCE family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
600,060 | 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. |
254,690,620 | 56.1% |
Not specialized
ⓘInstructions that could be specialized but aren't, e.g. |
22,858,460 | 5.0% |
Specialized hits
ⓘSpecialized instructions, e.g. |
176,262,620 | 38.8% |
Specialized misses
ⓘSpecialized instructions, e.g. |
200 | 0.0% |
Breakdown of deferred (not specialized) instruction counts by family
Name | Count | Ratio |
---|---|---|
BINARY_OP | 14,431,200 | 63.2% |
COMPARE_OP | 8,400,000 | 36.8% |
BINARY_SUBSCR | 11,160 | 0.0% |
LOAD_ATTR | 9,640 | 0.0% |
TO_BOOL | 60 | 0.0% |
FOR_ITER | 60 | 0.0% |
BINARY_SLICE | 0 | 0.0% |
STORE_SLICE | 0 | 0.0% |
CACHE | 0 | 0.0% |
EXIT_INIT_CHECK | 0 | 0.0% |
Breakdown of misses (specialized deopts) instruction counts by family
Name | Count | Ratio |
---|---|---|
CALL_METHOD_DESCRIPTOR_FAST | 120 | 42.9% |
RESUME | 80 | 28.6% |
RESUME_CHECK | 80 | 28.6% |
CACHE | 0 | 0.0% |
EXIT_INIT_CHECK | 0 | 0.0% |
GET_ITER | 0 | 0.0% |
INTERPRETER_EXIT | 0 | 0.0% |
MAKE_FUNCTION | 0 | 0.0% |
NOP | 0 | 0.0% |
POP_TOP | 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 | 3,000,180 | 10.4% |
Calls to Python functions inlined | 25,800,540 | 89.6% |
Calls via PyEval_EvalFrame (total) | 3,000,180 | 10.4% |
Calls via PyEval_EvalFrame (vector) | 3,000,180 | 10.4% |
Calls via PyEval_EvalFrame (generator) | 0 | 0.0% |
Calls via PyEval_EvalFrame (legacy) | 0 | 0.0% |
Calls via PyEval_EvalFrame (function vectorcall) | 3,000,180 | 10.4% |
Calls via PyEval_EvalFrame (build class) | 0 | 0.0% |
Calls via PyEval_EvalFrame (slot) | 1,800,000 | 6.2% |
Calls via PyEval_EvalFrame (function ex) | 0 | 0.0% |
Calls via PyEval_EvalFrame (api) | 0 | 0.0% |
Calls via PyEval_EvalFrame (method) | 0 | 0.0% |
Frame objects created | 0 | 0.0% |
Frames pushed | 37,200,840 | 129.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 | 102,010,720 | 79.4% |
Frees to freelist | 102,010,720 | |
Allocations | 26,484,220 | 20.6% |
Allocations to 512 bytes | 26,453,420 | 20.6% |
Allocations to 4 kbytes | 30,800 | 0.0% |
Allocations over 4 kbytes | 0 | 0.0% |
Frees | 27,684,064 | |
Inline values | 8,400,120 | |
Interpreter mortal increfs | 592,857,740 | 66.1% |
Interpreter mortal decrefs | 559,859,080 | 43.6% |
Mortal increfs | 16,202,173 | 1.8% |
Mortal decrefs | 177,633,659 | 13.8% |
Interpreter immortal increfs | 253,423,140 | 28.2% |
Interpreter immortal decrefs | 491,421,280 | 38.3% |
Immortal increfs | 34,876,893 | 3.9% |
Immortal decrefs | 55,401,767 | 4.3% |
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,200,209 | |
Method cache misses | 31 | |
Method cache collisions | 46 | |
Method cache dunder hits | 3,000,458 | |
Method cache dunder misses | 22 |
GC collections and effectiveness
Collected/visits gives some measure of efficiency.
Generation | Collections | Objects collected | Object visits | Reachable from roots | Not reachable from roots |
---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 0 | 0 |
2 | 0 | 0 | 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. |
2,780 | |
Traces created
ⓘThe number of traces that were successfully created. |
80 | 2.9% |
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. |
2,720 | 97.8% |
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 abandoned because it it too short. |
2,700 | 97.1% |
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 |
31,839,360 | |
Uops executed
ⓘThe total number of uops (micro-operations) that were executed |
1,672,916,260 | 5,254.2% |
Count | Ratio | |
---|---|---|
Optimizer attempts
ⓘThe number of times the trace optimizer (_Py_uop_analyze_and_optimize) was run. |
80 | |
Optimizer successes
ⓘThe number of traces that were successfully optimized. |
80 | 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 | 0 | 0.0% |
<= 16 | 40 | 50.0% |
<= 32 | 20 | 25.0% |
<= 64 | 20 | 25.0% |
optimized trace length histogram
Range | Count | Ratio |
---|---|---|
<= 1 | 0 | 0.0% |
<= 2 | 0 | 0.0% |
<= 4 | 0 | 0.0% |
<= 8 | 0 | 0.0% |
<= 16 | 60 | 75.0% |
<= 32 | 20 | 25.0% |
trace run length histogram
Range | Count | Ratio |
---|---|---|
<= 1 | 0 | 0.0% |
<= 2 | 0 | 0.0% |
<= 4 | 80 | 0.0% |
uop execution stats
Name | Count | Self | Cumulative | Miss ratio |
---|---|---|---|---|
_SET_IP | 112,268,920 | 6.7% | 6.7% | |
_CHECK_VALIDITY | 95,153,080 | 5.7% | 12.4% | |
_LOAD_FAST_0 | 83,505,280 | 5.0% | 17.4% | |
_CHECK_MANAGED_OBJECT_HAS_VALUES | 77,514,740 | 4.6% | 22.0% | |
_LOAD_ATTR_INSTANCE_VALUE_0 | 77,514,740 | 4.6% | 26.7% | |
_LOAD_FAST | 72,599,880 | 4.3% | 31.0% | |
_LOAD_FAST_3 | 61,182,760 | 3.7% | 34.7% | |
_BINARY_OP_SUBTRACT_INT | 57,600,000 | 3.4% | 38.1% | |
_LOAD_FAST_1 | 52,362,080 | 3.1% | 41.2% | |
_BINARY_OP_MULTIPLY_FLOAT | 43,200,000 | 2.6% | 43.8% | |
_BINARY_OP_ADD_INT | 42,754,820 | 2.6% | 46.4% | |
_GUARD_TYPE_VERSION | 39,744,920 | 2.4% | 48.7% | |
_STORE_FAST | 36,599,880 | 2.2% | 50.9% | |
_BINARY_SUBSCR_LIST_INT | 36,115,580 | 2.2% | 53.1% | |
_MAKE_WARM | 35,439,360 | 2.1% | 55.2% | |
_LOAD_FAST_2 | 34,424,200 | 2.1% | 57.3% | |
_LOAD_SMALL_INT_1 | 32,644,440 | 2.0% | 59.2% | |
_START_EXECUTOR | 31,839,360 | 1.9% | 61.1% | |
_LOAD_FAST_4 | 30,869,100 | 1.8% | 63.0% | |
_BINARY_OP | 29,999,760 | 1.8% | 64.8% | |
_GUARD_NOS_FLOAT | 28,800,000 | 1.7% | 66.5% | |
_CHECK_PERIODIC | 27,563,520 | 1.6% | 68.1% | |
_GUARD_DORV_NO_DICT | 25,200,120 | 1.5% | 69.6% | |
_STORE_ATTR_INSTANCE_VALUE | 25,200,120 | 1.5% | 71.1% | |
_EXIT_TRACE | 22,523,320 | 1.3% | 72.5% | |
_GUARD_NOT_EXHAUSTED_RANGE | 22,300,080 | 1.3% | 73.8% | 27.0% |
_ITER_CHECK_RANGE | 22,300,080 | 1.3% | 75.2% | |
_GUARD_TOS_INT | 22,044,360 | 1.3% | 76.5% | |
_BINARY_OP_ADD_FLOAT | 21,600,000 | 1.3% | 77.8% | |
_LOAD_FAST_7 | 18,000,000 | 1.1% | 78.8% | |
_PUSH_FRAME | 17,715,720 | 1.1% | 79.9% | |
_GUARD_BOTH_INT | 16,704,400 | 1.0% | 80.9% | |
_ITER_NEXT_RANGE | 16,288,800 | 1.0% | 81.9% | |
_STORE_FAST_4 | 15,750,940 | 0.9% | 82.8% | |
_LOAD_FAST_5 | 15,600,000 | 0.9% | 83.7% | |
_GUARD_BOTH_FLOAT | 15,599,760 | 0.9% | 84.7% | |
_LOAD_FAST_6 | 14,400,000 | 0.9% | 85.5% | |
_CHECK_FUNCTION | 12,915,960 | 0.8% | 86.3% | |
_TIER2_RESUME_CHECK | 10,790,540 | 0.6% | 87.0% | 0.0% |
_SAVE_RETURN_OFFSET | 10,515,720 | 0.6% | 87.6% | |
_LOAD_CONST_INLINE_BORROW | 9,600,040 | 0.6% | 88.2% | |
_CHECK_FUNCTION_VERSION | 9,599,760 | 0.6% | 88.7% | |
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT | 9,599,760 | 0.6% | 89.3% | |
_GUARD_KEYS_VERSION | 9,599,760 | 0.6% | 89.9% | |
_LOAD_ATTR_METHOD_WITH_VALUES | 9,599,760 | 0.6% | 90.4% | |
_DYNAMIC_EXIT | 9,315,960 | 0.6% | 91.0% | |
_CHECK_FUNCTION_EXACT_ARGS | 8,999,880 | 0.5% | 91.5% | |
_LOAD_CONST_INLINE_WITH_NULL | 8,400,000 | 0.5% | 92.0% | |
_RESUME_CHECK | 8,399,760 | 0.5% | 92.5% | |
_CHECK_STACK_SPACE_OPERAND | 7,799,880 | 0.5% | 93.0% | |
_CHECK_AND_ALLOCATE_OBJECT | 7,200,000 | 0.4% | 93.4% | |
_CREATE_INIT_FRAME | 7,200,000 | 0.4% | 93.9% | |
_GUARD_IS_NOT_NONE_POP | 7,200,000 | 0.4% | 94.3% | |
_INIT_CALL_PY_EXACT_ARGS_3 | 7,200,000 | 0.4% | 94.7% | |
_CHECK_VALIDITY_AND_SET_IP | 6,805,200 | 0.4% | 95.1% | |
_POP_TOP | 6,281,520 | 0.4% | 95.5% | |
_CALL_BUILTIN_CLASS | 5,399,880 | 0.3% | 95.8% | |
_LOAD_CONST_INLINE_BORROW_WITH_NULL | 5,399,880 | 0.3% | 96.2% | |
_GET_ITER | 4,800,000 | 0.3% | 96.5% | |
_COMPARE_OP_INT | 3,882,740 | 0.2% | 96.7% | |
_GUARD_IS_TRUE_POP | 3,777,840 | 0.2% | 96.9% | 18.3% |
_LIST_APPEND | 3,600,000 | 0.2% | 97.1% | |
_JUMP_TO_TOP | 3,600,000 | 0.2% | 97.3% | |
_LOAD_SMALL_INT_2 | 3,600,000 | 0.2% | 97.6% | |
_STORE_FAST_7 | 3,600,000 | 0.2% | 97.8% | |
_STORE_FAST_3 | 3,079,220 | 0.2% | 98.0% | |
_GUARD_NOS_INT | 2,999,880 | 0.2% | 98.1% | |
_GUARD_IS_FALSE_POP | 2,994,020 | 0.2% | 98.3% | 20.1% |
_CALL_BUILTIN_O | 2,869,540 | 0.2% | 98.5% | |
_PUSH_NULL | 2,585,500 | 0.2% | 98.6% | |
_LOAD_SMALL_INT_0 | 2,400,000 | 0.1% | 98.8% | |
_GUARD_IS_NONE_POP | 1,799,880 | 0.1% | 98.9% | |
_COMPARE_OP | 1,689,120 | 0.1% | 99.0% | |
_PY_FRAME_GENERAL | 1,515,840 | 0.1% | 99.1% | |
_STORE_FAST_2 | 1,256,440 | 0.1% | 99.2% | |
_IS_OP | 1,200,000 | 0.1% | 99.2% | |
_CHECK_STACK_SPACE | 1,200,000 | 0.1% | 99.3% | |
_INIT_CALL_PY_EXACT_ARGS_1 | 1,200,000 | 0.1% | 99.4% | |
_STORE_FAST_5 | 1,200,000 | 0.1% | 99.4% | |
_STORE_FAST_6 | 1,200,000 | 0.1% | 99.5% | |
_BINARY_OP_SUBTRACT_FLOAT | 1,199,760 | 0.1% | 99.6% | |
_CALL_METHOD_DESCRIPTOR_NOARGS | 1,190,420 | 0.1% | 99.7% | |
_LOAD_ATTR | 1,190,420 | 0.1% | 99.7% | |
_LOAD_ATTR_METHOD_NO_DICT | 1,190,420 | 0.1% | 99.8% | |
_CHECK_METHOD_VERSION | 915,960 | 0.1% | 99.9% | |
_EXPAND_METHOD | 915,960 | 0.1% | 99.9% | |
_LOAD_CONST_INLINE | 915,960 | 0.1% | 100.0% | |
_INIT_CALL_PY_EXACT_ARGS_0 | 599,880 | 0.0% | 100.0% | |
_DEOPT | 80 | 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.
Pair | Count | Self | Cumulative |
---|---|---|---|
_CHECK_MANAGED_OBJECT_HAS_VALUES _LOAD_ATTR_INSTANCE_VALUE_0 | 77,514,740 | 4.6% | 4.6% |
_LOAD_FAST_0 _CHECK_MANAGED_OBJECT_HAS_VALUES | 41,360,280 | 2.5% | 7.1% |
_SET_IP _BINARY_SUBSCR_LIST_INT | 36,115,580 | 2.2% | 9.3% |
_BINARY_SUBSCR_LIST_INT _CHECK_VALIDITY | 34,110,380 | 2.0% | 11.3% |
_START_EXECUTOR _MAKE_WARM | 31,839,360 | 1.9% | 13.2% |
_SET_IP _BINARY_OP | 29,999,760 | 1.8% | 15.0% |
_BINARY_OP _CHECK_VALIDITY | 29,999,760 | 1.8% | 16.8% |
_BINARY_OP_SUBTRACT_INT _SET_IP | 28,800,000 | 1.7% | 18.5% |
_CHECK_VALIDITY _STORE_FAST | 28,800,000 | 1.7% | 20.2% |
_GUARD_NOS_FLOAT _BINARY_OP_MULTIPLY_FLOAT | 28,800,000 | 1.7% | 22.0% |
_LOAD_ATTR_INSTANCE_VALUE_0 _LOAD_FAST_3 | 27,715,580 | 1.7% | 23.6% |
_GUARD_DORV_NO_DICT _STORE_ATTR_INSTANCE_VALUE | 25,200,120 | 1.5% | 25.1% |
_LOAD_FAST_0 _GUARD_TYPE_VERSION | 23,554,620 | 1.4% | 26.5% |
_CHECK_PERIODIC _CHECK_VALIDITY | 22,763,520 | 1.4% | 27.9% |
_CHECK_VALIDITY _ITER_CHECK_RANGE | 22,300,080 | 1.3% | 29.2% |
_ITER_CHECK_RANGE _GUARD_NOT_EXHAUSTED_RANGE | 22,300,080 | 1.3% | 30.6% |
_LOAD_FAST _SET_IP | 22,199,880 | 1.3% | 31.9% |
_BINARY_OP_MULTIPLY_FLOAT _BINARY_OP_ADD_FLOAT | 21,600,000 | 1.3% | 33.2% |
_BINARY_OP_MULTIPLY_FLOAT _LOAD_FAST_1 | 21,600,000 | 1.3% | 34.5% |
_CHECK_VALIDITY _LOAD_FAST | 21,600,000 | 1.3% | 35.8% |
_LOAD_ATTR_INSTANCE_VALUE_0 _LOAD_FAST_2 | 21,600,000 | 1.3% | 37.0% |
_LOAD_FAST _LOAD_FAST | 21,600,000 | 1.3% | 38.3% |
_GUARD_TYPE_VERSION _CHECK_MANAGED_OBJECT_HAS_VALUES | 21,154,580 | 1.3% | 39.6% |
_SET_IP _CHECK_PERIODIC | 18,103,680 | 1.1% | 40.7% |
_MAKE_WARM _SET_IP | 18,103,680 | 1.1% | 41.8% |
_BINARY_OP_ADD_INT _SET_IP | 17,044,440 | 1.0% | 42.8% |
_LOAD_FAST_0 _GUARD_DORV_NO_DICT | 16,800,080 | 1.0% | 43.8% |
_GUARD_NOT_EXHAUSTED_RANGE _ITER_NEXT_RANGE | 16,288,800 | 1.0% | 44.8% |
_LOAD_FAST_3 _LOAD_FAST_0 | 15,600,040 | 0.9% | 45.7% |
_LOAD_SMALL_INT_1 _BINARY_OP_ADD_INT | 15,244,560 | 0.9% | 46.6% |
_LOAD_FAST_1 _CHECK_MANAGED_OBJECT_HAS_VALUES | 14,999,880 | 0.9% | 47.5% |
_GUARD_TOS_INT _BINARY_OP_ADD_INT | 14,844,360 | 0.9% | 48.4% |
_BINARY_OP_ADD_FLOAT _LOAD_FAST_0 | 14,400,000 | 0.9% | 49.3% |
_BINARY_OP_ADD_INT _LOAD_FAST_7 | 14,400,000 | 0.9% | 50.1% |
_GUARD_BOTH_FLOAT _BINARY_OP_MULTIPLY_FLOAT | 14,400,000 | 0.9% | 51.0% |
_GUARD_BOTH_INT _BINARY_OP_SUBTRACT_INT | 14,400,000 | 0.9% | 51.8% |
_LOAD_ATTR_INSTANCE_VALUE_0 _GUARD_TOS_INT | 14,400,000 | 0.9% | 52.7% |
_LOAD_FAST_2 _GUARD_NOS_FLOAT | 14,400,000 | 0.9% | 53.6% |
_LOAD_FAST_3 _GUARD_NOS_FLOAT | 14,400,000 | 0.9% | 54.4% |
_LOAD_FAST_5 _LOAD_FAST | 14,400,000 | 0.9% | 55.3% |
_LOAD_FAST_6 _LOAD_FAST_4 | 14,400,000 | 0.9% | 56.1% |
_LOAD_SMALL_INT_1 _BINARY_OP_SUBTRACT_INT | 14,400,000 | 0.9% | 57.0% |
_BINARY_OP_SUBTRACT_INT _LOAD_SMALL_INT_1 | 10,800,000 | 0.6% | 57.6% |
_ITER_NEXT_RANGE _STORE_FAST_4 | 10,800,000 | 0.6% | 58.3% |
_LOAD_FAST_7 _BINARY_OP_SUBTRACT_INT | 10,800,000 | 0.6% | 58.9% |
_MAKE_WARM _TIER2_RESUME_CHECK | 10,790,540 | 0.6% | 59.6% |
_SAVE_RETURN_OFFSET _PUSH_FRAME | 10,515,720 | 0.6% | 60.2% |
_LOAD_FAST_1 _LOAD_FAST_0 | 10,089,160 | 0.6% | 60.8% |
_SET_IP _CHECK_FUNCTION_VERSION | 9,599,760 | 0.6% | 61.4% |
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT _GUARD_KEYS_VERSION | 9,599,760 | 0.6% | 62.0% |
_GUARD_KEYS_VERSION _LOAD_ATTR_METHOD_WITH_VALUES | 9,599,760 | 0.6% | 62.5% |
_PUSH_FRAME _DYNAMIC_EXIT | 9,315,960 | 0.6% | 63.1% |
_CHECK_FUNCTION_VERSION _CHECK_FUNCTION_EXACT_ARGS | 8,999,880 | 0.5% | 63.6% |
_GUARD_TYPE_VERSION _GUARD_DORV_VALUES_INST_ATTR_FROM_DICT | 8,999,880 | 0.5% | 64.2% |
_LOAD_FAST_1 _GUARD_TYPE_VERSION | 8,990,300 | 0.5% | 64.7% |
_LOAD_FAST_2 _LOAD_FAST_0 | 8,910,420 | 0.5% | 65.2% |
_GUARD_TYPE_VERSION _GUARD_DORV_NO_DICT | 8,400,040 | 0.5% | 65.7% |
_LOAD_CONST_INLINE_BORROW _EXIT_TRACE | 8,400,040 | 0.5% | 66.2% |
_STORE_ATTR_INSTANCE_VALUE _LOAD_CONST_INLINE_BORROW | 8,400,040 | 0.5% | 66.7% |
_STORE_ATTR_INSTANCE_VALUE _LOAD_FAST_2 | 8,400,040 | 0.5% | 67.2% |
_STORE_ATTR_INSTANCE_VALUE _LOAD_FAST_3 | 8,400,040 | 0.5% | 67.7% |
_TIER2_RESUME_CHECK _LOAD_FAST_1 | 8,400,040 | 0.5% | 68.3% |
_CHECK_FUNCTION _LOAD_CONST_INLINE_WITH_NULL | 8,400,000 | 0.5% | 68.8% |
_LOAD_FAST_1 _SET_IP | 8,400,000 | 0.5% | 69.3% |
_CHECK_FUNCTION_EXACT_ARGS _CHECK_STACK_SPACE_OPERAND | 7,799,880 | 0.5% | 69.7% |
_PUSH_FRAME _RESUME_CHECK | 7,799,880 | 0.5% | 70.2% |
_RESUME_CHECK _LOAD_FAST_3 | 7,200,000 | 0.4% | 70.6% |
_SET_IP _CHECK_AND_ALLOCATE_OBJECT | 7,200,000 | 0.4% | 71.0% |
_BINARY_OP_ADD_FLOAT _SET_IP | 7,200,000 | 0.4% | 71.5% |
_BINARY_OP_SUBTRACT_INT _LOAD_FAST_0 | 7,200,000 | 0.4% | 71.9% |
_BINARY_OP_SUBTRACT_INT _STORE_FAST | 7,200,000 | 0.4% | 72.3% |
_CHECK_AND_ALLOCATE_OBJECT _CREATE_INIT_FRAME | 7,200,000 | 0.4% | 72.8% |
_CHECK_STACK_SPACE_OPERAND _INIT_CALL_PY_EXACT_ARGS_3 | 7,200,000 | 0.4% | 73.2% |
_CHECK_VALIDITY _GUARD_TYPE_VERSION | 7,200,000 | 0.4% | 73.6% |
_CREATE_INIT_FRAME _PUSH_FRAME | 7,200,000 | 0.4% | 74.1% |
_GUARD_IS_NOT_NONE_POP _CHECK_FUNCTION | 7,200,000 | 0.4% | 74.5% |
_GUARD_TOS_INT _BINARY_OP_SUBTRACT_INT | 7,200,000 | 0.4% | 74.9% |
_INIT_CALL_PY_EXACT_ARGS_3 _SAVE_RETURN_OFFSET | 7,200,000 | 0.4% | 75.4% |
_LOAD_ATTR_INSTANCE_VALUE_0 _GUARD_BOTH_INT | 7,200,000 | 0.4% | 75.8% |
_LOAD_ATTR_METHOD_WITH_VALUES _LOAD_FAST_5 | 7,200,000 | 0.4% | 76.2% |
_LOAD_CONST_INLINE_WITH_NULL _LOAD_FAST_0 | 7,200,000 | 0.4% | 76.6% |
_LOAD_FAST _BINARY_OP_SUBTRACT_INT | 7,200,000 | 0.4% | 77.1% |
_LOAD_FAST _GUARD_BOTH_INT | 7,200,000 | 0.4% | 77.5% |
_LOAD_FAST _LOAD_FAST_1 | 7,200,000 | 0.4% | 77.9% |
_LOAD_FAST _LOAD_SMALL_INT_1 | 7,200,000 | 0.4% | 78.4% |
_LOAD_FAST_1 _LOAD_FAST | 7,200,000 | 0.4% | 78.8% |
_LOAD_FAST_2 _GUARD_BOTH_FLOAT | 7,200,000 | 0.4% | 79.2% |
_LOAD_FAST_3 _GUARD_BOTH_FLOAT | 7,200,000 | 0.4% | 79.7% |
_LOAD_FAST_3 _GUARD_IS_NOT_NONE_POP | 7,200,000 | 0.4% | 80.1% |
_LOAD_FAST_4 _LOAD_FAST_0 | 7,200,000 | 0.4% | 80.5% |
_LOAD_FAST_4 _LOAD_FAST_3 | 7,200,000 | 0.4% | 80.9% |
_LOAD_FAST_4 _LOAD_SMALL_INT_1 | 7,200,000 | 0.4% | 81.4% |
_STORE_FAST _LOAD_FAST | 7,200,000 | 0.4% | 81.8% |
_STORE_FAST _LOAD_FAST_1 | 7,200,000 | 0.4% | 82.2% |
_STORE_FAST _LOAD_FAST_4 | 7,200,000 | 0.4% | 82.7% |
_STORE_FAST _LOAD_FAST_5 | 7,200,000 | 0.4% | 83.1% |
_STORE_FAST _LOAD_FAST_6 | 7,200,000 | 0.4% | 83.5% |
_STORE_FAST_4 _LOAD_FAST_6 | 7,200,000 | 0.4% | 84.0% |
_GUARD_NOT_EXHAUSTED_RANGE _EXIT_TRACE | 6,011,280 | 0.4% | 84.3% |
_MAKE_WARM _POP_TOP | 6,000,000 | 0.4% | 84.7% |
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-12-15