Skip to content

Latest commit

 

History

History
9574 lines (8751 loc) · 172 KB

bm-20250121-azure-x86_64-brandtbucher-remove_optimizer_api-3.14.0a4+-085e172-pystats-deepcopy.md

File metadata and controls

9574 lines (8751 loc) · 172 KB

Pystats results

  • benchmark: deepcopy
  • fork: brandtbucher
  • ref: remove-optimizer-api
  • commit hash: 085e172
  • commit date: 2025-01-21T19:51:13-08:00

Execution counts

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 75,010,600 13.9% 13.9%
RETURN_VALUE 48,508,400 9.0% 22.9%
LOAD_FAST_LOAD_FAST 40,344,840 7.5% 30.4%
PUSH_NULL 39,977,420 7.4% 37.8%
ENTER_EXECUTOR 39,830,500 7.4% 45.2%
POP_TOP 24,023,940 4.5% 49.7%
CALL_BUILTIN_O 23,255,140 4.3% 54.0%
STORE_FAST 22,897,300 4.2% 58.2%
STORE_SUBSCR_DICT 18,032,680 3.3% 61.6%
LOAD_GLOBAL_BUILTIN 17,729,520 3.3% 64.9%
CALL_PY_GENERAL 16,398,700 3.0% 67.9% 13.6%
POP_JUMP_IF_FALSE 15,483,440 2.9% 70.8%
RESUME_CHECK 12,627,740 2.3% 73.1% 0.0%
LOAD_CONST_IMMORTAL 8,757,720 1.6% 74.8%
IS_OP 8,571,100 1.6% 76.4%
LOAD_GLOBAL_MODULE 8,204,800 1.5% 77.9%
GET_ITER 6,857,580 1.3% 79.2%
JUMP_FORWARD 6,758,600 1.3% 80.4%
CALL_PY_EXACT_ARGS 6,666,960 1.2% 81.6%
NOP 5,744,820 1.1% 82.7%
BINARY_SUBSCR_DICT 5,744,640 1.1% 83.8%
BUILD_LIST 5,714,340 1.1% 84.8%
LOAD_DEREF 5,683,620 1.1% 85.9%
LOAD_METHOD_NO_DICT 5,002,380 0.9% 86.8%
POP_JUMP_IF_NONE 4,909,780 0.9% 87.7%
TO_BOOL_BOOL 4,792,500 0.9% 88.6%
CALL_NON_PY_GENERAL 3,844,180 0.7% 89.3%
CALL_LIST_APPEND 3,809,280 0.7% 90.0%
LOAD_ATTR 2,984,480 0.6% 90.6%
CHECK_EXC_MATCH 2,856,960 0.5% 91.1%
POP_EXCEPT 2,856,960 0.5% 91.7%
PUSH_EXC_INFO 2,856,960 0.5% 92.2%
LIST_APPEND 2,856,960 0.5% 92.7%
CALL_FUNCTION_EX 2,826,600 0.5% 93.2%
LOAD_ATTR_MODULE 2,096,360 0.4% 93.6%
FOR_ITER_TUPLE 2,071,840 0.4% 94.0%
MAKE_CELL 1,904,940 0.4% 94.4%
INTERPRETER_EXIT 1,904,740 0.4% 94.7%
SWAP 1,904,640 0.4% 95.1%
FOR_ITER_LIST 1,904,640 0.4% 95.4%
BINARY_OP_SUBTRACT_FLOAT 1,843,320 0.3% 95.8%
BINARY_OP_ADD_FLOAT 1,843,200 0.3% 96.1% 0.0%
FOR_ITER 1,137,180 0.2% 96.3%
STORE_FAST_STORE_FAST 1,075,420 0.2% 96.5%
UNPACK_SEQUENCE_TWO_TUPLE 1,075,420 0.2% 96.7%
CALL_BUILTIN_FAST 1,075,200 0.2% 96.9%
LOAD_CONST_MORTAL 1,018,240 0.2% 97.1%
STORE_FAST_LOAD_FAST 986,440 0.2% 97.3%
TO_BOOL 952,900 0.2% 97.5%
BUILD_TUPLE 952,860 0.2% 97.7%
LIST_EXTEND 952,620 0.2% 97.8%
COPY_FREE_VARS 952,560 0.2% 98.0%
CALL_INTRINSIC_1 952,500 0.2% 98.2%
POP_JUMP_IF_TRUE 952,500 0.2% 98.4%
LOAD_FAST_AND_CLEAR 952,320 0.2% 98.5%
CALL_ISINSTANCE 952,320 0.2% 98.7%
MAKE_FUNCTION 922,020 0.2% 98.9%
SET_FUNCTION_ATTRIBUTE 921,900 0.2% 99.1%
RETURN_GENERATOR 921,600 0.2% 99.2%
YIELD_VALUE 921,600 0.2% 99.4%
LOAD_ATTR_CLASS 921,600 0.2% 99.6%
JUMP_BACKWARD_JIT 317,620 0.1% 99.6%
POP_ITER 282,960 0.1% 99.7%
LOAD_SMALL_INT 253,160 0.0% 99.7%
FOR_ITER_RANGE 187,900 0.0% 99.8%
CALL_TYPE_1 184,660 0.0% 99.8%
CONTAINS_OP_SET 184,660 0.0% 99.8%
CALL_METHOD_DESCRIPTOR_FAST 178,940 0.0% 99.9%
STORE_ATTR 129,800 0.0% 99.9%
BUILD_MAP 123,120 0.0% 99.9%
CALL_BUILTIN_CLASS 95,740 0.0% 99.9%
STORE_SUBSCR_LIST_INT 64,840 0.0% 99.9%
STORE_ATTR_INSTANCE_VALUE 61,860 0.0% 100.0% 10.3%
POP_JUMP_IF_NOT_NONE 61,680 0.0% 100.0%
CALL_METHOD_DESCRIPTOR_NOARGS 61,660 0.0% 100.0%
LOAD_METHOD_WITH_VALUES 31,140 0.0% 100.0% 10.2%
TO_BOOL_NONE 30,720 0.0% 100.0%
NOT_TAKEN 30,720 0.0% 100.0%
CALL_TUPLE_1 30,720 0.0% 100.0%
CALL 800 0.0% 100.0%
LOAD_ATTR_INSTANCE_VALUE 720 0.0% 100.0%
LOAD_METHOD 480 0.0% 100.0%
STORE_NAME 480 0.0% 100.0%
LOAD_GLOBAL 360 0.0% 100.0%
STORE_DEREF 300 0.0% 100.0%
BINARY_OP 200 0.0% 100.0%
BINARY_SUBSCR_TUPLE_INT 180 0.0% 100.0%
CALL_METHOD_DESCRIPTOR_O 180 0.0% 100.0%
CALL_ALLOC_AND_ENTER_INIT 120 0.0% 100.0% 33.3%
EXIT_INIT_CHECK 80 0.0% 100.0%
BINARY_SUBSCR 60 0.0% 100.0%
UNPACK_SEQUENCE 60 0.0% 100.0%
LOAD_BUILD_CLASS 60 0.0% 100.0%
LOAD_LOCALS 60 0.0% 100.0%
LOAD_NAME 60 0.0% 100.0%
CALL_BUILTIN_FAST_WITH_KEYWORDS 60 0.0% 100.0%

Pair counts

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
ENTER_EXECUTOR RETURN_VALUE 33,914,560 6.3% 6.3%
PUSH_NULL LOAD_FAST 18,682,200 3.5% 9.8%
PUSH_NULL LOAD_FAST_LOAD_FAST 17,324,460 3.2% 13.0%
LOAD_GLOBAL_BUILTIN PUSH_NULL 13,889,460 2.6% 15.6%
POP_TOP ENTER_EXECUTOR 13,516,800 2.5% 18.1%
CALL_PY_GENERAL ENTER_EXECUTOR 13,277,880 2.5% 20.5%
RETURN_VALUE CALL_BUILTIN_O 12,595,200 2.3% 22.9%
CALL_BUILTIN_O POP_TOP 12,595,200 2.3% 25.2%
LOAD_FAST CALL_BUILTIN_O 10,629,220 2.0% 27.2%
LOAD_FAST_LOAD_FAST CALL_PY_GENERAL 10,627,140 2.0% 29.1%
RETURN_VALUE STORE_FAST 10,414,700 1.9% 31.1%
STORE_FAST LOAD_FAST 9,887,660 1.8% 32.9%
LOAD_FAST LOAD_GLOBAL_BUILTIN 8,632,320 1.6% 34.5%
POP_TOP LOAD_FAST 8,571,060 1.6% 36.1%
LOAD_FAST RETURN_VALUE 7,864,980 1.5% 37.6%
LOAD_FAST_LOAD_FAST IS_OP 7,618,600 1.4% 39.0%
RETURN_VALUE LOAD_FAST_LOAD_FAST 7,495,680 1.4% 40.4%
RETURN_VALUE STORE_SUBSCR_DICT 7,495,680 1.4% 41.8%
LOAD_FAST_LOAD_FAST PUSH_NULL 7,495,680 1.4% 43.2%
STORE_SUBSCR_DICT ENTER_EXECUTOR 7,372,800 1.4% 44.5%
IS_OP POP_JUMP_IF_FALSE 6,666,280 1.2% 45.8%
LOAD_FAST PUSH_NULL 5,985,560 1.1% 46.9%
LOAD_CONST_IMMORTAL RETURN_VALUE 5,776,080 1.1% 47.9%
STORE_FAST JUMP_FORWARD 5,775,560 1.1% 49.0%
RETURN_VALUE POP_TOP 5,745,180 1.1% 50.1%
CALL_PY_EXACT_ARGS RESUME_CHECK 5,745,180 1.1% 51.1%
LOAD_GLOBAL_MODULE PUSH_NULL 5,744,880 1.1% 52.2%
NOP LOAD_FAST 5,744,820 1.1% 53.3%
CALL_BUILTIN_O BINARY_SUBSCR_DICT 5,744,640 1.1% 54.3%
LOAD_FAST_LOAD_FAST CALL_PY_EXACT_ARGS 5,714,160 1.1% 55.4%
LOAD_FAST_LOAD_FAST LOAD_FAST 5,713,980 1.1% 56.5%
LOAD_FAST STORE_SUBSCR_DICT 5,713,920 1.1% 57.5%
POP_JUMP_IF_FALSE LOAD_FAST_LOAD_FAST 5,713,920 1.1% 58.6%
RESUME_CHECK NOP 5,713,920 1.1% 59.7%
STORE_SUBSCR_DICT LOAD_GLOBAL_MODULE 5,713,920 1.1% 60.7%
JUMP_FORWARD LOAD_FAST_LOAD_FAST 5,683,200 1.1% 61.8%
LOAD_FAST POP_JUMP_IF_NONE 4,909,780 0.9% 62.7%
LOAD_METHOD_NO_DICT LOAD_FAST 4,909,780 0.9% 63.6%
POP_JUMP_IF_NONE LOAD_FAST 4,848,340 0.9% 64.5%
CALL_BUILTIN_O STORE_SUBSCR_DICT 4,823,080 0.9% 65.4%
TO_BOOL_BOOL POP_JUMP_IF_FALSE 4,792,320 0.9% 66.3%
LOAD_FAST GET_ITER 4,700,160 0.9% 67.1%
POP_JUMP_IF_FALSE LOAD_FAST 3,932,640 0.7% 67.9%
LOAD_FAST CALL_LIST_APPEND 3,809,280 0.7% 68.6%
BINARY_SUBSCR_DICT LOAD_METHOD_NO_DICT 3,809,280 0.7% 69.3%
CALL_LIST_APPEND LOAD_CONST_IMMORTAL 3,809,280 0.7% 70.0%
ENTER_EXECUTOR CALL_PY_GENERAL 3,698,420 0.7% 70.7%
STORE_FAST LOAD_FAST_LOAD_FAST 3,143,720 0.6% 71.3%
CALL_PY_GENERAL RESUME_CHECK 3,078,600 0.6% 71.8%
STORE_SUBSCR_DICT LOAD_FAST 2,918,440 0.5% 72.4%
LOAD_FAST LOAD_ATTR 2,887,800 0.5% 72.9%
LOAD_FAST TO_BOOL_BOOL 2,857,080 0.5% 73.4%
CHECK_EXC_MATCH POP_JUMP_IF_FALSE 2,856,960 0.5% 74.0%
PUSH_EXC_INFO LOAD_GLOBAL_BUILTIN 2,856,960 0.5% 74.5%
RETURN_VALUE LIST_APPEND 2,856,960 0.5% 75.0%
BUILD_LIST LOAD_FAST 2,856,960 0.5% 75.6%
POP_JUMP_IF_FALSE POP_TOP 2,856,960 0.5% 76.1%
LOAD_GLOBAL_BUILTIN CHECK_EXC_MATCH 2,856,960 0.5% 76.6%
RESUME_CHECK LOAD_FAST 2,826,780 0.5% 77.2%
LOAD_FAST BUILD_LIST 2,826,480 0.5% 77.7%
LOAD_FAST LOAD_DEREF 2,826,240 0.5% 78.2%
LIST_APPEND ENTER_EXECUTOR 2,805,760 0.5% 78.7%
LOAD_ATTR_MODULE PUSH_NULL 2,096,360 0.4% 79.1%
LOAD_GLOBAL_MODULE LOAD_ATTR_MODULE 2,096,160 0.4% 79.5%
LOAD_FAST LOAD_GLOBAL_MODULE 2,027,860 0.4% 79.9%
GET_ITER FOR_ITER_TUPLE 1,969,480 0.4% 80.2%
LOAD_FAST_LOAD_FAST LOAD_GLOBAL_BUILTIN 1,966,120 0.4% 80.6%
PUSH_NULL CALL_NON_PY_GENERAL 1,939,160 0.4% 81.0%
BINARY_SUBSCR_DICT PUSH_EXC_INFO 1,935,360 0.4% 81.3%
PUSH_NULL CALL_FUNCTION_EX 1,905,000 0.4% 81.7%
GET_ITER FOR_ITER_LIST 1,904,640 0.4% 82.0%
POP_EXCEPT LOAD_CONST_IMMORTAL 1,904,640 0.4% 82.4%
BUILD_LIST STORE_FAST 1,904,640 0.4% 82.7%
LOAD_ATTR STORE_FAST 1,904,640 0.4% 83.1%
FOR_ITER_LIST STORE_FAST 1,904,640 0.4% 83.4%
RESUME_CHECK BUILD_LIST 1,904,640 0.4% 83.8%
STORE_SUBSCR_DICT POP_EXCEPT 1,904,640 0.4% 84.2%
LOAD_DEREF PUSH_NULL 1,874,160 0.3% 84.5%
LOAD_DEREF CALL_PY_GENERAL 1,873,920 0.3% 84.8%
CALL_NON_PY_GENERAL LOAD_FAST 1,843,320 0.3% 85.2%
LOAD_FAST BINARY_OP_SUBTRACT_FLOAT 1,843,280 0.3% 85.5%
STORE_FAST ENTER_EXECUTOR 1,843,200 0.3% 85.9%
BINARY_OP_ADD_FLOAT STORE_FAST 1,843,200 0.3% 86.2%
BINARY_OP_SUBTRACT_FLOAT BINARY_OP_ADD_FLOAT 1,843,200 0.3% 86.6%
UNPACK_SEQUENCE_TWO_TUPLE STORE_FAST_STORE_FAST 1,075,420 0.2% 86.8%
FOR_ITER UNPACK_SEQUENCE_TWO_TUPLE 1,075,240 0.2% 87.0%
FOR_ITER_TUPLE STORE_FAST 1,051,280 0.2% 87.2%
POP_JUMP_IF_FALSE LOAD_GLOBAL_BUILTIN 1,044,540 0.2% 87.3%
LOAD_FAST LOAD_CONST_IMMORTAL 1,014,120 0.2% 87.5%
GET_ITER FOR_ITER 1,013,800 0.2% 87.7%
LOAD_CONST_IMMORTAL CALL_BUILTIN_FAST 1,013,760 0.2% 87.9%
STORE_FAST_LOAD_FAST PUSH_NULL 986,440 0.2% 88.1%
FOR_ITER_TUPLE STORE_FAST_LOAD_FAST 986,440 0.2% 88.3%
RESUME_CHECK LOAD_DEREF 983,220 0.2% 88.5%
STORE_FAST LOAD_GLOBAL_BUILTIN 983,160 0.2% 88.6%
RETURN_VALUE INTERPRETER_EXIT 983,140 0.2% 88.8%
JUMP_FORWARD LOAD_GLOBAL_BUILTIN 983,040 0.2% 89.0%
LOAD_DEREF LOAD_CONST_IMMORTAL 983,040 0.2% 89.2%
CALL_BUILTIN_FAST TO_BOOL_BOOL 983,040 0.2% 89.4%
MAKE_CELL RESUME_CHECK 952,620 0.2% 89.5%

Predecessor/Successor Pairs

Top 5 predecessors and successors of each Tier 1 opcode.

This does not include the unspecialized instructions that occur after a specialized instruction deoptimizes.

CACHE

Successors and predecessors for CACHE
Successors Count Percentage
RESUME_CHECK 952,540 50.0%
POP_TOP 921,600 48.4%
COPY_FREE_VARS 30,780 1.6%

BINARY_SUBSCR

Successors and predecessors for BINARY_SUBSCR
Predecessors Count Percentage
LOAD_SMALL_INT 60 100.0%
Successors Count Percentage
BINARY_SUBSCR_TUPLE_INT 60 100.0%

CALL_FUNCTION_EX

Successors and predecessors for CALL_FUNCTION_EX
Predecessors Count Percentage
PUSH_NULL 1,905,000 67.4%
ENTER_EXECUTOR 921,580 32.6%
JUMP_BACKWARD_JIT 20 0.0%
Successors Count Percentage
MAKE_CELL 952,380 33.7%
RESUME_CHECK 921,720 32.6%
RETURN_VALUE 921,600 32.6%
STORE_FAST 30,720 1.1%

CHECK_EXC_MATCH

Successors and predecessors for CHECK_EXC_MATCH
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 2,856,960 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 2,856,960 100.0%

EXIT_INIT_CHECK

Successors and predecessors for EXIT_INIT_CHECK
Predecessors Count Percentage
RETURN_VALUE 80 100.0%
Successors Count Percentage
RETURN_VALUE 80 100.0%

GET_ITER

Successors and predecessors for GET_ITER
Predecessors Count Percentage
LOAD_FAST 4,700,160 68.5%
SWAP 952,320 13.9%
CALL_NON_PY_GENERAL 952,320 13.9%
CALL_BUILTIN_CLASS 95,740 1.4%
LOAD_CONST_MORTAL 95,560 1.4%
Successors Count Percentage
FOR_ITER_TUPLE 1,969,480 28.7%
FOR_ITER_LIST 1,904,640 27.8%
FOR_ITER 1,013,800 14.8%
LOAD_FAST_AND_CLEAR 952,320 13.9%
CALL_PY_EXACT_ARGS 921,600 13.4%

INTERPRETER_EXIT

Successors and predecessors for INTERPRETER_EXIT
Predecessors Count Percentage
RETURN_VALUE 983,140 51.6%
YIELD_VALUE 921,600 48.4%

MAKE_FUNCTION

Successors and predecessors for MAKE_FUNCTION
Predecessors Count Percentage
LOAD_CONST_MORTAL 922,020 100.0%
Successors Count Percentage
SET_FUNCTION_ATTRIBUTE 921,900 100.0%
STORE_NAME 120 0.0%

NOP

Successors and predecessors for NOP
Predecessors Count Percentage
RESUME_CHECK 5,713,920 99.5%
STORE_FAST 30,720 0.5%
POP_JUMP_IF_TRUE 180 0.0%
Successors Count Percentage
LOAD_FAST 5,744,820 100.0%

POP_EXCEPT

Successors and predecessors for POP_EXCEPT
Predecessors Count Percentage
STORE_SUBSCR_DICT 1,904,640 66.7%
POP_TOP 952,320 33.3%
Successors Count Percentage
LOAD_CONST_IMMORTAL 1,904,640 66.7%
JUMP_FORWARD 952,320 33.3%

POP_ITER

Successors and predecessors for POP_ITER
Predecessors Count Percentage
ENTER_EXECUTOR 187,040 66.1%
FOR_ITER 61,580 21.8%
FOR_ITER_TUPLE 34,120 12.1%
FOR_ITER_RANGE 180 0.1%
JUMP_BACKWARD_JIT 40 0.0%
Successors Count Percentage
LOAD_FAST 123,120 43.5%
JUMP_BACKWARD_JIT 81,920 29.0%
LOAD_CONST_MORTAL 30,720 10.9%
STORE_FAST 30,720 10.9%
ENTER_EXECUTOR 16,360 5.8%

POP_TOP

Successors and predecessors for POP_TOP
Predecessors Count Percentage
CALL_BUILTIN_O 12,595,200 52.4%
RETURN_VALUE 5,745,180 23.9%
POP_JUMP_IF_FALSE 2,856,960 11.9%
CALL_NON_PY_GENERAL 952,500 4.0%
CACHE 921,600 3.8%
Successors Count Percentage
ENTER_EXECUTOR 13,516,800 56.3%
LOAD_FAST 8,571,060 35.7%
POP_EXCEPT 952,320 4.0%
RESUME_CHECK 921,600 3.8%
LOAD_CONST_IMMORTAL 31,260 0.1%

PUSH_EXC_INFO

Successors and predecessors for PUSH_EXC_INFO
Predecessors Count Percentage
BINARY_SUBSCR_DICT 1,935,360 67.7%
ENTER_EXECUTOR 921,600 32.3%
Successors Count Percentage
LOAD_GLOBAL_BUILTIN 2,856,960 100.0%

PUSH_NULL

Successors and predecessors for PUSH_NULL
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 13,889,460 34.7%
LOAD_FAST_LOAD_FAST 7,495,680 18.7%
LOAD_FAST 5,985,560 15.0%
LOAD_GLOBAL_MODULE 5,744,880 14.4%
LOAD_ATTR_MODULE 2,096,360 5.2%
Successors Count Percentage
LOAD_FAST 18,682,200 46.7%
LOAD_FAST_LOAD_FAST 17,324,460 43.3%
CALL_NON_PY_GENERAL 1,939,160 4.9%
CALL_FUNCTION_EX 1,905,000 4.8%
LOAD_SMALL_INT 126,280 0.3%

RETURN_GENERATOR

Successors and predecessors for RETURN_GENERATOR
Predecessors Count Percentage
COPY_FREE_VARS 921,600 100.0%
Successors Count Percentage
STORE_FAST 921,600 100.0%

RETURN_VALUE

Successors and predecessors for RETURN_VALUE
Predecessors Count Percentage
ENTER_EXECUTOR 33,914,560 69.9%
LOAD_FAST 7,864,980 16.2%
LOAD_CONST_IMMORTAL 5,776,080 11.9%
CALL_FUNCTION_EX 921,600 1.9%
BUILD_TUPLE 30,720 0.1%
Successors Count Percentage
CALL_BUILTIN_O 12,595,200 26.0%
STORE_FAST 10,414,700 21.5%
LOAD_FAST_LOAD_FAST 7,495,680 15.5%
STORE_SUBSCR_DICT 7,495,680 15.5%
POP_TOP 5,745,180 11.8%

TO_BOOL

Successors and predecessors for TO_BOOL
Predecessors Count Percentage
LOAD_FAST 952,380 99.9%
TO_BOOL 340 0.0%
LOAD_ATTR_INSTANCE_VALUE 180 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 952,500 100.0%
TO_BOOL 340 0.0%
TO_BOOL_BOOL 60 0.0%

BINARY_OP

Successors and predecessors for BINARY_OP
Predecessors Count Percentage
LOAD_SMALL_INT 120 60.0%
BINARY_OP 40 20.0%
LOAD_FAST 40 20.0%
Successors Count Percentage
BUILD_MAP 60 30.0%
STORE_FAST 60 30.0%
BINARY_OP_SUBTRACT_FLOAT 40 20.0%
BINARY_OP 40 20.0%

BUILD_LIST

Successors and predecessors for BUILD_LIST
Predecessors Count Percentage
LOAD_FAST 2,826,480 49.5%
RESUME_CHECK 1,904,640 33.3%
SWAP 952,320 16.7%
LOAD_FAST_LOAD_FAST 30,720 0.5%
LOAD_SMALL_INT 60 0.0%
Successors Count Percentage
LOAD_FAST 2,856,960 50.0%
STORE_FAST 1,904,640 33.3%
SWAP 952,320 16.7%
LOAD_DEREF 180 0.0%
LOAD_CONST_MORTAL 120 0.0%

BUILD_MAP

Successors and predecessors for BUILD_MAP
Predecessors Count Percentage
RESUME_CHECK 61,480 49.9%
POP_JUMP_IF_NOT_NONE 30,740 25.0%
NOT_TAKEN 30,720 25.0%
BINARY_OP 60 0.0%
BUILD_MAP 60 0.0%
Successors Count Percentage
STORE_FAST 123,060 100.0%
BUILD_MAP 60 0.0%

BUILD_TUPLE

Successors and predecessors for BUILD_TUPLE
Predecessors Count Percentage
LOAD_FAST 921,960 96.8%
LOAD_ATTR 30,720 3.2%
LOAD_FAST_LOAD_FAST 180 0.0%
Successors Count Percentage
LOAD_CONST_MORTAL 921,900 96.8%
RETURN_VALUE 30,720 3.2%
CALL_METHOD_DESCRIPTOR_O 120 0.0%
CALL 60 0.0%
LOAD_CONST_IMMORTAL 60 0.0%

CALL

Successors and predecessors for CALL
Predecessors Count Percentage
PUSH_NULL 220 27.5%
LOAD_FAST_LOAD_FAST 180 22.5%
LOAD_CONST_IMMORTAL 140 17.5%
BUILD_TUPLE 60 7.5%
LOAD_FAST 60 7.5%
Successors Count Percentage
CALL_NON_PY_GENERAL 260 32.5%
CALL_PY_EXACT_ARGS 240 30.0%
CALL_BUILTIN_CLASS 60 7.5%
CALL_METHOD_DESCRIPTOR_NOARGS 60 7.5%
CALL_METHOD_DESCRIPTOR_O 60 7.5%

CALL_INTRINSIC_1

Successors and predecessors for CALL_INTRINSIC_1
Predecessors Count Percentage
LIST_EXTEND 952,500 100.0%
Successors Count Percentage
PUSH_NULL 952,500 100.0%

COPY_FREE_VARS

Successors and predecessors for COPY_FREE_VARS
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 921,780 96.8%
CACHE 30,780 3.2%
Successors Count Percentage
RETURN_GENERATOR 921,600 96.7%
RESUME_CHECK 30,900 3.2%
MAKE_CELL 60 0.0%

FOR_ITER

Successors and predecessors for FOR_ITER
Predecessors Count Percentage
GET_ITER 1,013,800 89.2%
JUMP_BACKWARD_JIT 123,020 10.8%
FOR_ITER 360 0.0%
Successors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 1,075,240 94.6%
POP_ITER 61,580 5.4%
FOR_ITER 360 0.0%

IS_OP

Successors and predecessors for IS_OP
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 7,618,600 88.9%
LOAD_CONST_IMMORTAL 952,500 11.1%
Successors Count Percentage
POP_JUMP_IF_FALSE 6,666,280 77.8%
STORE_FAST 952,500 11.1%
POP_JUMP_IF_TRUE 952,320 11.1%

JUMP_FORWARD

Successors and predecessors for JUMP_FORWARD
Predecessors Count Percentage
STORE_FAST 5,775,560 85.5%
POP_EXCEPT 952,320 14.1%
POP_TOP 30,720 0.5%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 5,683,200 84.1%
LOAD_GLOBAL_BUILTIN 983,040 14.5%
LOAD_GLOBAL_MODULE 61,460 0.9%
LOAD_FAST 30,900 0.5%

LIST_APPEND

Successors and predecessors for LIST_APPEND
Predecessors Count Percentage
RETURN_VALUE 2,856,960 100.0%
Successors Count Percentage
ENTER_EXECUTOR 2,805,760 98.2%
JUMP_BACKWARD_JIT 51,200 1.8%

LIST_EXTEND

Successors and predecessors for LIST_EXTEND
Predecessors Count Percentage
LOAD_FAST 952,320 100.0%
LOAD_DEREF 180 0.0%
LOAD_CONST_MORTAL 120 0.0%
Successors Count Percentage
CALL_INTRINSIC_1 952,500 100.0%
LOAD_CONST_IMMORTAL 120 0.0%

LOAD_ATTR

Successors and predecessors for LOAD_ATTR
Predecessors Count Percentage
LOAD_FAST 2,887,800 96.8%
LOAD_FAST_LOAD_FAST 64,900 2.2%
LOAD_GLOBAL_MODULE 30,920 1.0%
LOAD_ATTR 860 0.0%
Successors Count Percentage
STORE_FAST 1,904,640 63.8%
LOAD_METHOD_NO_DICT 952,320 31.9%
LOAD_SMALL_INT 64,840 2.2%
PUSH_NULL 30,720 1.0%
BUILD_TUPLE 30,720 1.0%

LOAD_DEREF

Successors and predecessors for LOAD_DEREF
Predecessors Count Percentage
LOAD_FAST 2,826,240 49.7%
RESUME_CHECK 983,220 17.3%
POP_JUMP_IF_FALSE 952,320 16.8%
STORE_FAST 921,600 16.2%
BUILD_LIST 180 0.0%
Successors Count Percentage
PUSH_NULL 1,874,160 33.0%
CALL_PY_GENERAL 1,873,920 33.0%
LOAD_CONST_IMMORTAL 983,040 17.3%
LOAD_GLOBAL_BUILTIN 952,320 16.8%
LIST_EXTEND 180 0.0%

LOAD_FAST

Successors and predecessors for LOAD_FAST
Predecessors Count Percentage
PUSH_NULL 18,682,200 24.9%
STORE_FAST 9,887,660 13.2%
POP_TOP 8,571,060 11.4%
NOP 5,744,820 7.7%
LOAD_FAST_LOAD_FAST 5,713,980 7.6%
Successors Count Percentage
CALL_BUILTIN_O 10,629,220 14.2%
LOAD_GLOBAL_BUILTIN 8,632,320 11.5%
RETURN_VALUE 7,864,980 10.5%
PUSH_NULL 5,985,560 8.0%
STORE_SUBSCR_DICT 5,713,920 7.6%

LOAD_FAST_AND_CLEAR

Successors and predecessors for LOAD_FAST_AND_CLEAR
Predecessors Count Percentage
GET_ITER 952,320 100.0%
Successors Count Percentage
SWAP 952,320 100.0%

LOAD_FAST_LOAD_FAST

Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors Count Percentage
PUSH_NULL 17,324,460 42.9%
RETURN_VALUE 7,495,680 18.6%
POP_JUMP_IF_FALSE 5,713,920 14.2%
JUMP_FORWARD 5,683,200 14.1%
STORE_FAST 3,143,720 7.8%
Successors Count Percentage
CALL_PY_GENERAL 10,627,140 26.3%
IS_OP 7,618,600 18.9%
PUSH_NULL 7,495,680 18.6%
CALL_PY_EXACT_ARGS 5,714,160 14.2%
LOAD_FAST 5,713,980 14.2%

LOAD_GLOBAL

Successors and predecessors for LOAD_GLOBAL
Predecessors Count Percentage
STORE_FAST 180 50.0%
RESUME_CHECK 120 33.3%
POP_ITER 40 11.1%
LOAD_CONST_IMMORTAL 20 5.6%
Successors Count Percentage
LOAD_GLOBAL_MODULE 280 77.8%
LOAD_GLOBAL_BUILTIN 80 22.2%

LOAD_METHOD

Successors and predecessors for LOAD_METHOD
Predecessors Count Percentage
LOAD_FAST 300 62.5%
LOAD_ATTR_INSTANCE_VALUE 120 25.0%
LOAD_METHOD 60 12.5%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 180 37.5%
LOAD_METHOD_NO_DICT 120 25.0%
LOAD_METHOD_WITH_VALUES 120 25.0%
LOAD_METHOD 60 12.5%

LOAD_SMALL_INT

Successors and predecessors for LOAD_SMALL_INT
Predecessors Count Percentage
PUSH_NULL 126,280 49.9%
LOAD_ATTR 64,840 25.6%
RESUME_CHECK 30,840 12.2%
STORE_ATTR_INSTANCE_VALUE 30,780 12.2%
LOAD_FAST 180 0.1%
Successors Count Percentage
CALL_BUILTIN_CLASS 95,560 37.7%
STORE_SUBSCR_LIST_INT 64,840 25.6%
LOAD_FAST 61,560 24.3%
CALL_BUILTIN_O 30,720 12.1%
BINARY_SUBSCR_TUPLE_INT 120 0.0%

MAKE_CELL

Successors and predecessors for MAKE_CELL
Predecessors Count Percentage
CALL_FUNCTION_EX 952,380 50.0%
MAKE_CELL 952,320 50.0%
CALL_PY_GENERAL 180 0.0%
COPY_FREE_VARS 60 0.0%
Successors Count Percentage
RESUME_CHECK 952,620 50.0%
MAKE_CELL 952,320 50.0%

POP_JUMP_IF_FALSE

Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors Count Percentage
IS_OP 6,666,280 43.1%
TO_BOOL_BOOL 4,792,320 31.0%
CHECK_EXC_MATCH 2,856,960 18.5%
TO_BOOL 952,500 6.2%
CONTAINS_OP_SET 184,660 1.2%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 5,713,920 36.9%
LOAD_FAST 3,932,640 25.4%
POP_TOP 2,856,960 18.5%
LOAD_GLOBAL_BUILTIN 1,044,540 6.7%
LOAD_DEREF 952,320 6.2%

POP_JUMP_IF_NONE

Successors and predecessors for POP_JUMP_IF_NONE
Predecessors Count Percentage
LOAD_FAST 4,909,780 100.0%
Successors Count Percentage
LOAD_FAST 4,848,340 98.7%
LOAD_GLOBAL_BUILTIN 30,720 0.6%
LOAD_GLOBAL_MODULE 30,720 0.6%

POP_JUMP_IF_NOT_NONE

Successors and predecessors for POP_JUMP_IF_NOT_NONE
Predecessors Count Percentage
LOAD_FAST 61,680 100.0%
Successors Count Percentage
LOAD_FAST 30,760 49.9%
BUILD_MAP 30,740 49.8%
LOAD_CONST_MORTAL 180 0.3%

POP_JUMP_IF_TRUE

Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors Count Percentage
IS_OP 952,320 100.0%
TO_BOOL_BOOL 180 0.0%
Successors Count Percentage
ENTER_EXECUTOR 921,600 96.8%
LOAD_GLOBAL_BUILTIN 30,720 3.2%
NOP 180 0.0%

SET_FUNCTION_ATTRIBUTE

Successors and predecessors for SET_FUNCTION_ATTRIBUTE
Predecessors Count Percentage
MAKE_FUNCTION 921,900 100.0%
Successors Count Percentage
LOAD_FAST 921,600 100.0%
STORE_FAST 180 0.0%
STORE_NAME 60 0.0%
LOAD_CONST_IMMORTAL 60 0.0%

STORE_ATTR

Successors and predecessors for STORE_ATTR
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 129,740 100.0%
STORE_ATTR 60 0.0%
Successors Count Percentage
LOAD_GLOBAL_BUILTIN 64,840 50.0%
LOAD_GLOBAL_MODULE 64,840 50.0%
STORE_ATTR 60 0.0%
STORE_ATTR_INSTANCE_VALUE 60 0.0%

STORE_DEREF

Successors and predecessors for STORE_DEREF
Predecessors Count Percentage
CALL_NON_PY_GENERAL 180 60.0%
LOAD_LOCALS 60 20.0%
CALL_BUILTIN_FAST_WITH_KEYWORDS 60 20.0%
Successors Count Percentage
LOAD_FAST 180 60.0%
LOAD_DEREF 60 20.0%
LOAD_CONST_MORTAL 60 20.0%

STORE_FAST

Successors and predecessors for STORE_FAST
Predecessors Count Percentage
RETURN_VALUE 10,414,700 45.5%
BUILD_LIST 1,904,640 8.3%
LOAD_ATTR 1,904,640 8.3%
FOR_ITER_LIST 1,904,640 8.3%
BINARY_OP_ADD_FLOAT 1,843,200 8.0%
Successors Count Percentage
LOAD_FAST 9,887,660 43.2%
JUMP_FORWARD 5,775,560 25.2%
LOAD_FAST_LOAD_FAST 3,143,720 13.7%
ENTER_EXECUTOR 1,843,200 8.0%
LOAD_GLOBAL_BUILTIN 983,160 4.3%

STORE_FAST_LOAD_FAST

Successors and predecessors for STORE_FAST_LOAD_FAST
Predecessors Count Percentage
FOR_ITER_TUPLE 986,440 100.0%
Successors Count Percentage
PUSH_NULL 986,440 100.0%

STORE_FAST_STORE_FAST

Successors and predecessors for STORE_FAST_STORE_FAST
Predecessors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 1,075,420 100.0%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 952,320 88.6%
LOAD_FAST 123,100 11.4%

SWAP

Successors and predecessors for SWAP
Predecessors Count Percentage
BUILD_LIST 952,320 50.0%
LOAD_FAST_AND_CLEAR 952,320 50.0%
Successors Count Percentage
GET_ITER 952,320 50.0%
BUILD_LIST 952,320 50.0%

UNPACK_SEQUENCE

Successors and predecessors for UNPACK_SEQUENCE
Predecessors Count Percentage
CALL_METHOD_DESCRIPTOR_NOARGS 60 100.0%
Successors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 60 100.0%

YIELD_VALUE

Successors and predecessors for YIELD_VALUE
Predecessors Count Percentage
RETURN_VALUE 921,600 100.0%
Successors Count Percentage
INTERPRETER_EXIT 921,600 100.0%

BINARY_OP_ADD_FLOAT

Successors and predecessors for BINARY_OP_ADD_FLOAT
Predecessors Count Percentage
BINARY_OP_SUBTRACT_FLOAT 1,843,200 100.0%
Successors Count Percentage
STORE_FAST 1,843,200 100.0%

BINARY_OP_SUBTRACT_FLOAT

Successors and predecessors for BINARY_OP_SUBTRACT_FLOAT
Predecessors Count Percentage
LOAD_FAST 1,843,280 100.0%
BINARY_OP 40 0.0%
Successors Count Percentage
BINARY_OP_ADD_FLOAT 1,843,200 100.0%
STORE_FAST 120 0.0%

BINARY_SUBSCR_DICT

Successors and predecessors for BINARY_SUBSCR_DICT
Predecessors Count Percentage
CALL_BUILTIN_O 5,744,640 100.0%
Successors Count Percentage
LOAD_METHOD_NO_DICT 3,809,280 66.3%
PUSH_EXC_INFO 1,935,360 33.7%

BINARY_SUBSCR_TUPLE_INT

Successors and predecessors for BINARY_SUBSCR_TUPLE_INT
Predecessors Count Percentage
LOAD_SMALL_INT 120 66.7%
BINARY_SUBSCR 60 33.3%
Successors Count Percentage
STORE_FAST 180 100.0%

CALL_ALLOC_AND_ENTER_INIT

Successors and predecessors for CALL_ALLOC_AND_ENTER_INIT
Predecessors Count Percentage
PUSH_NULL 40 33.3%
CALL 40 33.3%
LOAD_CONST_IMMORTAL 40 33.3%
Successors Count Percentage
RESUME_CHECK 80 66.7%
STORE_FAST 40 33.3%

CALL_BUILTIN_CLASS

Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors Count Percentage
LOAD_SMALL_INT 95,560 99.8%
LOAD_FAST 120 0.1%
CALL 60 0.1%
Successors Count Percentage
GET_ITER 95,740 100.0%

CALL_BUILTIN_FAST

Successors and predecessors for CALL_BUILTIN_FAST
Predecessors Count Percentage
LOAD_CONST_IMMORTAL 1,013,760 94.3%
LOAD_FAST 30,720 2.9%
LOAD_GLOBAL_BUILTIN 30,720 2.9%
Successors Count Percentage
TO_BOOL_BOOL 983,040 91.4%
STORE_FAST 92,160 8.6%

CALL_BUILTIN_O

Successors and predecessors for CALL_BUILTIN_O
Predecessors Count Percentage
RETURN_VALUE 12,595,200 54.2%
LOAD_FAST 10,629,220 45.7%
LOAD_SMALL_INT 30,720 0.1%
Successors Count Percentage
POP_TOP 12,595,200 54.2%
BINARY_SUBSCR_DICT 5,744,640 24.7%
STORE_SUBSCR_DICT 4,823,080 20.7%
STORE_FAST 92,220 0.4%

CALL_ISINSTANCE

Successors and predecessors for CALL_ISINSTANCE
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 952,320 100.0%
Successors Count Percentage
TO_BOOL_BOOL 952,320 100.0%

CALL_LIST_APPEND

Successors and predecessors for CALL_LIST_APPEND
Predecessors Count Percentage
LOAD_FAST 3,809,280 100.0%
Successors Count Percentage
LOAD_CONST_IMMORTAL 3,809,280 100.0%

CALL_METHOD_DESCRIPTOR_FAST

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors Count Percentage
LOAD_FAST 148,180 82.8%
LOAD_FAST_LOAD_FAST 30,760 17.2%
Successors Count Percentage
STORE_FAST 178,940 100.0%

CALL_METHOD_DESCRIPTOR_NOARGS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_NOARGS
Predecessors Count Percentage
LOAD_METHOD_NO_DICT 61,600 99.9%
CALL 60 0.1%
Successors Count Percentage
GET_ITER 61,480 99.7%
UNPACK_SEQUENCE_TWO_TUPLE 120 0.2%
UNPACK_SEQUENCE 60 0.1%

CALL_METHOD_DESCRIPTOR_O

Successors and predecessors for CALL_METHOD_DESCRIPTOR_O
Predecessors Count Percentage
BUILD_TUPLE 120 66.7%
CALL 60 33.3%
Successors Count Percentage
POP_TOP 180 100.0%

CALL_NON_PY_GENERAL

Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors Count Percentage
PUSH_NULL 1,939,160 50.4%
LOAD_FAST_LOAD_FAST 952,440 24.8%
LOAD_FAST 952,320 24.8%
CALL 260 0.0%
Successors Count Percentage
LOAD_FAST 1,843,320 48.0%
POP_TOP 952,500 24.8%
GET_ITER 952,320 24.8%
STORE_FAST 95,680 2.5%
RETURN_VALUE 180 0.0%

CALL_PY_EXACT_ARGS

Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 5,714,160 85.7%
GET_ITER 921,600 13.8%
LOAD_FAST 30,720 0.5%
CALL 240 0.0%
LOAD_ATTR_INSTANCE_VALUE 120 0.0%
Successors Count Percentage
RESUME_CHECK 5,745,180 86.2%
COPY_FREE_VARS 921,780 13.8%

CALL_PY_GENERAL

Successors and predecessors for CALL_PY_GENERAL
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 10,627,140 64.8%
ENTER_EXECUTOR 3,698,420 22.6%
LOAD_DEREF 1,873,920 11.4%
LOAD_FAST 157,000 1.0%
CALL_PY_GENERAL 42,040 0.3%
Successors Count Percentage
ENTER_EXECUTOR 13,277,880 81.0%
RESUME_CHECK 3,078,600 18.8%
CALL_PY_GENERAL 42,040 0.3%
MAKE_CELL 180 0.0%

CALL_TYPE_1

Successors and predecessors for CALL_TYPE_1
Predecessors Count Percentage
LOAD_FAST 184,660 100.0%
Successors Count Percentage
STORE_FAST 184,660 100.0%

CONTAINS_OP_SET

Successors and predecessors for CONTAINS_OP_SET
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 184,660 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 184,660 100.0%

FOR_ITER_LIST

Successors and predecessors for FOR_ITER_LIST
Predecessors Count Percentage
GET_ITER 1,904,640 100.0%
Successors Count Percentage
STORE_FAST 1,904,640 100.0%

FOR_ITER_RANGE

Successors and predecessors for FOR_ITER_RANGE
Predecessors Count Percentage
GET_ITER 95,740 51.0%
JUMP_BACKWARD_JIT 92,160 49.0%
Successors Count Percentage
STORE_FAST 187,720 99.9%
POP_ITER 180 0.1%

FOR_ITER_TUPLE

Successors and predecessors for FOR_ITER_TUPLE
Predecessors Count Percentage
GET_ITER 1,969,480 95.1%
JUMP_BACKWARD_JIT 102,360 4.9%
Successors Count Percentage
STORE_FAST 1,051,280 50.7%
STORE_FAST_LOAD_FAST 986,440 47.6%
POP_ITER 34,120 1.6%

JUMP_BACKWARD_JIT

Successors and predecessors for JUMP_BACKWARD_JIT
Predecessors Count Percentage
STORE_SUBSCR_DICT 122,880 38.7%
POP_ITER 81,920 25.8%
STORE_FAST 61,440 19.3%
LIST_APPEND 51,200 16.1%
POP_TOP 180 0.1%
Successors Count Percentage
FOR_ITER 123,020 38.7%
FOR_ITER_TUPLE 102,360 32.2%
FOR_ITER_RANGE 92,160 29.0%
POP_ITER 40 0.0%
CALL_FUNCTION_EX 20 0.0%

LOAD_ATTR_CLASS

Successors and predecessors for LOAD_ATTR_CLASS
Predecessors Count Percentage
LOAD_FAST 921,600 100.0%
Successors Count Percentage
PUSH_NULL 921,600 100.0%

LOAD_ATTR_INSTANCE_VALUE

Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST 420 58.3%
LOAD_ATTR 180 25.0%
LOAD_FAST_LOAD_FAST 120 16.7%
Successors Count Percentage
LOAD_METHOD_NO_DICT 240 33.3%
TO_BOOL 180 25.0%
LOAD_METHOD 120 16.7%
CALL_PY_EXACT_ARGS 120 16.7%
CALL 60 8.3%

LOAD_ATTR_MODULE

Successors and predecessors for LOAD_ATTR_MODULE
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 2,096,160 100.0%
LOAD_ATTR 200 0.0%
Successors Count Percentage
PUSH_NULL 2,096,360 100.0%

LOAD_CONST_IMMORTAL

Successors and predecessors for LOAD_CONST_IMMORTAL
Predecessors Count Percentage
CALL_LIST_APPEND 3,809,280 43.5%
POP_EXCEPT 1,904,640 21.7%
LOAD_FAST 1,014,120 11.6%
LOAD_DEREF 983,040 11.2%
POP_JUMP_IF_FALSE 921,600 10.5%
Successors Count Percentage
RETURN_VALUE 5,776,080 66.0%
CALL_BUILTIN_FAST 1,013,760 11.6%
IS_OP 952,500 10.9%
STORE_FAST 921,960 10.5%
LOAD_CONST_IMMORTAL 61,860 0.7%

LOAD_CONST_MORTAL

Successors and predecessors for LOAD_CONST_MORTAL
Predecessors Count Percentage
BUILD_TUPLE 921,900 90.5%
STORE_SUBSCR_LIST_INT 64,840 6.4%
POP_ITER 30,720 3.0%
POP_JUMP_IF_NOT_NONE 180 0.0%
STORE_NAME 180 0.0%
Successors Count Percentage
MAKE_FUNCTION 922,020 90.6%
GET_ITER 95,560 9.4%
STORE_FAST 180 0.0%
LIST_EXTEND 120 0.0%
LOAD_CONST_IMMORTAL 120 0.0%

LOAD_GLOBAL_BUILTIN

Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors Count Percentage
LOAD_FAST 8,632,320 48.7%
PUSH_EXC_INFO 2,856,960 16.1%
LOAD_FAST_LOAD_FAST 1,966,120 11.1%
POP_JUMP_IF_FALSE 1,044,540 5.9%
STORE_FAST 983,160 5.5%
Successors Count Percentage
PUSH_NULL 13,889,460 78.3%
CHECK_EXC_MATCH 2,856,960 16.1%
CALL_ISINSTANCE 952,320 5.4%
CALL_BUILTIN_FAST 30,720 0.2%
CALL_BUILTIN_FAST_WITH_KEYWORDS 40 0.0%

LOAD_GLOBAL_MODULE

Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors Count Percentage
STORE_SUBSCR_DICT 5,713,920 69.6%
LOAD_FAST 2,027,860 24.7%
STORE_FAST 187,960 2.3%
STORE_ATTR 64,840 0.8%
JUMP_FORWARD 61,460 0.7%
Successors Count Percentage
PUSH_NULL 5,744,880 70.0%
LOAD_ATTR_MODULE 2,096,160 25.5%
CONTAINS_OP_SET 184,660 2.3%
LOAD_METHOD_NO_DICT 148,180 1.8%
LOAD_ATTR 30,920 0.4%

LOAD_METHOD_NO_DICT

Successors and predecessors for LOAD_METHOD_NO_DICT
Predecessors Count Percentage
BINARY_SUBSCR_DICT 3,809,280 76.1%
LOAD_ATTR 952,320 19.0%
LOAD_GLOBAL_MODULE 148,180 3.0%
LOAD_FAST 92,240 1.8%
LOAD_ATTR_INSTANCE_VALUE 240 0.0%
Successors Count Percentage
LOAD_FAST 4,909,780 98.1%
CALL_METHOD_DESCRIPTOR_NOARGS 61,600 1.2%
LOAD_FAST_LOAD_FAST 30,940 0.6%
CALL 60 0.0%

LOAD_METHOD_WITH_VALUES

Successors and predecessors for LOAD_METHOD_WITH_VALUES
Predecessors Count Percentage
LOAD_FAST 30,960 99.4%
LOAD_METHOD 120 0.4%
LOAD_METHOD_WITH_VALUES 60 0.2%
Successors Count Percentage
LOAD_FAST 30,900 99.2%
LOAD_FAST_LOAD_FAST 180 0.6%
LOAD_METHOD_WITH_VALUES 60 0.2%

RESUME_CHECK

Successors and predecessors for RESUME_CHECK
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 5,745,180 45.5%
CALL_PY_GENERAL 3,078,600 24.4%
MAKE_CELL 952,620 7.5%
CACHE 952,540 7.5%
CALL_FUNCTION_EX 921,720 7.3%
Successors Count Percentage
NOP 5,713,920 45.2%
LOAD_FAST 2,826,780 22.4%
BUILD_LIST 1,904,640 15.1%
LOAD_DEREF 983,220 7.8%
POP_TOP 921,600 7.3%

STORE_ATTR_INSTANCE_VALUE

Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST 61,560 99.5%
LOAD_FAST_LOAD_FAST 120 0.2%
STORE_ATTR_INSTANCE_VALUE 120 0.2%
STORE_ATTR 60 0.1%
Successors Count Percentage
LOAD_CONST_IMMORTAL 30,840 49.9%
LOAD_SMALL_INT 30,780 49.8%
LOAD_FAST_LOAD_FAST 120 0.2%
STORE_ATTR_INSTANCE_VALUE 120 0.2%

STORE_SUBSCR_DICT

Successors and predecessors for STORE_SUBSCR_DICT
Predecessors Count Percentage
RETURN_VALUE 7,495,680 41.6%
LOAD_FAST 5,713,920 31.7%
CALL_BUILTIN_O 4,823,080 26.7%
Successors Count Percentage
ENTER_EXECUTOR 7,372,800 40.9%
LOAD_GLOBAL_MODULE 5,713,920 31.7%
LOAD_FAST 2,918,440 16.2%
POP_EXCEPT 1,904,640 10.6%
JUMP_BACKWARD_JIT 122,880 0.7%

STORE_SUBSCR_LIST_INT

Successors and predecessors for STORE_SUBSCR_LIST_INT
Predecessors Count Percentage
LOAD_SMALL_INT 64,840 100.0%
Successors Count Percentage
LOAD_CONST_MORTAL 64,840 100.0%

TO_BOOL_BOOL

Successors and predecessors for TO_BOOL_BOOL
Predecessors Count Percentage
LOAD_FAST 2,857,080 59.6%
CALL_BUILTIN_FAST 983,040 20.5%
CALL_ISINSTANCE 952,320 19.9%
TO_BOOL 60 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 4,792,320 100.0%
POP_JUMP_IF_TRUE 180 0.0%

UNPACK_SEQUENCE_TWO_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TWO_TUPLE
Predecessors Count Percentage
FOR_ITER 1,075,240 100.0%
CALL_METHOD_DESCRIPTOR_NOARGS 120 0.0%
UNPACK_SEQUENCE 60 0.0%
Successors Count Percentage
STORE_FAST_STORE_FAST 1,075,420 100.0%

ENTER_EXECUTOR

Successors and predecessors for ENTER_EXECUTOR
Predecessors Count Percentage
POP_TOP 13,516,800 33.9%
CALL_PY_GENERAL 13,277,880 33.3%
STORE_SUBSCR_DICT 7,372,800 18.5%
LIST_APPEND 2,805,760 7.0%
STORE_FAST 1,843,200 4.6%
Successors Count Percentage
RETURN_VALUE 33,914,560 85.1%
CALL_PY_GENERAL 3,698,420 9.3%
PUSH_EXC_INFO 921,600 2.3%
CALL_FUNCTION_EX 921,580 2.3%
POP_ITER 187,040 0.5%

LOAD_BUILD_CLASS

Successors and predecessors for LOAD_BUILD_CLASS
Predecessors Count Percentage
RESUME_CHECK 60 100.0%
Successors Count Percentage
PUSH_NULL 60 100.0%

LOAD_LOCALS

Successors and predecessors for LOAD_LOCALS
Predecessors Count Percentage
STORE_NAME 60 100.0%
Successors Count Percentage
STORE_DEREF 60 100.0%

LOAD_NAME

Successors and predecessors for LOAD_NAME
Predecessors Count Percentage
RESUME_CHECK 60 100.0%
Successors Count Percentage
STORE_NAME 60 100.0%

STORE_NAME

Successors and predecessors for STORE_NAME
Predecessors Count Percentage
MAKE_FUNCTION 120 25.0%
LOAD_CONST_MORTAL 120 25.0%
LOAD_FAST 60 12.5%
LOAD_SMALL_INT 60 12.5%
SET_FUNCTION_ATTRIBUTE 60 12.5%
Successors Count Percentage
LOAD_CONST_MORTAL 180 37.5%
LOAD_FAST 120 25.0%
LOAD_LOCALS 60 12.5%
LOAD_SMALL_INT 60 12.5%
LOAD_CONST_IMMORTAL 60 12.5%

CALL_BUILTIN_FAST_WITH_KEYWORDS

Successors and predecessors for CALL_BUILTIN_FAST_WITH_KEYWORDS
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 40 66.7%
CALL 20 33.3%
Successors Count Percentage
STORE_DEREF 60 100.0%

TO_BOOL_NONE

Successors and predecessors for TO_BOOL_NONE
Predecessors Count Percentage
LOAD_FAST 30,720 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 30,720 100.0%

NOT_TAKEN

Successors and predecessors for NOT_TAKEN
Predecessors Count Percentage
ENTER_EXECUTOR 30,720 100.0%
Successors Count Percentage
BUILD_MAP 30,720 100.0%

CALL_TUPLE_1

Successors and predecessors for CALL_TUPLE_1
Predecessors Count Percentage
LOAD_FAST 30,720 100.0%
Successors Count Percentage
STORE_FAST 30,720 100.0%

Specialization stats

Specialization stats by family

BINARY_OP

specialization stats for BINARY_OP family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

120 0.0%
hit

Specialized instructions that complete.

3,686,460 100.0%
miss

Specialized instructions that deopt.

60 0.0%
Success Count Ratio
Success 40 50.0%
Failure 40 50.0%
Failure kind Count Ratio
multiply different types 40 100.0%

BINARY_SUBSCR

specialization stats for BINARY_SUBSCR family
Kind Count Ratio
hit

Specialized instructions that complete.

6,666,420 100.0%
Success Count Ratio
Success 60 100.0%
Failure 0 0.0%

CALL

specialization stats for CALL family
Kind Count Ratio
hit

Specialized instructions that complete.

106,384,760 97.9%
miss

Specialized instructions that deopt.

2,228,120 2.1%
Success Count Ratio
Success 42,840 100.0%
Failure 0 0.0%

CONTAINS_OP

specialization stats for CONTAINS_OP family
Kind Count Ratio
hit

Specialized instructions that complete.

34,222,080 100.0%

FOR_ITER

specialization stats for FOR_ITER family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

1,136,820 21.4%
hit

Specialized instructions that complete.

4,164,380 78.6%
Success Count Ratio
Success 0 0.0%
Failure 360 100.0%
Failure kind Count Ratio
zip 280 77.8%
dict items 80 22.2%

LOAD_ATTR

specialization stats for LOAD_ATTR family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

2,983,240 10.6%
hit

Specialized instructions that complete.

25,134,680 89.4%
Success Count Ratio
Success 380 30.6%
Failure 860 69.4%
Failure kind Count Ratio
method 540 62.8%
overriding descriptor 320 37.2%

LOAD_GLOBAL

specialization stats for LOAD_GLOBAL family
Kind Count Ratio
hit

Specialized instructions that complete.

25,934,320 100.0%
Success Count Ratio
Success 360 100.0%
Failure 0 0.0%

LOAD_METHOD

specialization stats for LOAD_METHOD family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

180 4.9%
miss

Specialized instructions that deopt.

3,180 86.9%
Success Count Ratio
Success 300 83.3%
Failure 60 16.7%

STORE_ATTR

specialization stats for STORE_ATTR family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

129,680 67.7%
hit

Specialized instructions that complete.

55,500 29.0%
miss

Specialized instructions that deopt.

6,360 3.3%
Success Count Ratio
Success 180 75.0%
Failure 60 25.0%
Failure kind Count Ratio
split dict 60 100.0%

STORE_SUBSCR

specialization stats for STORE_SUBSCR family
Kind Count Ratio
hit

Specialized instructions that complete.

21,258,240 100.0%

TO_BOOL

specialization stats for TO_BOOL family
Kind Count Ratio
deferred

Lists the number of "deferred" (i.e. not specialized) instructions executed.

952,500 11.2%
hit

Specialized instructions that complete.

7,588,020 88.8%
Success Count Ratio
Success 60 15.0%
Failure 340 85.0%
Failure kind Count Ratio
tuple 280 82.4%
sequence 60 17.6%

UNPACK_SEQUENCE

specialization stats for UNPACK_SEQUENCE family
Kind Count Ratio
hit

Specialized instructions that complete.

10,291,380 100.0%
Success Count Ratio
Success 60 100.0%
Failure 0 0.0%

Specialization effectiveness

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. LOAD_FAST.

382,502,060 71.0%
Not specialized

Instructions that could be specialized but aren't, e.g. LOAD_ATTR, BINARY_SLICE.

5,206,320 1.0%
Specialized hits

Specialized instructions, e.g. LOAD_ATTR_MODULE that complete.

148,861,960 27.6%
Specialized misses

Specialized instructions, e.g. LOAD_ATTR_MODULE that deopt.

2,238,140 0.4%

Deferred by instruction

Breakdown of deferred (not specialized) instruction counts by family
Name Count Ratio
LOAD_ATTR 2,983,240 57.3%
FOR_ITER 1,136,820 21.9%
TO_BOOL 952,500 18.3%
STORE_ATTR 129,680 2.5%
LOAD_METHOD 180 0.0%
BINARY_OP 120 0.0%
BINARY_SLICE 0 0.0%
STORE_SLICE 0 0.0%
CACHE 0 0.0%
BINARY_SUBSCR 0 0.0%

Misses by instruction

Breakdown of misses (specialized deopts) instruction counts by family
Name Count Ratio
CALL_PY_GENERAL 2,228,080 99.5%
STORE_ATTR_INSTANCE_VALUE 6,360 0.3%
LOAD_METHOD_WITH_VALUES 3,180 0.1%
RESUME 420 0.0%
RESUME_CHECK 420 0.0%
BINARY_OP_ADD_FLOAT 60 0.0%
CALL_ALLOC_AND_ENTER_INIT 40 0.0%
CACHE 0 0.0%
CALL_FUNCTION_EX 0 0.0%
CHECK_EXC_MATCH 0 0.0%

Call stats

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 1,904,920 3.8%
Calls to Python functions inlined 48,446,600 96.2%
Calls via PyEval_EvalFrame (total) 1,904,920 3.8%
Calls via PyEval_EvalFrame (vector) 61,720 0.1%
Calls via PyEval_EvalFrame (generator) 1,843,200 3.7%
Calls via PyEval_EvalFrame (legacy) 0 0.0%
Calls via PyEval_EvalFrame (function vectorcall) 61,660 0.1%
Calls via PyEval_EvalFrame (build class) 60 0.0%
Calls via PyEval_EvalFrame (slot) 0 0.0%
Calls via PyEval_EvalFrame (function ex) 1,874,100 3.7%
Calls via PyEval_EvalFrame (api) 0 0.0%
Calls via PyEval_EvalFrame (method) 0 0.0%
Frame objects created 2,856,960 5.7%
Frames pushed 48,508,400 96.3%

Object stats

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 34,056,840 35.2%
Frees to freelist 34,056,320
Allocations 62,610,380 64.8%
Allocations to 512 bytes 62,610,040 64.8%
Allocations to 4 kbytes 340 0.0%
Allocations over 4 kbytes 0 0.0%
Frees 65,466,256
Inline values 952,440
Interpreter mortal increfs 313,413,780 27.5%
Interpreter mortal decrefs 440,603,480 35.2%
Mortal increfs 493,478,604 43.3%
Mortal decrefs 453,496,238 36.2%
Interpreter immortal increfs 36,514,540 3.2%
Interpreter immortal decrefs 112,578,380 9.0%
Immortal increfs 296,016,742 26.0%
Immortal decrefs 246,343,774 19.7%
Materialize dict (on request) 952,440 100.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 5,260,574
Method cache misses 226
Method cache collisions 92,724
Method cache dunder hits 13,121,166
Method cache dunder misses 92,674

GC stats

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

Optimization (Tier 2) stats

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.

9,580
Traces created

The number of traces that were successfully created.

120 1.3%
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.

8,300 86.6%
Trace too long

A trace is truncated because it is longer than the instruction buffer.

0 0.0%
Trace too short

A potential trace is abandoned because it it too short.

9,460 98.7%
Inner loop found

A trace is truncated because it has an inner loop

0 0.0%
Recursive call

A trace is truncated because it has a recursive call.

0 0.0%
Low confidence

A trace is abandoned because the likelihood of the jump to top being taken is too low.

0 0.0%
Executors invalidated

The number of executors that were invalidated due to watched dictionary changes.

0 0.0%
Traces executed

The number of traces that were executed

84,131,140
Uops executed

The total number of uops (micro-operations) that were executed

1,899,139,240 2,257.4%
Count Ratio
Optimizer attempts

The number of times the trace optimizer (_Py_uop_analyze_and_optimize) was run.

120
Optimizer successes

The number of traces that were successfully optimized.

120 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

trace length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 0 0.0%
<= 8 20 16.7%
<= 16 0 0.0%
<= 32 60 50.0%
<= 64 20 16.7%
<= 128 20 16.7%

Optimized trace length histogram

optimized trace length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 20 16.7%
<= 8 0 0.0%
<= 16 0 0.0%
<= 32 80 66.7%
<= 64 0 0.0%
<= 128 20 16.7%

Trace run length histogram

trace run length histogram
Range Count Ratio
<= 1 0 0.0%

Uop execution stats

uop execution stats
Name Count Self Cumulative Miss ratio
_SET_IP 214,263,560 11.3% 11.3%
_CHECK_VALIDITY 179,612,820 9.5% 20.7%
_PUSH_NULL 94,516,780 5.0% 25.7%
_CHECK_VALIDITY_AND_SET_IP 89,331,800 4.7% 30.4%
_MAKE_WARM 85,974,340 4.5% 34.9%
_START_EXECUTOR 84,131,140 4.4% 39.4%
_LOAD_FAST_0 83,778,100 4.4% 43.8%
_CHECK_PERIODIC 65,667,640 3.5% 47.2%
_LOAD_CONST_INLINE 63,339,420 3.3% 50.6%
_EXIT_TRACE 59,660,380 3.1% 53.7%
_LOAD_FAST_3 51,611,240 2.7% 56.4%
_CHECK_FUNCTION 51,058,240 2.7% 59.1%
_LOAD_FAST_1 48,539,440 2.6% 61.7%
_LOAD_CONST_INLINE_BORROW 40,515,940 2.1% 63.8%
_STORE_FAST_3 39,594,300 2.1% 65.9%
_LOAD_FAST_2 37,737,760 2.0% 67.9%
_GUARD_IS_TRUE_POP 37,263,000 2.0% 69.9% 26.3%
_TIER2_RESUME_CHECK 36,802,540 1.9% 71.8% 0.0%
_CALL_TYPE_1 34,037,420 1.8% 73.6%
_CONTAINS_OP_SET 34,037,420 1.8% 75.4%
_LOAD_FAST_5 30,873,500 1.6% 77.0%
_STORE_FAST_5 28,630,960 1.5% 78.5%
_CHECK_FUNCTION_VERSION 25,499,580 1.3% 79.9% 14.5%
_DYNAMIC_EXIT 23,548,800 1.2% 81.1%
_PUSH_FRAME 23,548,800 1.2% 82.3%
_PY_FRAME_GENERAL 23,548,800 1.2% 83.6%
_SAVE_RETURN_OFFSET 23,548,800 1.2% 84.8%
_LOAD_FAST_4 19,445,720 1.0% 85.8%
_STORE_FAST_4 18,923,420 1.0% 86.8%
_LOAD_METHOD_NO_DICT 17,085,660 0.9% 87.7%
_GUARD_IS_NOT_NONE_POP 15,273,220 0.8% 88.5% 12.3%
_LOAD_FAST_6 14,817,880 0.8% 89.3%
_CALL_METHOD_DESCRIPTOR_FAST 14,320,900 0.8% 90.1%
_CALL_BUILTIN_O 14,315,420 0.8% 90.8%
_FOR_ITER_TIER_TWO 12,902,400 0.7% 91.5% 28.6%
_GUARD_NOT_EXHAUSTED_LIST 12,595,200 0.7% 92.2% 15.1%
_ITER_CHECK_LIST 12,595,200 0.7% 92.8%
_STORE_FAST_6 10,999,780 0.6% 93.4%
_ITER_NEXT_LIST 10,690,560 0.6% 94.0%
_GUARD_TYPE_VERSION 10,598,320 0.6% 94.5%
_IS_OP 9,676,760 0.5% 95.0%
_UNPACK_SEQUENCE_TWO_TUPLE 9,215,960 0.5% 95.5%
_POP_TOP 8,779,800 0.5% 96.0%
_GUARD_IS_FALSE_POP 8,294,380 0.4% 96.4%
_GUARD_NOT_EXHAUSTED_TUPLE 5,085,920 0.3% 96.7% 45.8%
_ITER_CHECK_TUPLE 5,085,920 0.3% 97.0%
_BUILD_MAP 4,607,940 0.2% 97.2%
_CALL_BUILTIN_FAST 3,686,400 0.2% 97.4%
_GET_ITER 3,188,040 0.2% 97.6%
_LOAD_FAST 3,123,240 0.2% 97.7%
_LOAD_FAST_7 2,764,800 0.1% 97.9%
_GUARD_IS_NONE_POP 2,764,780 0.1% 98.0% 33.3%
_STORE_SUBSCR_DICT 2,764,760 0.1% 98.2%
_CALL_METHOD_DESCRIPTOR_NOARGS 2,764,760 0.1% 98.3%
_ITER_NEXT_TUPLE 2,754,600 0.1% 98.5%
_STORE_FAST 2,201,640 0.1% 98.6%
_TO_BOOL_BOOL 1,843,200 0.1% 98.7%
_JUMP_TO_TOP 1,843,200 0.1% 98.8%
_STORE_FAST_7 1,843,200 0.1% 98.9%
_STORE_FAST_1 1,843,180 0.1% 99.0%
_CALL_NON_PY_GENERAL 1,747,640 0.1% 99.1%
_CHECK_FUNCTION_VERSION_INLINE 1,747,640 0.1% 99.1%
_CHECK_IS_NOT_PY_CALLABLE 1,747,640 0.1% 99.2%
_GUARD_NOT_EXHAUSTED_RANGE 1,409,720 0.1% 99.3% 8.7%
_ITER_CHECK_RANGE 1,409,720 0.1% 99.4%
_LOAD_ATTR 1,317,560 0.1% 99.5%
_ITER_NEXT_RANGE 1,286,840 0.1% 99.5%
_LOAD_SMALL_INT 948,920 0.0% 99.6%
_BUILD_LIST 921,600 0.0% 99.6%
_CALL_INTRINSIC_1 921,600 0.0% 99.7%
_LIST_EXTEND 921,600 0.0% 99.7%
_BINARY_SUBSCR_DICT 921,600 0.0% 99.8%
_CALL_ISINSTANCE 921,600 0.0% 99.8%
_TO_BOOL_NONE 921,600 0.0% 99.9%
_ERROR_POP_N 921,600 0.0% 99.9%
_STORE_ATTR 884,080 0.0% 100.0%
_STORE_SUBSCR_LIST_INT 395,960 0.0% 100.0%
_LOAD_SMALL_INT_0 395,960 0.0% 100.0%
_CALL_BUILTIN_CLASS 27,320 0.0% 100.0%
_DEOPT 360 0.0% 100.0%

Pair counts

Pair counts for top 100 Non-JIT uop pairs

Pairs of specialized operations that deoptimize and are then followed by the corresponding unspecialized instruction are not counted as pairs.

Unsupported opcodes

unsupported opcodes
Opcode Count
CALL_FUNCTION_EX 240
CALL 240

Optimizer errored out with opcode

Optimization stopped after encountering this opcode

Rare events

Counts of rare/unlikely events
Event Count
set class

Setting an object's class, obj.__class__ = ...

0
set bases

Setting the bases of a class, cls.__bases__ = ...

0
set eval frame func

Setting the PEP 523 frame eval function _PyInterpreterState_SetFrameEvalFunc()

0
builtin dict

Modifying the builtins, __builtins__.__dict__[var] = ...

0
func modification

Modifying a function, e.g. func.__defaults__ = ..., etc.

0
watched dict modification

A watched dict has been modified

0
watched globals modification

A watched globals() dict has been modified

0

Meta stats

Meta statistics
Count
Number of data files 60

Stats gathered on: 2025-01-22