- benchmark: nqueens
- fork: python
- ref: cf4c4ecc26c7e3b89f2e56893260a8a3319dab3d
- commit hash: cf4c4ec
- commit date: 2025-02-01T18:49:45+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 | 177,639,420 | 10.7% | 10.7% | |
POP_TOP | 103,646,580 | 6.3% | 17.0% | |
STORE_FAST | 97,434,720 | 5.9% | 22.9% | |
JUMP_BACKWARD_NO_JIT | 97,433,460 | 5.9% | 28.7% | |
RESUME_CHECK | 94,223,400 | 5.7% | 34.4% | |
LOAD_FAST_LOAD_FAST | 92,064,420 | 5.6% | 40.0% | |
INTERPRETER_EXIT | 89,384,520 | 5.4% | 45.4% | |
YIELD_VALUE | 84,292,320 | 5.1% | 50.5% | |
LOAD_DEREF | 79,454,100 | 4.8% | 55.3% | |
BINARY_SUBSCR_TUPLE_INT | 79,442,940 | 4.8% | 60.1% | |
FOR_ITER_RANGE | 58,979,940 | 3.6% | 63.6% | |
BINARY_OP_ADD_INT | 55,334,880 | 3.3% | 67.0% | |
FOR_ITER_LIST | 43,545,600 | 2.6% | 69.6% | |
LOAD_SMALL_INT | 42,931,800 | 2.6% | 72.2% | |
SWAP | 35,980,680 | 2.2% | 74.3% | |
BINARY_SUBSCR_LIST_INT | 35,980,560 | 2.2% | 76.5% | |
LOAD_CONST_IMMORTAL | 31,397,160 | 1.9% | 78.4% | |
COPY | 31,142,400 | 1.9% | 80.3% | |
STORE_SUBSCR_LIST_INT | 26,304,000 | 1.6% | 81.9% | |
LOAD_GLOBAL_BUILTIN | 24,700,140 | 1.5% | 83.4% | |
GET_ITER | 24,699,300 | 1.5% | 84.9% | |
BINARY_OP_SUBTRACT_INT | 23,494,320 | 1.4% | 86.3% | |
POP_JUMP_IF_FALSE | 22,828,920 | 1.4% | 87.7% | |
BINARY_SLICE | 21,465,840 | 1.3% | 88.9% | |
COMPARE_OP_INT | 18,244,020 | 1.1% | 90.1% | |
CALL_BUILTIN_CLASS | 14,769,540 | 0.9% | 90.9% | |
RETURN_VALUE | 9,931,080 | 0.6% | 91.5% | |
POP_ITER | 9,930,720 | 0.6% | 92.1% | |
CALL_PY_EXACT_ARGS | 9,930,720 | 0.6% | 92.7% | |
RETURN_GENERATOR | 9,930,600 | 0.6% | 93.3% | |
LOAD_CONST_MORTAL | 9,930,600 | 0.6% | 93.9% | |
BUILD_TUPLE | 9,930,480 | 0.6% | 94.5% | |
MAKE_FUNCTION | 9,930,420 | 0.6% | 95.1% | |
COPY_FREE_VARS | 9,930,420 | 0.6% | 95.7% | |
SET_FUNCTION_ATTRIBUTE | 9,930,420 | 0.6% | 96.3% | |
UNARY_NEGATIVE | 9,676,560 | 0.6% | 96.9% | |
BINARY_OP | 8,315,780 | 0.5% | 97.4% | |
STORE_SLICE | 8,313,720 | 0.5% | 97.9% | |
CALL_LEN | 5,092,080 | 0.3% | 98.2% | |
BINARY_SUBSCR | 4,839,620 | 0.3% | 98.5% | |
STORE_SUBSCR | 4,839,460 | 0.3% | 98.8% | |
STORE_DEREF | 4,838,580 | 0.3% | 99.1% | |
CALL_TUPLE_1 | 4,838,520 | 0.3% | 99.4% | |
FOR_ITER_GEN | 4,838,520 | 0.3% | 99.7% | |
TO_BOOL_INT | 4,838,400 | 0.3% | 100.0% | |
POP_JUMP_IF_TRUE | 253,620 | 0.0% | 100.0% | |
JUMP_FORWARD | 11,100 | 0.0% | 100.0% | |
PUSH_NULL | 540 | 0.0% | 100.0% | |
LOAD_GLOBAL_MODULE | 480 | 0.0% | 100.0% | |
CALL_NON_PY_GENERAL | 420 | 0.0% | 100.0% | |
MAKE_CELL | 300 | 0.0% | 100.0% | |
LOAD_ATTR | 280 | 0.0% | 100.0% | |
CALL | 260 | 0.0% | 100.0% | |
LOAD_ATTR_INSTANCE_VALUE | 240 | 0.0% | 100.0% | |
POP_JUMP_IF_NOT_NONE | 180 | 0.0% | 100.0% | |
CALL_PY_GENERAL | 180 | 0.0% | 100.0% | |
LOAD_ATTR_MODULE | 180 | 0.0% | 100.0% | |
END_FOR | 120 | 0.0% | 100.0% | |
LOAD_ATTR_METHOD_NO_DICT | 120 | 0.0% | 100.0% | |
LOAD_ATTR_METHOD_WITH_VALUES | 120 | 0.0% | 100.0% | |
TO_BOOL | 100 | 0.0% | 100.0% | |
LOAD_GLOBAL | 100 | 0.0% | 100.0% | |
CALL_FUNCTION_EX | 60 | 0.0% | 100.0% | |
NOP | 60 | 0.0% | 100.0% | |
FOR_ITER | 60 | 0.0% | 100.0% | |
IS_OP | 60 | 0.0% | 100.0% | |
STORE_FAST_STORE_FAST | 60 | 0.0% | 100.0% | |
BINARY_OP_SUBTRACT_FLOAT | 60 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_NOARGS | 60 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_O | 60 | 0.0% | 100.0% | |
TO_BOOL_BOOL | 60 | 0.0% | 100.0% | |
UNPACK_SEQUENCE_TWO_TUPLE | 60 | 0.0% | 100.0% | |
COMPARE_OP | 20 | 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 |
---|---|---|---|
POP_TOP JUMP_BACKWARD_NO_JIT | 88,877,220 | 5.4% | 5.4% |
RESUME_CHECK POP_TOP | 84,292,320 | 5.1% | 10.5% |
CACHE RESUME_CHECK | 79,454,100 | 4.8% | 15.2% |
YIELD_VALUE INTERPRETER_EXIT | 79,453,920 | 4.8% | 20.0% |
STORE_FAST LOAD_DEREF | 79,442,940 | 4.8% | 24.8% |
LOAD_DEREF LOAD_FAST | 79,442,880 | 4.8% | 29.6% |
LOAD_FAST BINARY_SUBSCR_TUPLE_INT | 79,442,880 | 4.8% | 34.4% |
FOR_ITER_RANGE STORE_FAST | 53,887,800 | 3.3% | 37.7% |
JUMP_BACKWARD_NO_JIT FOR_ITER_RANGE | 49,049,520 | 3.0% | 40.6% |
BINARY_SUBSCR_TUPLE_INT LOAD_FAST | 40,735,680 | 2.5% | 43.1% |
LOAD_FAST BINARY_OP_ADD_INT | 38,707,200 | 2.3% | 45.4% |
BINARY_OP_ADD_INT YIELD_VALUE | 38,707,200 | 2.3% | 47.8% |
BINARY_SUBSCR_TUPLE_INT YIELD_VALUE | 38,707,200 | 2.3% | 50.1% |
FOR_ITER_LIST STORE_FAST | 38,707,200 | 2.3% | 52.4% |
JUMP_BACKWARD_NO_JIT FOR_ITER_LIST | 38,707,200 | 2.3% | 54.8% |
BINARY_SUBSCR_LIST_INT LOAD_SMALL_INT | 26,304,000 | 1.6% | 56.4% |
LOAD_FAST_LOAD_FAST BINARY_SUBSCR_LIST_INT | 22,828,560 | 1.4% | 57.7% |
COMPARE_OP_INT POP_JUMP_IF_FALSE | 17,990,460 | 1.1% | 58.8% |
STORE_FAST LOAD_FAST_LOAD_FAST | 17,990,280 | 1.1% | 59.9% |
STORE_SUBSCR_LIST_INT LOAD_FAST_LOAD_FAST | 17,990,280 | 1.1% | 61.0% |
LOAD_SMALL_INT BINARY_OP_ADD_INT | 16,627,680 | 1.0% | 62.0% |
LOAD_FAST GET_ITER | 15,022,380 | 0.9% | 62.9% |
LOAD_GLOBAL_BUILTIN LOAD_FAST | 14,769,180 | 0.9% | 63.8% |
LOAD_SMALL_INT COMPARE_OP_INT | 13,152,040 | 0.8% | 64.6% |
COPY COPY | 13,152,000 | 0.8% | 65.4% |
COPY BINARY_SUBSCR_LIST_INT | 13,152,000 | 0.8% | 66.2% |
LOAD_FAST_LOAD_FAST COPY | 13,152,000 | 0.8% | 67.0% |
LOAD_FAST_LOAD_FAST STORE_SUBSCR_LIST_INT | 13,152,000 | 0.8% | 67.8% |
LOAD_SMALL_INT BINARY_OP_SUBTRACT_INT | 13,152,000 | 0.8% | 68.6% |
POP_JUMP_IF_FALSE LOAD_FAST_LOAD_FAST | 13,152,000 | 0.8% | 69.4% |
SWAP SWAP | 13,152,000 | 0.8% | 70.2% |
SWAP STORE_SUBSCR_LIST_INT | 13,152,000 | 0.8% | 70.9% |
BINARY_OP_SUBTRACT_INT SWAP | 13,152,000 | 0.8% | 71.7% |
LOAD_CONST_IMMORTAL RETURN_VALUE | 9,930,900 | 0.6% | 72.3% |
POP_ITER LOAD_CONST_IMMORTAL | 9,930,600 | 0.6% | 72.9% |
POP_TOP RESUME_CHECK | 9,930,600 | 0.6% | 73.5% |
RETURN_VALUE INTERPRETER_EXIT | 9,930,600 | 0.6% | 74.1% |
LOAD_GLOBAL_BUILTIN LOAD_GLOBAL_BUILTIN | 9,930,600 | 0.6% | 74.7% |
RESUME_CHECK LOAD_FAST | 9,930,540 | 0.6% | 75.3% |
CACHE POP_TOP | 9,930,480 | 0.6% | 75.9% |
GET_ITER FOR_ITER_RANGE | 9,930,420 | 0.6% | 76.5% |
MAKE_FUNCTION SET_FUNCTION_ATTRIBUTE | 9,930,420 | 0.6% | 77.1% |
BUILD_TUPLE LOAD_CONST_MORTAL | 9,930,420 | 0.6% | 77.7% |
LOAD_FAST BUILD_TUPLE | 9,930,420 | 0.6% | 78.3% |
CALL_PY_EXACT_ARGS COPY_FREE_VARS | 9,930,420 | 0.6% | 78.9% |
LOAD_CONST_MORTAL MAKE_FUNCTION | 9,930,420 | 0.6% | 79.5% |
GET_ITER CALL_PY_EXACT_ARGS | 9,930,360 | 0.6% | 80.1% |
COPY_FREE_VARS RETURN_GENERATOR | 9,930,360 | 0.6% | 80.7% |
SET_FUNCTION_ATTRIBUTE LOAD_FAST | 9,930,360 | 0.6% | 81.3% |
LOAD_FAST_LOAD_FAST UNARY_NEGATIVE | 9,676,560 | 0.6% | 81.9% |
LOAD_FAST LOAD_SMALL_INT | 8,313,960 | 0.5% | 82.4% |
LOAD_FAST_LOAD_FAST BINARY_OP_SUBTRACT_INT | 8,313,840 | 0.5% | 82.9% |
BINARY_SLICE BINARY_OP | 8,313,720 | 0.5% | 83.4% |
BINARY_SLICE LOAD_FAST_LOAD_FAST | 8,313,720 | 0.5% | 83.9% |
STORE_SLICE LOAD_FAST_LOAD_FAST | 8,313,720 | 0.5% | 84.4% |
BINARY_OP LOAD_FAST_LOAD_FAST | 8,313,720 | 0.5% | 84.9% |
LOAD_FAST_LOAD_FAST LOAD_FAST | 8,313,720 | 0.5% | 85.4% |
LOAD_FAST_LOAD_FAST LOAD_SMALL_INT | 8,313,720 | 0.5% | 85.9% |
LOAD_FAST_LOAD_FAST LOAD_CONST_IMMORTAL | 8,313,720 | 0.5% | 86.4% |
BINARY_OP_ADD_INT BINARY_SLICE | 8,313,720 | 0.5% | 86.9% |
BINARY_OP_ADD_INT LOAD_CONST_IMMORTAL | 8,313,720 | 0.5% | 87.4% |
BINARY_OP_SUBTRACT_INT LOAD_FAST_LOAD_FAST | 8,313,720 | 0.5% | 87.9% |
LOAD_CONST_IMMORTAL BINARY_SLICE | 8,313,720 | 0.5% | 88.4% |
LOAD_CONST_IMMORTAL STORE_SLICE | 8,313,720 | 0.5% | 88.9% |
STORE_SUBSCR_LIST_INT JUMP_BACKWARD_NO_JIT | 8,313,720 | 0.5% | 89.4% |
FOR_ITER_RANGE POP_ITER | 5,092,140 | 0.3% | 89.7% |
RETURN_GENERATOR CALL_BUILTIN_CLASS | 5,092,080 | 0.3% | 90.1% |
POP_JUMP_IF_FALSE LOAD_GLOBAL_BUILTIN | 5,092,000 | 0.3% | 90.4% |
CALL_BUILTIN_CLASS CALL_LEN | 5,091,960 | 0.3% | 90.7% |
LOAD_FAST CALL_BUILTIN_CLASS | 4,838,680 | 0.3% | 91.0% |
CALL_BUILTIN_CLASS CALL_BUILTIN_CLASS | 4,838,640 | 0.3% | 91.3% |
LOAD_FAST LOAD_CONST_IMMORTAL | 4,838,520 | 0.3% | 91.5% |
STORE_DEREF LOAD_FAST | 4,838,460 | 0.3% | 91.8% |
BINARY_SLICE GET_ITER | 4,838,400 | 0.3% | 92.1% |
GET_ITER FOR_ITER_LIST | 4,838,400 | 0.3% | 92.4% |
RETURN_GENERATOR CALL_TUPLE_1 | 4,838,400 | 0.3% | 92.7% |
COPY COMPARE_OP_INT | 4,838,400 | 0.3% | 93.0% |
LOAD_FAST BINARY_SLICE | 4,838,400 | 0.3% | 93.3% |
LOAD_FAST LOAD_GLOBAL_BUILTIN | 4,838,400 | 0.3% | 93.6% |
LOAD_FAST TO_BOOL_INT | 4,838,400 | 0.3% | 93.9% |
SWAP COPY | 4,838,400 | 0.3% | 94.2% |
YIELD_VALUE STORE_DEREF | 4,838,400 | 0.3% | 94.5% |
CALL_BUILTIN_CLASS GET_ITER | 4,838,400 | 0.3% | 94.8% |
CALL_LEN SWAP | 4,838,400 | 0.3% | 95.0% |
CALL_TUPLE_1 YIELD_VALUE | 4,838,400 | 0.3% | 95.3% |
FOR_ITER_GEN RESUME_CHECK | 4,838,400 | 0.3% | 95.6% |
FOR_ITER_LIST POP_ITER | 4,838,400 | 0.3% | 95.9% |
JUMP_BACKWARD_NO_JIT FOR_ITER_GEN | 4,838,400 | 0.3% | 96.2% |
LOAD_CONST_IMMORTAL LOAD_FAST | 4,838,400 | 0.3% | 96.5% |
TO_BOOL_INT POP_JUMP_IF_FALSE | 4,838,400 | 0.3% | 96.8% |
BINARY_SUBSCR LOAD_FAST_LOAD_FAST | 4,838,280 | 0.3% | 97.1% |
POP_TOP POP_TOP | 4,838,280 | 0.3% | 97.4% |
STORE_SUBSCR LOAD_GLOBAL_BUILTIN | 4,838,280 | 0.3% | 97.7% |
UNARY_NEGATIVE BINARY_SUBSCR | 4,838,280 | 0.3% | 98.0% |
UNARY_NEGATIVE STORE_SUBSCR | 4,838,280 | 0.3% | 98.3% |
SWAP LOAD_FAST_LOAD_FAST | 4,838,280 | 0.3% | 98.6% |
BINARY_SUBSCR_LIST_INT STORE_FAST | 4,838,280 | 0.3% | 98.8% |
BINARY_SUBSCR_LIST_INT SWAP | 4,838,280 | 0.3% | 99.1% |
JUMP_BACKWARD_NO_JIT LOAD_FAST | 4,838,280 | 0.3% | 99.4% |
POP_JUMP_IF_FALSE POP_TOP | 4,584,840 | 0.3% | 99.7% |
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 BINARY_SLICE
Predecessors | Count | Percentage |
---|---|---|
BINARY_OP_ADD_INT | 8,313,720 | 38.7% |
LOAD_CONST_IMMORTAL | 8,313,720 | 38.7% |
LOAD_FAST | 4,838,400 | 22.5% |
Successors | Count | Percentage |
---|---|---|
BINARY_OP | 8,313,720 | 38.7% |
LOAD_FAST_LOAD_FAST | 8,313,720 | 38.7% |
GET_ITER | 4,838,400 | 22.5% |
Successors and predecessors for STORE_SLICE
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST_IMMORTAL | 8,313,720 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 8,313,720 | 100.0% |
Successors and predecessors for CACHE
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 79,454,100 | 88.9% |
POP_TOP | 9,930,480 | 11.1% |
Successors and predecessors for BINARY_SUBSCR
Predecessors | Count | Percentage |
---|---|---|
UNARY_NEGATIVE | 4,838,280 | 100.0% |
BINARY_SUBSCR | 1,200 | 0.0% |
LOAD_CONST_MORTAL | 120 | 0.0% |
LOAD_SMALL_INT | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 4,838,280 | 100.0% |
BINARY_SUBSCR | 1,200 | 0.0% |
STORE_FAST | 120 | 0.0% |
BINARY_SUBSCR_TUPLE_INT | 20 | 0.0% |
Successors and predecessors for CALL_FUNCTION_EX
Predecessors | Count | Percentage |
---|---|---|
PUSH_NULL | 60 | 100.0% |
Successors and predecessors for END_FOR
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 120 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_ITER | 120 | 100.0% |
Successors and predecessors for GET_ITER
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 15,022,380 | 60.8% |
BINARY_SLICE | 4,838,400 | 19.6% |
CALL_BUILTIN_CLASS | 4,838,400 | 19.6% |
RETURN_GENERATOR | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER_RANGE | 9,930,420 | 40.2% |
CALL_PY_EXACT_ARGS | 9,930,360 | 40.2% |
FOR_ITER_LIST | 4,838,400 | 19.6% |
FOR_ITER_GEN | 120 | 0.0% |
Successors and predecessors for INTERPRETER_EXIT
Predecessors | Count | Percentage |
---|---|---|
YIELD_VALUE | 79,453,920 | 88.9% |
RETURN_VALUE | 9,930,600 | 11.1% |
Successors and predecessors for MAKE_FUNCTION
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST_MORTAL | 9,930,420 | 100.0% |
Successors | Count | Percentage |
---|---|---|
SET_FUNCTION_ATTRIBUTE | 9,930,420 | 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_ITER
Predecessors | Count | Percentage |
---|---|---|
FOR_ITER_RANGE | 5,092,140 | 51.3% |
FOR_ITER_LIST | 4,838,400 | 48.7% |
END_FOR | 120 | 0.0% |
FOR_ITER | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST_IMMORTAL | 9,930,600 | 100.0% |
LOAD_FAST | 120 | 0.0% |
Successors and predecessors for POP_TOP
Predecessors | Count | Percentage |
---|---|---|
RESUME_CHECK | 84,292,320 | 81.3% |
CACHE | 9,930,480 | 9.6% |
POP_TOP | 4,838,280 | 4.7% |
POP_JUMP_IF_FALSE | 4,584,840 | 4.4% |
RETURN_VALUE | 180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 88,877,220 | 85.8% |
RESUME_CHECK | 9,930,600 | 9.6% |
POP_TOP | 4,838,280 | 4.7% |
LOAD_CONST_IMMORTAL | 300 | 0.0% |
LOAD_FAST | 180 | 0.0% |
Successors and predecessors for PUSH_NULL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 420 | 77.8% |
LOAD_ATTR_MODULE | 120 | 22.2% |
Successors | Count | Percentage |
---|---|---|
CALL_NON_PY_GENERAL | 280 | 51.9% |
CALL | 80 | 14.8% |
CALL_FUNCTION_EX | 60 | 11.1% |
LOAD_FAST | 60 | 11.1% |
LOAD_FAST_LOAD_FAST | 60 | 11.1% |
Successors and predecessors for RETURN_GENERATOR
Predecessors | Count | Percentage |
---|---|---|
COPY_FREE_VARS | 9,930,360 | 100.0% |
MAKE_CELL | 240 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_BUILTIN_CLASS | 5,092,080 | 51.3% |
CALL_TUPLE_1 | 4,838,400 | 48.7% |
GET_ITER | 120 | 0.0% |
Successors and predecessors for RETURN_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST_IMMORTAL | 9,930,900 | 100.0% |
LOAD_FAST | 120 | 0.0% |
CALL_NON_PY_GENERAL | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
INTERPRETER_EXIT | 9,930,600 | 100.0% |
POP_TOP | 180 | 0.0% |
STORE_FAST | 180 | 0.0% |
END_FOR | 120 | 0.0% |
Successors and predecessors for STORE_SUBSCR
Predecessors | Count | Percentage |
---|---|---|
UNARY_NEGATIVE | 4,838,280 | 100.0% |
STORE_SUBSCR | 1,180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_BUILTIN | 4,838,280 | 100.0% |
STORE_SUBSCR | 1,180 | 0.0% |
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_FAST_LOAD_FAST | 9,676,560 | 100.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR | 4,838,280 | 50.0% |
STORE_SUBSCR | 4,838,280 | 50.0% |
Successors and predecessors for BINARY_OP
Predecessors | Count | Percentage |
---|---|---|
BINARY_SLICE | 8,313,720 | 100.0% |
BINARY_OP | 2,040 | 0.0% |
LOAD_FAST | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 8,313,720 | 100.0% |
BINARY_OP | 2,040 | 0.0% |
BINARY_OP_SUBTRACT_FLOAT | 20 | 0.0% |
Successors and predecessors for BUILD_TUPLE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 9,930,420 | 100.0% |
LOAD_FAST_LOAD_FAST | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST_MORTAL | 9,930,420 | 100.0% |
CALL_METHOD_DESCRIPTOR_O | 40 | 0.0% |
CALL | 20 | 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 COMPARE_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_SMALL_INT | 20 | 100.0% |
Successors | Count | Percentage |
---|---|---|
COMPARE_OP_INT | 20 | 100.0% |
Successors and predecessors for COPY
Predecessors | Count | Percentage |
---|---|---|
COPY | 13,152,000 | 42.2% |
LOAD_FAST_LOAD_FAST | 13,152,000 | 42.2% |
SWAP | 4,838,400 | 15.5% |
Successors | Count | Percentage |
---|---|---|
COPY | 13,152,000 | 42.2% |
BINARY_SUBSCR_LIST_INT | 13,152,000 | 42.2% |
COMPARE_OP_INT | 4,838,400 | 15.5% |
Successors and predecessors for COPY_FREE_VARS
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 9,930,420 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_GENERATOR | 9,930,360 | 100.0% |
RESUME_CHECK | 60 | 0.0% |
Successors and predecessors for FOR_ITER
Predecessors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_ITER | 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_FORWARD
Predecessors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 11,040 | 99.5% |
STORE_FAST | 60 | 0.5% |
Successors | Count | Percentage |
---|---|---|
LOAD_DEREF | 11,040 | 99.5% |
LOAD_FAST | 60 | 0.5% |
Successors and predecessors for LOAD_ATTR
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 140 | 50.0% |
LOAD_GLOBAL_MODULE | 60 | 21.4% |
LOAD_ATTR_INSTANCE_VALUE | 40 | 14.3% |
LOAD_ATTR | 20 | 7.1% |
LOAD_FAST_LOAD_FAST | 20 | 7.1% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 60 | 21.4% |
LOAD_ATTR_INSTANCE_VALUE | 60 | 21.4% |
LOAD_ATTR_MODULE | 60 | 21.4% |
LOAD_ATTR_METHOD_NO_DICT | 40 | 14.3% |
LOAD_ATTR_METHOD_WITH_VALUES | 40 | 14.3% |
Successors and predecessors for LOAD_DEREF
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 79,442,940 | 100.0% |
JUMP_FORWARD | 11,040 | 0.0% |
LOAD_GLOBAL_BUILTIN | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 79,442,880 | 100.0% |
YIELD_VALUE | 11,040 | 0.0% |
CALL_LEN | 120 | 0.0% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
LOAD_DEREF | 79,442,880 | 44.7% |
BINARY_SUBSCR_TUPLE_INT | 40,735,680 | 22.9% |
LOAD_GLOBAL_BUILTIN | 14,769,180 | 8.3% |
RESUME_CHECK | 9,930,540 | 5.6% |
SET_FUNCTION_ATTRIBUTE | 9,930,360 | 5.6% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_TUPLE_INT | 79,442,880 | 44.7% |
BINARY_OP_ADD_INT | 38,707,200 | 21.8% |
GET_ITER | 15,022,380 | 8.5% |
BUILD_TUPLE | 9,930,420 | 5.6% |
LOAD_SMALL_INT | 8,313,960 | 4.7% |
Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 17,990,280 | 19.5% |
STORE_SUBSCR_LIST_INT | 17,990,280 | 19.5% |
POP_JUMP_IF_FALSE | 13,152,000 | 14.3% |
BINARY_SLICE | 8,313,720 | 9.0% |
STORE_SLICE | 8,313,720 | 9.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_LIST_INT | 22,828,560 | 24.8% |
COPY | 13,152,000 | 14.3% |
STORE_SUBSCR_LIST_INT | 13,152,000 | 14.3% |
UNARY_NEGATIVE | 9,676,560 | 10.5% |
BINARY_OP_SUBTRACT_INT | 8,313,840 | 9.0% |
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 |
---|---|---|
BINARY_SUBSCR_LIST_INT | 26,304,000 | 61.3% |
LOAD_FAST | 8,313,960 | 19.4% |
LOAD_FAST_LOAD_FAST | 8,313,720 | 19.4% |
BINARY_OP_SUBTRACT_INT | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_OP_ADD_INT | 16,627,680 | 38.7% |
COMPARE_OP_INT | 13,152,040 | 30.6% |
BINARY_OP_SUBTRACT_INT | 13,152,000 | 30.6% |
BINARY_SUBSCR_TUPLE_INT | 40 | 0.0% |
BINARY_SUBSCR | 20 | 0.0% |
Successors and predecessors for MAKE_CELL
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_GENERAL | 180 | 60.0% |
CALL_PY_EXACT_ARGS | 120 | 40.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_GENERATOR | 240 | 80.0% |
RESUME_CHECK | 60 | 20.0% |
Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors | Count | Percentage |
---|---|---|
COMPARE_OP_INT | 17,990,460 | 78.8% |
TO_BOOL_INT | 4,838,400 | 21.2% |
TO_BOOL | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 13,152,000 | 57.6% |
LOAD_GLOBAL_BUILTIN | 5,092,000 | 22.3% |
POP_TOP | 4,584,840 | 20.1% |
LOAD_FAST | 60 | 0.0% |
LOAD_GLOBAL | 20 | 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_MORTAL | 60 | 33.3% |
Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors | Count | Percentage |
---|---|---|
COMPARE_OP_INT | 253,560 | 100.0% |
TO_BOOL_BOOL | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 242,520 | 95.6% |
JUMP_FORWARD | 11,040 | 4.4% |
NOP | 60 | 0.0% |
Successors and predecessors for SET_FUNCTION_ATTRIBUTE
Predecessors | Count | Percentage |
---|---|---|
MAKE_FUNCTION | 9,930,420 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 9,930,360 | 100.0% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for STORE_DEREF
Predecessors | Count | Percentage |
---|---|---|
YIELD_VALUE | 4,838,400 | 100.0% |
CALL_TUPLE_1 | 120 | 0.0% |
CALL_NON_PY_GENERAL | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 4,838,460 | 100.0% |
LOAD_GLOBAL_BUILTIN | 120 | 0.0% |
Successors and predecessors for STORE_FAST
Predecessors | Count | Percentage |
---|---|---|
FOR_ITER_RANGE | 53,887,800 | 55.3% |
FOR_ITER_LIST | 38,707,200 | 39.7% |
BINARY_SUBSCR_LIST_INT | 4,838,280 | 5.0% |
CALL_BUILTIN_CLASS | 300 | 0.0% |
RETURN_VALUE | 180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_DEREF | 79,442,940 | 81.5% |
LOAD_FAST_LOAD_FAST | 17,990,280 | 18.5% |
LOAD_FAST | 720 | 0.0% |
LOAD_GLOBAL_BUILTIN | 360 | 0.0% |
LOAD_CONST_IMMORTAL | 180 | 0.0% |
Successors and predecessors for STORE_FAST_STORE_FAST
Predecessors | Count | Percentage |
---|---|---|
UNPACK_SEQUENCE_TWO_TUPLE | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 60 | 100.0% |
Successors and predecessors for SWAP
Predecessors | Count | Percentage |
---|---|---|
SWAP | 13,152,000 | 36.6% |
BINARY_OP_SUBTRACT_INT | 13,152,000 | 36.6% |
CALL_LEN | 4,838,400 | 13.4% |
BINARY_SUBSCR_LIST_INT | 4,838,280 | 13.4% |
Successors | Count | Percentage |
---|---|---|
SWAP | 13,152,000 | 36.6% |
STORE_SUBSCR_LIST_INT | 13,152,000 | 36.6% |
COPY | 4,838,400 | 13.4% |
LOAD_FAST_LOAD_FAST | 4,838,280 | 13.4% |
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 YIELD_VALUE
Predecessors | Count | Percentage |
---|---|---|
BINARY_OP_ADD_INT | 38,707,200 | 45.9% |
BINARY_SUBSCR_TUPLE_INT | 38,707,200 | 45.9% |
CALL_TUPLE_1 | 4,838,400 | 5.7% |
BINARY_OP_SUBTRACT_INT | 2,028,480 | 2.4% |
LOAD_DEREF | 11,040 | 0.0% |
Successors | Count | Percentage |
---|---|---|
INTERPRETER_EXIT | 79,453,920 | 94.3% |
STORE_DEREF | 4,838,400 | 5.7% |
Successors and predecessors for BINARY_OP_ADD_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 38,707,200 | 70.0% |
LOAD_SMALL_INT | 16,627,680 | 30.0% |
Successors | Count | Percentage |
---|---|---|
YIELD_VALUE | 38,707,200 | 70.0% |
BINARY_SLICE | 8,313,720 | 15.0% |
LOAD_CONST_IMMORTAL | 8,313,720 | 15.0% |
LOAD_FAST | 120 | 0.0% |
CALL_BUILTIN_CLASS | 120 | 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 |
---|---|---|
STORE_FAST | 60 | 100.0% |
Successors and predecessors for BINARY_OP_SUBTRACT_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_SMALL_INT | 13,152,000 | 56.0% |
LOAD_FAST_LOAD_FAST | 8,313,840 | 35.4% |
LOAD_FAST | 2,028,480 | 8.6% |
Successors | Count | Percentage |
---|---|---|
SWAP | 13,152,000 | 56.0% |
LOAD_FAST_LOAD_FAST | 8,313,720 | 35.4% |
YIELD_VALUE | 2,028,480 | 8.6% |
LOAD_SMALL_INT | 120 | 0.0% |
Successors and predecessors for BINARY_SUBSCR_LIST_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 22,828,560 | 63.4% |
COPY | 13,152,000 | 36.6% |
Successors | Count | Percentage |
---|---|---|
LOAD_SMALL_INT | 26,304,000 | 73.1% |
STORE_FAST | 4,838,280 | 13.4% |
SWAP | 4,838,280 | 13.4% |
Successors and predecessors for BINARY_SUBSCR_TUPLE_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 79,442,880 | 100.0% |
LOAD_SMALL_INT | 40 | 0.0% |
BINARY_SUBSCR | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 40,735,680 | 51.3% |
YIELD_VALUE | 38,707,200 | 48.7% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors | Count | Percentage |
---|---|---|
RETURN_GENERATOR | 5,092,080 | 34.5% |
LOAD_FAST | 4,838,680 | 32.8% |
CALL_BUILTIN_CLASS | 4,838,640 | 32.8% |
BINARY_OP_ADD_INT | 120 | 0.0% |
CALL | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_LEN | 5,091,960 | 34.5% |
CALL_BUILTIN_CLASS | 4,838,640 | 32.8% |
GET_ITER | 4,838,400 | 32.8% |
STORE_FAST | 300 | 0.0% |
POP_TOP | 120 | 0.0% |
Successors and predecessors for CALL_LEN
Predecessors | Count | Percentage |
---|---|---|
CALL_BUILTIN_CLASS | 5,091,960 | 100.0% |
LOAD_DEREF | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
SWAP | 4,838,400 | 95.0% |
COMPARE_OP_INT | 253,560 | 5.0% |
STORE_FAST | 120 | 0.0% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_NOARGS
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_NO_DICT | 40 | 66.7% |
CALL | 20 | 33.3% |
Successors | Count | Percentage |
---|---|---|
UNPACK_SEQUENCE_TWO_TUPLE | 40 | 66.7% |
UNPACK_SEQUENCE | 20 | 33.3% |
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 |
---|---|---|
PUSH_NULL | 280 | 66.7% |
CALL | 100 | 23.8% |
LOAD_FAST_LOAD_FAST | 40 | 9.5% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 180 | 42.9% |
RETURN_VALUE | 60 | 14.3% |
LOAD_FAST | 60 | 14.3% |
STORE_DEREF | 60 | 14.3% |
STORE_FAST | 60 | 14.3% |
Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 9,930,360 | 100.0% |
LOAD_FAST | 120 | 0.0% |
CALL | 80 | 0.0% |
LOAD_FAST_LOAD_FAST | 80 | 0.0% |
LOAD_ATTR_INSTANCE_VALUE | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
COPY_FREE_VARS | 9,930,420 | 100.0% |
RESUME_CHECK | 180 | 0.0% |
MAKE_CELL | 120 | 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 |
---|---|---|
MAKE_CELL | 180 | 100.0% |
Successors and predecessors for CALL_TUPLE_1
Predecessors | Count | Percentage |
---|---|---|
RETURN_GENERATOR | 4,838,400 | 100.0% |
LOAD_FAST | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
YIELD_VALUE | 4,838,400 | 100.0% |
STORE_DEREF | 120 | 0.0% |
Successors and predecessors for COMPARE_OP_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_SMALL_INT | 13,152,040 | 72.1% |
COPY | 4,838,400 | 26.5% |
CALL_LEN | 253,560 | 1.4% |
COMPARE_OP | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 17,990,460 | 98.6% |
POP_JUMP_IF_TRUE | 253,560 | 1.4% |
Successors and predecessors for FOR_ITER_GEN
Predecessors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 4,838,400 | 100.0% |
GET_ITER | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 4,838,400 | 100.0% |
POP_TOP | 120 | 0.0% |
Successors and predecessors for FOR_ITER_LIST
Predecessors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 38,707,200 | 88.9% |
GET_ITER | 4,838,400 | 11.1% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 38,707,200 | 88.9% |
POP_ITER | 4,838,400 | 11.1% |
Successors and predecessors for FOR_ITER_RANGE
Predecessors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 49,049,520 | 83.2% |
GET_ITER | 9,930,420 | 16.8% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 53,887,800 | 91.4% |
POP_ITER | 5,092,140 | 8.6% |
Successors and predecessors for JUMP_BACKWARD_NO_JIT
Predecessors | Count | Percentage |
---|---|---|
POP_TOP | 88,877,220 | 91.2% |
STORE_SUBSCR_LIST_INT | 8,313,720 | 8.5% |
POP_JUMP_IF_TRUE | 242,520 | 0.2% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER_RANGE | 49,049,520 | 50.3% |
FOR_ITER_LIST | 38,707,200 | 39.7% |
FOR_ITER_GEN | 4,838,400 | 5.0% |
LOAD_FAST | 4,838,280 | 5.0% |
FOR_ITER | 60 | 0.0% |
Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 140 | 58.3% |
LOAD_ATTR | 60 | 25.0% |
LOAD_FAST_LOAD_FAST | 40 | 16.7% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_NO_DICT | 80 | 33.3% |
TO_BOOL | 60 | 25.0% |
LOAD_ATTR | 40 | 16.7% |
CALL_PY_EXACT_ARGS | 40 | 16.7% |
CALL | 20 | 8.3% |
Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 80 | 66.7% |
LOAD_ATTR | 40 | 33.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 60 | 50.0% |
CALL_METHOD_DESCRIPTOR_NOARGS | 40 | 33.3% |
CALL | 20 | 16.7% |
Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 80 | 66.7% |
LOAD_ATTR | 40 | 33.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 60 | 50.0% |
LOAD_FAST_LOAD_FAST | 60 | 50.0% |
Successors and predecessors for LOAD_ATTR_MODULE
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 120 | 66.7% |
LOAD_ATTR | 60 | 33.3% |
Successors | Count | Percentage |
---|---|---|
PUSH_NULL | 120 | 66.7% |
STORE_FAST | 60 | 33.3% |
Successors and predecessors for LOAD_CONST_IMMORTAL
Predecessors | Count | Percentage |
---|---|---|
POP_ITER | 9,930,600 | 31.6% |
LOAD_FAST_LOAD_FAST | 8,313,720 | 26.5% |
BINARY_OP_ADD_INT | 8,313,720 | 26.5% |
LOAD_FAST | 4,838,520 | 15.4% |
POP_TOP | 300 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 9,930,900 | 31.6% |
BINARY_SLICE | 8,313,720 | 26.5% |
STORE_SLICE | 8,313,720 | 26.5% |
LOAD_FAST | 4,838,400 | 15.4% |
STORE_FAST | 120 | 0.0% |
Successors and predecessors for LOAD_CONST_MORTAL
Predecessors | Count | Percentage |
---|---|---|
BUILD_TUPLE | 9,930,420 | 100.0% |
CALL_BUILTIN_CLASS | 120 | 0.0% |
POP_JUMP_IF_NOT_NONE | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
MAKE_FUNCTION | 9,930,420 | 100.0% |
BINARY_SUBSCR | 120 | 0.0% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_BUILTIN | 9,930,600 | 40.2% |
POP_JUMP_IF_FALSE | 5,092,000 | 20.6% |
LOAD_FAST | 4,838,400 | 19.6% |
STORE_SUBSCR | 4,838,280 | 19.6% |
STORE_FAST | 360 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 14,769,180 | 59.8% |
LOAD_GLOBAL_BUILTIN | 9,930,600 | 40.2% |
LOAD_DEREF | 120 | 0.0% |
LOAD_FAST_LOAD_FAST | 120 | 0.0% |
LOAD_GLOBAL_MODULE | 120 | 0.0% |
Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 160 | 33.3% |
LOAD_GLOBAL_BUILTIN | 120 | 25.0% |
RESUME_CHECK | 120 | 25.0% |
LOAD_GLOBAL | 80 | 16.7% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 240 | 50.0% |
LOAD_ATTR_MODULE | 120 | 25.0% |
LOAD_ATTR | 60 | 12.5% |
LOAD_FAST_LOAD_FAST | 60 | 12.5% |
Successors and predecessors for RESUME_CHECK
Predecessors | Count | Percentage |
---|---|---|
CACHE | 79,454,100 | 84.3% |
POP_TOP | 9,930,600 | 10.5% |
FOR_ITER_GEN | 4,838,400 | 5.1% |
CALL_PY_EXACT_ARGS | 180 | 0.0% |
COPY_FREE_VARS | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 84,292,320 | 89.5% |
LOAD_FAST | 9,930,540 | 10.5% |
LOAD_GLOBAL_BUILTIN | 360 | 0.0% |
LOAD_GLOBAL_MODULE | 120 | 0.0% |
LOAD_GLOBAL | 60 | 0.0% |
Successors and predecessors for STORE_SUBSCR_LIST_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 13,152,000 | 50.0% |
SWAP | 13,152,000 | 50.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 17,990,280 | 68.4% |
JUMP_BACKWARD_NO_JIT | 8,313,720 | 31.6% |
Successors and predecessors for TO_BOOL_BOOL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 40 | 66.7% |
TO_BOOL | 20 | 33.3% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 60 | 100.0% |
Successors and predecessors for TO_BOOL_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 4,838,400 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 4,838,400 | 100.0% |
Successors and predecessors for UNPACK_SEQUENCE_TWO_TUPLE
Predecessors | Count | Percentage |
---|---|---|
CALL_METHOD_DESCRIPTOR_NOARGS | 40 | 66.7% |
UNPACK_SEQUENCE | 20 | 33.3% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST_STORE_FAST | 60 | 100.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. |
8,313,720 | 9.5% |
hit
ⓘSpecialized instructions that complete. |
78,829,260 | 90.5% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 1.0% |
Failure | 2,040 | 99.0% |
Failure kind | Count | Ratio |
---|---|---|
add other | 2,040 | 100.0% |
specialization stats for BINARY_SLICE family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
21,465,840 | 100.0% |
specialization stats for BINARY_SUBSCR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
4,838,400 | 4.0% |
hit
ⓘSpecialized instructions that complete. |
115,423,500 | 96.0% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 1.6% |
Failure | 1,200 | 98.4% |
Failure kind | Count | Ratio |
---|---|---|
out of range | 1,180 | 98.3% |
list slice | 20 | 1.7% |
specialization stats for CALL family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
34,630,980 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 260 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for COMPARE_OP family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
18,244,020 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 100.0% |
Failure | 0 | 0.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. |
107,364,060 | 100.0% |
specialization stats for LOAD_ATTR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
60 | 6.4% |
hit
ⓘSpecialized instructions that complete. |
660 | 70.2% |
Success | Count | Ratio |
---|---|---|
Success | 200 | 90.9% |
Failure | 20 | 9.1% |
specialization stats for LOAD_GLOBAL family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
24,700,620 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 100 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for STORE_SLICE family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
8,313,720 | 100.0% |
specialization stats for STORE_SUBSCR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
4,838,280 | 15.5% |
hit
ⓘSpecialized instructions that complete. |
26,304,000 | 84.5% |
Success | Count | Ratio |
---|---|---|
Success | 0 | 0.0% |
Failure | 1,180 | 100.0% |
Failure kind | Count | Ratio |
---|---|---|
out of range | 1,180 | 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. |
4,838,460 | 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. |
60 | 75.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. |
965,794,560 | 58.3% |
Not specialized
ⓘInstructions that could be specialized but aren't, e.g. |
47,775,260 | 2.9% |
Specialized hits
ⓘSpecialized instructions, e.g. |
643,320,840 | 38.8% |
Specialized misses
ⓘSpecialized instructions, e.g. |
0 | 0.0% |
Breakdown of deferred (not specialized) instruction counts by family
Name | Count | Ratio |
---|---|---|
BINARY_SLICE | 21,465,840 | 44.9% |
STORE_SLICE | 8,313,720 | 17.4% |
BINARY_OP | 8,313,720 | 17.4% |
BINARY_SUBSCR | 4,838,400 | 10.1% |
STORE_SUBSCR | 4,838,280 | 10.1% |
TO_BOOL | 60 | 0.0% |
FOR_ITER | 60 | 0.0% |
LOAD_ATTR | 60 | 0.0% |
CACHE | 0 | 0.0% |
CALL_FUNCTION_EX | 0 | 0.0% |
Breakdown of misses (specialized deopts) instruction counts by family
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 | 89,384,580 | 85.8% |
Calls to Python functions inlined | 14,769,420 | 14.2% |
Calls via PyEval_EvalFrame (total) | 89,384,580 | 85.8% |
Calls via PyEval_EvalFrame (vector) | 180 | 0.0% |
Calls via PyEval_EvalFrame (generator) | 89,384,400 | 85.8% |
Calls via PyEval_EvalFrame (legacy) | 0 | 0.0% |
Calls via PyEval_EvalFrame (function vectorcall) | 180 | 0.0% |
Calls via PyEval_EvalFrame (build class) | 0 | 0.0% |
Calls via PyEval_EvalFrame (slot) | 0 | 0.0% |
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 | 9,931,080 | 9.5% |
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 | 84,055,820 | 51.5% |
Frees to freelist | 84,056,080 | |
Allocations | 79,082,200 | 48.5% |
Allocations to 512 bytes | 74,341,840 | 45.6% |
Allocations to 4 kbytes | 4,740,360 | 2.9% |
Allocations over 4 kbytes | 0 | 0.0% |
Frees | 79,081,742 | |
Inline values | 0 | |
Interpreter mortal increfs | 250,965,240 | 21.2% |
Interpreter mortal decrefs | 369,592,600 | 24.1% |
Mortal increfs | 105,545,466 | 8.9% |
Mortal decrefs | 115,535,288 | 7.5% |
Interpreter immortal increfs | 539,269,980 | 45.6% |
Interpreter immortal decrefs | 626,917,680 | 40.9% |
Immortal increfs | 286,046,886 | 24.2% |
Immortal decrefs | 419,074,464 | 27.4% |
Materialize dict (on request) | 0 | |
Materialize dict (new key) | 0 | |
Materialize dict (too big) | 0 | |
Materialize dict (str subclass) | 0 | |
Method cache hits | 194 | |
Method cache misses | 26 | |
Method cache collisions | 16 | |
Method cache dunder hits | 4,838,520 | |
Method cache dunder misses | 0 |
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
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: 2025-02-02