- benchmark: deltablue
- fork: python
- ref: a19bb261a327e1008f219b62f6465941c981899b
- commit hash: a19bb26
- commit date: 2024-06-15T19:10:50+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 | 310,417,640 | 19.6% | 19.6% | |
LOAD_ATTR_INSTANCE_VALUE | 228,318,340 | 14.4% | 34.1% | 1.6% |
RESUME_CHECK | 121,730,360 | 7.7% | 41.8% | 0.0% |
CALL_PY_EXACT_ARGS | 115,799,080 | 7.3% | 49.1% | 2.6% |
LOAD_ATTR_METHOD_WITH_VALUES | 82,698,200 | 5.2% | 54.3% | 6.4% |
LOAD_GLOBAL_MODULE | 78,171,520 | 4.9% | 59.3% | |
POP_JUMP_IF_FALSE | 78,161,280 | 4.9% | 64.2% | |
RETURN_VALUE | 75,939,500 | 4.8% | 69.0% | |
COMPARE_OP_INT | 71,256,140 | 4.5% | 73.5% | |
LOAD_ATTR_CLASS | 65,310,440 | 4.1% | 77.6% | |
POP_TOP | 53,948,200 | 3.4% | 81.0% | |
STORE_ATTR_INSTANCE_VALUE | 51,533,640 | 3.3% | 84.3% | 3.6% |
ENTER_EXECUTOR | 51,169,540 | 3.2% | 87.5% | |
RETURN_CONST | 49,861,380 | 3.2% | 90.7% | |
STORE_FAST | 22,254,620 | 1.4% | 92.1% | |
LOAD_FAST_LOAD_FAST | 15,872,380 | 1.0% | 93.1% | |
TO_BOOL_BOOL | 12,815,040 | 0.8% | 93.9% | |
POP_JUMP_IF_TRUE | 7,771,760 | 0.5% | 94.4% | |
LOAD_GLOBAL_BUILTIN | 7,411,820 | 0.5% | 94.9% | |
LOAD_ATTR | 6,066,020 | 0.4% | 95.3% | |
CALL_LIST_APPEND | 5,997,860 | 0.4% | 95.6% | |
BINARY_OP_ADD_INT | 5,941,640 | 0.4% | 96.0% | |
LOAD_ATTR_METHOD_LAZY_DICT | 5,913,000 | 0.4% | 96.4% | |
LOAD_CONST | 5,833,900 | 0.4% | 96.8% | |
BINARY_OP_MULTIPLY_INT | 5,154,160 | 0.3% | 97.1% | |
CALL_BOUND_METHOD_EXACT_ARGS | 4,407,920 | 0.3% | 97.4% | |
CALL_LEN | 3,986,820 | 0.3% | 97.6% | |
TO_BOOL_INT | 3,986,820 | 0.3% | 97.9% | |
COPY | 3,689,600 | 0.2% | 98.1% | |
CALL_NON_PY_GENERAL | 3,584,420 | 0.2% | 98.3% | |
COPY_FREE_VARS | 3,402,320 | 0.2% | 98.5% | |
LOAD_SUPER_ATTR_METHOD | 3,402,020 | 0.2% | 98.8% | |
GET_ITER | 3,186,700 | 0.2% | 99.0% | |
CALL_METHOD_DESCRIPTOR_FAST | 3,185,780 | 0.2% | 99.2% | 100.0% |
FOR_ITER_LIST | 3,167,180 | 0.2% | 99.4% | |
POP_JUMP_IF_NONE | 2,740,600 | 0.2% | 99.5% | |
COMPARE_OP | 2,632,900 | 0.2% | 99.7% | |
EXIT_INIT_CHECK | 1,318,140 | 0.1% | 99.8% | |
CALL_ALLOC_AND_ENTER_INIT | 1,318,140 | 0.1% | 99.9% | |
SWAP | 784,960 | 0.0% | 99.9% | |
BINARY_OP | 283,580 | 0.0% | 99.9% | |
UNARY_NOT | 271,360 | 0.0% | 100.0% | |
CALL | 264,540 | 0.0% | 100.0% | |
INTERPRETER_EXIT | 261,380 | 0.0% | 100.0% | |
LOAD_ATTR_SLOT | 61,320 | 0.0% | 100.0% | |
BINARY_OP_SUBTRACT_INT | 25,720 | 0.0% | 100.0% | |
FOR_ITER_RANGE | 25,220 | 0.0% | 100.0% | |
CALL_BUILTIN_CLASS | 22,980 | 0.0% | 100.0% | |
JUMP_FORWARD | 10,780 | 0.0% | 100.0% | |
CALL_METHOD_DESCRIPTOR_O | 10,400 | 0.0% | 100.0% | 100.0% |
BUILD_CONST_KEY_MAP | 10,240 | 0.0% | 100.0% | |
BINARY_SUBSCR_DICT | 10,220 | 0.0% | 100.0% | |
JUMP_BACKWARD | 8,260 | 0.0% | 100.0% | |
BINARY_SUBSCR | 6,040 | 0.0% | 100.0% | |
STORE_GLOBAL | 5,120 | 0.0% | 100.0% | |
LOAD_GLOBAL | 4,080 | 0.0% | 100.0% | |
LOAD_FAST_CHECK | 2,560 | 0.0% | 100.0% | |
STORE_FAST_STORE_FAST | 2,560 | 0.0% | 100.0% | |
UNPACK_SEQUENCE_TUPLE | 2,540 | 0.0% | 100.0% | |
STORE_ATTR | 2,200 | 0.0% | 100.0% | |
TO_BOOL | 1,280 | 0.0% | 100.0% | |
RESUME | 1,200 | 0.0% | 100.0% | 65.0% |
PUSH_NULL | 720 | 0.0% | 100.0% | |
FOR_ITER | 520 | 0.0% | 100.0% | |
LOAD_SUPER_ATTR | 440 | 0.0% | 100.0% | |
LOAD_DEREF | 160 | 0.0% | 100.0% | |
LOAD_ATTR_MODULE | 120 | 0.0% | 100.0% | |
NOP | 80 | 0.0% | 100.0% | |
CALL_FUNCTION_EX | 80 | 0.0% | 100.0% | |
BINARY_OP_SUBTRACT_FLOAT | 60 | 0.0% | 100.0% | |
UNPACK_SEQUENCE | 40 | 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 | 172,715,120 | 10.9% | 10.9% |
RESUME_CHECK LOAD_FAST | 114,617,840 | 7.2% | 18.2% |
CALL_PY_EXACT_ARGS RESUME_CHECK | 113,916,960 | 7.2% | 25.4% |
LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES | 76,983,020 | 4.9% | 30.2% |
LOAD_ATTR_METHOD_WITH_VALUES CALL_PY_EXACT_ARGS | 72,368,520 | 4.6% | 34.8% |
POP_JUMP_IF_FALSE LOAD_FAST | 69,483,180 | 4.4% | 39.2% |
COMPARE_OP_INT POP_JUMP_IF_FALSE | 66,511,780 | 4.2% | 43.4% |
LOAD_GLOBAL_MODULE LOAD_ATTR_CLASS | 65,310,200 | 4.1% | 47.5% |
LOAD_ATTR_INSTANCE_VALUE RETURN_VALUE | 63,491,600 | 4.0% | 51.6% |
LOAD_ATTR_INSTANCE_VALUE LOAD_GLOBAL_MODULE | 63,037,400 | 4.0% | 55.5% |
LOAD_ATTR_CLASS COMPARE_OP_INT | 63,032,320 | 4.0% | 59.5% |
RETURN_CONST POP_TOP | 46,681,860 | 3.0% | 62.5% |
LOAD_ATTR_INSTANCE_VALUE LOAD_FAST | 43,224,000 | 2.7% | 65.2% |
STORE_ATTR_INSTANCE_VALUE RETURN_CONST | 35,942,820 | 2.3% | 67.5% |
ENTER_EXECUTOR CALL_PY_EXACT_ARGS | 31,306,600 | 2.0% | 69.5% |
POP_TOP ENTER_EXECUTOR | 31,181,980 | 2.0% | 71.4% |
RETURN_VALUE LOAD_ATTR_INSTANCE_VALUE | 28,510,600 | 1.8% | 73.2% |
RETURN_VALUE STORE_ATTR_INSTANCE_VALUE | 27,723,020 | 1.8% | 75.0% |
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_INSTANCE_VALUE | 20,219,060 | 1.3% | 76.3% |
STORE_FAST LOAD_FAST | 17,424,580 | 1.1% | 77.4% |
LOAD_FAST CALL_PY_EXACT_ARGS | 10,360,820 | 0.7% | 78.0% |
LOAD_FAST STORE_ATTR_INSTANCE_VALUE | 10,137,940 | 0.6% | 78.7% |
LOAD_ATTR_METHOD_WITH_VALUES LOAD_FAST | 9,058,420 | 0.6% | 79.2% |
LOAD_FAST ENTER_EXECUTOR | 8,502,000 | 0.5% | 79.8% |
POP_TOP LOAD_FAST | 8,209,300 | 0.5% | 80.3% |
RETURN_VALUE STORE_FAST | 7,771,500 | 0.5% | 80.8% |
TO_BOOL_BOOL POP_JUMP_IF_FALSE | 7,632,500 | 0.5% | 81.3% |
STORE_ATTR_INSTANCE_VALUE LOAD_FAST | 7,368,620 | 0.5% | 81.7% |
LOAD_FAST_LOAD_FAST STORE_ATTR_INSTANCE_VALUE | 6,622,920 | 0.4% | 82.2% |
RETURN_VALUE TO_BOOL_BOOL | 6,451,980 | 0.4% | 82.6% |
LOAD_ATTR_INSTANCE_VALUE STORE_FAST | 6,366,840 | 0.4% | 83.0% |
LOAD_ATTR_INSTANCE_VALUE STORE_ATTR_INSTANCE_VALUE | 6,228,720 | 0.4% | 83.4% |
POP_TOP RETURN_CONST | 6,166,560 | 0.4% | 83.8% |
ENTER_EXECUTOR LOAD_ATTR_INSTANCE_VALUE | 5,551,020 | 0.4% | 84.1% |
BINARY_OP_ADD_INT LOAD_FAST | 5,148,440 | 0.3% | 84.4% |
BINARY_OP_MULTIPLY_INT LOAD_FAST | 5,148,440 | 0.3% | 84.8% |
LOAD_ATTR_INSTANCE_VALUE BINARY_OP_ADD_INT | 5,148,420 | 0.3% | 85.1% |
LOAD_ATTR_INSTANCE_VALUE BINARY_OP_MULTIPLY_INT | 5,148,420 | 0.3% | 85.4% |
TO_BOOL_BOOL POP_JUMP_IF_TRUE | 4,909,140 | 0.3% | 85.7% |
LOAD_FAST COMPARE_OP_INT | 4,870,420 | 0.3% | 86.0% |
LOAD_ATTR_METHOD_LAZY_DICT LOAD_FAST | 4,591,140 | 0.3% | 86.3% |
LOAD_GLOBAL_MODULE LOAD_ATTR | 4,410,300 | 0.3% | 86.6% |
CALL_BOUND_METHOD_EXACT_ARGS RESUME_CHECK | 4,407,920 | 0.3% | 86.9% |
RETURN_VALUE LOAD_FAST | 4,178,720 | 0.3% | 87.1% |
LOAD_FAST CALL_LIST_APPEND | 4,066,280 | 0.3% | 87.4% |
LOAD_GLOBAL_BUILTIN LOAD_FAST | 3,997,040 | 0.3% | 87.7% |
TO_BOOL_INT POP_JUMP_IF_FALSE | 3,986,820 | 0.3% | 87.9% |
LOAD_FAST CALL_LEN | 3,986,700 | 0.3% | 88.2% |
CALL_LEN TO_BOOL_INT | 3,986,700 | 0.3% | 88.4% |
POP_TOP LOAD_FAST_LOAD_FAST | 3,855,420 | 0.2% | 88.7% |
POP_JUMP_IF_TRUE ENTER_EXECUTOR | 3,829,480 | 0.2% | 88.9% |
ENTER_EXECUTOR RETURN_VALUE | 3,722,480 | 0.2% | 89.1% |
COMPARE_OP_INT RETURN_VALUE | 3,709,560 | 0.2% | 89.4% |
LOAD_GLOBAL_MODULE LOAD_FAST | 3,685,180 | 0.2% | 89.6% |
LOAD_ATTR LOAD_FAST | 3,666,280 | 0.2% | 89.8% |
COPY_FREE_VARS RESUME_CHECK | 3,402,080 | 0.2% | 90.0% |
LOAD_FAST LOAD_SUPER_ATTR_METHOD | 3,401,800 | 0.2% | 90.3% |
LOAD_GLOBAL_BUILTIN LOAD_GLOBAL_MODULE | 3,401,800 | 0.2% | 90.5% |
LOAD_CONST LOAD_FAST | 3,387,680 | 0.2% | 90.7% |
LOAD_FAST LOAD_ATTR_METHOD_LAZY_DICT | 3,309,300 | 0.2% | 90.9% |
STORE_ATTR_INSTANCE_VALUE LOAD_GLOBAL_MODULE | 3,253,640 | 0.2% | 91.1% |
FOR_ITER_LIST STORE_FAST | 3,165,280 | 0.2% | 91.3% |
GET_ITER FOR_ITER_LIST | 3,163,460 | 0.2% | 91.5% |
RESUME_CHECK LOAD_GLOBAL_BUILTIN | 3,145,840 | 0.2% | 91.7% |
CALL_METHOD_DESCRIPTOR_FAST STORE_FAST | 3,125,700 | 0.2% | 91.9% |
ENTER_EXECUTOR POP_TOP | 3,037,240 | 0.2% | 92.1% |
POP_JUMP_IF_FALSE ENTER_EXECUTOR | 2,978,920 | 0.2% | 92.3% |
COPY TO_BOOL_BOOL | 2,904,480 | 0.2% | 92.5% |
LOAD_FAST RETURN_VALUE | 2,901,360 | 0.2% | 92.6% |
LOAD_ATTR_INSTANCE_VALUE COMPARE_OP_INT | 2,827,700 | 0.2% | 92.8% |
LOAD_ATTR_INSTANCE_VALUE CALL_BOUND_METHOD_EXACT_ARGS | 2,827,460 | 0.2% | 93.0% |
LOAD_FAST POP_JUMP_IF_NONE | 2,730,360 | 0.2% | 93.2% |
POP_TOP LOAD_GLOBAL_BUILTIN | 2,670,580 | 0.2% | 93.3% |
STORE_FAST LOAD_FAST_LOAD_FAST | 2,632,680 | 0.2% | 93.5% |
LOAD_FAST GET_ITER | 2,621,520 | 0.2% | 93.7% |
STORE_ATTR_INSTANCE_VALUE LOAD_CONST | 2,608,480 | 0.2% | 93.8% |
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_METHOD_LAZY_DICT | 2,603,400 | 0.2% | 94.0% |
COMPARE_OP POP_JUMP_IF_TRUE | 2,600,760 | 0.2% | 94.2% |
LOAD_FAST_LOAD_FAST COMPARE_OP | 2,600,740 | 0.2% | 94.3% |
CALL_LIST_APPEND RETURN_CONST | 2,593,240 | 0.2% | 94.5% |
LOAD_ATTR_CLASS LOAD_FAST | 2,278,040 | 0.1% | 94.6% |
LOAD_ATTR_INSTANCE_VALUE COPY | 2,131,460 | 0.1% | 94.8% |
POP_JUMP_IF_FALSE RETURN_CONST | 2,088,560 | 0.1% | 94.9% |
ENTER_EXECUTOR ENTER_EXECUTOR | 2,071,420 | 0.1% | 95.0% |
STORE_ATTR_INSTANCE_VALUE LOAD_FAST_LOAD_FAST | 2,058,140 | 0.1% | 95.2% |
LOAD_GLOBAL_MODULE CALL_NON_PY_GENERAL | 2,006,800 | 0.1% | 95.3% |
LOAD_GLOBAL_MODULE LOAD_ATTR_METHOD_WITH_VALUES | 1,976,240 | 0.1% | 95.4% |
RESUME_CHECK LOAD_GLOBAL_MODULE | 1,917,400 | 0.1% | 95.5% |
STORE_FAST LOAD_GLOBAL_MODULE | 1,881,600 | 0.1% | 95.7% |
LOAD_ATTR_INSTANCE_VALUE TO_BOOL_BOOL | 1,851,560 | 0.1% | 95.8% |
CALL_LIST_APPEND ENTER_EXECUTOR | 1,826,460 | 0.1% | 95.9% |
CALL_PY_EXACT_ARGS COPY_FREE_VARS | 1,825,180 | 0.1% | 96.0% |
LOAD_ATTR_INSTANCE_VALUE LOAD_ATTR_METHOD_WITH_VALUES | 1,817,360 | 0.1% | 96.1% |
LOAD_FAST_LOAD_FAST LOAD_ATTR_METHOD_WITH_VALUES | 1,810,740 | 0.1% | 96.2% |
ENTER_EXECUTOR CALL_METHOD_DESCRIPTOR_FAST | 1,803,540 | 0.1% | 96.4% |
POP_JUMP_IF_FALSE LOAD_GLOBAL_MODULE | 1,790,280 | 0.1% | 96.5% |
RETURN_CONST TO_BOOL_BOOL | 1,594,740 | 0.1% | 96.6% |
LOAD_FAST LOAD_ATTR | 1,586,160 | 0.1% | 96.7% |
LOAD_ATTR LOAD_FAST_LOAD_FAST | 1,580,340 | 0.1% | 96.8% |
LOAD_FAST_LOAD_FAST CALL_BOUND_METHOD_EXACT_ARGS | 1,580,280 | 0.1% | 96.9% |
Top 5 predecessors and successors of each Tier 1 opcode.
This does not include the unspecialized instructions that occur after a specialized instruction deoptimizes.
Successors and predecessors for CACHE
Successors | Count | Percentage |
---|---|---|
COPY_FREE_VARS | 258,820 | 99.0% |
RESUME_CHECK | 2,540 | 1.0% |
RESUME | 20 | 0.0% |
Successors and predecessors for BINARY_SUBSCR
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 5,760 | 95.4% |
BINARY_SUBSCR | 240 | 4.0% |
LOAD_ATTR | 20 | 0.3% |
LOAD_ATTR_INSTANCE_VALUE | 20 | 0.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 5,680 | 94.0% |
BINARY_SUBSCR | 240 | 4.0% |
LOAD_ATTR | 80 | 1.3% |
RETURN_VALUE | 20 | 0.3% |
BINARY_SUBSCR_DICT | 20 | 0.3% |
Successors and predecessors for EXIT_INIT_CHECK
Predecessors | Count | Percentage |
---|---|---|
RETURN_CONST | 1,318,140 | 100.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 1,318,140 | 100.0% |
Successors and predecessors for GET_ITER
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 2,621,520 | 82.3% |
LOAD_ATTR_INSTANCE_VALUE | 542,080 | 17.0% |
CALL_BUILTIN_CLASS | 22,920 | 0.7% |
CALL | 120 | 0.0% |
LOAD_ATTR | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER_LIST | 3,163,460 | 99.3% |
FOR_ITER_RANGE | 22,980 | 0.7% |
FOR_ITER | 260 | 0.0% |
Successors and predecessors for INTERPRETER_EXIT
Predecessors | Count | Percentage |
---|---|---|
RETURN_CONST | 261,380 | 100.0% |
Successors and predecessors for NOP
Predecessors | Count | Percentage |
---|---|---|
POP_TOP | 80 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_DEREF | 80 | 100.0% |
Successors and predecessors for POP_TOP
Predecessors | Count | Percentage |
---|---|---|
RETURN_CONST | 46,681,860 | 86.5% |
ENTER_EXECUTOR | 3,037,240 | 5.6% |
CALL_NON_PY_GENERAL | 1,577,320 | 2.9% |
POP_JUMP_IF_FALSE | 1,358,400 | 2.5% |
RETURN_VALUE | 770,480 | 1.4% |
Successors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 31,181,980 | 57.8% |
LOAD_FAST | 8,209,300 | 15.2% |
RETURN_CONST | 6,166,560 | 11.4% |
LOAD_FAST_LOAD_FAST | 3,855,420 | 7.1% |
LOAD_GLOBAL_BUILTIN | 2,670,580 | 5.0% |
Successors and predecessors for PUSH_NULL
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 560 | 77.8% |
LOAD_DEREF | 80 | 11.1% |
LOAD_ATTR_MODULE | 60 | 8.3% |
LOAD_ATTR | 20 | 2.8% |
Successors | Count | Percentage |
---|---|---|
CALL_NON_PY_GENERAL | 480 | 66.7% |
CALL | 160 | 22.2% |
LOAD_FAST | 80 | 11.1% |
Successors and predecessors for RETURN_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 63,491,600 | 83.6% |
ENTER_EXECUTOR | 3,722,480 | 4.9% |
COMPARE_OP_INT | 3,709,560 | 4.9% |
LOAD_FAST | 2,901,360 | 3.8% |
EXIT_INIT_CHECK | 1,318,140 | 1.7% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 28,510,600 | 37.5% |
STORE_ATTR_INSTANCE_VALUE | 27,723,020 | 36.5% |
STORE_FAST | 7,771,500 | 10.2% |
TO_BOOL_BOOL | 6,451,980 | 8.5% |
LOAD_FAST | 4,178,720 | 5.5% |
Successors and predecessors for TO_BOOL
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 540 | 42.2% |
COPY | 160 | 12.5% |
RETURN_CONST | 140 | 10.9% |
CALL | 120 | 9.4% |
CALL_LEN | 120 | 9.4% |
Successors | Count | Percentage |
---|---|---|
TO_BOOL_BOOL | 520 | 40.6% |
POP_JUMP_IF_FALSE | 460 | 35.9% |
POP_JUMP_IF_TRUE | 160 | 12.5% |
TO_BOOL_INT | 120 | 9.4% |
UNARY_NOT | 20 | 1.6% |
Successors and predecessors for UNARY_NOT
Predecessors | Count | Percentage |
---|---|---|
TO_BOOL_BOOL | 271,340 | 100.0% |
TO_BOOL | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 271,360 | 100.0% |
Successors and predecessors for BINARY_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 261,800 | 92.3% |
LOAD_ATTR_INSTANCE_VALUE | 20,700 | 7.3% |
BINARY_OP | 680 | 0.2% |
LOAD_CONST | 320 | 0.1% |
LOAD_ATTR | 80 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 279,600 | 98.6% |
STORE_FAST | 2,900 | 1.0% |
BINARY_OP | 680 | 0.2% |
BINARY_OP_ADD_INT | 100 | 0.0% |
CALL | 60 | 0.0% |
Successors and predecessors for BUILD_CONST_KEY_MAP
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 10,240 | 100.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 10,240 | 100.0% |
Successors and predecessors for CALL
Predecessors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 255,600 | 96.6% |
LOAD_FAST | 4,760 | 1.8% |
LOAD_ATTR | 1,240 | 0.5% |
LOAD_ATTR_METHOD_WITH_VALUES | 840 | 0.3% |
LOAD_CONST | 440 | 0.2% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 258,940 | 97.9% |
CALL_PY_EXACT_ARGS | 1,520 | 0.6% |
RESUME_CHECK | 860 | 0.3% |
RESUME | 740 | 0.3% |
POP_TOP | 440 | 0.2% |
Successors and predecessors for CALL_FUNCTION_EX
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 80 | 100.0% |
Successors | Count | Percentage |
---|---|---|
COPY_FREE_VARS | 80 | 100.0% |
Successors and predecessors for COMPARE_OP
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST_LOAD_FAST | 2,600,740 | 98.8% |
LOAD_FAST | 20,840 | 0.8% |
LOAD_ATTR | 6,840 | 0.3% |
LOAD_CONST | 2,680 | 0.1% |
COMPARE_OP | 1,600 | 0.1% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 2,600,760 | 98.8% |
POP_JUMP_IF_FALSE | 28,440 | 1.1% |
COMPARE_OP | 1,600 | 0.1% |
STORE_FAST | 1,600 | 0.1% |
COMPARE_OP_INT | 420 | 0.0% |
Successors and predecessors for COPY
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 2,131,460 | 57.8% |
LOAD_FAST | 784,960 | 21.3% |
COMPARE_OP_INT | 773,100 | 21.0% |
LOAD_ATTR | 60 | 0.0% |
COMPARE_OP | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
TO_BOOL_BOOL | 2,904,480 | 78.7% |
LOAD_ATTR_INSTANCE_VALUE | 784,920 | 21.3% |
TO_BOOL | 160 | 0.0% |
LOAD_ATTR | 40 | 0.0% |
Successors and predecessors for COPY_FREE_VARS
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 1,825,180 | 53.6% |
CALL_ALLOC_AND_ENTER_INIT | 1,318,140 | 38.7% |
CACHE | 258,820 | 7.6% |
CALL | 100 | 0.0% |
CALL_FUNCTION_EX | 80 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 3,402,080 | 100.0% |
RESUME | 240 | 0.0% |
Successors and predecessors for ENTER_EXECUTOR
Predecessors | Count | Percentage |
---|---|---|
POP_TOP | 31,181,980 | 60.9% |
LOAD_FAST | 8,502,000 | 16.6% |
POP_JUMP_IF_TRUE | 3,829,480 | 7.5% |
POP_JUMP_IF_FALSE | 2,978,920 | 5.8% |
ENTER_EXECUTOR | 2,071,420 | 4.0% |
Successors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 31,306,600 | 61.2% |
LOAD_ATTR_INSTANCE_VALUE | 5,551,020 | 10.8% |
RETURN_VALUE | 3,722,480 | 7.3% |
POP_TOP | 3,037,240 | 5.9% |
ENTER_EXECUTOR | 2,071,420 | 4.0% |
Successors and predecessors for FOR_ITER
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 260 | 50.0% |
JUMP_BACKWARD | 260 | 50.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 260 | 50.0% |
FOR_ITER_RANGE | 140 | 26.9% |
FOR_ITER_LIST | 120 | 23.1% |
Successors and predecessors for JUMP_BACKWARD
Predecessors | Count | Percentage |
---|---|---|
POP_JUMP_IF_TRUE | 2,440 | 29.5% |
POP_JUMP_IF_FALSE | 1,660 | 20.1% |
POP_TOP | 1,500 | 18.2% |
CALL_LIST_APPEND | 1,300 | 15.7% |
STORE_FAST | 740 | 9.0% |
Successors | Count | Percentage |
---|---|---|
FOR_ITER_LIST | 3,600 | 43.6% |
FOR_ITER_RANGE | 2,100 | 25.4% |
LOAD_FAST | 1,360 | 16.5% |
CALL_METHOD_DESCRIPTOR_FAST | 300 | 3.6% |
FOR_ITER | 260 | 3.1% |
Successors and predecessors for JUMP_FORWARD
Predecessors | Count | Percentage |
---|---|---|
STORE_ATTR_INSTANCE_VALUE | 10,740 | 99.6% |
STORE_ATTR | 40 | 0.4% |
Successors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 5,580 | 51.8% |
LOAD_FAST | 5,200 | 48.2% |
Successors and predecessors for LOAD_ATTR
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 4,410,300 | 72.7% |
LOAD_FAST | 1,586,160 | 26.1% |
LOAD_ATTR_SLOT | 61,320 | 1.0% |
LOAD_ATTR | 6,400 | 0.1% |
LOAD_GLOBAL | 760 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 3,666,280 | 60.4% |
LOAD_FAST_LOAD_FAST | 1,580,340 | 26.1% |
CALL_ALLOC_AND_ENTER_INIT | 779,400 | 12.8% |
LOAD_CONST | 10,360 | 0.2% |
STORE_FAST | 10,340 | 0.2% |
Successors and predecessors for LOAD_CONST
Predecessors | Count | Percentage |
---|---|---|
STORE_ATTR_INSTANCE_VALUE | 2,608,480 | 44.7% |
LOAD_ATTR_METHOD_LAZY_DICT | 1,321,860 | 22.7% |
LOAD_ATTR_INSTANCE_VALUE | 790,020 | 13.5% |
POP_TOP | 286,720 | 4.9% |
LOAD_FAST | 279,820 | 4.8% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 3,387,680 | 58.1% |
CALL_METHOD_DESCRIPTOR_FAST | 1,321,800 | 22.7% |
BINARY_OP_ADD_INT | 793,120 | 13.6% |
COMPARE_OP_INT | 261,080 | 4.5% |
STORE_FAST | 12,800 | 0.2% |
Successors and predecessors for LOAD_DEREF
Predecessors | Count | Percentage |
---|---|---|
NOP | 80 | 50.0% |
STORE_FAST | 80 | 50.0% |
Successors | Count | Percentage |
---|---|---|
PUSH_NULL | 80 | 50.0% |
STORE_FAST | 80 | 50.0% |
Successors and predecessors for LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
RESUME_CHECK | 114,617,840 | 36.9% |
POP_JUMP_IF_FALSE | 69,483,180 | 22.4% |
LOAD_ATTR_INSTANCE_VALUE | 43,224,000 | 13.9% |
STORE_FAST | 17,424,580 | 5.6% |
LOAD_ATTR_METHOD_WITH_VALUES | 9,058,420 | 2.9% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 172,715,120 | 55.6% |
LOAD_ATTR_METHOD_WITH_VALUES | 76,983,020 | 24.8% |
CALL_PY_EXACT_ARGS | 10,360,820 | 3.3% |
STORE_ATTR_INSTANCE_VALUE | 10,137,940 | 3.3% |
ENTER_EXECUTOR | 8,502,000 | 2.7% |
Successors and predecessors for LOAD_FAST_CHECK
Predecessors | Count | Percentage |
---|---|---|
POP_TOP | 2,560 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 2,520 | 98.4% |
LOAD_ATTR | 40 | 1.6% |
Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors | Count | Percentage |
---|---|---|
POP_TOP | 3,855,420 | 24.3% |
STORE_FAST | 2,632,680 | 16.6% |
STORE_ATTR_INSTANCE_VALUE | 2,058,140 | 13.0% |
LOAD_ATTR | 1,580,340 | 10.0% |
POP_JUMP_IF_TRUE | 1,297,920 | 8.2% |
Successors | Count | Percentage |
---|---|---|
STORE_ATTR_INSTANCE_VALUE | 6,622,920 | 41.7% |
COMPARE_OP | 2,600,740 | 16.4% |
LOAD_ATTR_METHOD_WITH_VALUES | 1,810,740 | 11.4% |
CALL_BOUND_METHOD_EXACT_ARGS | 1,580,280 | 10.0% |
CALL_PY_EXACT_ARGS | 1,441,280 | 9.1% |
Successors and predecessors for LOAD_GLOBAL
Predecessors | Count | Percentage |
---|---|---|
STORE_FAST | 680 | 16.7% |
POP_TOP | 620 | 15.2% |
POP_JUMP_IF_FALSE | 560 | 13.7% |
RESUME | 380 | 9.3% |
RESUME_CHECK | 380 | 9.3% |
Successors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 1,560 | 38.2% |
LOAD_ATTR | 760 | 18.6% |
LOAD_FAST | 660 | 16.2% |
LOAD_GLOBAL_BUILTIN | 480 | 11.8% |
CALL | 240 | 5.9% |
Successors and predecessors for LOAD_SUPER_ATTR
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 440 | 100.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_SUPER_ATTR_METHOD | 220 | 50.0% |
CALL | 100 | 22.7% |
LOAD_FAST | 60 | 13.6% |
LOAD_FAST_LOAD_FAST | 60 | 13.6% |
Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors | Count | Percentage |
---|---|---|
COMPARE_OP_INT | 66,511,780 | 85.1% |
TO_BOOL_BOOL | 7,632,500 | 9.8% |
TO_BOOL_INT | 3,986,820 | 5.1% |
COMPARE_OP | 28,440 | 0.0% |
ENTER_EXECUTOR | 1,260 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 69,483,180 | 88.9% |
ENTER_EXECUTOR | 2,978,920 | 3.8% |
RETURN_CONST | 2,088,560 | 2.7% |
LOAD_GLOBAL_MODULE | 1,790,280 | 2.3% |
POP_TOP | 1,358,400 | 1.7% |
Successors and predecessors for POP_JUMP_IF_NONE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 2,730,360 | 99.6% |
LOAD_ATTR_INSTANCE_VALUE | 10,220 | 0.4% |
LOAD_ATTR | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_CONST | 783,360 | 28.6% |
LOAD_FAST_LOAD_FAST | 700,980 | 25.6% |
ENTER_EXECUTOR | 509,040 | 18.6% |
LOAD_FAST | 490,820 | 17.9% |
LOAD_GLOBAL_MODULE | 255,960 | 9.3% |
Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors | Count | Percentage |
---|---|---|
TO_BOOL_BOOL | 4,909,140 | 63.2% |
COMPARE_OP | 2,600,760 | 33.5% |
COMPARE_OP_INT | 261,700 | 3.4% |
TO_BOOL | 160 | 0.0% |
Successors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 3,829,480 | 49.3% |
LOAD_FAST | 1,356,800 | 17.5% |
LOAD_FAST_LOAD_FAST | 1,297,920 | 16.7% |
RETURN_VALUE | 773,120 | 9.9% |
POP_TOP | 512,000 | 6.6% |
Successors and predecessors for RETURN_CONST
Predecessors | Count | Percentage |
---|---|---|
STORE_ATTR_INSTANCE_VALUE | 35,942,820 | 72.1% |
POP_TOP | 6,166,560 | 12.4% |
CALL_LIST_APPEND | 2,593,240 | 5.2% |
POP_JUMP_IF_FALSE | 2,088,560 | 4.2% |
ENTER_EXECUTOR | 1,287,060 | 2.6% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 46,681,860 | 93.6% |
TO_BOOL_BOOL | 1,594,740 | 3.2% |
EXIT_INIT_CHECK | 1,318,140 | 2.6% |
INTERPRETER_EXIT | 261,380 | 0.5% |
STORE_FAST | 5,120 | 0.0% |
Successors and predecessors for STORE_ATTR
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 1,220 | 55.5% |
LOAD_FAST_LOAD_FAST | 540 | 24.5% |
RETURN_VALUE | 120 | 5.5% |
LOAD_ATTR | 120 | 5.5% |
LOAD_ATTR_INSTANCE_VALUE | 120 | 5.5% |
Successors | Count | Percentage |
---|---|---|
STORE_ATTR_INSTANCE_VALUE | 1,020 | 46.4% |
RETURN_CONST | 380 | 17.3% |
LOAD_FAST | 320 | 14.5% |
LOAD_CONST | 160 | 7.3% |
LOAD_GLOBAL | 140 | 6.4% |
Successors and predecessors for STORE_FAST
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 7,771,500 | 34.9% |
LOAD_ATTR_INSTANCE_VALUE | 6,366,840 | 28.6% |
FOR_ITER_LIST | 3,165,280 | 14.2% |
CALL_METHOD_DESCRIPTOR_FAST | 3,125,700 | 14.0% |
CALL_NON_PY_GENERAL | 1,218,600 | 5.5% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 17,424,580 | 78.3% |
LOAD_FAST_LOAD_FAST | 2,632,680 | 11.8% |
LOAD_GLOBAL_MODULE | 1,881,600 | 8.5% |
ENTER_EXECUTOR | 268,060 | 1.2% |
LOAD_GLOBAL_BUILTIN | 30,520 | 0.1% |
Successors and predecessors for STORE_FAST_STORE_FAST
Predecessors | Count | Percentage |
---|---|---|
UNPACK_SEQUENCE_TUPLE | 2,540 | 99.2% |
UNPACK_SEQUENCE | 20 | 0.8% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 2,560 | 100.0% |
Successors and predecessors for STORE_GLOBAL
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 5,080 | 99.2% |
CALL | 40 | 0.8% |
Successors | Count | Percentage |
---|---|---|
LOAD_CONST | 2,560 | 50.0% |
LOAD_GLOBAL_MODULE | 2,520 | 49.2% |
LOAD_GLOBAL | 40 | 0.8% |
Successors and predecessors for SWAP
Predecessors | Count | Percentage |
---|---|---|
BINARY_OP_ADD_INT | 784,940 | 100.0% |
BINARY_OP | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
STORE_ATTR_INSTANCE_VALUE | 784,920 | 100.0% |
STORE_ATTR | 40 | 0.0% |
Successors and predecessors for UNPACK_SEQUENCE
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 40 | 100.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST_STORE_FAST | 20 | 50.0% |
UNPACK_SEQUENCE_TUPLE | 20 | 50.0% |
Successors and predecessors for RESUME
Predecessors | Count | Percentage |
---|---|---|
CALL | 740 | 61.7% |
COPY_FREE_VARS | 240 | 20.0% |
CALL_PY_EXACT_ARGS | 200 | 16.7% |
CACHE | 20 | 1.7% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 640 | 53.3% |
LOAD_GLOBAL | 380 | 31.7% |
RETURN_CONST | 120 | 10.0% |
LOAD_CONST | 40 | 3.3% |
LOAD_FAST_LOAD_FAST | 20 | 1.7% |
Successors and predecessors for BINARY_OP_ADD_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 5,148,420 | 86.6% |
LOAD_CONST | 793,120 | 13.3% |
BINARY_OP | 100 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 5,148,440 | 86.7% |
SWAP | 784,940 | 13.2% |
COMPARE_OP_INT | 5,680 | 0.1% |
CALL_BUILTIN_CLASS | 2,520 | 0.0% |
COMPARE_OP | 40 | 0.0% |
Successors and predecessors for BINARY_OP_MULTIPLY_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 5,148,420 | 99.9% |
LOAD_CONST | 5,680 | 0.1% |
BINARY_OP | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 5,148,440 | 99.9% |
LOAD_CONST | 5,720 | 0.1% |
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_ATTR_INSTANCE_VALUE | 20,620 | 80.2% |
LOAD_CONST | 5,040 | 19.6% |
BINARY_OP | 60 | 0.2% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 20,640 | 80.2% |
CALL_BUILTIN_CLASS | 5,040 | 19.6% |
CALL | 40 | 0.2% |
Successors and predecessors for BINARY_SUBSCR_DICT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 10,200 | 99.8% |
BINARY_SUBSCR | 20 | 0.2% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 10,220 | 100.0% |
Successors and predecessors for CALL_ALLOC_AND_ENTER_INIT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR | 779,400 | 59.1% |
ENTER_EXECUTOR | 267,960 | 20.3% |
LOAD_FAST | 258,800 | 19.6% |
LOAD_GLOBAL_MODULE | 6,600 | 0.5% |
LOAD_CONST | 5,040 | 0.4% |
Successors | Count | Percentage |
---|---|---|
COPY_FREE_VARS | 1,318,140 | 100.0% |
Successors and predecessors for CALL_BOUND_METHOD_EXACT_ARGS
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 2,827,460 | 64.1% |
LOAD_FAST_LOAD_FAST | 1,580,280 | 35.9% |
CALL | 180 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 4,407,920 | 100.0% |
Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 12,720 | 55.4% |
BINARY_OP_SUBTRACT_INT | 5,040 | 21.9% |
LOAD_FAST | 2,560 | 11.1% |
BINARY_OP_ADD_INT | 2,520 | 11.0% |
CALL | 140 | 0.6% |
Successors | Count | Percentage |
---|---|---|
GET_ITER | 22,920 | 99.7% |
STORE_FAST | 60 | 0.3% |
Successors and predecessors for CALL_LEN
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 3,986,700 | 100.0% |
CALL | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
TO_BOOL_INT | 3,986,700 | 100.0% |
TO_BOOL | 120 | 0.0% |
Successors and predecessors for CALL_LIST_APPEND
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 4,066,280 | 67.8% |
ENTER_EXECUTOR | 1,416,920 | 23.6% |
RETURN_VALUE | 514,420 | 8.6% |
CALL | 220 | 0.0% |
JUMP_BACKWARD | 20 | 0.0% |
Successors | Count | Percentage |
---|---|---|
RETURN_CONST | 2,593,240 | 43.2% |
ENTER_EXECUTOR | 1,826,460 | 30.5% |
LOAD_GLOBAL_BUILTIN | 1,308,080 | 21.8% |
LOAD_GLOBAL_MODULE | 268,680 | 4.5% |
JUMP_BACKWARD | 1,300 | 0.0% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors | Count | Percentage |
---|---|---|
ENTER_EXECUTOR | 1,803,540 | 56.6% |
LOAD_CONST | 1,321,800 | 41.5% |
CALL_METHOD_DESCRIPTOR_FAST | 60,080 | 1.9% |
JUMP_BACKWARD | 300 | 0.0% |
CALL | 60 | 0.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 3,125,700 | 98.1% |
CALL_METHOD_DESCRIPTOR_FAST | 60,080 | 1.9% |
Successors and predecessors for CALL_METHOD_DESCRIPTOR_O
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 10,200 | 98.1% |
CALL_METHOD_DESCRIPTOR_O | 180 | 1.7% |
CALL | 20 | 0.2% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 10,220 | 98.3% |
CALL_METHOD_DESCRIPTOR_O | 180 | 1.7% |
Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 2,006,800 | 56.0% |
LOAD_SUPER_ATTR_METHOD | 1,576,800 | 44.0% |
PUSH_NULL | 480 | 0.0% |
CALL | 340 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_TOP | 1,577,320 | 44.0% |
STORE_FAST | 1,218,600 | 34.0% |
LOAD_FAST | 788,500 | 22.0% |
Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_METHOD_WITH_VALUES | 72,368,520 | 62.5% |
ENTER_EXECUTOR | 31,306,600 | 27.0% |
LOAD_FAST | 10,360,820 | 8.9% |
LOAD_FAST_LOAD_FAST | 1,441,280 | 1.2% |
LOAD_SUPER_ATTR_METHOD | 255,960 | 0.2% |
Successors | Count | Percentage |
---|---|---|
RESUME_CHECK | 113,916,960 | 98.4% |
COPY_FREE_VARS | 1,825,180 | 1.6% |
CALL_PY_EXACT_ARGS | 56,740 | 0.0% |
RESUME | 200 | 0.0% |
Successors and predecessors for COMPARE_OP_INT
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_CLASS | 63,032,320 | 88.5% |
LOAD_FAST | 4,870,420 | 6.8% |
LOAD_ATTR_INSTANCE_VALUE | 2,827,700 | 4.0% |
LOAD_CONST | 261,080 | 0.4% |
LOAD_FAST_LOAD_FAST | 258,520 | 0.4% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 66,511,780 | 93.3% |
RETURN_VALUE | 3,709,560 | 5.2% |
COPY | 773,100 | 1.1% |
POP_JUMP_IF_TRUE | 261,700 | 0.4% |
Successors and predecessors for FOR_ITER_LIST
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 3,163,460 | 99.9% |
JUMP_BACKWARD | 3,600 | 0.1% |
FOR_ITER | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 3,165,280 | 99.9% |
RETURN_CONST | 820 | 0.0% |
LOAD_FAST | 720 | 0.0% |
LOAD_GLOBAL_BUILTIN | 320 | 0.0% |
LOAD_GLOBAL | 40 | 0.0% |
Successors and predecessors for FOR_ITER_RANGE
Predecessors | Count | Percentage |
---|---|---|
GET_ITER | 22,980 | 91.1% |
JUMP_BACKWARD | 2,100 | 8.3% |
FOR_ITER | 140 | 0.6% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST | 25,200 | 99.9% |
LOAD_FAST | 20 | 0.1% |
Successors and predecessors for LOAD_ATTR_CLASS
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 65,310,200 | 100.0% |
LOAD_ATTR | 240 | 0.0% |
Successors | Count | Percentage |
---|---|---|
COMPARE_OP_INT | 63,032,320 | 96.5% |
LOAD_FAST | 2,278,040 | 3.5% |
COMPARE_OP | 80 | 0.0% |
Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 172,715,120 | 75.6% |
RETURN_VALUE | 28,510,600 | 12.5% |
LOAD_ATTR_INSTANCE_VALUE | 20,219,060 | 8.9% |
ENTER_EXECUTOR | 5,551,020 | 2.4% |
COPY | 784,920 | 0.3% |
Successors | Count | Percentage |
---|---|---|
RETURN_VALUE | 63,491,600 | 27.8% |
LOAD_GLOBAL_MODULE | 63,037,400 | 27.6% |
LOAD_FAST | 43,224,000 | 18.9% |
LOAD_ATTR_INSTANCE_VALUE | 20,219,060 | 8.9% |
STORE_FAST | 6,366,840 | 2.8% |
Successors and predecessors for LOAD_ATTR_METHOD_LAZY_DICT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 3,309,300 | 56.0% |
LOAD_ATTR_INSTANCE_VALUE | 2,603,400 | 44.0% |
LOAD_ATTR | 300 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 4,591,140 | 77.6% |
LOAD_CONST | 1,321,860 | 22.4% |
Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 76,983,020 | 93.1% |
LOAD_GLOBAL_MODULE | 1,976,240 | 2.4% |
LOAD_ATTR_INSTANCE_VALUE | 1,817,360 | 2.2% |
LOAD_FAST_LOAD_FAST | 1,810,740 | 2.2% |
LOAD_ATTR_METHOD_WITH_VALUES | 100,400 | 0.1% |
Successors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 72,368,520 | 87.5% |
LOAD_FAST | 9,058,420 | 11.0% |
LOAD_FAST_LOAD_FAST | 1,170,020 | 1.4% |
LOAD_ATTR_METHOD_WITH_VALUES | 100,400 | 0.1% |
CALL | 840 | 0.0% |
Successors and predecessors for LOAD_ATTR_MODULE
Predecessors | Count | Percentage |
---|---|---|
LOAD_GLOBAL_MODULE | 80 | 66.7% |
LOAD_ATTR | 40 | 33.3% |
Successors | Count | Percentage |
---|---|---|
PUSH_NULL | 60 | 50.0% |
STORE_FAST | 60 | 50.0% |
Successors and predecessors for LOAD_ATTR_SLOT
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 61,200 | 99.8% |
LOAD_ATTR | 120 | 0.2% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR | 61,320 | 100.0% |
Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors | Count | Percentage |
---|---|---|
RESUME_CHECK | 3,145,840 | 42.4% |
POP_TOP | 2,670,580 | 36.0% |
CALL_LIST_APPEND | 1,308,080 | 17.6% |
STORE_ATTR_INSTANCE_VALUE | 255,960 | 3.5% |
STORE_FAST | 30,520 | 0.4% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 3,997,040 | 53.9% |
LOAD_GLOBAL_MODULE | 3,401,800 | 45.9% |
LOAD_CONST | 12,760 | 0.2% |
LOAD_GLOBAL | 220 | 0.0% |
Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors | Count | Percentage |
---|---|---|
LOAD_ATTR_INSTANCE_VALUE | 63,037,400 | 80.6% |
LOAD_GLOBAL_BUILTIN | 3,401,800 | 4.4% |
STORE_ATTR_INSTANCE_VALUE | 3,253,640 | 4.2% |
RESUME_CHECK | 1,917,400 | 2.5% |
STORE_FAST | 1,881,600 | 2.4% |
Successors | Count | Percentage |
---|---|---|
LOAD_ATTR_CLASS | 65,310,200 | 83.5% |
LOAD_ATTR | 4,410,300 | 5.6% |
LOAD_FAST | 3,685,180 | 4.7% |
CALL_NON_PY_GENERAL | 2,006,800 | 2.6% |
LOAD_ATTR_METHOD_WITH_VALUES | 1,976,240 | 2.5% |
Successors and predecessors for LOAD_SUPER_ATTR_METHOD
Predecessors | Count | Percentage |
---|---|---|
LOAD_FAST | 3,401,800 | 100.0% |
LOAD_SUPER_ATTR | 220 | 0.0% |
Successors | Count | Percentage |
---|---|---|
CALL_NON_PY_GENERAL | 1,576,800 | 46.3% |
LOAD_FAST | 1,041,860 | 30.6% |
LOAD_FAST_LOAD_FAST | 527,300 | 15.5% |
CALL_PY_EXACT_ARGS | 255,960 | 7.5% |
CALL | 100 | 0.0% |
Successors and predecessors for RESUME_CHECK
Predecessors | Count | Percentage |
---|---|---|
CALL_PY_EXACT_ARGS | 113,916,960 | 93.6% |
CALL_BOUND_METHOD_EXACT_ARGS | 4,407,920 | 3.6% |
COPY_FREE_VARS | 3,402,080 | 2.8% |
CACHE | 2,540 | 0.0% |
CALL | 860 | 0.0% |
Successors | Count | Percentage |
---|---|---|
LOAD_FAST | 114,617,840 | 94.2% |
LOAD_GLOBAL_BUILTIN | 3,145,840 | 2.6% |
LOAD_GLOBAL_MODULE | 1,917,400 | 1.6% |
LOAD_FAST_LOAD_FAST | 1,024,880 | 0.8% |
RETURN_CONST | 998,460 | 0.8% |
Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 27,723,020 | 53.8% |
LOAD_FAST | 10,137,940 | 19.7% |
LOAD_FAST_LOAD_FAST | 6,622,920 | 12.9% |
LOAD_ATTR_INSTANCE_VALUE | 6,228,720 | 12.1% |
SWAP | 784,920 | 1.5% |
Successors | Count | Percentage |
---|---|---|
RETURN_CONST | 35,942,820 | 69.7% |
LOAD_FAST | 7,368,620 | 14.3% |
LOAD_GLOBAL_MODULE | 3,253,640 | 6.3% |
LOAD_CONST | 2,608,480 | 5.1% |
LOAD_FAST_LOAD_FAST | 2,058,140 | 4.0% |
Successors and predecessors for TO_BOOL_BOOL
Predecessors | Count | Percentage |
---|---|---|
RETURN_VALUE | 6,451,980 | 50.3% |
COPY | 2,904,480 | 22.7% |
LOAD_ATTR_INSTANCE_VALUE | 1,851,560 | 14.4% |
RETURN_CONST | 1,594,740 | 12.4% |
LOAD_FAST | 11,760 | 0.1% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 7,632,500 | 59.6% |
POP_JUMP_IF_TRUE | 4,909,140 | 38.3% |
UNARY_NOT | 271,340 | 2.1% |
ENTER_EXECUTOR | 2,060 | 0.0% |
Successors and predecessors for TO_BOOL_INT
Predecessors | Count | Percentage |
---|---|---|
CALL_LEN | 3,986,700 | 100.0% |
TO_BOOL | 120 | 0.0% |
Successors | Count | Percentage |
---|---|---|
POP_JUMP_IF_FALSE | 3,986,820 | 100.0% |
Successors and predecessors for UNPACK_SEQUENCE_TUPLE
Predecessors | Count | Percentage |
---|---|---|
LOAD_CONST | 2,520 | 99.2% |
UNPACK_SEQUENCE | 20 | 0.8% |
Successors | Count | Percentage |
---|---|---|
STORE_FAST_STORE_FAST | 2,540 | 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. |
282,660 | 2.5% |
hit
ⓘSpecialized instructions that complete. |
11,121,580 | 97.5% |
Success | Count | Ratio |
---|---|---|
Success | 240 | 26.1% |
Failure | 680 | 73.9% |
Failure kind | Count | Ratio |
---|---|---|
remainder | 500 | 73.5% |
true divide other | 180 | 26.5% |
specialization stats for BINARY_SUBSCR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
5,780 | 35.5% |
hit
ⓘSpecialized instructions that complete. |
10,220 | 62.9% |
Success | Count | Ratio |
---|---|---|
Success | 20 | 7.7% |
Failure | 240 | 92.3% |
Failure kind | Count | Ratio |
---|---|---|
buffer int | 240 | 100.0% |
specialization stats for CALL family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
6,355,760 | 4.6% |
hit
ⓘSpecialized instructions that complete. |
132,925,560 | 95.4% |
miss
ⓘSpecialized instructions that deopt. |
6,211,340 | 4.5% |
Success | Count | Ratio |
---|---|---|
Success | 119,860 | 99.8% |
Failure | 260 | 0.2% |
Failure kind | Count | Ratio |
---|---|---|
wrong number arguments | 260 | 100.0% |
specialization stats for COMPARE_OP family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
2,630,880 | 3.6% |
hit
ⓘSpecialized instructions that complete. |
71,256,140 | 96.4% |
Success | Count | Ratio |
---|---|---|
Success | 420 | 20.8% |
Failure | 1,600 | 79.2% |
Failure kind | Count | Ratio |
---|---|---|
baseobject | 1,420 | 88.8% |
float long | 120 | 7.5% |
different types | 60 | 3.8% |
specialization stats for FOR_ITER family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
260 | 0.0% |
hit
ⓘSpecialized instructions that complete. |
3,192,400 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 260 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for LOAD_ATTR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
14,890,240 | 3.8% |
hit
ⓘSpecialized instructions that complete. |
373,297,700 | 96.1% |
miss
ⓘSpecialized instructions that deopt. |
9,003,720 | 2.3% |
Success | Count | Ratio |
---|---|---|
Success | 173,820 | 96.8% |
Failure | 5,680 | 3.2% |
Failure kind | Count | Ratio |
---|---|---|
mutable class | 3,040 | 53.5% |
class method obj | 2,640 | 46.5% |
specialization stats for LOAD_GLOBAL family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
2,040 | 0.0% |
hit
ⓘSpecialized instructions that complete. |
85,583,340 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 2,040 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for LOAD_SUPER_ATTR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
220 | 0.0% |
hit
ⓘSpecialized instructions that complete. |
3,402,020 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 220 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for POP_JUMP_IF_FALSE family
specialization stats for POP_JUMP_IF_NONE family
specialization stats for POP_JUMP_IF_TRUE family
specialization stats for STORE_ATTR family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
1,829,980 | 3.6% |
hit
ⓘSpecialized instructions that complete. |
49,669,700 | 96.4% |
miss
ⓘSpecialized instructions that deopt. |
1,863,940 | 3.6% |
Success | Count | Ratio |
---|---|---|
Success | 36,120 | 99.9% |
Failure | 40 | 0.1% |
Failure kind | Count | Ratio |
---|---|---|
not in keys | 40 | 100.0% |
specialization stats for TO_BOOL family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
640 | 0.0% |
hit
ⓘSpecialized instructions that complete. |
16,801,860 | 100.0% |
Success | Count | Ratio |
---|---|---|
Success | 640 | 100.0% |
Failure | 0 | 0.0% |
specialization stats for UNPACK_SEQUENCE family
Kind | Count | Ratio |
---|---|---|
deferred
ⓘLists the number of "deferred" (i.e. not specialized) instructions executed. |
20 | 0.8% |
hit
ⓘSpecialized instructions that complete. |
2,540 | 98.4% |
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. |
598,253,380 | 37.8% |
Not specialized
ⓘInstructions that could be specialized but aren't, e.g. |
97,935,280 | 6.2% |
Specialized hits
ⓘSpecialized instructions, e.g. |
868,169,140 | 54.9% |
Specialized misses
ⓘSpecialized instructions, e.g. |
17,079,780 | 1.1% |
Breakdown of deferred (not specialized) instruction counts by family
Name | Count | Ratio |
---|---|---|
LOAD_ATTR | 14,890,240 | 57.3% |
CALL | 6,355,760 | 24.4% |
COMPARE_OP | 2,630,880 | 10.1% |
STORE_ATTR | 1,829,980 | 7.0% |
BINARY_OP | 282,660 | 1.1% |
BINARY_SUBSCR | 5,780 | 0.0% |
LOAD_GLOBAL | 2,040 | 0.0% |
TO_BOOL | 640 | 0.0% |
FOR_ITER | 260 | 0.0% |
LOAD_SUPER_ATTR | 220 | 0.0% |
Breakdown of misses (specialized deopts) instruction counts by family
Name | Count | Ratio |
---|---|---|
LOAD_ATTR_METHOD_WITH_VALUES | 5,328,120 | 31.2% |
LOAD_ATTR_INSTANCE_VALUE | 3,675,600 | 21.5% |
CALL_METHOD_DESCRIPTOR_FAST | 3,185,780 | 18.7% |
CALL_PY_EXACT_ARGS | 3,015,160 | 17.7% |
STORE_ATTR_INSTANCE_VALUE | 1,863,940 | 10.9% |
CALL_METHOD_DESCRIPTOR_O | 10,400 | 0.1% |
RESUME | 780 | 0.0% |
RESUME_CHECK | 780 | 0.0% |
CACHE | 0 | 0.0% |
EXIT_INIT_CHECK | 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 | 261,380 | 0.2% |
Calls to Python functions inlined | 131,376,460 | 99.8% |
Calls via PyEval_EvalFrame (total) | 261,380 | 0.2% |
Calls via PyEval_EvalFrame (vector) | 261,380 | 0.2% |
Calls via PyEval_EvalFrame (generator) | 0 | 0.0% |
Calls via PyEval_EvalFrame (legacy) | 0 | 0.0% |
Calls via PyEval_EvalFrame (function vectorcall) | 261,380 | 0.2% |
Calls via PyEval_EvalFrame (build class) | 0 | 0.0% |
Calls via PyEval_EvalFrame (slot) | 0 | 0.0% |
Calls via PyEval_EvalFrame (function ex) | 80 | 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 | 132,955,980 | 101.0% |
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 | 1,929,960 | 7.0% |
Frees to freelist | 1,930,560 | |
Allocations | 25,777,000 | 93.0% |
Allocations to 512 bytes | 25,775,500 | 93.0% |
Allocations to 4 kbytes | 1,140 | 0.0% |
Allocations over 4 kbytes | 360 | 0.0% |
Frees | 27,264,142 | |
Inline values | 1,576,960 | |
Interpreter increfs | 1,007,310,880 | 91.8% |
Interpreter decrefs | 1,070,566,460 | 95.4% |
Increfs | 89,872,820 | 8.2% |
Decrefs | 52,044,253 | 4.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 | 68,590,411 | |
Method cache misses | 105,829 | |
Method cache collisions | 105,026 | |
Method cache dunder hits | 766,363 | |
Method cache dunder misses | 457 |
GC collections and effectiveness
Collected/visits gives some measure of efficiency.
Generation | Collections | Objects collected | Object visits |
---|---|---|---|
0 | 0 | 0 | 0 |
1 | 0 | 1,806,160 | 34,640,080 |
2 | 0 | 0 | 0 |
statistics about the Tier 2 optimizer
Count | Ratio | |
---|---|---|
Optimization attempts
ⓘThe number of times a potential trace is identified. Specifically, this occurs in the JUMP BACKWARD instruction when the counter reaches a threshold. |
16,200 | |
Traces created
ⓘThe number of traces that were successfully created. |
1,820 | 11.2% |
Trace stack overflow
ⓘA trace is truncated because it would require more than 5 stack frames. |
0 | 0.0% |
Trace stack underflow
ⓘA potential trace is abandoned because it pops more frames than it pushes. |
5,360 | 33.1% |
Trace too long
ⓘA trace is truncated because it is longer than the instruction buffer. |
0 | 0.0% |
Trace too short
ⓘA potential trace is abandoced because it it too short. |
14,380 | 88.8% |
Inner loop found
ⓘA trace is truncated because it has an inner loop |
340 | 2.1% |
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. |
140 | 0.9% |
Executors invalidated
ⓘThe number of executors that were invalidated due to watched dictionary changes. |
780 | 42.9% |
Traces executed
ⓘThe number of traces that were executed |
135,581,240 | |
Uops executed
ⓘThe total number of uops (micro-operations) that were executed |
1,075,150,400 | 793.0% |
Count | Ratio | |
---|---|---|
Optimizer attempts
ⓘThe number of times the trace optimizer (_Py_uop_analyze_and_optimize) was run. |
1,820 | |
Optimizer successes
ⓘThe number of traces that were successfully optimized. |
1,820 | 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 | 140 | 7.7% |
<= 32 | 480 | 26.4% |
<= 64 | 260 | 14.3% |
<= 128 | 260 | 14.3% |
<= 256 | 400 | 22.0% |
<= 512 | 260 | 14.3% |
<= 1,024 | 20 | 1.1% |
optimized trace length histogram
Range | Count | Ratio |
---|---|---|
<= 1 | 0 | 0.0% |
<= 2 | 0 | 0.0% |
<= 4 | 0 | 0.0% |
<= 8 | 100 | 5.5% |
<= 16 | 440 | 24.2% |
<= 32 | 320 | 17.6% |
<= 64 | 220 | 12.1% |
<= 128 | 300 | 16.5% |
<= 256 | 320 | 17.6% |
<= 512 | 120 | 6.6% |
trace run length histogram
Range | Count | Ratio |
---|---|---|
<= 1 | 0 | 0.0% |
<= 2 | 2,518,440 | 1.9% |
<= 4 | 845,900 | 0.6% |
<= 8 | 36,378,760 | 26.8% |
<= 16 | 44,384,740 | 32.7% |
<= 32 | 1,748,140 | 1.3% |
<= 64 | 1,657,020 | 1.2% |
<= 128 | 206,280 | 0.2% |
<= 256 | 976,180 | 0.7% |
<= 512 | 4,380 | 0.0% |
<= 1,024 | 0 | 0.0% |
<= 2,048 | 40 | 0.0% |
<= 4,096 | 10,200 | 0.0% |
<= 8,192 | 2,000 | 0.0% |
uop execution stats
Name | Count | Self | Cumulative | Miss ratio |
---|---|---|---|---|
_START_EXECUTOR | 88,732,080 | 8.3% | 8.3% | 2.8% |
_EXIT_TRACE | 84,409,800 | 7.9% | 16.1% | |
_GUARD_TYPE_VERSION | 82,580,520 | 7.7% | 23.8% | 45.6% |
_SET_IP | 59,970,480 | 5.6% | 29.4% | |
_COLD_EXIT | 46,849,160 | 4.4% | 33.7% | |
_LOAD_ATTR | 43,142,640 | 4.0% | 37.7% | |
_TIER2_RESUME_CHECK | 41,357,240 | 3.8% | 41.6% | |
_CHECK_FUNCTION_EXACT_ARGS | 41,212,940 | 3.8% | 45.4% | 76.0% |
_GUARD_NOT_EXHAUSTED_LIST | 38,535,100 | 3.6% | 49.0% | 10.5% |
_ITER_CHECK_LIST | 38,535,100 | 3.6% | 52.6% | |
_LOAD_FAST_1 | 37,707,940 | 3.5% | 56.1% | |
_ITER_NEXT_LIST | 34,502,440 | 3.2% | 59.3% | |
_CHECK_MANAGED_OBJECT_HAS_VALUES | 31,727,560 | 3.0% | 62.2% | |
_LOAD_ATTR_INSTANCE_VALUE_0 | 31,727,560 | 3.0% | 65.2% | |
_CHECK_VALIDITY_AND_SET_IP | 31,602,140 | 2.9% | 68.1% | |
_STORE_FAST_1 | 31,593,780 | 2.9% | 71.1% | |
_LOAD_FAST_0 | 28,307,740 | 2.6% | 73.7% | |
_CHECK_VALIDITY | 16,953,700 | 1.6% | 75.3% | |
_COMPARE_OP_INT | 16,548,960 | 1.5% | 76.8% | |
_GUARD_BOTH_INT | 16,316,260 | 1.5% | 78.3% | |
_GUARD_GLOBALS_VERSION | 16,255,580 | 1.5% | 79.9% | |
_LOAD_GLOBAL_MODULE | 15,798,260 | 1.5% | 81.3% | |
_GUARD_IS_TRUE_POP | 13,941,480 | 1.3% | 82.6% | 1.7% |
_CHECK_ATTR_CLASS | 13,434,920 | 1.2% | 83.9% | |
_LOAD_ATTR_CLASS_0 | 13,434,920 | 1.2% | 85.1% | |
_RESUME_CHECK | 9,906,280 | 0.9% | 86.0% | |
_PUSH_FRAME | 9,906,280 | 0.9% | 87.0% | |
_SAVE_RETURN_OFFSET | 9,906,280 | 0.9% | 87.9% | |
_LOAD_FAST_5 | 8,802,480 | 0.8% | 88.7% | |
_POP_FRAME | 7,155,100 | 0.7% | 89.4% | |
_LOAD_FAST_2 | 6,789,700 | 0.6% | 90.0% | |
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT | 6,435,440 | 0.6% | 90.6% | |
_GUARD_KEYS_VERSION | 6,435,440 | 0.6% | 91.2% | |
_LOAD_ATTR_METHOD_WITH_VALUES | 6,435,440 | 0.6% | 91.8% | |
_INIT_CALL_PY_EXACT_ARGS_0 | 6,028,340 | 0.6% | 92.4% | |
_GUARD_IS_FALSE_POP | 5,756,280 | 0.5% | 92.9% | 54.5% |
_CHECK_STACK_SPACE_OPERAND | 5,047,960 | 0.5% | 93.4% | |
_STORE_FAST_5 | 4,497,000 | 0.4% | 93.8% | |
_DEOPT | 4,322,280 | 0.4% | 94.2% | |
_LOAD_FAST_3 | 4,142,880 | 0.4% | 94.6% | |
_LOAD_CONST_INLINE_BORROW | 3,632,800 | 0.3% | 94.9% | |
_GUARD_DORV_NO_DICT | 3,555,680 | 0.3% | 95.2% | |
_STORE_ATTR_INSTANCE_VALUE | 3,555,680 | 0.3% | 95.6% | |
_CHECK_ATTR_METHOD_LAZY_DICT | 3,220,780 | 0.3% | 95.9% | |
_LOAD_ATTR_METHOD_LAZY_DICT | 3,220,780 | 0.3% | 96.2% | |
_POP_TOP | 3,209,940 | 0.3% | 96.5% | |
_LOAD_FAST_4 | 2,935,220 | 0.3% | 96.7% | |
_COMPARE_OP | 2,878,660 | 0.3% | 97.0% | |
_INIT_CALL_PY_EXACT_ARGS_2 | 2,677,800 | 0.2% | 97.3% | |
_CHECK_CALL_BOUND_METHOD_EXACT_ARGS | 2,547,420 | 0.2% | 97.5% | |
_INIT_CALL_BOUND_METHOD_EXACT_ARGS | 2,547,420 | 0.2% | 97.7% | |
_CALL_METHOD_DESCRIPTOR_FAST | 1,803,840 | 0.2% | 97.9% | 100.0% |
_TO_BOOL_BOOL | 1,529,360 | 0.1% | 98.0% | |
_JUMP_TO_TOP | 1,523,580 | 0.1% | 98.2% | |
_LOAD_CONST_INLINE | 1,498,760 | 0.1% | 98.3% | |
_GUARD_NOT_EXHAUSTED_RANGE | 1,380,160 | 0.1% | 98.4% | 1.7% |
_ITER_CHECK_RANGE | 1,380,160 | 0.1% | 98.6% | |
_ITER_NEXT_RANGE | 1,357,060 | 0.1% | 98.7% | |
_BINARY_OP_ADD_INT | 1,223,700 | 0.1% | 98.8% | |
_BINARY_OP_MULTIPLY_INT | 1,212,500 | 0.1% | 98.9% | |
_INIT_CALL_PY_EXACT_ARGS_1 | 1,200,140 | 0.1% | 99.0% | |
_LOAD_FAST_6 | 1,042,520 | 0.1% | 99.1% | |
_GUARD_NOS_INT | 1,019,100 | 0.1% | 99.2% | |
_COPY | 967,040 | 0.1% | 99.3% | |
_GET_ITER | 870,980 | 0.1% | 99.4% | |
_GUARD_TOS_INT | 711,380 | 0.1% | 99.5% | |
_STORE_FAST_2 | 618,280 | 0.1% | 99.5% | |
_BINARY_OP | 572,620 | 0.1% | 99.6% | |
_STORE_FAST_6 | 526,000 | 0.0% | 99.6% | |
_STORE_FAST_4 | 508,800 | 0.0% | 99.7% | |
_BINARY_SUBSCR | 501,120 | 0.0% | 99.7% | |
_CHECK_FUNCTION | 474,580 | 0.0% | 99.8% | |
_CALL_LEN | 459,780 | 0.0% | 99.8% | |
_TO_BOOL_INT | 459,780 | 0.0% | 99.9% | |
_LOAD_GLOBAL_BUILTINS | 457,320 | 0.0% | 99.9% | |
_STORE_FAST_3 | 257,040 | 0.0% | 99.9% | |
_LOAD_FAST | 253,120 | 0.0% | 99.9% | |
_CALL_NON_PY_GENERAL | 130,040 | 0.0% | 100.0% | |
_CHECK_IS_NOT_PY_CALLABLE | 130,040 | 0.0% | 100.0% | |
_CHECK_PERIODIC | 130,040 | 0.0% | 100.0% | |
_GUARD_IS_NONE_POP | 77,500 | 0.0% | 100.0% | 1.0% |
_BINARY_OP_SUBTRACT_INT | 63,820 | 0.0% | 100.0% | |
_GUARD_IS_NOT_NONE_POP | 51,660 | 0.0% | 100.0% | 1.0% |
_LOAD_CONST_INLINE_WITH_NULL | 15,400 | 0.0% | 100.0% | |
_SWAP | 11,200 | 0.0% | 100.0% | |
_PUSH_NULL | 2,160 | 0.0% | 100.0% | |
_STORE_FAST_0 | 2,160 | 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 |
---|---|---|---|
_SET_IP _LOAD_ATTR | 43,142,640 | 4.0% | 4.0% |
_START_EXECUTOR _SET_IP | 40,582,860 | 3.8% | 7.8% |
_START_EXECUTOR _TIER2_RESUME_CHECK | 39,833,660 | 3.7% | 11.5% |
_ITER_CHECK_LIST _GUARD_NOT_EXHAUSTED_LIST | 38,535,100 | 3.6% | 15.1% |
_TIER2_RESUME_CHECK _ITER_CHECK_LIST | 37,664,120 | 3.5% | 18.6% |
_GUARD_TYPE_VERSION _EXIT_TRACE | 37,641,060 | 3.5% | 22.1% |
_GUARD_NOT_EXHAUSTED_LIST _ITER_NEXT_LIST | 34,502,440 | 3.2% | 25.3% |
_LOAD_FAST_1 _GUARD_TYPE_VERSION | 34,141,200 | 3.2% | 28.5% |
_CHECK_MANAGED_OBJECT_HAS_VALUES _LOAD_ATTR_INSTANCE_VALUE_0 | 31,727,560 | 3.0% | 31.4% |
_GUARD_TYPE_VERSION _CHECK_MANAGED_OBJECT_HAS_VALUES | 31,727,560 | 3.0% | 34.4% |
_LOAD_ATTR _CHECK_VALIDITY_AND_SET_IP | 31,602,140 | 2.9% | 37.3% |
_CHECK_VALIDITY_AND_SET_IP _CHECK_FUNCTION_EXACT_ARGS | 31,593,500 | 2.9% | 40.2% |
_CHECK_FUNCTION_EXACT_ARGS _EXIT_TRACE | 31,306,660 | 2.9% | 43.2% |
_ITER_NEXT_LIST _STORE_FAST_1 | 31,115,860 | 2.9% | 46.1% |
_STORE_FAST_1 _LOAD_FAST_1 | 31,115,860 | 2.9% | 48.9% |
_LOAD_FAST_0 _GUARD_TYPE_VERSION | 27,560,360 | 2.6% | 51.5% |
_GUARD_GLOBALS_VERSION _LOAD_GLOBAL_MODULE | 15,798,260 | 1.5% | 53.0% |
_GUARD_BOTH_INT _COMPARE_OP_INT | 15,541,060 | 1.4% | 54.4% |
_CHECK_ATTR_CLASS _LOAD_ATTR_CLASS_0 | 13,434,920 | 1.2% | 55.7% |
_LOAD_GLOBAL_MODULE _CHECK_ATTR_CLASS | 12,970,780 | 1.2% | 56.9% |
_LOAD_ATTR_CLASS_0 _GUARD_BOTH_INT | 12,377,440 | 1.2% | 58.0% |
_LOAD_ATTR _CHECK_VALIDITY | 11,540,500 | 1.1% | 59.1% |
_PUSH_FRAME _RESUME_CHECK | 9,906,280 | 0.9% | 60.0% |
_SAVE_RETURN_OFFSET _PUSH_FRAME | 9,906,280 | 0.9% | 60.9% |
_COMPARE_OP_INT _GUARD_IS_TRUE_POP | 9,312,280 | 0.9% | 61.8% |
_GUARD_IS_TRUE_POP _LOAD_FAST_0 | 8,583,660 | 0.8% | 62.6% |
_CHECK_VALIDITY _GUARD_GLOBALS_VERSION | 8,351,380 | 0.8% | 63.4% |
_LOAD_ATTR_INSTANCE_VALUE_0 _GUARD_TYPE_VERSION | 7,749,000 | 0.7% | 64.1% |
_RESUME_CHECK _LOAD_FAST_0 | 7,466,900 | 0.7% | 64.8% |
_SET_IP _CHECK_FUNCTION_EXACT_ARGS | 7,072,020 | 0.7% | 65.5% |
_GUARD_DORV_VALUES_INST_ATTR_FROM_DICT _GUARD_KEYS_VERSION | 6,435,440 | 0.6% | 66.1% |
_GUARD_KEYS_VERSION _LOAD_ATTR_METHOD_WITH_VALUES | 6,435,440 | 0.6% | 66.7% |
_GUARD_TYPE_VERSION _GUARD_DORV_VALUES_INST_ATTR_FROM_DICT | 6,435,440 | 0.6% | 67.3% |
_INIT_CALL_PY_EXACT_ARGS_0 _SAVE_RETURN_OFFSET | 6,028,340 | 0.6% | 67.8% |
_LOAD_FAST_2 _GUARD_TYPE_VERSION | 5,308,760 | 0.5% | 68.3% |
_LOAD_ATTR_METHOD_WITH_VALUES _SET_IP | 5,279,180 | 0.5% | 68.8% |
_CHECK_FUNCTION_EXACT_ARGS _CHECK_STACK_SPACE_OPERAND | 5,047,960 | 0.5% | 69.3% |
_GUARD_NOT_EXHAUSTED_LIST _EXIT_TRACE | 4,032,660 | 0.4% | 69.6% |
_COMPARE_OP_INT _POP_FRAME | 3,856,680 | 0.4% | 70.0% |
_CHECK_STACK_SPACE_OPERAND _INIT_CALL_PY_EXACT_ARGS_0 | 3,851,140 | 0.4% | 70.4% |
_GUARD_IS_FALSE_POP _EXIT_TRACE | 3,663,940 | 0.3% | 70.7% |
_LOAD_ATTR_INSTANCE_VALUE_0 _GUARD_GLOBALS_VERSION | 3,573,880 | 0.3% | 71.0% |
_GUARD_DORV_NO_DICT _STORE_ATTR_INSTANCE_VALUE | 3,555,680 | 0.3% | 71.4% |
_GUARD_TYPE_VERSION _GUARD_DORV_NO_DICT | 3,555,680 | 0.3% | 71.7% |
_STORE_FAST_5 _LOAD_FAST_5 | 3,395,220 | 0.3% | 72.0% |
_ITER_NEXT_LIST _STORE_FAST_5 | 3,386,580 | 0.3% | 72.3% |
_CHECK_ATTR_METHOD_LAZY_DICT _LOAD_ATTR_METHOD_LAZY_DICT | 3,220,780 | 0.3% | 72.6% |
_GUARD_TYPE_VERSION _CHECK_ATTR_METHOD_LAZY_DICT | 3,220,780 | 0.3% | 72.9% |
_POP_FRAME _GUARD_IS_TRUE_POP | 3,124,040 | 0.3% | 73.2% |
_LOAD_ATTR_INSTANCE_VALUE_0 _SET_IP | 3,004,300 | 0.3% | 73.5% |
_COMPARE_OP _CHECK_VALIDITY | 2,878,660 | 0.3% | 73.8% |
_LOAD_FAST_5 _GUARD_TYPE_VERSION | 2,873,260 | 0.3% | 74.0% |
_SET_IP _COMPARE_OP | 2,870,020 | 0.3% | 74.3% |
_CHECK_VALIDITY _GUARD_IS_FALSE_POP | 2,866,340 | 0.3% | 74.6% |
_LOAD_ATTR_INSTANCE_VALUE_0 _GUARD_BOTH_INT | 2,844,700 | 0.3% | 74.8% |
_INIT_CALL_PY_EXACT_ARGS_2 _SAVE_RETURN_OFFSET | 2,677,800 | 0.2% | 75.1% |
_LOAD_ATTR_INSTANCE_VALUE_0 _LOAD_FAST_0 | 2,566,460 | 0.2% | 75.3% |
_SET_IP _CHECK_CALL_BOUND_METHOD_EXACT_ARGS | 2,547,420 | 0.2% | 75.6% |
_CHECK_CALL_BOUND_METHOD_EXACT_ARGS _INIT_CALL_BOUND_METHOD_EXACT_ARGS | 2,547,420 | 0.2% | 75.8% |
_INIT_CALL_BOUND_METHOD_EXACT_ARGS _CHECK_FUNCTION_EXACT_ARGS | 2,547,420 | 0.2% | 76.0% |
_LOAD_ATTR_INSTANCE_VALUE_0 _LOAD_FAST_2 | 2,547,420 | 0.2% | 76.3% |
_START_EXECUTOR _DEOPT | 2,518,440 | 0.2% | 76.5% |
_START_EXECUTOR _LOAD_FAST_0 | 2,401,720 | 0.2% | 76.7% |
_LOAD_FAST_3 _SET_IP | 2,287,280 | 0.2% | 76.9% |
_LOAD_GLOBAL_MODULE _SET_IP | 2,186,320 | 0.2% | 77.1% |
_CHECK_FUNCTION_EXACT_ARGS _INIT_CALL_PY_EXACT_ARGS_0 | 2,177,200 | 0.2% | 77.3% |
_CHECK_FUNCTION_EXACT_ARGS _INIT_CALL_PY_EXACT_ARGS_2 | 2,170,500 | 0.2% | 77.5% |
_CHECK_VALIDITY _LOAD_FAST_0 | 2,133,320 | 0.2% | 77.7% |
_LOAD_ATTR_INSTANCE_VALUE_0 _LOAD_FAST_1 | 2,078,820 | 0.2% | 77.9% |
_RESUME_CHECK _LOAD_FAST_1 | 2,071,160 | 0.2% | 78.1% |
_LOAD_ATTR_INSTANCE_VALUE_0 _EXIT_TRACE | 2,011,340 | 0.2% | 78.3% |
_LOAD_FAST_4 _GUARD_TYPE_VERSION | 1,916,660 | 0.2% | 78.5% |
_START_EXECUTOR _LOAD_FAST_5 | 1,865,260 | 0.2% | 78.7% |
_LOAD_FAST_5 _LOAD_FAST_3 | 1,827,500 | 0.2% | 78.8% |
_GUARD_IS_TRUE_POP _GUARD_GLOBALS_VERSION | 1,824,800 | 0.2% | 79.0% |
_LOAD_CONST_INLINE_BORROW _SET_IP | 1,805,060 | 0.2% | 79.2% |
_SET_IP _CALL_METHOD_DESCRIPTOR_FAST | 1,803,840 | 0.2% | 79.3% |
_CALL_METHOD_DESCRIPTOR_FAST _DEOPT | 1,803,840 | 0.2% | 79.5% |
_LOAD_ATTR_METHOD_LAZY_DICT _LOAD_CONST_INLINE_BORROW | 1,803,840 | 0.2% | 79.7% |
_LOAD_FAST_5 _EXIT_TRACE | 1,795,200 | 0.2% | 79.8% |
_LOAD_FAST_3 _GUARD_TYPE_VERSION | 1,721,840 | 0.2% | 80.0% |
_COMPARE_OP_INT _EXIT_TRACE | 1,711,140 | 0.2% | 80.2% |
_COMPARE_OP_INT _GUARD_IS_FALSE_POP | 1,668,860 | 0.2% | 80.3% |
_LOAD_ATTR_INSTANCE_VALUE_0 _POP_FRAME | 1,586,840 | 0.1% | 80.5% |
_TIER2_RESUME_CHECK _LOAD_FAST_3 | 1,540,160 | 0.1% | 80.6% |
_JUMP_TO_TOP _TIER2_RESUME_CHECK | 1,523,580 | 0.1% | 80.8% |
_ITER_CHECK_RANGE _GUARD_NOT_EXHAUSTED_RANGE | 1,380,160 | 0.1% | 80.9% |
_TIER2_RESUME_CHECK _ITER_CHECK_RANGE | 1,380,160 | 0.1% | 81.0% |
_GUARD_NOT_EXHAUSTED_RANGE _ITER_NEXT_RANGE | 1,357,060 | 0.1% | 81.1% |
_LOAD_ATTR_METHOD_LAZY_DICT _LOAD_FAST_5 | 1,289,060 | 0.1% | 81.3% |
_LOAD_FAST_1 _SET_IP | 1,266,520 | 0.1% | 81.4% |
_LOAD_CONST_INLINE_BORROW _POP_FRAME | 1,233,660 | 0.1% | 81.5% |
_POP_FRAME _POP_TOP | 1,233,660 | 0.1% | 81.6% |
_INIT_CALL_PY_EXACT_ARGS_1 _SAVE_RETURN_OFFSET | 1,200,140 | 0.1% | 81.7% |
_POP_TOP _LOAD_FAST_0 | 1,181,660 | 0.1% | 81.8% |
_CHECK_VALIDITY _LOAD_FAST_1 | 1,105,940 | 0.1% | 81.9% |
_LOAD_FAST_1 _GUARD_BOTH_INT | 1,094,120 | 0.1% | 82.0% |
_LOAD_ATTR_CLASS_0 _LOAD_FAST_0 | 1,057,480 | 0.1% | 82.1% |
_STORE_ATTR_INSTANCE_VALUE _LOAD_CONST_INLINE_BORROW | 1,044,300 | 0.1% | 82.2% |
_LOAD_FAST_5 _LOAD_FAST_6 | 1,042,520 | 0.1% | 82.3% |
unsupported opcodes
Opcode | Count |
---|---|
CALL | 9,480 |
CALL_LIST_APPEND | 380 |
CALL_ALLOC_AND_ENTER_INIT | 160 |
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 |
120 |
watched globals modification
ⓘA watched |
120 |
Meta statistics
Count | |
---|---|
Number of data files | 20 |
Stats gathered on: 2024-06-16