- benchmark: comprehensions
- fork: python
- ref: 510fefdc625dd2ed2b6b3975314a59e291b94ae8
- commit hash: 510fefd
- commit date: 2025-01-30T19:34:09+00: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 | 200,056,440 | 13.6% | 13.6% | |
FOR_ITER_LIST | 138,126,960 | 9.4% | 23.0% | |
JUMP_BACKWARD_NO_JIT | 118,467,300 | 8.1% | 31.1% | |
STORE_FAST_LOAD_FAST | 108,633,780 | 7.4% | 38.4% | |
LOAD_ATTR_INSTANCE_VALUE | 103,227,300 | 7.0% | 45.5% | |
LIST_APPEND | 79,634,100 | 5.4% | 50.9% | |
LOAD_ATTR_METHOD_NO_DICT | 53,577,240 | 3.6% | 54.5% | |
CALL_METHOD_DESCRIPTOR_FAST | 53,084,160 | 3.6% | 58.1% | |
GET_ITER | 40,309,260 | 2.7% | 60.9% | |
RESUME_CHECK | 36,375,120 | 2.5% | 63.3% | |
STORE_FAST | 32,448,540 | 2.2% | 65.6% | |
SWAP | 31,951,680 | 2.2% | 67.7% | |
CALL_PY_EXACT_ARGS | 29,983,200 | 2.0% | 69.8% | |
BINARY_SUBSCR_DICT | 26,542,440 | 1.8% | 71.6% | |
POP_JUMP_IF_TRUE | 26,050,680 | 1.8% | 73.3% | |
POP_JUMP_IF_FALSE | 24,084,540 | 1.6% | 75.0% | |
TO_BOOL_BOOL | 23,593,020 | 1.6% | 76.6% | |
RETURN_VALUE | 22,613,640 | 1.5% | 78.1% | |
POP_TOP | 21,627,720 | 1.5% | 79.6% | |
LOAD_ATTR_METHOD_WITH_VALUES | 21,135,480 | 1.4% | 81.0% | |
LOAD_FAST_LOAD_FAST | 18,199,500 | 1.2% | 82.3% | |
LOAD_GLOBAL_BUILTIN | 18,186,420 | 1.2% | 83.5% | |
MAP_ADD | 17,694,720 | 1.2% | 84.7% | |
INTERPRETER_EXIT | 14,745,780 | 1.0% | 85.7% | |
TO_BOOL_ALWAYS_TRUE | 14,376,960 | 1.0% | 86.7% | 45.3% |
YIELD_VALUE | 14,254,440 | 1.0% | 87.7% | |
LOAD_GLOBAL_MODULE | 12,289,980 | 0.8% | 88.5% | |
TO_BOOL_NONE | 11,919,360 | 0.8% | 89.3% | 54.6% |
LOAD_ATTR | 11,799,660 | 0.8% | 90.1% | |
POP_ITER | 11,799,540 | 0.8% | 90.9% | |
COMPARE_OP | 11,799,380 | 0.8% | 91.7% | |
LOAD_FAST_AND_CLEAR | 11,797,920 | 0.8% | 92.5% | |
COPY | 11,796,480 | 0.8% | 93.3% | |
BUILD_LIST | 10,815,000 | 0.7% | 94.0% | |
LOAD_CONST_IMMORTAL | 10,327,020 | 0.7% | 94.7% | |
CALL_LEN | 9,338,940 | 0.6% | 95.4% | |
COMPARE_OP_INT | 9,338,940 | 0.6% | 96.0% | |
BINARY_SUBSCR | 8,851,020 | 0.6% | 96.6% | |
LOAD_CONST_MORTAL | 8,848,740 | 0.6% | 97.2% | |
BUILD_TUPLE | 8,847,660 | 0.6% | 97.8% | |
MAKE_FUNCTION | 8,847,600 | 0.6% | 98.4% | |
RETURN_GENERATOR | 8,847,540 | 0.6% | 99.0% | |
CALL_BUILTIN_O | 8,847,360 | 0.6% | 99.6% | |
STORE_ATTR_INSTANCE_VALUE | 1,483,200 | 0.1% | 99.7% | |
LOAD_SMALL_INT | 986,160 | 0.1% | 99.8% | |
BUILD_MAP | 983,040 | 0.1% | 99.9% | |
EXIT_INIT_CHECK | 492,960 | 0.0% | 99.9% | |
CALL_ALLOC_AND_ENTER_INIT | 492,960 | 0.0% | 99.9% | |
FOR_ITER_RANGE | 491,820 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS | 491,520 | 0.0% | 100.0% | |
FOR_ITER_TUPLE | 3,240 | 0.0% | 100.0% | |
BINARY_OP_ADD_INT | 2,880 | 0.0% | 100.0% | |
BUILD_SLICE | 1,440 | 0.0% | 100.0% | |
CALL_LIST_APPEND | 1,440 | 0.0% | 100.0% | |
LOAD_DEREF | 660 | 0.0% | 100.0% | |
LOAD_ATTR_CLASS_WITH_METACLASS_CHECK | 540 | 0.0% | 100.0% | 100.0% |
PUSH_NULL | 540 | 0.0% | 100.0% | |
FOR_ITER_GEN | 540 | 0.0% | 100.0% | |
CALL | 320 | 0.0% | 100.0% | |
CALL_NON_PY_GENERAL | 300 | 0.0% | 100.0% | |
COPY_FREE_VARS | 240 | 0.0% | 100.0% | |
MAKE_CELL | 240 | 0.0% | 100.0% | |
SET_FUNCTION_ATTRIBUTE | 240 | 0.0% | 100.0% | |
LOAD_ATTR_MODULE | 240 | 0.0% | 100.0% | |
END_FOR | 180 | 0.0% | 100.0% | |
LOAD_GLOBAL | 180 | 0.0% | 100.0% | |
CALL_FUNCTION_EX | 120 | 0.0% | 100.0% | |
CALL_BUILTIN_CLASS | 120 | 0.0% | 100.0% | |
TO_BOOL | 100 | 0.0% | 100.0% | |
NOP | 60 | 0.0% | 100.0% | |
CALL_INTRINSIC_1 | 60 | 0.0% | 100.0% | |
FOR_ITER | 60 | 0.0% | 100.0% | |
IS_OP | 60 | 0.0% | 100.0% | |
JUMP_FORWARD | 60 | 0.0% | 100.0% | |
LIST_EXTEND | 60 | 0.0% | 100.0% | |
POP_JUMP_IF_NOT_NONE | 60 | 0.0% | 100.0% | |
STORE_DEREF | 60 | 0.0% | 100.0% | |
STORE_FAST_STORE_FAST | 60 | 0.0% | 100.0% | |
BINARY_OP_SUBTRACT_FLOAT | 60 | 0.0% | 100.0% | |
BINARY_SUBSCR_TUPLE_INT | 60 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_NOARGS | 60 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_O | 60 | 0.0% | 100.0% | |
CALL_PY_GENERAL | 60 | 0.0% | 100.0% | |
UNPACK_SEQUENCE_TWO_TUPLE | 60 | 0.0% | 100.0% | |
BINARY_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 |
---|---|---|---|
JUMP_BACKWARD_NO_JIT FOR_ITER_LIST | 117,973,020 | 8.0% | 8.0% |
FOR_ITER_LIST STORE_FAST_LOAD_FAST | 108,633,780 | 7.4% | 15.4% |
LIST_APPEND JUMP_BACKWARD_NO_JIT | 79,634,100 | 5.4% | 20.8% |
LOAD_FAST LOAD_ATTR_INSTANCE_VALUE | 76,677,260 | 5.2% | 26.0% |
LOAD_FAST CALL_METHOD_DESCRIPTOR_FAST | 53,084,160 | 3.6% | 29.6% |
STORE_FAST_LOAD_FAST LOAD_ATTR_METHOD_NO_DICT | 53,084,160 | 3.6% | 33.3% |
CALL_METHOD_DESCRIPTOR_FAST LIST_APPEND | 53,084,160 | 3.6% | 36.9% |
LOAD_ATTR_METHOD_NO_DICT LOAD_FAST | 53,084,160 | 3.6% | 40.5% |
LOAD_ATTR_INSTANCE_VALUE LOAD_FAST | 26,542,080 | 1.8% | 42.3% |
TO_BOOL_BOOL POP_JUMP_IF_FALSE | 23,592,960 | 1.6% | 43.9% |
RESUME_CHECK LOAD_FAST | 21,135,900 | 1.4% | 45.3% |
CALL_PY_EXACT_ARGS RESUME_CHECK | 21,135,600 | 1.4% | 46.8% |
STORE_FAST LOAD_FAST | 20,155,500 | 1.4% | 48.1% |
GET_ITER FOR_ITER_LIST | 20,153,940 | 1.4% | 49.5% |
LOAD_FAST GET_ITER | 20,152,560 | 1.4% | 50.9% |
FOR_ITER_LIST STORE_FAST | 17,695,080 | 1.2% | 52.1% |
LOAD_FAST_LOAD_FAST LOAD_ATTR_INSTANCE_VALUE | 17,694,760 | 1.2% | 53.3% |
MAP_ADD JUMP_BACKWARD_NO_JIT | 17,694,720 | 1.2% | 54.5% |
LOAD_ATTR_INSTANCE_VALUE BINARY_SUBSCR_DICT | 17,694,720 | 1.2% | 55.7% |
POP_JUMP_IF_TRUE LOAD_FAST | 14,254,140 | 1.0% | 56.7% |
STORE_FAST_LOAD_FAST TO_BOOL_ALWAYS_TRUE | 14,254,080 | 1.0% | 57.6% |
YIELD_VALUE INTERPRETER_EXIT | 14,254,080 | 1.0% | 58.6% |
LOAD_ATTR_INSTANCE_VALUE YIELD_VALUE | 14,254,080 | 1.0% | 59.6% |
TO_BOOL_ALWAYS_TRUE POP_JUMP_IF_TRUE | 14,254,080 | 1.0% | 60.5% |
LOAD_ATTR_METHOD_WITH_VALUES LOAD_FAST | 12,288,060 | 0.8% | 61.4% |
LOAD_FAST CALL_PY_EXACT_ARGS | 12,288,000 | 0.8% | 62.2% |
FOR_ITER_LIST POP_ITER | 11,798,100 | 0.8% | 63.0% |
LOAD_GLOBAL_MODULE LOAD_ATTR | 11,796,560 | 0.8% | 63.8% |
RETURN_VALUE TO_BOOL_BOOL | 11,796,480 | 0.8% | 64.6% |
COMPARE_OP COPY | 11,796,480 | 0.8% | 65.4% |
COPY TO_BOOL_BOOL | 11,796,480 | 0.8% | 66.2% |
LOAD_ATTR COMPARE_OP | 11,796,480 | 0.8% | 67.0% |
POP_JUMP_IF_TRUE JUMP_BACKWARD_NO_JIT | 11,796,480 | 0.8% | 67.8% |
STORE_FAST_LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES | 11,796,480 | 0.8% | 68.6% |
STORE_FAST_LOAD_FAST TO_BOOL_NONE | 11,796,480 | 0.8% | 69.4% |
LOAD_ATTR_INSTANCE_VALUE LOAD_GLOBAL_MODULE | 11,796,480 | 0.8% | 70.2% |
TO_BOOL_NONE POP_JUMP_IF_TRUE | 11,796,480 | 0.8% | 71.0% |
GET_ITER LOAD_FAST_AND_CLEAR | 11,306,400 | 0.8% | 71.8% |
LOAD_FAST_AND_CLEAR SWAP | 11,306,400 | 0.8% | 72.6% |
SWAP GET_ITER | 11,306,400 | 0.8% | 73.3% |
BUILD_LIST SWAP | 10,323,360 | 0.7% | 74.0% |
SWAP BUILD_LIST | 10,323,360 | 0.7% | 74.7% |
LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES | 9,338,960 | 0.6% | 75.4% |
POP_ITER SWAP | 9,338,880 | 0.6% | 76.0% |
SWAP STORE_FAST | 9,338,880 | 0.6% | 76.6% |
STORE_FAST_LOAD_FAST LOAD_ATTR_INSTANCE_VALUE | 8,855,220 | 0.6% | 77.2% |
LOAD_FAST LOAD_CONST_IMMORTAL | 8,848,920 | 0.6% | 77.8% |
LOAD_CONST_MORTAL MAKE_FUNCTION | 8,847,600 | 0.6% | 78.5% |
GET_ITER CALL_PY_EXACT_ARGS | 8,847,540 | 0.6% | 79.1% |
POP_TOP RESUME_CHECK | 8,847,540 | 0.6% | 79.7% |
POP_JUMP_IF_FALSE LOAD_FAST | 8,847,420 | 0.6% | 80.3% |
LOAD_ATTR_METHOD_WITH_VALUES LOAD_FAST_LOAD_FAST | 8,847,420 | 0.6% | 80.9% |
RESUME_CHECK LOAD_GLOBAL_BUILTIN | 8,847,400 | 0.6% | 81.5% |
CACHE POP_TOP | 8,847,360 | 0.6% | 82.1% |
BINARY_SUBSCR BINARY_SUBSCR_DICT | 8,847,360 | 0.6% | 82.7% |
MAKE_FUNCTION LOAD_FAST | 8,847,360 | 0.6% | 83.3% |
RETURN_GENERATOR CALL_BUILTIN_O | 8,847,360 | 0.6% | 83.9% |
RETURN_VALUE LOAD_GLOBAL_BUILTIN | 8,847,360 | 0.6% | 84.5% |
BUILD_TUPLE LIST_APPEND | 8,847,360 | 0.6% | 85.1% |
LOAD_FAST LIST_APPEND | 8,847,360 | 0.6% | 85.7% |
LOAD_FAST MAP_ADD | 8,847,360 | 0.6% | 86.3% |
STORE_FAST MAP_ADD | 8,847,360 | 0.6% | 86.9% |
STORE_FAST_LOAD_FAST LOAD_FAST | 8,847,360 | 0.6% | 87.5% |
BINARY_SUBSCR_DICT LIST_APPEND | 8,847,360 | 0.6% | 88.1% |
BINARY_SUBSCR_DICT CALL_LEN | 8,847,360 | 0.6% | 88.7% |
BINARY_SUBSCR_DICT CALL_PY_EXACT_ARGS | 8,847,360 | 0.6% | 89.3% |
CALL_BUILTIN_O RETURN_VALUE | 8,847,360 | 0.6% | 89.9% |
CALL_LEN LOAD_FAST | 8,847,360 | 0.6% | 90.5% |
CALL_PY_EXACT_ARGS RETURN_GENERATOR | 8,847,360 | 0.6% | 91.1% |
COMPARE_OP_INT LOAD_FAST | 8,847,360 | 0.6% | 91.7% |
LOAD_ATTR_INSTANCE_VALUE GET_ITER | 8,847,360 | 0.6% | 92.3% |
LOAD_ATTR_INSTANCE_VALUE BUILD_TUPLE | 8,847,360 | 0.6% | 92.9% |
LOAD_ATTR_INSTANCE_VALUE COMPARE_OP_INT | 8,847,360 | 0.6% | 93.5% |
LOAD_CONST_IMMORTAL BINARY_SUBSCR | 8,847,360 | 0.6% | 94.1% |
LOAD_GLOBAL_BUILTIN LOAD_FAST_LOAD_FAST | 8,847,360 | 0.6% | 94.7% |
LOAD_GLOBAL_BUILTIN LOAD_CONST_MORTAL | 8,847,360 | 0.6% | 95.3% |
POP_TOP LOAD_FAST | 6,389,820 | 0.4% | 95.7% |
POP_TOP JUMP_BACKWARD_NO_JIT | 5,898,660 | 0.4% | 96.1% |
RESUME_CHECK POP_TOP | 5,898,600 | 0.4% | 96.5% |
CACHE RESUME_CHECK | 5,898,300 | 0.4% | 96.9% |
POP_JUMP_IF_FALSE POP_TOP | 5,898,240 | 0.4% | 97.3% |
POP_JUMP_IF_FALSE RETURN_VALUE | 5,898,240 | 0.4% | 97.7% |
LOAD_ATTR_INSTANCE_VALUE RETURN_VALUE | 5,898,240 | 0.4% | 98.1% |
POP_JUMP_IF_FALSE JUMP_BACKWARD_NO_JIT | 3,440,640 | 0.2% | 98.4% |
STORE_FAST STORE_FAST | 2,459,040 | 0.2% | 98.5% |
POP_ITER STORE_FAST | 1,967,520 | 0.1% | 98.7% |
LOAD_CONST_IMMORTAL RETURN_VALUE | 1,476,360 | 0.1% | 98.8% |
BUILD_MAP SWAP | 983,040 | 0.1% | 98.8% |
LOAD_FAST STORE_ATTR_INSTANCE_VALUE | 983,040 | 0.1% | 98.9% |
SWAP BUILD_MAP | 983,040 | 0.1% | 99.0% |
LOAD_FAST_LOAD_FAST STORE_ATTR_INSTANCE_VALUE | 500,160 | 0.0% | 99.0% |
EXIT_INIT_CHECK RETURN_VALUE | 492,960 | 0.0% | 99.0% |
RETURN_VALUE EXIT_INIT_CHECK | 492,960 | 0.0% | 99.1% |
LOAD_FAST LOAD_ATTR_METHOD_NO_DICT | 492,960 | 0.0% | 99.1% |
CALL_ALLOC_AND_ENTER_INIT RESUME_CHECK | 492,960 | 0.0% | 99.1% |
RESUME_CHECK LOAD_FAST_LOAD_FAST | 492,960 | 0.0% | 99.2% |
STORE_ATTR_INSTANCE_VALUE LOAD_CONST_IMMORTAL | 492,960 | 0.0% | 99.2% |
STORE_FAST LOAD_GLOBAL_MODULE | 491,820 | 0.0% | 99.2% |
RETURN_VALUE STORE_FAST | 491,760 | 0.0% | 99.3% |
POP_ITER LOAD_CONST_IMMORTAL | 491,700 | 0.0% | 99.3% |
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 |
---|---|---|
POP_TOP | 8,847,360 | 60.0% |
RESUME_CHECK | 5,898,300 | 40.0% |
MAKE_CELL | 180 | 0.0% |
Successors and predecessors for BINARY_SUBSCR
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST_IMMORTAL | 8,847,360 | 100.0% |
BINARY_SUBSCR | 2,200 | 0.0% |
BUILD_SLICE | 1,440 | 0.0% |
LOAD_SMALL_INT | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_DICT | 8,847,360 | 100.0% |
BINARY_SUBSCR | 2,200 | 0.0% |
GET_ITER | 1,440 | 0.0% |
BINARY_SUBSCR_TUPLE_INT | 20 | 0.0% |
Successors and predecessors for CALL_FUNCTION_EX
Predecessors | Count | Percentage |
---|---|---|
PUSH_NULL | 120 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 60 | 100.0% |
Successors and predecessors for END_FOR
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 180 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_ITER | 180 | 100.0% |
Successors and predecessors for EXIT_INIT_CHECK
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 492,960 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 492,960 | 100.0% |
Successors and predecessors for GET_ITER
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 20,152,560 | 50.0% |
SWAP | 11,306,400 | 28.0% |
LOAD_ATTR_INSTANCE_VALUE | 8,847,360 | 21.9% |
BINARY_SUBSCR | 1,440 | 0.0% |
LOAD_CONST_MORTAL | 1,080 | 0.0% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER_LIST | 20,153,940 | 50.0% |
LOAD_FAST_AND_CLEAR | 11,306,400 | 28.0% |
CALL_PY_EXACT_ARGS | 8,847,540 | 21.9% |
FOR_ITER_TUPLE | 1,080 | 0.0% |
FOR_ITER_GEN | 180 | 0.0% |
Successors and predecessors for INTERPRETER_EXIT
Predecessors | Count | Percentage |
---|---|---|
YIELD_VALUE | 14,254,080 | 96.7% |
RETURN_VALUE | 491,700 | 3.3% |
Successors and predecessors for MAKE_FUNCTION
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST_MORTAL | 8,847,600 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 8,847,360 | 100.0% |
SET_FUNCTION_ATTRIBUTE | 240 | 0.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_LIST | 11,798,100 | 100.0% |
FOR_ITER_TUPLE | 1,080 | 0.0% |
END_FOR | 180 | 0.0% |
FOR_ITER_RANGE | 120 | 0.0% |
FOR_ITER | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
SWAP | 9,338,880 | 79.1% |
STORE_FAST | 1,967,520 | 16.7% |
LOAD_CONST_IMMORTAL | 491,700 | 4.2% |
JUMP_BACKWARD_NO_JIT | 1,260 | 0.0% |
LOAD_FAST | 60 | 0.0% |
Successors and predecessors for POP_TOP
Predecessors | Count | Percentage |
---|---|---|
CACHE | 8,847,360 | 40.9% |
RESUME_CHECK | 5,898,600 | 27.3% |
POP_JUMP_IF_FALSE | 5,898,240 | 27.3% |
RETURN_VALUE | 491,700 | 2.3% |
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS | 491,520 | 2.3% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 8,847,540 | 40.9% |
LOAD_FAST | 6,389,820 | 29.5% |
JUMP_BACKWARD_NO_JIT | 5,898,660 | 27.3% |
LOAD_CONST_IMMORTAL | 491,700 | 2.3% |
Successors and predecessors for PUSH_NULL
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_MODULE | 240 | 44.4% |
LOAD_FAST | 180 | 33.3% |
CALL_INTRINSIC_1 | 60 | 11.1% |
LOAD_DEREF | 60 | 11.1% |
Successors | Count | Percentage |
---|---|---|
CALL_NON_PY_GENERAL | 160 | 29.6% |
CALL_FUNCTION_EX | 120 | 22.2% |
LOAD_FAST | 120 | 22.2% |
CALL | 80 | 14.8% |
LOAD_FAST_LOAD_FAST | 60 | 11.1% |
Successors and predecessors for RETURN_GENERATOR
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 8,847,360 | 100.0% |
COPY_FREE_VARS | 180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_BUILTIN_O | 8,847,360 | 100.0% |
RETURN_VALUE | 180 | 0.0% |
Successors and predecessors for RETURN_VALUE
Predecessors | Count | Percentage |
---|---|---|
CALL_BUILTIN_O | 8,847,360 | 39.1% |
POP_JUMP_IF_FALSE | 5,898,240 | 26.1% |
LOAD_ATTR_INSTANCE_VALUE | 5,898,240 | 26.1% |
LOAD_CONST_IMMORTAL | 1,476,360 | 6.5% |
EXIT_INIT_CHECK | 492,960 | 2.2% |
Successors | Count | Percentage |
---|---|---|
TO_BOOL_BOOL | 11,796,480 | 52.2% |
LOAD_GLOBAL_BUILTIN | 8,847,360 | 39.1% |
EXIT_INIT_CHECK | 492,960 | 2.2% |
STORE_FAST | 491,760 | 2.2% |
INTERPRETER_EXIT | 491,700 | 2.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 BINARY_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 20 | 100.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_OP_SUBTRACT_FLOAT | 20 | 100.0% |
Successors and predecessors for BUILD_LIST
Predecessors | Count | Percentage |
---|---|---|
SWAP | 10,323,360 | 95.5% |
STORE_ATTR_INSTANCE_VALUE | 491,520 | 4.5% |
LOAD_FAST | 60 | 0.0% |
STORE_FAST | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
SWAP | 10,323,360 | 95.5% |
LOAD_FAST | 491,520 | 4.5% |
LOAD_DEREF | 60 | 0.0% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for BUILD_MAP
Predecessors | Count | Percentage |
---|---|---|
SWAP | 983,040 | 100.0% |
Successors | Count | Percentage |
---|---|---|
SWAP | 983,040 | 100.0% |
Successors and predecessors for BUILD_SLICE
Predecessors | Count | Percentage |
---|---|---|
BINARY_OP_ADD_INT | 1,440 | 100.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR | 1,440 | 100.0% |
Successors and predecessors for BUILD_TUPLE
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 8,847,360 | 100.0% |
LOAD_FAST | 240 | 0.0% |
LOAD_FAST_LOAD_FAST | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LIST_APPEND | 8,847,360 | 100.0% |
LOAD_CONST_MORTAL | 240 | 0.0% |
CALL_METHOD_DESCRIPTOR_O | 40 | 0.0% |
CALL | 20 | 0.0% |
Successors and predecessors for CALL
Predecessors | Count | Percentage |
---|---|---|
PUSH_NULL | 80 | 25.0% |
LOAD_FAST_LOAD_FAST | 60 | 18.8% |
LOAD_FAST | 40 | 12.5% |
LOAD_CONST_IMMORTAL | 40 | 12.5% |
BUILD_TUPLE | 20 | 6.2% |
Successors | Count | Percentage |
---|---|---|
CALL_NON_PY_GENERAL | 100 | 31.2% |
CALL_PY_EXACT_ARGS | 100 | 31.2% |
CALL_BUILTIN_CLASS | 40 | 12.5% |
CALL_LEN | 20 | 6.2% |
CALL_METHOD_DESCRIPTOR_NOARGS | 20 | 6.2% |
Successors and predecessors for CALL_INTRINSIC_1
Predecessors | Count | Percentage |
---|---|---|
LIST_EXTEND | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
PUSH_NULL | 60 | 100.0% |
Successors and predecessors for COMPARE_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR | 11,796,480 | 100.0% |
COMPARE_OP | 2,880 | 0.0% |
LOAD_SMALL_INT | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
COPY | 11,796,480 | 100.0% |
COMPARE_OP | 2,880 | 0.0% |
COMPARE_OP_INT | 20 | 0.0% |
Successors and predecessors for COPY
Predecessors | Count | Percentage |
---|---|---|
COMPARE_OP | 11,796,480 | 100.0% |
Successors | Count | Percentage |
---|---|---|
TO_BOOL_BOOL | 11,796,480 | 100.0% |
Successors and predecessors for COPY_FREE_VARS
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 240 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_GENERATOR | 180 | 75.0% |
RESUME_CHECK | 60 | 25.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 |
---|---|---|
STORE_FAST | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 60 | 100.0% |
Successors and predecessors for LIST_APPEND
Predecessors | Count | Percentage |
---|---|---|
CALL_METHOD_DESCRIPTOR_FAST | 53,084,160 | 66.7% |
BUILD_TUPLE | 8,847,360 | 11.1% |
LOAD_FAST | 8,847,360 | 11.1% |
BINARY_SUBSCR_DICT | 8,847,360 | 11.1% |
LOAD_ATTR_INSTANCE_VALUE | 7,860 | 0.0% |
Successors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 79,634,100 | 100.0% |
Successors and predecessors for LIST_EXTEND
Predecessors | Count | Percentage |
---|---|---|
LOAD_DEREF | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
CALL_INTRINSIC_1 | 60 | 100.0% |
Successors and predecessors for LOAD_ATTR
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 11,796,560 | 100.0% |
LOAD_ATTR | 2,900 | 0.0% |
LOAD_FAST | 140 | 0.0% |
LOAD_ATTR_INSTANCE_VALUE | 40 | 0.0% |
LOAD_FAST_LOAD_FAST | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
COMPARE_OP | 11,796,480 | 100.0% |
LOAD_ATTR | 2,900 | 0.0% |
LOAD_ATTR_MODULE | 80 | 0.0% |
LOAD_FAST_LOAD_FAST | 60 | 0.0% |
LOAD_ATTR_INSTANCE_VALUE | 60 | 0.0% |
Successors and predecessors for LOAD_DEREF
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 360 | 54.5% |
SET_FUNCTION_ATTRIBUTE | 180 | 27.3% |
BUILD_LIST | 60 | 9.1% |
RESUME_CHECK | 60 | 9.1% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_CLASS_WITH_METACLASS_CHECK | 540 | 81.8% |
PUSH_NULL | 60 | 9.1% |
LIST_EXTEND | 60 | 9.1% |
Successors and predecessors for LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_NO_DICT | 53,084,160 | 26.5% |
LOAD_ATTR_INSTANCE_VALUE | 26,542,080 | 13.3% |
RESUME_CHECK | 21,135,900 | 10.6% |
STORE_FAST | 20,155,500 | 10.1% |
POP_JUMP_IF_TRUE | 14,254,140 | 7.1% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 76,677,260 | 38.3% |
CALL_METHOD_DESCRIPTOR_FAST | 53,084,160 | 26.5% |
GET_ITER | 20,152,560 | 10.1% |
CALL_PY_EXACT_ARGS | 12,288,000 | 6.1% |
LOAD_ATTR_METHOD_WITH_VALUES | 9,338,960 | 4.7% |
Successors and predecessors for LOAD_FAST_AND_CLEAR
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 11,306,400 | 95.8% |
LOAD_FAST_AND_CLEAR | 491,520 | 4.2% |
Successors | Count | Percentage |
---|---|---|
SWAP | 11,306,400 | 95.8% |
LOAD_FAST_AND_CLEAR | 491,520 | 4.2% |
Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_WITH_VALUES | 8,847,420 | 48.6% |
LOAD_GLOBAL_BUILTIN | 8,847,360 | 48.6% |
RESUME_CHECK | 492,960 | 2.7% |
STORE_ATTR_INSTANCE_VALUE | 7,200 | 0.0% |
LOAD_FAST_LOAD_FAST | 2,880 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 17,694,760 | 97.2% |
STORE_ATTR_INSTANCE_VALUE | 500,160 | 2.7% |
LOAD_FAST_LOAD_FAST | 2,880 | 0.0% |
CALL_ALLOC_AND_ENTER_INIT | 1,440 | 0.0% |
CALL_PY_EXACT_ARGS | 80 | 0.0% |
Successors and predecessors for LOAD_GLOBAL
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 80 | 44.4% |
RESUME_CHECK | 60 | 33.3% |
POP_ITER | 40 | 22.2% |
Successors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 120 | 66.7% |
LOAD_GLOBAL_BUILTIN | 60 | 33.3% |
Successors and predecessors for LOAD_SMALL_INT
Predecessors | Count | Percentage |
---|---|---|
CALL_LEN | 491,580 | 49.8% |
LOAD_GLOBAL_MODULE | 491,520 | 49.8% |
LOAD_FAST | 2,940 | 0.3% |
LOAD_GLOBAL_BUILTIN | 60 | 0.0% |
RESUME_CHECK | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
COMPARE_OP_INT | 491,560 | 49.8% |
LOAD_FAST | 491,520 | 49.8% |
BINARY_OP_ADD_INT | 2,880 | 0.3% |
STORE_FAST | 60 | 0.0% |
BINARY_SUBSCR_TUPLE_INT | 40 | 0.0% |
Successors and predecessors for MAKE_CELL
Predecessors | Count | Percentage |
---|---|---|
CACHE | 180 | 75.0% |
CALL_PY_GENERAL | 60 | 25.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 240 | 100.0% |
Successors and predecessors for MAP_ADD
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 8,847,360 | 50.0% |
STORE_FAST | 8,847,360 | 50.0% |
Successors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 17,694,720 | 100.0% |
Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors | Count | Percentage |
---|---|---|
TO_BOOL_BOOL | 23,592,960 | 98.0% |
COMPARE_OP_INT | 491,520 | 2.0% |
TO_BOOL | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 8,847,420 | 36.7% |
POP_TOP | 5,898,240 | 24.5% |
RETURN_VALUE | 5,898,240 | 24.5% |
JUMP_BACKWARD_NO_JIT | 3,440,640 | 14.3% |
Successors and predecessors for POP_JUMP_IF_NOT_NONE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 60 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST_MORTAL | 60 | 100.0% |
Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors | Count | Percentage |
---|---|---|
TO_BOOL_ALWAYS_TRUE | 14,254,080 | 54.7% |
TO_BOOL_NONE | 11,796,480 | 45.3% |
COMPARE_OP_INT | 60 | 0.0% |
TO_BOOL_BOOL | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 14,254,140 | 54.7% |
JUMP_BACKWARD_NO_JIT | 11,796,480 | 45.3% |
NOP | 60 | 0.0% |
Successors and predecessors for SET_FUNCTION_ATTRIBUTE
Predecessors | Count | Percentage |
---|---|---|
MAKE_FUNCTION | 240 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_DEREF | 180 | 75.0% |
STORE_FAST | 60 | 25.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 |
---|---|---|
FOR_ITER_LIST | 17,695,080 | 54.5% |
SWAP | 9,338,880 | 28.8% |
STORE_FAST | 2,459,040 | 7.6% |
POP_ITER | 1,967,520 | 6.1% |
RETURN_VALUE | 491,760 | 1.5% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 20,155,500 | 62.1% |
MAP_ADD | 8,847,360 | 27.3% |
STORE_FAST | 2,459,040 | 7.6% |
LOAD_GLOBAL_MODULE | 491,820 | 1.5% |
LOAD_GLOBAL_BUILTIN | 491,560 | 1.5% |
Successors and predecessors for STORE_FAST_LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
FOR_ITER_LIST | 108,633,780 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_NO_DICT | 53,084,160 | 48.9% |
TO_BOOL_ALWAYS_TRUE | 14,254,080 | 13.1% |
LOAD_ATTR_METHOD_WITH_VALUES | 11,796,480 | 10.9% |
TO_BOOL_NONE | 11,796,480 | 10.9% |
LOAD_ATTR_INSTANCE_VALUE | 8,855,220 | 8.2% |
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 |
---|---|---|
LOAD_FAST_AND_CLEAR | 11,306,400 | 35.4% |
BUILD_LIST | 10,323,360 | 32.3% |
POP_ITER | 9,338,880 | 29.2% |
BUILD_MAP | 983,040 | 3.1% |
Successors | Count | Percentage |
---|---|---|
GET_ITER | 11,306,400 | 35.4% |
BUILD_LIST | 10,323,360 | 32.3% |
STORE_FAST | 9,338,880 | 29.2% |
BUILD_MAP | 983,040 | 3.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 YIELD_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 14,254,080 | 100.0% |
BINARY_SUBSCR_DICT | 360 | 0.0% |
Successors | Count | Percentage |
---|---|---|
INTERPRETER_EXIT | 14,254,080 | 100.0% |
STORE_FAST | 360 | 0.0% |
Successors and predecessors for BINARY_OP_ADD_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_SMALL_INT | 2,880 | 100.0% |
Successors | Count | Percentage |
---|---|---|
BUILD_SLICE | 1,440 | 50.0% |
STORE_FAST | 1,440 | 50.0% |
Successors and predecessors for BINARY_OP_SUBTRACT_FLOAT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 40 | 66.7% |
BINARY_OP | 20 | 33.3% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 60 | 100.0% |
Successors and predecessors for BINARY_SUBSCR_DICT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 17,694,720 | 66.7% |
BINARY_SUBSCR | 8,847,360 | 33.3% |
LOAD_FAST | 360 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LIST_APPEND | 8,847,360 | 33.3% |
CALL_LEN | 8,847,360 | 33.3% |
CALL_PY_EXACT_ARGS | 8,847,360 | 33.3% |
YIELD_VALUE | 360 | 0.0% |
Successors and predecessors for BINARY_SUBSCR_TUPLE_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_SMALL_INT | 40 | 66.7% |
BINARY_SUBSCR | 20 | 33.3% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 60 | 100.0% |
Successors and predecessors for CALL_ALLOC_AND_ENTER_INIT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 491,520 | 99.7% |
LOAD_FAST_LOAD_FAST | 1,440 | 0.3% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 492,960 | 100.0% |
Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors | Count | Percentage |
---|---|---|
CALL | 40 | 33.3% |
LOAD_FAST | 40 | 33.3% |
LOAD_SMALL_INT | 40 | 33.3% |
Successors | Count | Percentage |
---|---|---|
GET_ITER | 60 | 50.0% |
STORE_FAST | 60 | 50.0% |
Successors and predecessors for CALL_BUILTIN_O
Predecessors | Count | Percentage |
---|---|---|
RETURN_GENERATOR | 8,847,360 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 8,847,360 | 100.0% |
Successors and predecessors for CALL_LEN
Predecessors | Count | Percentage |
---|---|---|
BINARY_SUBSCR_DICT | 8,847,360 | 94.7% |
LOAD_ATTR_INSTANCE_VALUE | 491,520 | 5.3% |
LOAD_FAST | 40 | 0.0% |
CALL | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 8,847,360 | 94.7% |
LOAD_SMALL_INT | 491,580 | 5.3% |
Successors and predecessors for CALL_LIST_APPEND
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 1,440 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 1,440 | 100.0% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 53,084,160 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LIST_APPEND | 53,084,160 | 100.0% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_NO_DICT | 491,520 | 100.0% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 491,520 | 100.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 | 160 | 53.3% |
CALL | 100 | 33.3% |
LOAD_FAST_LOAD_FAST | 40 | 13.3% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 60 | 20.0% |
RETURN_VALUE | 60 | 20.0% |
LOAD_FAST | 60 | 20.0% |
STORE_DEREF | 60 | 20.0% |
STORE_FAST | 60 | 20.0% |
Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 12,288,000 | 41.0% |
GET_ITER | 8,847,540 | 29.5% |
BINARY_SUBSCR_DICT | 8,847,360 | 29.5% |
CALL | 100 | 0.0% |
LOAD_FAST_LOAD_FAST | 80 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 21,135,600 | 70.5% |
RETURN_GENERATOR | 8,847,360 | 29.5% |
COPY_FREE_VARS | 240 | 0.0% |
Successors and predecessors for CALL_PY_GENERAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST_IMMORTAL | 40 | 66.7% |
CALL | 20 | 33.3% |
Successors | Count | Percentage |
---|---|---|
MAKE_CELL | 60 | 100.0% |
Successors and predecessors for COMPARE_OP_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 8,847,360 | 94.7% |
LOAD_SMALL_INT | 491,560 | 5.3% |
COMPARE_OP | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 8,847,360 | 94.7% |
POP_JUMP_IF_FALSE | 491,520 | 5.3% |
POP_JUMP_IF_TRUE | 60 | 0.0% |
Successors and predecessors for FOR_ITER_GEN
Predecessors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 360 | 66.7% |
GET_ITER | 180 | 33.3% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 360 | 66.7% |
POP_TOP | 180 | 33.3% |
Successors and predecessors for FOR_ITER_LIST
Predecessors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 117,973,020 | 85.4% |
GET_ITER | 20,153,940 | 14.6% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST_LOAD_FAST | 108,633,780 | 78.6% |
STORE_FAST | 17,695,080 | 12.8% |
POP_ITER | 11,798,100 | 8.5% |
Successors and predecessors for FOR_ITER_RANGE
Predecessors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 491,700 | 100.0% |
GET_ITER | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 491,700 | 100.0% |
POP_ITER | 120 | 0.0% |
Successors and predecessors for FOR_ITER_TUPLE
Predecessors | Count | Percentage |
---|---|---|
JUMP_BACKWARD_NO_JIT | 2,160 | 66.7% |
GET_ITER | 1,080 | 33.3% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 2,160 | 66.7% |
POP_ITER | 1,080 | 33.3% |
Successors and predecessors for JUMP_BACKWARD_NO_JIT
Predecessors | Count | Percentage |
---|---|---|
LIST_APPEND | 79,634,100 | 67.2% |
MAP_ADD | 17,694,720 | 14.9% |
POP_JUMP_IF_TRUE | 11,796,480 | 10.0% |
POP_TOP | 5,898,660 | 5.0% |
POP_JUMP_IF_FALSE | 3,440,640 | 2.9% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER_LIST | 117,973,020 | 99.6% |
FOR_ITER_RANGE | 491,700 | 0.4% |
FOR_ITER_TUPLE | 2,160 | 0.0% |
FOR_ITER_GEN | 360 | 0.0% |
FOR_ITER | 60 | 0.0% |
Successors and predecessors for LOAD_ATTR_CLASS_WITH_METACLASS_CHECK
Predecessors | Count | Percentage |
---|---|---|
LOAD_DEREF | 540 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 360 | 66.7% |
GET_ITER | 180 | 33.3% |
Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 76,677,260 | 74.3% |
LOAD_FAST_LOAD_FAST | 17,694,760 | 17.1% |
STORE_FAST_LOAD_FAST | 8,855,220 | 8.6% |
LOAD_ATTR | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 26,542,080 | 25.7% |
BINARY_SUBSCR_DICT | 17,694,720 | 17.1% |
YIELD_VALUE | 14,254,080 | 13.8% |
LOAD_GLOBAL_MODULE | 11,796,480 | 11.4% |
GET_ITER | 8,847,360 | 8.6% |
Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST_LOAD_FAST | 53,084,160 | 99.1% |
LOAD_FAST | 492,960 | 0.9% |
LOAD_ATTR_INSTANCE_VALUE | 80 | 0.0% |
LOAD_ATTR | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 53,084,160 | 99.1% |
CALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS | 491,520 | 0.9% |
LOAD_GLOBAL_MODULE | 1,440 | 0.0% |
LOAD_FAST_LOAD_FAST | 60 | 0.0% |
CALL_METHOD_DESCRIPTOR_NOARGS | 40 | 0.0% |
Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST_LOAD_FAST | 11,796,480 | 55.8% |
LOAD_FAST | 9,338,960 | 44.2% |
LOAD_ATTR | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 12,288,060 | 58.1% |
LOAD_FAST_LOAD_FAST | 8,847,420 | 41.9% |
Successors and predecessors for LOAD_ATTR_MODULE
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 160 | 66.7% |
LOAD_ATTR | 80 | 33.3% |
Successors | Count | Percentage |
---|---|---|
PUSH_NULL | 240 | 100.0% |
Successors and predecessors for LOAD_CONST_IMMORTAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 8,848,920 | 85.7% |
STORE_ATTR_INSTANCE_VALUE | 492,960 | 4.8% |
POP_ITER | 491,700 | 4.8% |
POP_TOP | 491,700 | 4.8% |
LOAD_CONST_IMMORTAL | 1,560 | 0.0% |
Successors | Count | Percentage |
---|---|---|
BINARY_SUBSCR | 8,847,360 | 85.7% |
RETURN_VALUE | 1,476,360 | 14.3% |
LOAD_CONST_IMMORTAL | 1,560 | 0.0% |
LOAD_FAST | 1,440 | 0.0% |
STORE_FAST | 120 | 0.0% |
Successors and predecessors for LOAD_CONST_MORTAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_BUILTIN | 8,847,360 | 100.0% |
STORE_FAST | 1,080 | 0.0% |
BUILD_TUPLE | 240 | 0.0% |
POP_JUMP_IF_NOT_NONE | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
MAKE_FUNCTION | 8,847,600 | 100.0% |
GET_ITER | 1,080 | 0.0% |
STORE_FAST | 60 | 0.0% |
Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors | Count | Percentage |
---|---|---|
RESUME_CHECK | 8,847,400 | 48.6% |
RETURN_VALUE | 8,847,360 | 48.6% |
STORE_FAST | 491,560 | 2.7% |
LOAD_GLOBAL | 60 | 0.0% |
POP_ITER | 40 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 8,847,360 | 48.6% |
LOAD_CONST_MORTAL | 8,847,360 | 48.6% |
LOAD_FAST | 491,640 | 2.7% |
LOAD_SMALL_INT | 60 | 0.0% |
Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 11,796,480 | 96.0% |
STORE_FAST | 491,820 | 4.0% |
LOAD_ATTR_METHOD_NO_DICT | 1,440 | 0.0% |
LOAD_GLOBAL | 120 | 0.0% |
RESUME_CHECK | 80 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR | 11,796,560 | 96.0% |
LOAD_SMALL_INT | 491,520 | 4.0% |
LOAD_FAST_LOAD_FAST | 1,500 | 0.0% |
GET_ITER | 180 | 0.0% |
LOAD_ATTR_MODULE | 160 | 0.0% |
Successors and predecessors for RESUME_CHECK
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 21,135,600 | 58.1% |
POP_TOP | 8,847,540 | 24.3% |
CACHE | 5,898,300 | 16.2% |
CALL_ALLOC_AND_ENTER_INIT | 492,960 | 1.4% |
FOR_ITER_GEN | 360 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 21,135,900 | 58.1% |
LOAD_GLOBAL_BUILTIN | 8,847,400 | 24.3% |
POP_TOP | 5,898,600 | 16.2% |
LOAD_FAST_LOAD_FAST | 492,960 | 1.4% |
LOAD_GLOBAL_MODULE | 80 | 0.0% |
Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 983,040 | 66.3% |
LOAD_FAST_LOAD_FAST | 500,160 | 33.7% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST_IMMORTAL | 492,960 | 33.2% |
BUILD_LIST | 491,520 | 33.1% |
LOAD_FAST | 491,520 | 33.1% |
LOAD_FAST_LOAD_FAST | 7,200 | 0.5% |
Successors and predecessors for TO_BOOL_ALWAYS_TRUE
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST_LOAD_FAST | 14,254,080 | 99.1% |
TO_BOOL_NONE | 122,880 | 0.9% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 14,254,080 | 99.1% |
TO_BOOL_NONE | 122,880 | 0.9% |
Successors and predecessors for TO_BOOL_BOOL
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 11,796,480 | 50.0% |
COPY | 11,796,480 | 50.0% |
LOAD_FAST | 40 | 0.0% |
TO_BOOL | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 23,592,960 | 100.0% |
POP_JUMP_IF_TRUE | 60 | 0.0% |
Successors and predecessors for TO_BOOL_NONE
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST_LOAD_FAST | 11,796,480 | 99.0% |
TO_BOOL_ALWAYS_TRUE | 122,880 | 1.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 11,796,480 | 99.0% |
TO_BOOL_ALWAYS_TRUE | 122,880 | 1.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 |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
2,940 | 99.3% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for BINARY_SUBSCR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
8,848,800 | 25.0% |
hit
ⓘSpecialized instructions that complete. |
26,542,500 | 75.0% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 0.9% |
Failure | 2,200 | 99.1% |
Failure kind | Count | Ratio |
---|---|---|
out of range | 2,160 | 98.2% |
list slice | 40 | 1.8% |
specialization stats for CALL family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
102,239,820 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 320 | 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. |
11,796,480 | 55.8% |
hit
ⓘSpecialized instructions that complete. |
9,338,940 | 44.2% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 0.7% |
Failure | 2,880 | 99.3% |
Failure kind | Count | Ratio |
---|---|---|
baseobject | 2,880 | 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. |
138,622,560 | 100.0% |
specialization stats for LOAD_ATTR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
11,796,540 | 6.2% |
hit
ⓘSpecialized instructions that complete. |
177,940,260 | 93.8% |
miss
ⓘSpecialized instructions that deopt. |
540 | 0.0% |
Success | Count | Ratio |
---|---|---|
Success | 220 | 7.1% |
Failure | 2,900 | 92.9% |
Failure kind | Count | Ratio |
---|---|---|
mutable class | 2,880 | 99.3% |
specialization stats for LOAD_GLOBAL family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
30,476,400 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 180 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for STORE_ATTR family
Kind | Count | Ratio |
---|---|---|
hit
ⓘSpecialized instructions that complete. |
1,483,200 | 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. |
28,999,740 | 69.0% |
miss
ⓘSpecialized instructions that deopt. |
13,025,280 | 31.0% |
Success | Count | Ratio |
---|---|---|
Success | 245,780 | 100.0% |
Failure | 20 | 0.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. |
727,522,860 | 49.5% |
Not specialized
ⓘInstructions that could be specialized but aren't, e.g. |
32,450,760 | 2.2% |
Specialized hits
ⓘSpecialized instructions, e.g. |
697,529,280 | 47.4% |
Specialized misses
ⓘSpecialized instructions, e.g. |
13,025,820 | 0.9% |
Breakdown of deferred (not specialized) instruction counts by family
Name | Count | Ratio |
---|---|---|
LOAD_ATTR | 11,796,540 | 36.4% |
COMPARE_OP | 11,796,480 | 36.4% |
BINARY_SUBSCR | 8,848,800 | 27.3% |
TO_BOOL | 60 | 0.0% |
FOR_ITER | 60 | 0.0% |
BINARY_SLICE | 0 | 0.0% |
STORE_SLICE | 0 | 0.0% |
CACHE | 0 | 0.0% |
CALL_FUNCTION_EX | 0 | 0.0% |
END_FOR | 0 | 0.0% |
Breakdown of misses (specialized deopts) instruction counts by family
Name | Count | Ratio |
---|---|---|
TO_BOOL_ALWAYS_TRUE | 6,512,640 | 50.0% |
TO_BOOL_NONE | 6,512,640 | 50.0% |
LOAD_ATTR_CLASS_WITH_METACLASS_CHECK | 540 | 0.0% |
CACHE | 0 | 0.0% |
CALL_FUNCTION_EX | 0 | 0.0% |
END_FOR | 0 | 0.0% |
EXIT_INIT_CHECK | 0 | 0.0% |
GET_ITER | 0 | 0.0% |
INTERPRETER_EXIT | 0 | 0.0% |
MAKE_FUNCTION | 0 | 0.0% |
Inlined calls and frame stats
This shows what fraction of calls to Python functions are inlined (i.e. not having a call at the C level) and for those that are not, where the call comes from. The various categories overlap.
Also includes the count of frame objects created.
Count | Ratio | |
---|---|---|
Calls to PyEval_EvalDefault | 14,745,840 | 32.6% |
Calls to Python functions inlined | 30,476,820 | 67.4% |
Calls via PyEval_EvalFrame (total) | 14,745,840 | 32.6% |
Calls via PyEval_EvalFrame (vector) | 240 | 0.0% |
Calls via PyEval_EvalFrame (generator) | 14,745,600 | 32.6% |
Calls via PyEval_EvalFrame (legacy) | 0 | 0.0% |
Calls via PyEval_EvalFrame (function vectorcall) | 240 | 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) | 60 | 0.0% |
Calls via PyEval_EvalFrame (api) | 180 | 0.0% |
Calls via PyEval_EvalFrame (method) | 0 | 0.0% |
Frame objects created | 0 | 0.0% |
Frames pushed | 30,969,480 | 68.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 | 41,280,080 | 66.1% |
Frees to freelist | 41,279,980 | |
Allocations | 21,139,180 | 33.9% |
Allocations to 512 bytes | 20,156,140 | 32.3% |
Allocations to 4 kbytes | 983,040 | 1.6% |
Allocations over 4 kbytes | 0 | 0.0% |
Frees | 31,462,441 | |
Inline values | 492,960 | |
Interpreter mortal increfs | 516,634,680 | 49.9% |
Interpreter mortal decrefs | 601,662,700 | 52.3% |
Mortal increfs | 163,204,039 | 15.7% |
Mortal decrefs | 137,644,400 | 12.0% |
Interpreter immortal increfs | 248,245,380 | 24.0% |
Interpreter immortal decrefs | 219,258,720 | 19.1% |
Immortal increfs | 108,142,219 | 10.4% |
Immortal decrefs | 191,222,438 | 16.6% |
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 | 23,599,981 | |
Method cache misses | 39 | |
Method cache collisions | 23 | |
Method cache dunder hits | 180 | |
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-01