Skip to content

Latest commit

 

History

History
10206 lines (9409 loc) · 189 KB

bm-20240615-azure-x86_64-python-a19bb261a327e1008f21-3.13.0b2+-a19bb26-pystats-deepcopy.md

File metadata and controls

10206 lines (9409 loc) · 189 KB

Pystats results

  • benchmark: deepcopy
  • fork: python
  • ref: a19bb261a327e1008f219b62f6465941c981899b
  • commit hash: a19bb26
  • commit date: 2024-06-15T19:10:50+00: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 240,801,580 18.5% 18.5%
STORE_FAST 126,204,280 9.7% 28.2%
LOAD_FAST_LOAD_FAST 112,805,680 8.7% 36.9%
RETURN_VALUE 63,735,600 4.9% 41.8%
LOAD_GLOBAL_BUILTIN 55,742,960 4.3% 46.1%
ENTER_EXECUTOR 52,524,060 4.0% 50.1%
RESUME_CHECK 50,721,820 3.9% 54.0%
IS_OP 48,048,620 3.7% 57.7%
PUSH_NULL 45,167,440 3.5% 61.2%
LOAD_ATTR_METHOD_NO_DICT 40,365,640 3.1% 64.3%
CALL_BUILTIN_O 39,795,620 3.1% 67.4%
CALL_METHOD_DESCRIPTOR_FAST 35,199,220 2.7% 70.1%
POP_JUMP_IF_FALSE 33,391,760 2.6% 72.6%
POP_TOP 32,896,880 2.5% 75.2%
CALL_PY_GENERAL 28,115,920 2.2% 77.3% 28.5%
JUMP_FORWARD 27,955,620 2.2% 79.5%
POP_JUMP_IF_NONE 23,868,620 1.8% 81.3%
LOAD_GLOBAL_MODULE 22,692,480 1.7% 83.1%
STORE_SUBSCR_DICT 20,284,360 1.6% 84.6%
CALL_PY_EXACT_ARGS 19,032,440 1.5% 86.1% 23.8%
POP_JUMP_IF_NOT_NONE 18,844,640 1.4% 87.5%
CALL_TYPE_1 17,584,900 1.4% 88.9%
GET_ITER 10,323,980 0.8% 89.7%
RETURN_CONST 8,929,520 0.7% 90.4%
BUILD_LIST 7,586,560 0.6% 91.0%
LOAD_DEREF 7,578,400 0.6% 91.5%
TO_BOOL_BOOL 6,324,340 0.5% 92.0%
LOAD_CONST 5,534,520 0.4% 92.4%
LOAD_ATTR 5,091,380 0.4% 92.8%
CALL_LIST_APPEND 5,078,980 0.4% 93.2%
FOR_ITER 5,042,040 0.4% 93.6%
STORE_FAST_STORE_FAST 5,038,820 0.4% 94.0%
UNPACK_SEQUENCE_TWO_TUPLE 5,038,720 0.4% 94.4%
CALL_NON_PY_GENERAL 4,957,120 0.4% 94.8%
LOAD_ATTR_MODULE 4,917,580 0.4% 95.2%
CHECK_EXC_MATCH 3,809,280 0.3% 95.4%
POP_EXCEPT 3,809,280 0.3% 95.7%
PUSH_EXC_INFO 3,809,280 0.3% 96.0%
BUILD_MAP 3,780,160 0.3% 96.3%
CALL_FUNCTION_EX 3,768,800 0.3% 96.6%
CALL_METHOD_DESCRIPTOR_NOARGS 3,768,260 0.3% 96.9%
FOR_ITER_TUPLE 2,624,420 0.2% 97.1%
FOR_ITER_LIST 2,540,120 0.2% 97.3%
INTERPRETER_EXIT 2,539,700 0.2% 97.5%
MAKE_CELL 2,539,600 0.2% 97.7%
SWAP 2,539,520 0.2% 97.9%
BINARY_OP_SUBTRACT_FLOAT 2,457,680 0.2% 98.1%
BINARY_OP_ADD_FLOAT 2,457,560 0.2% 98.3% 0.0%
STORE_ATTR_INSTANCE_VALUE 1,459,840 0.1% 98.4% 94.8%
LIST_APPEND 1,351,900 0.1% 98.5%
CALL_BUILTIN_FAST 1,303,080 0.1% 98.6%
CALL 1,274,380 0.1% 98.7%
TO_BOOL 1,271,080 0.1% 98.8%
STORE_FAST_LOAD_FAST 1,270,200 0.1% 98.9%
COPY_FREE_VARS 1,270,080 0.1% 99.0%
BUILD_TUPLE 1,270,000 0.1% 99.1%
POP_JUMP_IF_TRUE 1,270,000 0.1% 99.2%
LOAD_FAST_AND_CLEAR 1,269,760 0.1% 99.3%
LIST_EXTEND 1,237,580 0.1% 99.4%
CALL_INTRINSIC_1 1,237,420 0.1% 99.5%
CALL_ISINSTANCE 1,237,120 0.1% 99.5%
MAKE_FUNCTION 1,229,120 0.1% 99.6%
SET_FUNCTION_ATTRIBUTE 1,228,960 0.1% 99.7%
RETURN_GENERATOR 1,228,800 0.1% 99.8%
YIELD_VALUE 1,228,800 0.1% 99.9%
NOP 176,340 0.0% 99.9%
BINARY_SUBSCR_DICT 175,980 0.0% 100.0%
FOR_ITER_RANGE 124,960 0.0% 100.0%
CALL_BUILTIN_CLASS 123,360 0.0% 100.0%
LOAD_ATTR_INSTANCE_VALUE 123,060 0.0% 100.0%
STORE_SUBSCR_LIST_INT 123,060 0.0% 100.0%
LOAD_ATTR_METHOD_WITH_VALUES 41,000 0.0% 100.0% 7.8%
CALL_TUPLE_1 40,940 0.0% 100.0%
TO_BOOL_NONE 8,340 0.0% 100.0%
JUMP_BACKWARD 5,440 0.0% 100.0%
LOAD_GLOBAL 3,100 0.0% 100.0%
STORE_SUBSCR 680 0.0% 100.0%
RESUME 660 0.0% 100.0%
STORE_NAME 560 0.0% 100.0%
BINARY_OP 440 0.0% 100.0%
STORE_ATTR 300 0.0% 100.0%
BINARY_SUBSCR 200 0.0% 100.0%
UNPACK_SEQUENCE 200 0.0% 100.0%
BUILD_CONST_KEY_MAP 160 0.0% 100.0%
CALL_ALLOC_AND_ENTER_INIT 120 0.0% 100.0% 33.3%
EXIT_INIT_CHECK 80 0.0% 100.0%
LOAD_BUILD_CLASS 80 0.0% 100.0%
LOAD_NAME 80 0.0% 100.0%
STORE_DEREF 80 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
STORE_FAST LOAD_FAST 50,218,040 3.9% 3.9%
LOAD_GLOBAL_BUILTIN LOAD_FAST 49,295,360 3.8% 7.7%
LOAD_FAST_LOAD_FAST IS_OP 46,778,860 3.6% 11.3%
LOAD_FAST RETURN_VALUE 41,348,960 3.2% 14.4%
CALL_METHOD_DESCRIPTOR_FAST STORE_FAST 35,199,220 2.7% 17.1%
RETURN_VALUE STORE_FAST 32,932,660 2.5% 19.7%
PUSH_NULL LOAD_FAST_LOAD_FAST 32,694,960 2.5% 22.2%
LOAD_FAST CALL_BUILTIN_O 29,137,120 2.2% 24.4%
CALL_PY_GENERAL RESUME_CHECK 27,964,820 2.2% 26.6%
LOAD_FAST PUSH_NULL 27,706,280 2.1% 28.7%
STORE_FAST JUMP_FORWARD 26,644,880 2.0% 30.8%
JUMP_FORWARD LOAD_FAST_LOAD_FAST 26,624,740 2.0% 32.8%
STORE_FAST LOAD_FAST_LOAD_FAST 25,439,880 2.0% 34.8%
LOAD_FAST POP_JUMP_IF_NONE 23,868,620 1.8% 36.6%
POP_JUMP_IF_NONE LOAD_FAST 23,854,400 1.8% 38.4%
IS_OP ENTER_EXECUTOR 23,531,700 1.8% 40.2%
RESUME_CHECK LOAD_FAST 22,815,300 1.8% 42.0%
LOAD_FAST_LOAD_FAST CALL_PY_GENERAL 21,994,480 1.7% 43.7%
IS_OP POP_JUMP_IF_FALSE 21,977,180 1.7% 45.4%
LOAD_FAST LOAD_ATTR_METHOD_NO_DICT 21,382,460 1.6% 47.0%
ENTER_EXECUTOR RETURN_VALUE 21,116,560 1.6% 48.6%
LOAD_ATTR_METHOD_NO_DICT LOAD_FAST 18,983,060 1.5% 50.1%
CALL_BUILTIN_O STORE_FAST 18,852,920 1.4% 51.6%
LOAD_FAST POP_JUMP_IF_NOT_NONE 18,844,640 1.4% 53.0%
RESUME_CHECK LOAD_GLOBAL_BUILTIN 18,844,520 1.4% 54.5%
POP_JUMP_IF_FALSE LOAD_GLOBAL_BUILTIN 18,818,500 1.4% 55.9%
STORE_FAST LOAD_GLOBAL_MODULE 18,815,740 1.4% 57.3%
CALL_PY_EXACT_ARGS RESUME_CHECK 17,718,220 1.4% 58.7%
POP_JUMP_IF_NOT_NONE LOAD_FAST 17,614,380 1.4% 60.1%
LOAD_ATTR_METHOD_NO_DICT LOAD_FAST_LOAD_FAST 17,614,320 1.4% 61.4%
LOAD_FAST_LOAD_FAST CALL_METHOD_DESCRIPTOR_FAST 17,614,260 1.4% 62.8%
CALL_TYPE_1 STORE_FAST 17,584,900 1.4% 64.1%
LOAD_FAST CALL_METHOD_DESCRIPTOR_FAST 17,584,840 1.4% 65.5%
LOAD_FAST CALL_TYPE_1 17,584,840 1.4% 66.8%
LOAD_GLOBAL_MODULE LOAD_ATTR_METHOD_NO_DICT 17,584,840 1.4% 68.2%
POP_TOP LOAD_FAST 16,427,060 1.3% 69.4%
POP_TOP ENTER_EXECUTOR 12,654,840 1.0% 70.4%
LOAD_FAST_LOAD_FAST CALL_PY_EXACT_ARGS 10,873,160 0.8% 71.3%
CALL_BUILTIN_O POP_TOP 10,649,800 0.8% 72.1%
RETURN_VALUE CALL_BUILTIN_O 10,649,760 0.8% 72.9%
CALL_BUILTIN_O STORE_SUBSCR_DICT 10,116,720 0.8% 73.7%
RETURN_VALUE STORE_SUBSCR_DICT 9,994,120 0.8% 74.4%
STORE_SUBSCR_DICT ENTER_EXECUTOR 9,993,220 0.8% 75.2%
PUSH_NULL LOAD_FAST 8,776,400 0.7% 75.9%
POP_JUMP_IF_FALSE LOAD_FAST 8,086,020 0.6% 76.5%
RETURN_CONST POP_TOP 7,659,520 0.6% 77.1%
STORE_SUBSCR_DICT LOAD_FAST 7,577,460 0.6% 77.7%
RETURN_VALUE LOAD_FAST_LOAD_FAST 7,536,700 0.6% 78.3%
LOAD_FAST_LOAD_FAST PUSH_NULL 7,536,700 0.6% 78.8%
ENTER_EXECUTOR POP_TOP 7,009,540 0.5% 79.4%
ENTER_EXECUTOR CALL_PY_EXACT_ARGS 6,804,000 0.5% 79.9%
TO_BOOL_BOOL POP_JUMP_IF_FALSE 6,324,340 0.5% 80.4%
LOAD_FAST_LOAD_FAST LOAD_GLOBAL_BUILTIN 6,307,640 0.5% 80.9%
LOAD_FAST LOAD_ATTR 5,079,340 0.4% 81.3%
CALL_LIST_APPEND RETURN_CONST 5,078,980 0.4% 81.7%
UNPACK_SEQUENCE_TWO_TUPLE STORE_FAST_STORE_FAST 5,038,720 0.4% 82.0%
FOR_ITER UNPACK_SEQUENCE_TWO_TUPLE 5,038,620 0.4% 82.4%
GET_ITER FOR_ITER 5,038,260 0.4% 82.8%
LOAD_FAST GET_ITER 5,038,080 0.4% 83.2%
ENTER_EXECUTOR CALL_LIST_APPEND 4,950,540 0.4% 83.6%
LOAD_ATTR_MODULE PUSH_NULL 4,917,580 0.4% 84.0%
LOAD_GLOBAL_MODULE LOAD_ATTR_MODULE 4,917,280 0.4% 84.3%
ENTER_EXECUTOR LOAD_FAST 4,136,720 0.3% 84.7%
LOAD_FAST LOAD_GLOBAL_BUILTIN 3,960,640 0.3% 85.0%
CHECK_EXC_MATCH POP_JUMP_IF_FALSE 3,809,280 0.3% 85.3%
POP_JUMP_IF_FALSE POP_TOP 3,809,280 0.3% 85.6%
LOAD_GLOBAL_BUILTIN CHECK_EXC_MATCH 3,809,180 0.3% 85.8%
PUSH_EXC_INFO LOAD_GLOBAL_BUILTIN 3,809,080 0.3% 86.1%
LOAD_FAST TO_BOOL_BOOL 3,809,040 0.3% 86.4%
BUILD_MAP STORE_FAST 3,780,080 0.3% 86.7%
BUILD_LIST LOAD_FAST 3,776,700 0.3% 87.0%
STORE_FAST_STORE_FAST LOAD_FAST 3,768,840 0.3% 87.3%
LOAD_FAST BUILD_LIST 3,768,640 0.3% 87.6%
LOAD_FAST LOAD_DEREF 3,768,320 0.3% 87.9%
CALL_METHOD_DESCRIPTOR_NOARGS GET_ITER 3,768,260 0.3% 88.2%
RESUME_CHECK BUILD_MAP 3,768,260 0.3% 88.5%
LOAD_ATTR_METHOD_NO_DICT CALL_METHOD_DESCRIPTOR_NOARGS 3,768,200 0.3% 88.7%
ENTER_EXECUTOR PUSH_EXC_INFO 3,761,700 0.3% 89.0%
PUSH_NULL CALL_NON_PY_GENERAL 3,687,180 0.3% 89.3%
FOR_ITER_LIST STORE_FAST 2,540,040 0.2% 89.5%
BUILD_LIST STORE_FAST 2,539,540 0.2% 89.7%
RESUME_CHECK BUILD_LIST 2,539,540 0.2% 89.9%
POP_EXCEPT RETURN_CONST 2,539,520 0.2% 90.1%
LOAD_ATTR STORE_FAST 2,539,520 0.2% 90.3%
GET_ITER FOR_ITER_LIST 2,539,480 0.2% 90.5%
STORE_SUBSCR_DICT POP_EXCEPT 2,539,460 0.2% 90.7%
STORE_FAST ENTER_EXECUTOR 2,538,160 0.2% 90.9%
LOAD_DEREF PUSH_NULL 2,499,120 0.2% 91.1%
LOAD_DEREF CALL_PY_GENERAL 2,498,440 0.2% 91.3%
CALL_NON_PY_GENERAL LOAD_FAST 2,457,680 0.2% 91.5%
LOAD_FAST BINARY_OP_SUBTRACT_FLOAT 2,457,600 0.2% 91.6%
BINARY_OP_ADD_FLOAT STORE_FAST 2,457,560 0.2% 91.8%
LOAD_FAST LOAD_GLOBAL_MODULE 2,457,520 0.2% 92.0%
BINARY_OP_SUBTRACT_FLOAT BINARY_OP_ADD_FLOAT 2,457,520 0.2% 92.2%
ENTER_EXECUTOR CALL_PY_GENERAL 2,241,560 0.2% 92.4%
FOR_ITER_TUPLE STORE_FAST 1,353,680 0.1% 92.5%
RETURN_VALUE LIST_APPEND 1,351,900 0.1% 92.6%
LIST_APPEND ENTER_EXECUTOR 1,351,220 0.1% 92.7%
RESUME_CHECK LOAD_DEREF 1,310,840 0.1% 92.8%
LOAD_DEREF LOAD_CONST 1,310,720 0.1% 92.9%

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 1,269,780 50.0%
POP_TOP 1,228,800 48.4%
COPY_FREE_VARS 41,040 1.6%
RESUME 80 0.0%

BINARY_SUBSCR

Successors and predecessors for BINARY_SUBSCR
Predecessors Count Percentage
CALL 100 50.0%
CALL_BUILTIN_O 100 50.0%
Successors Count Percentage
PUSH_EXC_INFO 100 50.0%
BINARY_SUBSCR_DICT 100 50.0%

CHECK_EXC_MATCH

Successors and predecessors for CHECK_EXC_MATCH
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 3,809,180 100.0%
LOAD_GLOBAL 100 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 3,809,280 100.0%

EXIT_INIT_CHECK

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

GET_ITER

Successors and predecessors for GET_ITER
Predecessors Count Percentage
LOAD_FAST 5,038,080 48.8%
CALL_METHOD_DESCRIPTOR_NOARGS 3,768,260 36.5%
CALL 1,269,920 12.3%
LOAD_CONST 124,360 1.2%
CALL_BUILTIN_CLASS 123,360 1.2%
Successors Count Percentage
FOR_ITER 5,038,260 48.8%
FOR_ITER_LIST 2,539,480 24.6%
LOAD_FAST_AND_CLEAR 1,269,760 12.3%
CALL_PY_EXACT_ARGS 1,228,760 11.9%
FOR_ITER_TUPLE 124,320 1.2%

INTERPRETER_EXIT

Successors and predecessors for INTERPRETER_EXIT
Predecessors Count Percentage
RETURN_CONST 1,269,920 50.0%
YIELD_VALUE 1,228,800 48.4%
RETURN_VALUE 40,980 1.6%

LOAD_BUILD_CLASS

Successors and predecessors for LOAD_BUILD_CLASS
Predecessors Count Percentage
RESUME_CHECK 60 75.0%
RESUME 20 25.0%
Successors Count Percentage
PUSH_NULL 80 100.0%

MAKE_FUNCTION

Successors and predecessors for MAKE_FUNCTION
Predecessors Count Percentage
LOAD_CONST 1,229,120 100.0%
Successors Count Percentage
SET_FUNCTION_ATTRIBUTE 1,228,960 100.0%
STORE_NAME 160 0.0%

NOP

Successors and predecessors for NOP
Predecessors Count Percentage
RESUME_CHECK 173,260 98.3%
STORE_FAST 2,760 1.6%
POP_TOP 240 0.1%
RESUME 60 0.0%
JUMP_FORWARD 20 0.0%
Successors Count Percentage
LOAD_FAST 176,080 99.9%
LOAD_DEREF 240 0.1%
LOAD_FAST_LOAD_FAST 20 0.0%

POP_EXCEPT

Successors and predecessors for POP_EXCEPT
Predecessors Count Percentage
STORE_SUBSCR_DICT 2,539,460 66.7%
POP_TOP 1,269,760 33.3%
STORE_SUBSCR 60 0.0%
Successors Count Percentage
RETURN_CONST 2,539,520 66.7%
JUMP_FORWARD 1,269,760 33.3%

POP_TOP

Successors and predecessors for POP_TOP
Predecessors Count Percentage
CALL_BUILTIN_O 10,649,800 32.4%
RETURN_CONST 7,659,520 23.3%
ENTER_EXECUTOR 7,009,540 21.3%
POP_JUMP_IF_FALSE 3,809,280 11.6%
CALL_NON_PY_GENERAL 1,269,900 3.9%
Successors Count Percentage
LOAD_FAST 16,427,060 49.9%
ENTER_EXECUTOR 12,654,840 38.5%
POP_EXCEPT 1,269,760 3.9%
RETURN_CONST 1,269,500 3.9%
RESUME_CHECK 1,228,780 3.7%

PUSH_EXC_INFO

Successors and predecessors for PUSH_EXC_INFO
Predecessors Count Percentage
ENTER_EXECUTOR 3,761,700 98.8%
BINARY_SUBSCR_DICT 47,480 1.2%
BINARY_SUBSCR 100 0.0%
Successors Count Percentage
LOAD_GLOBAL_BUILTIN 3,809,080 100.0%
LOAD_GLOBAL 200 0.0%

PUSH_NULL

Successors and predecessors for PUSH_NULL
Predecessors Count Percentage
LOAD_FAST 27,706,280 61.3%
LOAD_FAST_LOAD_FAST 7,536,700 16.7%
LOAD_ATTR_MODULE 4,917,580 10.9%
LOAD_DEREF 2,499,120 5.5%
STORE_FAST_LOAD_FAST 1,270,200 2.8%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 32,694,960 72.4%
LOAD_FAST 8,776,400 19.4%
CALL_NON_PY_GENERAL 3,687,180 8.2%
LOAD_CONST 8,380 0.0%
CALL 480 0.0%

RETURN_VALUE

Successors and predecessors for RETURN_VALUE
Predecessors Count Percentage
LOAD_FAST 41,348,960 64.9%
ENTER_EXECUTOR 21,116,560 33.1%
CALL_FUNCTION_EX 1,228,800 1.9%
BUILD_TUPLE 40,960 0.1%
RETURN_VALUE 240 0.0%
Successors Count Percentage
STORE_FAST 32,932,660 51.7%
CALL_BUILTIN_O 10,649,760 16.7%
STORE_SUBSCR_DICT 9,994,120 15.7%
LOAD_FAST_LOAD_FAST 7,536,700 11.8%
LIST_APPEND 1,351,900 2.1%

STORE_SUBSCR

Successors and predecessors for STORE_SUBSCR
Predecessors Count Percentage
CALL 200 29.4%
CALL_BUILTIN_O 200 29.4%
RETURN_VALUE 120 17.6%
LOAD_FAST 120 17.6%
LOAD_CONST 40 5.9%
Successors Count Percentage
STORE_SUBSCR_DICT 320 47.1%
LOAD_FAST 140 20.6%
POP_EXCEPT 60 8.8%
JUMP_BACKWARD 60 8.8%
LOAD_GLOBAL 60 8.8%

TO_BOOL

Successors and predecessors for TO_BOOL
Predecessors Count Percentage
LOAD_FAST 1,270,080 99.9%
TO_BOOL 700 0.1%
CALL 160 0.0%
CALL_BUILTIN_FAST 80 0.0%
CALL_ISINSTANCE 60 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 1,270,060 99.9%
TO_BOOL 700 0.1%
TO_BOOL_BOOL 260 0.0%
TO_BOOL_NONE 40 0.0%
POP_JUMP_IF_TRUE 20 0.0%

BINARY_OP

Successors and predecessors for BINARY_OP
Predecessors Count Percentage
LOAD_CONST 160 36.4%
LOAD_FAST 160 36.4%
BINARY_OP 80 18.2%
BINARY_OP_SUBTRACT_FLOAT 40 9.1%
Successors Count Percentage
STORE_FAST 160 36.4%
BINARY_OP_SUBTRACT_FLOAT 80 18.2%
BINARY_OP 80 18.2%
LOAD_CONST 80 18.2%
BINARY_OP_ADD_FLOAT 40 9.1%

BUILD_LIST

Successors and predecessors for BUILD_LIST
Predecessors Count Percentage
LOAD_FAST 3,768,640 49.7%
RESUME_CHECK 2,539,540 33.5%
SWAP 1,269,760 16.7%
LOAD_FAST_LOAD_FAST 8,380 0.1%
LOAD_CONST 160 0.0%
Successors Count Percentage
LOAD_FAST 3,776,700 49.8%
STORE_FAST 2,539,540 33.5%
SWAP 1,269,760 16.7%
LOAD_CONST 320 0.0%
LOAD_DEREF 240 0.0%

BUILD_MAP

Successors and predecessors for BUILD_MAP
Predecessors Count Percentage
RESUME_CHECK 3,768,260 99.7%
ENTER_EXECUTOR 6,340 0.2%
POP_JUMP_IF_NOT_NONE 5,360 0.1%
LOAD_CONST 80 0.0%
JUMP_BACKWARD 60 0.0%
Successors Count Percentage
STORE_FAST 3,780,080 100.0%
LOAD_CONST 80 0.0%

BUILD_TUPLE

Successors and predecessors for BUILD_TUPLE
Predecessors Count Percentage
LOAD_FAST 1,229,040 96.8%
LOAD_ATTR 40,960 3.2%
Successors Count Percentage
LOAD_CONST 1,228,960 96.8%
RETURN_VALUE 40,960 3.2%
LOAD_FAST 80 0.0%

CALL

Successors and predecessors for CALL
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 1,270,520 99.7%
LOAD_FAST 1,600 0.1%
CALL 700 0.1%
PUSH_NULL 480 0.0%
LOAD_CONST 480 0.0%
Successors Count Percentage
GET_ITER 1,269,920 99.7%
CALL 700 0.1%
STORE_FAST 560 0.0%
CALL_BUILTIN_O 440 0.0%
CALL_PY_GENERAL 380 0.0%

CALL_FUNCTION_EX

Successors and predecessors for CALL_FUNCTION_EX
Predecessors Count Percentage
LOAD_FAST 1,270,000 33.7%
ENTER_EXECUTOR 1,261,380 33.5%
CALL_INTRINSIC_1 1,237,420 32.8%
Successors Count Percentage
MAKE_CELL 1,269,840 33.7%
RESUME_CHECK 1,228,900 32.6%
RETURN_VALUE 1,228,800 32.6%
STORE_FAST 40,960 1.1%
COPY_FREE_VARS 240 0.0%

CALL_INTRINSIC_1

Successors and predecessors for CALL_INTRINSIC_1
Predecessors Count Percentage
LIST_EXTEND 1,237,420 100.0%
Successors Count Percentage
CALL_FUNCTION_EX 1,237,420 100.0%

COPY_FREE_VARS

Successors and predecessors for COPY_FREE_VARS
Predecessors Count Percentage
CALL_PY_EXACT_ARGS 1,228,780 96.7%
CACHE 41,040 3.2%
CALL_FUNCTION_EX 240 0.0%
CALL 20 0.0%
Successors Count Percentage
RETURN_GENERATOR 1,228,800 96.7%
RESUME_CHECK 41,180 3.2%
RESUME 100 0.0%

ENTER_EXECUTOR

Successors and predecessors for ENTER_EXECUTOR
Predecessors Count Percentage
IS_OP 23,531,700 44.8%
POP_TOP 12,654,840 24.1%
STORE_SUBSCR_DICT 9,993,220 19.0%
STORE_FAST 2,538,160 4.8%
LIST_APPEND 1,351,220 2.6%
Successors Count Percentage
RETURN_VALUE 21,116,560 40.2%
POP_TOP 7,009,540 13.3%
CALL_PY_EXACT_ARGS 6,804,000 13.0%
CALL_LIST_APPEND 4,950,540 9.4%
LOAD_FAST 4,136,720 7.9%

FOR_ITER

Successors and predecessors for FOR_ITER
Predecessors Count Percentage
GET_ITER 5,038,260 99.9%
FOR_ITER 2,200 0.0%
JUMP_BACKWARD 1,520 0.0%
SWAP 40 0.0%
LOAD_FAST 20 0.0%
Successors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 5,038,620 99.9%
FOR_ITER 2,200 0.0%
LOAD_FAST 540 0.0%
STORE_FAST 200 0.0%
UNPACK_SEQUENCE 200 0.0%

IS_OP

Successors and predecessors for IS_OP
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 46,778,860 97.4%
LOAD_CONST 1,269,760 2.6%
Successors Count Percentage
ENTER_EXECUTOR 23,531,700 49.0%
POP_JUMP_IF_FALSE 21,977,180 45.7%
POP_JUMP_IF_TRUE 1,269,980 2.6%
STORE_FAST 1,269,760 2.6%

JUMP_BACKWARD

Successors and predecessors for JUMP_BACKWARD
Predecessors Count Percentage
POP_TOP 1,720 31.6%
STORE_FAST 1,360 25.0%
STORE_SUBSCR_DICT 960 17.6%
LIST_APPEND 680 12.5%
POP_JUMP_IF_TRUE 340 6.2%
Successors Count Percentage
FOR_ITER 1,520 27.9%
FOR_ITER_RANGE 1,500 27.6%
FOR_ITER_TUPLE 1,500 27.6%
FOR_ITER_LIST 600 11.0%
POP_TOP 80 1.5%

JUMP_FORWARD

Successors and predecessors for JUMP_FORWARD
Predecessors Count Percentage
STORE_FAST 26,644,880 95.3%
POP_EXCEPT 1,269,760 4.5%
POP_TOP 40,960 0.1%
POP_JUMP_IF_TRUE 20 0.0%
Successors Count Percentage
LOAD_FAST_LOAD_FAST 26,624,740 95.2%
LOAD_GLOBAL_BUILTIN 1,289,680 4.6%
LOAD_FAST 40,960 0.1%
LOAD_GLOBAL 220 0.0%
NOP 20 0.0%

LIST_EXTEND

Successors and predecessors for LIST_EXTEND
Predecessors Count Percentage
LOAD_FAST 1,237,180 100.0%
LOAD_DEREF 240 0.0%
LOAD_CONST 160 0.0%
Successors Count Percentage
CALL_INTRINSIC_1 1,237,420 100.0%
LOAD_CONST 160 0.0%

LOAD_ATTR

Successors and predecessors for LOAD_ATTR
Predecessors Count Percentage
LOAD_FAST 5,079,340 99.8%
LOAD_GLOBAL_MODULE 8,700 0.2%
LOAD_ATTR 2,780 0.1%
LOAD_GLOBAL 400 0.0%
BINARY_SUBSCR_DICT 120 0.0%
Successors Count Percentage
STORE_FAST 2,539,520 49.9%
LOAD_ATTR_METHOD_NO_DICT 1,269,960 24.9%
PUSH_NULL 1,237,480 24.3%
BUILD_TUPLE 40,960 0.8%
LOAD_ATTR 2,780 0.1%

LOAD_CONST

Successors and predecessors for LOAD_CONST
Predecessors Count Percentage
LOAD_DEREF 1,310,720 23.7%
LOAD_FAST 1,286,540 23.2%
BUILD_TUPLE 1,228,960 22.2%
POP_JUMP_IF_FALSE 1,228,800 22.2%
LOAD_GLOBAL_BUILTIN 123,180 2.2%
Successors Count Percentage
CALL_BUILTIN_FAST 1,286,280 23.2%
IS_OP 1,269,760 22.9%
MAKE_FUNCTION 1,229,120 22.2%
STORE_FAST 1,228,880 22.2%
GET_ITER 124,360 2.2%

LOAD_DEREF

Successors and predecessors for LOAD_DEREF
Predecessors Count Percentage
LOAD_FAST 3,768,320 49.7%
RESUME_CHECK 1,310,840 17.3%
POP_JUMP_IF_FALSE 1,269,760 16.8%
STORE_FAST 1,228,800 16.2%
NOP 240 0.0%
Successors Count Percentage
PUSH_NULL 2,499,120 33.0%
CALL_PY_GENERAL 2,498,440 33.0%
LOAD_CONST 1,310,720 17.3%
LOAD_GLOBAL_BUILTIN 1,269,680 16.8%
LIST_EXTEND 240 0.0%

LOAD_FAST

Successors and predecessors for LOAD_FAST
Predecessors Count Percentage
STORE_FAST 50,218,040 20.9%
LOAD_GLOBAL_BUILTIN 49,295,360 20.5%
POP_JUMP_IF_NONE 23,854,400 9.9%
RESUME_CHECK 22,815,300 9.5%
LOAD_ATTR_METHOD_NO_DICT 18,983,060 7.9%
Successors Count Percentage
RETURN_VALUE 41,348,960 17.2%
CALL_BUILTIN_O 29,137,120 12.1%
PUSH_NULL 27,706,280 11.5%
POP_JUMP_IF_NONE 23,868,620 9.9%
LOAD_ATTR_METHOD_NO_DICT 21,382,460 8.9%

LOAD_FAST_LOAD_FAST

Successors and predecessors for LOAD_FAST_LOAD_FAST
Predecessors Count Percentage
PUSH_NULL 32,694,960 29.0%
JUMP_FORWARD 26,624,740 23.6%
STORE_FAST 25,439,880 22.6%
LOAD_ATTR_METHOD_NO_DICT 17,614,320 15.6%
RETURN_VALUE 7,536,700 6.7%
Successors Count Percentage
IS_OP 46,778,860 41.5%
CALL_PY_GENERAL 21,994,480 19.5%
CALL_METHOD_DESCRIPTOR_FAST 17,614,260 15.6%
CALL_PY_EXACT_ARGS 10,873,160 9.6%
PUSH_NULL 7,536,700 6.7%

LOAD_GLOBAL

Successors and predecessors for LOAD_GLOBAL
Predecessors Count Percentage
STORE_FAST 700 22.6%
LOAD_FAST 600 19.4%
POP_JUMP_IF_FALSE 340 11.0%
JUMP_FORWARD 220 7.1%
PUSH_EXC_INFO 200 6.5%
Successors Count Percentage
LOAD_GLOBAL_BUILTIN 1,020 32.9%
LOAD_FAST 740 23.9%
LOAD_GLOBAL_MODULE 520 16.8%
LOAD_ATTR 400 12.9%
LOAD_FAST_LOAD_FAST 140 4.5%

LOAD_NAME

Successors and predecessors for LOAD_NAME
Predecessors Count Percentage
RESUME_CHECK 60 75.0%
RESUME 20 25.0%
Successors Count Percentage
STORE_NAME 80 100.0%

MAKE_CELL

Successors and predecessors for MAKE_CELL
Predecessors Count Percentage
CALL_FUNCTION_EX 1,269,840 50.0%
MAKE_CELL 1,269,760 50.0%
Successors Count Percentage
RESUME_CHECK 1,269,780 50.0%
MAKE_CELL 1,269,760 50.0%
RESUME 60 0.0%

POP_JUMP_IF_FALSE

Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors Count Percentage
IS_OP 21,977,180 65.8%
TO_BOOL_BOOL 6,324,340 18.9%
CHECK_EXC_MATCH 3,809,280 11.4%
TO_BOOL 1,270,060 3.8%
TO_BOOL_NONE 8,340 0.0%
Successors Count Percentage
LOAD_GLOBAL_BUILTIN 18,818,500 56.4%
LOAD_FAST 8,086,020 24.2%
POP_TOP 3,809,280 11.4%
LOAD_DEREF 1,269,760 3.8%
LOAD_CONST 1,228,800 3.7%

POP_JUMP_IF_NONE

Successors and predecessors for POP_JUMP_IF_NONE
Predecessors Count Percentage
LOAD_FAST 23,868,620 100.0%
Successors Count Percentage
LOAD_FAST 23,854,400 99.9%
LOAD_GLOBAL_MODULE 8,300 0.0%
LOAD_GLOBAL_BUILTIN 5,740 0.0%
LOAD_GLOBAL 160 0.0%
BUILD_LIST 20 0.0%

POP_JUMP_IF_NOT_NONE

Successors and predecessors for POP_JUMP_IF_NOT_NONE
Predecessors Count Percentage
LOAD_FAST 18,844,640 100.0%
Successors Count Percentage
LOAD_FAST 17,614,380 93.5%
ENTER_EXECUTOR 1,224,900 6.5%
BUILD_MAP 5,360 0.0%

POP_JUMP_IF_TRUE

Successors and predecessors for POP_JUMP_IF_TRUE
Predecessors Count Percentage
IS_OP 1,269,980 100.0%
TO_BOOL 20 0.0%
Successors Count Percentage
ENTER_EXECUTOR 1,228,680 96.7%
LOAD_GLOBAL_BUILTIN 40,920 3.2%
JUMP_BACKWARD 340 0.0%
LOAD_GLOBAL 40 0.0%
JUMP_FORWARD 20 0.0%

RETURN_CONST

Successors and predecessors for RETURN_CONST
Predecessors Count Percentage
CALL_LIST_APPEND 5,078,980 56.9%
POP_EXCEPT 2,539,520 28.4%
POP_TOP 1,269,500 14.2%
STORE_ATTR_INSTANCE_VALUE 41,080 0.5%
FOR_ITER_TUPLE 320 0.0%
Successors Count Percentage
POP_TOP 7,659,520 85.8%
INTERPRETER_EXIT 1,269,920 14.2%
EXIT_INIT_CHECK 80 0.0%

SET_FUNCTION_ATTRIBUTE

Successors and predecessors for SET_FUNCTION_ATTRIBUTE
Predecessors Count Percentage
MAKE_FUNCTION 1,228,960 100.0%
Successors Count Percentage
LOAD_FAST 1,228,800 100.0%
LOAD_CONST 80 0.0%
STORE_NAME 80 0.0%

STORE_ATTR

Successors and predecessors for STORE_ATTR
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 220 73.3%
LOAD_FAST 80 26.7%
Successors Count Percentage
STORE_ATTR_INSTANCE_VALUE 140 46.7%
RETURN_CONST 40 13.3%
LOAD_FAST_LOAD_FAST 40 13.3%
LOAD_GLOBAL 40 13.3%
LOAD_CONST 20 6.7%

STORE_DEREF

Successors and predecessors for STORE_DEREF
Predecessors Count Percentage
CALL_BUILTIN_FAST_WITH_KEYWORDS 60 75.0%
CALL 20 25.0%
Successors Count Percentage
LOAD_DEREF 80 100.0%

STORE_FAST

Successors and predecessors for STORE_FAST
Predecessors Count Percentage
CALL_METHOD_DESCRIPTOR_FAST 35,199,220 27.9%
RETURN_VALUE 32,932,660 26.1%
CALL_BUILTIN_O 18,852,920 14.9%
CALL_TYPE_1 17,584,900 13.9%
BUILD_MAP 3,780,080 3.0%
Successors Count Percentage
LOAD_FAST 50,218,040 39.8%
JUMP_FORWARD 26,644,880 21.1%
LOAD_FAST_LOAD_FAST 25,439,880 20.2%
LOAD_GLOBAL_MODULE 18,815,740 14.9%
ENTER_EXECUTOR 2,538,160 2.0%

STORE_FAST_STORE_FAST

Successors and predecessors for STORE_FAST_STORE_FAST
Predecessors Count Percentage
UNPACK_SEQUENCE_TWO_TUPLE 5,038,720 100.0%
UNPACK_SEQUENCE 100 0.0%
Successors Count Percentage
LOAD_FAST 3,768,840 74.8%
LOAD_FAST_LOAD_FAST 1,269,980 25.2%

STORE_NAME

Successors and predecessors for STORE_NAME
Predecessors Count Percentage
LOAD_CONST 240 42.9%
MAKE_FUNCTION 160 28.6%
LOAD_NAME 80 14.3%
SET_FUNCTION_ATTRIBUTE 80 14.3%
Successors Count Percentage
LOAD_CONST 400 71.4%
LOAD_FAST 80 14.3%
RETURN_CONST 80 14.3%

UNPACK_SEQUENCE

Successors and predecessors for UNPACK_SEQUENCE
Predecessors Count Percentage
FOR_ITER 200 100.0%
Successors Count Percentage
STORE_FAST_STORE_FAST 100 50.0%
UNPACK_SEQUENCE_TWO_TUPLE 100 50.0%

RESUME

Successors and predecessors for RESUME
Predecessors Count Percentage
CALL 200 30.3%
CALL_PY_GENERAL 120 18.2%
COPY_FREE_VARS 100 15.2%
CACHE 80 12.1%
CALL_FUNCTION_EX 60 9.1%
Successors Count Percentage
LOAD_FAST 180 27.3%
LOAD_DEREF 120 18.2%
NOP 60 9.1%
BUILD_MAP 60 9.1%
LOAD_GLOBAL 60 9.1%

BINARY_OP_SUBTRACT_FLOAT

Successors and predecessors for BINARY_OP_SUBTRACT_FLOAT
Predecessors Count Percentage
LOAD_FAST 2,457,600 100.0%
BINARY_OP 80 0.0%
Successors Count Percentage
BINARY_OP_ADD_FLOAT 2,457,520 100.0%
STORE_FAST 120 0.0%
BINARY_OP 40 0.0%

BINARY_SUBSCR_DICT

Successors and predecessors for BINARY_SUBSCR_DICT
Predecessors Count Percentage
CALL_BUILTIN_O 175,880 99.9%
BINARY_SUBSCR 100 0.1%
Successors Count Percentage
LOAD_ATTR_METHOD_NO_DICT 128,380 73.0%
PUSH_EXC_INFO 47,480 27.0%
LOAD_ATTR 120 0.1%

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 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_CONST 123,140 99.8%
LOAD_FAST 120 0.1%
CALL 100 0.1%
Successors Count Percentage
GET_ITER 123,360 100.0%

CALL_BUILTIN_FAST

Successors and predecessors for CALL_BUILTIN_FAST
Predecessors Count Percentage
LOAD_CONST 1,286,280 98.7%
LOAD_FAST 8,300 0.6%
LOAD_GLOBAL_BUILTIN 8,300 0.6%
CALL 200 0.0%
Successors Count Percentage
TO_BOOL_BOOL 1,277,980 98.1%
STORE_FAST 25,020 1.9%
TO_BOOL 80 0.0%

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%

CALL_BUILTIN_O

Successors and predecessors for CALL_BUILTIN_O
Predecessors Count Percentage
LOAD_FAST 29,137,120 73.2%
RETURN_VALUE 10,649,760 26.8%
LOAD_CONST 8,300 0.0%
CALL 440 0.0%
Successors Count Percentage
STORE_FAST 18,852,920 47.4%
POP_TOP 10,649,800 26.8%
STORE_SUBSCR_DICT 10,116,720 25.4%
BINARY_SUBSCR_DICT 175,880 0.4%
STORE_SUBSCR 200 0.0%

CALL_ISINSTANCE

Successors and predecessors for CALL_ISINSTANCE
Predecessors Count Percentage
LOAD_GLOBAL_BUILTIN 1,237,060 100.0%
CALL 60 0.0%
Successors Count Percentage
TO_BOOL_BOOL 1,237,060 100.0%
TO_BOOL 60 0.0%

CALL_LIST_APPEND

Successors and predecessors for CALL_LIST_APPEND
Predecessors Count Percentage
ENTER_EXECUTOR 4,950,540 97.5%
LOAD_FAST 128,380 2.5%
CALL 60 0.0%
Successors Count Percentage
RETURN_CONST 5,078,980 100.0%

CALL_METHOD_DESCRIPTOR_FAST

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 17,614,260 50.0%
LOAD_FAST 17,584,840 50.0%
CALL 120 0.0%
Successors Count Percentage
STORE_FAST 35,199,220 100.0%

CALL_METHOD_DESCRIPTOR_NOARGS

Successors and predecessors for CALL_METHOD_DESCRIPTOR_NOARGS
Predecessors Count Percentage
LOAD_ATTR_METHOD_NO_DICT 3,768,200 100.0%
CALL 60 0.0%
Successors Count Percentage
GET_ITER 3,768,260 100.0%

CALL_NON_PY_GENERAL

Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors Count Percentage
PUSH_NULL 3,687,180 74.4%
LOAD_FAST 1,269,680 25.6%
CALL 260 0.0%
Successors Count Percentage
LOAD_FAST 2,457,680 49.6%
POP_TOP 1,269,900 25.6%
STORE_FAST 1,229,540 24.8%

CALL_PY_EXACT_ARGS

Successors and predecessors for CALL_PY_EXACT_ARGS
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 10,873,160 57.1%
ENTER_EXECUTOR 6,804,000 35.7%
GET_ITER 1,228,760 6.5%
CALL_PY_GENERAL 85,460 0.4%
LOAD_FAST 40,920 0.2%
Successors Count Percentage
RESUME_CHECK 17,718,220 93.1%
COPY_FREE_VARS 1,228,780 6.5%
CALL_PY_GENERAL 85,420 0.4%
RESUME 20 0.0%

CALL_PY_GENERAL

Successors and predecessors for CALL_PY_GENERAL
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 21,994,480 78.2%
LOAD_DEREF 2,498,440 8.9%
ENTER_EXECUTOR 2,241,560 8.0%
LOAD_FAST 1,230,100 4.4%
CALL_PY_EXACT_ARGS 85,420 0.3%
Successors Count Percentage
RESUME_CHECK 27,964,820 99.5%
CALL_PY_EXACT_ARGS 85,460 0.3%
CALL_PY_GENERAL 65,520 0.2%
RESUME 120 0.0%

CALL_TYPE_1

Successors and predecessors for CALL_TYPE_1
Predecessors Count Percentage
LOAD_FAST 17,584,840 100.0%
CALL 60 0.0%
Successors Count Percentage
STORE_FAST 17,584,900 100.0%

FOR_ITER_RANGE

Successors and predecessors for FOR_ITER_RANGE
Predecessors Count Percentage
GET_ITER 123,360 98.7%
JUMP_BACKWARD 1,500 1.2%
FOR_ITER 100 0.1%
Successors Count Percentage
STORE_FAST 124,900 100.0%
JUMP_BACKWARD 60 0.0%

LOAD_ATTR_METHOD_NO_DICT

Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors Count Percentage
LOAD_FAST 21,382,460 53.0%
LOAD_GLOBAL_MODULE 17,584,840 43.6%
LOAD_ATTR 1,269,960 3.1%
BINARY_SUBSCR_DICT 128,380 0.3%
Successors Count Percentage
LOAD_FAST 18,983,060 47.0%
LOAD_FAST_LOAD_FAST 17,614,320 43.6%
CALL_METHOD_DESCRIPTOR_NOARGS 3,768,200 9.3%
CALL 60 0.0%

LOAD_ATTR_METHOD_WITH_VALUES

Successors and predecessors for LOAD_ATTR_METHOD_WITH_VALUES
Predecessors Count Percentage
LOAD_FAST 40,920 99.8%
LOAD_ATTR_METHOD_WITH_VALUES 60 0.1%
LOAD_ATTR 20 0.0%
Successors Count Percentage
LOAD_FAST 40,940 99.9%
LOAD_ATTR_METHOD_WITH_VALUES 60 0.1%

LOAD_ATTR_MODULE

Successors and predecessors for LOAD_ATTR_MODULE
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 4,917,280 100.0%
LOAD_ATTR 300 0.0%
Successors Count Percentage
PUSH_NULL 4,917,580 100.0%

LOAD_GLOBAL_BUILTIN

Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors Count Percentage
RESUME_CHECK 18,844,520 33.8%
POP_JUMP_IF_FALSE 18,818,500 33.8%
LOAD_FAST_LOAD_FAST 6,307,640 11.3%
LOAD_FAST 3,960,640 7.1%
PUSH_EXC_INFO 3,809,080 6.8%
Successors Count Percentage
LOAD_FAST 49,295,360 88.4%
CHECK_EXC_MATCH 3,809,180 6.8%
LOAD_FAST_LOAD_FAST 1,269,720 2.3%
CALL_ISINSTANCE 1,237,060 2.2%
LOAD_CONST 123,180 0.2%

LOAD_GLOBAL_MODULE

Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors Count Percentage
STORE_FAST 18,815,740 82.9%
LOAD_FAST 2,457,520 10.8%
STORE_ATTR_INSTANCE_VALUE 1,228,700 5.4%
STORE_SUBSCR_DICT 173,200 0.8%
POP_JUMP_IF_FALSE 8,300 0.0%
Successors Count Percentage
LOAD_ATTR_METHOD_NO_DICT 17,584,840 77.5%
LOAD_ATTR_MODULE 4,917,280 21.7%
LOAD_FAST_LOAD_FAST 181,600 0.8%
LOAD_ATTR 8,700 0.0%
LOAD_CONST 60 0.0%

RESUME_CHECK

Successors and predecessors for RESUME_CHECK
Predecessors Count Percentage
CALL_PY_GENERAL 27,964,820 55.1%
CALL_PY_EXACT_ARGS 17,718,220 34.9%
CACHE 1,269,780 2.5%
MAKE_CELL 1,269,780 2.5%
CALL_FUNCTION_EX 1,228,900 2.4%
Successors Count Percentage
LOAD_FAST 22,815,300 45.0%
LOAD_GLOBAL_BUILTIN 18,844,520 37.2%
BUILD_MAP 3,768,260 7.4%
BUILD_LIST 2,539,540 5.0%
LOAD_DEREF 1,310,840 2.6%

STORE_ATTR_INSTANCE_VALUE

Successors and predecessors for STORE_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
ENTER_EXECUTOR 1,226,760 84.0%
LOAD_FAST_LOAD_FAST 124,780 8.5%
LOAD_FAST 82,000 5.6%
STORE_ATTR_INSTANCE_VALUE 26,100 1.8%
STORE_ATTR 140 0.0%
Successors Count Percentage
LOAD_GLOBAL_MODULE 1,228,700 84.2%
LOAD_GLOBAL_BUILTIN 122,780 8.4%
RETURN_CONST 41,080 2.8%
LOAD_CONST 41,020 2.8%
STORE_ATTR_INSTANCE_VALUE 26,100 1.8%

STORE_SUBSCR_DICT

Successors and predecessors for STORE_SUBSCR_DICT
Predecessors Count Percentage
CALL_BUILTIN_O 10,116,720 49.9%
RETURN_VALUE 9,994,120 49.3%
LOAD_FAST 173,200 0.9%
STORE_SUBSCR 320 0.0%
Successors Count Percentage
ENTER_EXECUTOR 9,993,220 49.3%
LOAD_FAST 7,577,460 37.4%
POP_EXCEPT 2,539,460 12.5%
LOAD_GLOBAL_MODULE 173,200 0.9%
JUMP_BACKWARD 960 0.0%

TO_BOOL_BOOL

Successors and predecessors for TO_BOOL_BOOL
Predecessors Count Percentage
LOAD_FAST 3,809,040 60.2%
CALL_BUILTIN_FAST 1,277,980 20.2%
CALL_ISINSTANCE 1,237,060 19.6%
TO_BOOL 260 0.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 6,324,340 100.0%

TO_BOOL_NONE

Successors and predecessors for TO_BOOL_NONE
Predecessors Count Percentage
LOAD_FAST 8,300 99.5%
TO_BOOL 40 0.5%
Successors Count Percentage
POP_JUMP_IF_FALSE 8,340 100.0%

UNPACK_SEQUENCE_TWO_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TWO_TUPLE
Predecessors Count Percentage
FOR_ITER 5,038,620 100.0%
UNPACK_SEQUENCE 100 0.0%
Successors Count Percentage
STORE_FAST_STORE_FAST 5,038,720 100.0%

RETURN_GENERATOR

Successors and predecessors for RETURN_GENERATOR
Predecessors Count Percentage
COPY_FREE_VARS 1,228,800 100.0%
Successors Count Percentage
STORE_FAST 1,228,800 100.0%

BUILD_CONST_KEY_MAP

Successors and predecessors for BUILD_CONST_KEY_MAP
Predecessors Count Percentage
LOAD_CONST 160 100.0%
Successors Count Percentage
STORE_FAST 160 100.0%

LIST_APPEND

Successors and predecessors for LIST_APPEND
Predecessors Count Percentage
RETURN_VALUE 1,351,900 100.0%
Successors Count Percentage
ENTER_EXECUTOR 1,351,220 99.9%
JUMP_BACKWARD 680 0.1%

LOAD_FAST_AND_CLEAR

Successors and predecessors for LOAD_FAST_AND_CLEAR
Predecessors Count Percentage
GET_ITER 1,269,760 100.0%
Successors Count Percentage
SWAP 1,269,760 100.0%

STORE_FAST_LOAD_FAST

Successors and predecessors for STORE_FAST_LOAD_FAST
Predecessors Count Percentage
FOR_ITER_TUPLE 1,270,160 100.0%
FOR_ITER 40 0.0%
Successors Count Percentage
PUSH_NULL 1,270,200 100.0%

SWAP

Successors and predecessors for SWAP
Predecessors Count Percentage
BUILD_LIST 1,269,760 50.0%
LOAD_FAST_AND_CLEAR 1,269,760 50.0%
Successors Count Percentage
BUILD_LIST 1,269,760 50.0%
FOR_ITER_TUPLE 1,269,720 50.0%
FOR_ITER 40 0.0%

YIELD_VALUE

Successors and predecessors for YIELD_VALUE
Predecessors Count Percentage
RETURN_VALUE 1,228,800 100.0%
Successors Count Percentage
INTERPRETER_EXIT 1,228,800 100.0%

BINARY_OP_ADD_FLOAT

Successors and predecessors for BINARY_OP_ADD_FLOAT
Predecessors Count Percentage
BINARY_OP_SUBTRACT_FLOAT 2,457,520 100.0%
BINARY_OP 40 0.0%
Successors Count Percentage
STORE_FAST 2,457,560 100.0%

FOR_ITER_LIST

Successors and predecessors for FOR_ITER_LIST
Predecessors Count Percentage
GET_ITER 2,539,480 100.0%
JUMP_BACKWARD 600 0.0%
FOR_ITER 40 0.0%
Successors Count Percentage
STORE_FAST 2,540,040 100.0%
LOAD_FAST 80 0.0%

FOR_ITER_TUPLE

Successors and predecessors for FOR_ITER_TUPLE
Predecessors Count Percentage
SWAP 1,269,720 48.4%
LOAD_FAST 1,228,780 46.8%
GET_ITER 124,320 4.7%
JUMP_BACKWARD 1,500 0.1%
FOR_ITER 100 0.0%
Successors Count Percentage
STORE_FAST 1,353,680 51.6%
STORE_FAST_LOAD_FAST 1,270,160 48.4%
RETURN_CONST 320 0.0%
JUMP_BACKWARD 260 0.0%

LOAD_ATTR_INSTANCE_VALUE

Successors and predecessors for LOAD_ATTR_INSTANCE_VALUE
Predecessors Count Percentage
LOAD_FAST_LOAD_FAST 123,040 100.0%
LOAD_ATTR 20 0.0%
Successors Count Percentage
LOAD_CONST 123,060 100.0%

STORE_SUBSCR_LIST_INT

Successors and predecessors for STORE_SUBSCR_LIST_INT
Predecessors Count Percentage
LOAD_CONST 123,040 100.0%
STORE_SUBSCR 20 0.0%
Successors Count Percentage
LOAD_CONST 123,060 100.0%

CALL_TUPLE_1

Successors and predecessors for CALL_TUPLE_1
Predecessors Count Percentage
LOAD_FAST 40,920 100.0%
CALL 20 0.0%
Successors Count Percentage
STORE_FAST 40,940 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.

340 0.0%
hit

Specialized instructions that complete.

4,915,180 100.0%
miss

Specialized instructions that deopt.

60 0.0%
Success Count Ratio
Success 120 75.0%
Failure 40 25.0%
Failure kind Count Ratio
multiply different types 40 100.0%

BINARY_SUBSCR

specialization stats for BINARY_SUBSCR family
Kind Count Ratio
deferred

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

100 0.1%
hit

Specialized instructions that complete.

175,980 99.9%
Success Count Ratio
Success 100 100.0%
Failure 0 0.0%

CALL

specialization stats for CALL family
Kind Count Ratio
deferred

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

13,565,240 10.2%
hit

Specialized instructions that complete.

118,636,140 89.6%
miss

Specialized instructions that deopt.

12,529,900 9.5%
Success Count Ratio
Success 238,340 99.7%
Failure 700 0.3%
Failure kind Count Ratio
class no vectorcall 700 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.

5,039,600 48.8%
hit

Specialized instructions that complete.

5,289,500 51.2%
Success Count Ratio
Success 240 9.8%
Failure 2,200 90.2%
Failure kind Count Ratio
dict items 1,500 68.2%
zip 700 31.8%

LOAD_ATTR

specialization stats for LOAD_ATTR family
Kind Count Ratio
deferred

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

5,091,200 10.1%
hit

Specialized instructions that complete.

45,444,100 89.9%
miss

Specialized instructions that deopt.

3,180 0.0%
Success Count Ratio
Success 680 20.2%
Failure 2,680 79.8%
Failure kind Count Ratio
method 1,280 47.8%
class attr descriptor 900 33.6%
metaclass attribute 500 18.7%

LOAD_GLOBAL

specialization stats for LOAD_GLOBAL family
Kind Count Ratio
deferred

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

1,560 0.0%
hit

Specialized instructions that complete.

78,435,440 100.0%
Success Count Ratio
Success 1,540 100.0%
Failure 0 0.0%

POP_JUMP_IF_FALSE

specialization stats for POP_JUMP_IF_FALSE family

POP_JUMP_IF_NONE

specialization stats for POP_JUMP_IF_NONE family

POP_JUMP_IF_NOT_NONE

specialization stats for POP_JUMP_IF_NOT_NONE family

POP_JUMP_IF_TRUE

specialization stats for POP_JUMP_IF_TRUE family

STORE_ATTR

specialization stats for STORE_ATTR family
Kind Count Ratio
deferred

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

1,357,920 93.0%
hit

Specialized instructions that complete.

75,980 5.2%
miss

Specialized instructions that deopt.

1,383,860 94.8%
Success Count Ratio
Success 26,240 100.0%
Failure 0 0.0%

STORE_SUBSCR

specialization stats for STORE_SUBSCR family
Kind Count Ratio
deferred

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

340 0.0%
hit

Specialized instructions that complete.

20,407,420 100.0%
Success Count Ratio
Success 340 100.0%
Failure 0 0.0%

TO_BOOL

specialization stats for TO_BOOL family
Kind Count Ratio
deferred

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

1,270,080 16.7%
hit

Specialized instructions that complete.

6,332,680 83.3%
Success Count Ratio
Success 300 30.0%
Failure 700 70.0%
Failure kind Count Ratio
tuple 700 100.0%

UNPACK_SEQUENCE

specialization stats for UNPACK_SEQUENCE family
Kind Count Ratio
deferred

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

100 0.0%
hit

Specialized instructions that complete.

5,038,720 100.0%
Success Count Ratio
Success 100 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.

835,733,280 64.3%
Not specialized

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

90,058,820 6.9%
Specialized hits

Specialized instructions, e.g. LOAD_ATTR_MODULE that complete.

360,544,060 27.7%
Specialized misses

Specialized instructions, e.g. LOAD_ATTR_MODULE that deopt.

13,917,000 1.1%

Deferred by instruction

Breakdown of deferred (not specialized) instruction counts by family
Name Count Ratio
CALL 13,565,240 51.5%
LOAD_ATTR 5,091,200 19.3%
FOR_ITER 5,039,600 19.1%
STORE_ATTR 1,357,920 5.2%
TO_BOOL 1,270,080 4.8%
LOAD_GLOBAL 1,560 0.0%
STORE_SUBSCR 340 0.0%
BINARY_OP 340 0.0%
BINARY_SUBSCR 100 0.0%
UNPACK_SEQUENCE 100 0.0%

Misses by instruction

Breakdown of misses (specialized deopts) instruction counts by family
Name Count Ratio
CALL_PY_GENERAL 8,001,940 57.5%
CALL_PY_EXACT_ARGS 4,527,920 32.5%
STORE_ATTR_INSTANCE_VALUE 1,383,860 9.9%
LOAD_ATTR_METHOD_WITH_VALUES 3,180 0.0%
BINARY_OP_ADD_FLOAT 60 0.0%
CALL_ALLOC_AND_ENTER_INIT 40 0.0%
CACHE 0 0.0%
CHECK_EXC_MATCH 0 0.0%
EXIT_INIT_CHECK 0 0.0%
GET_ITER 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 2,539,700 2.5%
Calls to Python functions inlined 97,198,640 97.5%
Calls via PyEval_EvalFrame (total) 2,539,700 2.5%
Calls via PyEval_EvalFrame (vector) 82,100 0.1%
Calls via PyEval_EvalFrame (generator) 2,457,600 2.5%
Calls via PyEval_EvalFrame (legacy) 0 0.0%
Calls via PyEval_EvalFrame (function vectorcall) 82,020 0.1%
Calls via PyEval_EvalFrame (build class) 80 0.0%
Calls via PyEval_EvalFrame (slot) 0 0.0%
Calls via PyEval_EvalFrame (function ex) 2,499,040 2.5%
Calls via PyEval_EvalFrame (api) 0 0.0%
Calls via PyEval_EvalFrame (method) 20 0.0%
Frame objects created 3,809,280 3.8%
Frames pushed 97,280,820 97.5%

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 44,034,800 27.3%
Frees to freelist 44,074,940
Allocations 117,456,740 72.7%
Allocations to 512 bytes 117,455,920 72.7%
Allocations to 4 kbytes 780 0.0%
Allocations over 4 kbytes 40 0.0%
Frees 121,225,770
Inline values 1,269,920
Interpreter increfs 1,207,531,340 83.2%
Interpreter decrefs 1,383,802,880 86.5%
Increfs 243,531,780 16.8%
Decrefs 216,145,155 13.5%
Materialize dict (on request) 1,269,920 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 6,424,044
Method cache misses 436
Method cache collisions 1,083
Method cache dunder hits 21,303,823
Method cache dunder misses 1,097

GC stats

GC collections and effectiveness

Collected/visits gives some measure of efficiency.

Generation Collections Objects collected Object visits
0 0 0 0
1 0 1,920 171,840
2 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.

12,620
Traces created

The number of traces that were successfully created.

600 4.8%
Trace stack overflow

A trace is truncated because it would require more than 5 stack frames.

20 0.2%
Trace stack underflow

A potential trace is abandoned because it pops more frames than it pushes.

7,260 57.5%
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.

12,020 95.2%
Inner loop found

A trace is truncated because it has an inner loop

520 4.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 1.1%
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

111,411,440
Uops executed

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

2,473,694,540 2,220.3%
Count Ratio
Optimizer attempts

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

600
Optimizer successes

The number of traces that were successfully optimized.

600 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 80 13.3%
<= 16 0 0.0%
<= 32 60 10.0%
<= 64 40 6.7%
<= 128 220 36.7%
<= 256 160 26.7%
<= 512 40 6.7%

Optimized trace length histogram

optimized trace length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 80 13.3%
<= 8 0 0.0%
<= 16 60 10.0%
<= 32 40 6.7%
<= 64 60 10.0%
<= 128 280 46.7%
<= 256 80 13.3%

Trace run length histogram

trace run length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 28,564,360 25.6%
<= 8 5,938,260 5.3%
<= 16 2,002,560 1.8%
<= 32 11,774,080 10.6%
<= 64 5,364,820 4.8%
<= 128 9,084,040 8.2%
<= 256 4,915,020 4.4%
<= 512 1,228,720 1.1%

Uop execution stats

uop execution stats
Name Count Self Cumulative Miss ratio
_SET_IP 184,620,100 7.5% 7.5%
_CHECK_VALIDITY 145,813,960 5.9% 13.4%
_LOAD_FAST_1 133,916,480 5.4% 18.8%
_LOAD_FAST_0 117,814,940 4.8% 23.5%
_CHECK_PERIODIC 98,558,560 4.0% 27.5%
_LOAD_FAST_4 92,827,220 3.8% 31.3%
_LOAD_FAST_2 78,185,500 3.2% 34.4%
_START_EXECUTOR 68,871,860 2.8% 37.2%
_GUARD_IS_FALSE_POP 67,541,840 2.7% 39.9% 17.2%
_PUSH_NULL 67,391,840 2.7% 42.7%
_EXIT_TRACE 58,886,760 2.4% 45.1%
_GUARD_TYPE_VERSION 56,010,900 2.3% 47.3%
_LOAD_ATTR_METHOD_NO_DICT 54,292,640 2.2% 49.5%
_GUARD_IS_NOT_NONE_POP 51,912,740 2.1% 51.6% 5.0%
_LOAD_FAST_6 50,187,940 2.0% 53.6%
_CALL_METHOD_DESCRIPTOR_FAST 49,342,100 2.0% 55.6%
_LOAD_FAST_5 49,325,620 2.0% 57.6%
_STORE_FAST_5 48,030,940 1.9% 59.6%
_LOAD_CONST_INLINE_WITH_NULL 47,987,800 1.9% 61.5%
_RESUME_CHECK 47,787,060 1.9% 63.4%
_PUSH_FRAME 47,787,060 1.9% 65.4%
_SAVE_RETURN_OFFSET 47,787,060 1.9% 67.3%
_STORE_FAST_4 46,606,080 1.9% 69.2%
_CALL_BUILTIN_O 42,902,180 1.7% 70.9%
_COLD_EXIT 42,539,580 1.7% 72.6%
_IS_OP 41,489,940 1.7% 74.3%
_CHECK_FUNCTION 40,595,440 1.6% 76.0%
_LOAD_FAST_3 40,454,280 1.6% 77.6%
_TIER2_RESUME_CHECK 38,824,960 1.6% 79.2%
_CHECK_FUNCTION_VERSION 30,839,520 1.2% 80.4% 13.1%
_STORE_FAST_3 30,631,440 1.2% 81.6%
_STORE_FAST_6 28,813,460 1.2% 82.8%
_LOAD_CONST_INLINE 28,196,340 1.1% 84.0%
_PY_FRAME_GENERAL 26,784,800 1.1% 85.0%
_CHECK_FUNCTION_EXACT_ARGS 25,993,140 1.1% 86.1% 19.2%
_POP_FRAME 24,615,700 1.0% 87.1%
_LOAD_CONST_INLINE_BORROW_WITH_NULL 23,907,180 1.0% 88.0%
_CALL_TYPE_1 23,866,560 1.0% 89.0%
_CHECK_PEP_523 23,796,340 1.0% 90.0%
_INIT_CALL_PY_EXACT_ARGS_2 21,002,260 0.8% 90.8%
_GUARD_NOT_EXHAUSTED_LIST 16,792,960 0.7% 91.5% 15.1%
_ITER_CHECK_LIST 16,792,960 0.7% 92.2%
_ITER_NEXT_LIST 14,253,520 0.6% 92.8%
_FOR_ITER_TIER_TWO 13,679,360 0.6% 93.3% 36.5%
_CHECK_STACK_SPACE 13,557,020 0.5% 93.9%
_POP_TOP 11,248,700 0.5% 94.3%
_JUMP_TO_TOP 11,058,520 0.4% 94.8%
_CHECK_VALIDITY_AND_SET_IP 10,014,240 0.4% 95.2%
_LOAD_CONST_INLINE_BORROW 9,361,600 0.4% 95.5%
_BINARY_SUBSCR_DICT 8,712,240 0.4% 95.9%
_UNPACK_SEQUENCE_TWO_TUPLE 8,682,780 0.4% 96.2%
_STORE_SUBSCR_DICT 7,445,240 0.3% 96.5%
_CHECK_STACK_SPACE_OPERAND 7,445,240 0.3% 96.9%
_GUARD_NOT_EXHAUSTED_TUPLE 6,919,160 0.3% 97.1% 45.6%
_ITER_CHECK_TUPLE 6,919,160 0.3% 97.4%
_DEOPT 6,223,400 0.3% 97.7%
_CALL_BUILTIN_FAST 5,045,520 0.2% 97.9%
_LOAD_FAST 4,241,020 0.2% 98.0%
_LOAD_FAST_7 3,784,140 0.2% 98.2%
_ITER_NEXT_TUPLE 3,766,020 0.2% 98.3%
_ERROR_POP_N 3,761,700 0.2% 98.5%
_STORE_FAST 2,979,640 0.1% 98.6%
_BUILD_MAP 2,527,760 0.1% 98.7%
_STORE_FAST_1 2,527,760 0.1% 98.8%
_TO_BOOL_BOOL 2,522,760 0.1% 98.9%
_STORE_FAST_7 2,522,760 0.1% 99.0%
_LIST_APPEND 2,457,380 0.1% 99.1%
_GUARD_NOT_EXHAUSTED_RANGE 2,005,100 0.1% 99.2% 8.2%
_ITER_CHECK_RANGE 2,005,100 0.1% 99.3%
_ITER_NEXT_RANGE 1,841,080 0.1% 99.4%
_BUILD_LIST 1,261,380 0.1% 99.4%
_CALL_INTRINSIC_1 1,261,380 0.1% 99.5%
_LIST_EXTEND 1,261,380 0.1% 99.5%
_CALL_ISINSTANCE 1,261,380 0.1% 99.6%
_TO_BOOL_NONE 1,261,380 0.1% 99.6%
_GUARD_IS_NONE_POP 1,261,380 0.1% 99.7%
_LOAD_ATTR 1,261,380 0.1% 99.7%
_LOAD_GLOBAL 1,261,380 0.1% 99.8%
_CALL_NON_PY_GENERAL 1,228,140 0.0% 99.8%
_CHECK_IS_NOT_PY_CALLABLE 1,228,140 0.0% 99.9%
_GUARD_DORV_NO_DICT 1,226,940 0.0% 99.9% 100.0%
_GET_ITER 571,620 0.0% 99.9%
_STORE_SUBSCR_LIST_INT 491,320 0.0% 100.0%
_CHECK_MANAGED_OBJECT_HAS_VALUES 491,320 0.0% 100.0%
_LOAD_ATTR_INSTANCE_VALUE_0 491,320 0.0% 100.0%
_CALL_BUILTIN_CLASS 40,620 0.0% 100.0%
_STORE_ATTR_INSTANCE_VALUE 120 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.

Pair Count Self Cumulative
_CHECK_PERIODIC _CHECK_VALIDITY 89,805,700 3.6% 3.6%
_LOAD_FAST_1 _SET_IP 64,237,280 2.6% 6.2%
_GUARD_TYPE_VERSION _LOAD_ATTR_METHOD_NO_DICT 54,292,640 2.2% 8.4%
_SET_IP _CALL_METHOD_DESCRIPTOR_FAST 49,342,100 2.0% 10.4%
_CALL_METHOD_DESCRIPTOR_FAST _CHECK_PERIODIC 49,342,100 2.0% 12.4%
_SAVE_RETURN_OFFSET _PUSH_FRAME 47,787,060 1.9% 14.3%
_SET_IP _CALL_BUILTIN_O 42,902,180 1.7% 16.1%
_CALL_BUILTIN_O _CHECK_PERIODIC 42,902,180 1.7% 17.8%
_LOAD_CONST_INLINE_WITH_NULL _LOAD_FAST_0 39,281,180 1.6% 19.4%
_STORE_FAST_4 _LOAD_FAST_4 39,032,560 1.6% 21.0%
_IS_OP _GUARD_IS_FALSE_POP 38,991,600 1.6% 22.6%
_CHECK_FUNCTION _LOAD_CONST_INLINE_WITH_NULL 35,497,040 1.4% 24.0%
_LOAD_FAST_0 _LOAD_FAST_1 31,309,240 1.3% 25.3%
_GUARD_IS_FALSE_POP _LOAD_FAST_4 29,638,360 1.2% 26.5%
_LOAD_FAST_0 _SET_IP 28,051,800 1.1% 27.6%
_STORE_FAST_3 _LOAD_FAST_1 28,051,800 1.1% 28.7%
_LOAD_FAST_3 _LOAD_FAST_2 27,933,080 1.1% 29.9%
_START_EXECUTOR _TIER2_RESUME_CHECK 27,766,440 1.1% 31.0%
_RESUME_CHECK _CHECK_FUNCTION 26,784,800 1.1% 32.1%
_CHECK_FUNCTION_VERSION _PY_FRAME_GENERAL 26,784,800 1.1% 33.1%
_CHECK_VALIDITY _RESUME_CHECK 26,784,800 1.1% 34.2%
_CHECK_VALIDITY _STORE_FAST_3 26,784,800 1.1% 35.3%
_LOAD_FAST_1 _GUARD_IS_NOT_NONE_POP 26,784,800 1.1% 36.4%
_PUSH_FRAME _CHECK_VALIDITY 26,784,800 1.1% 37.5%
_PY_FRAME_GENERAL _SAVE_RETURN_OFFSET 26,784,800 1.1% 38.6%
_CHECK_VALIDITY _STORE_FAST_6 26,356,080 1.1% 39.6%
_START_EXECUTOR _GUARD_IS_FALSE_POP 26,027,480 1.1% 40.7%
_LOAD_FAST_2 _SET_IP 25,516,160 1.0% 41.7%
_CHECK_VALIDITY _STORE_FAST_4 25,475,540 1.0% 42.7%
_GUARD_IS_NOT_NONE_POP _LOAD_FAST_1 25,475,540 1.0% 43.8%
_LOAD_ATTR_METHOD_NO_DICT _LOAD_FAST_3 25,475,540 1.0% 44.8%
_LOAD_FAST_1 _GUARD_TYPE_VERSION 25,475,540 1.0% 45.8%
_LOAD_FAST_2 _PUSH_NULL 25,475,540 1.0% 46.9%
_LOAD_FAST_2 _IS_OP 25,475,540 1.0% 47.9%
_LOAD_FAST_4 _LOAD_FAST_2 25,475,540 1.0% 48.9%
_LOAD_FAST_5 _SET_IP 25,127,940 1.0% 49.9%
_STORE_FAST_6 _LOAD_FAST_6 25,127,940 1.0% 50.9%
_SET_IP _CHECK_FUNCTION_VERSION 24,327,260 1.0% 51.9%
_STORE_FAST_5 _LOAD_CONST_INLINE 23,907,120 1.0% 52.9%
_CALL_TYPE_1 _STORE_FAST_5 23,866,560 1.0% 53.9%
_LOAD_ATTR_METHOD_NO_DICT _LOAD_FAST_5 23,866,560 1.0% 54.8%
_LOAD_CONST_INLINE _GUARD_TYPE_VERSION 23,866,560 1.0% 55.8%
_LOAD_CONST_INLINE_BORROW_WITH_NULL _LOAD_FAST_0 23,866,560 1.0% 56.8%
_LOAD_FAST_0 _CALL_TYPE_1 23,866,560 1.0% 57.7%
_LOAD_FAST_6 _GUARD_IS_NOT_NONE_POP 23,866,560 1.0% 58.7%
_SET_IP _CHECK_PEP_523 23,796,340 1.0% 59.6%
_PUSH_NULL _LOAD_FAST_0 22,602,620 0.9% 60.6%
_GUARD_IS_NOT_NONE_POP _LOAD_FAST_6 22,602,620 0.9% 61.5%
_LOAD_FAST_6 _PUSH_NULL 22,602,620 0.9% 62.4%
_PUSH_NULL _LOAD_FAST_5 21,740,300 0.9% 63.3%
_GUARD_IS_FALSE_POP _LOAD_CONST_INLINE_BORROW_WITH_NULL 21,338,800 0.9% 64.1%
_INIT_CALL_PY_EXACT_ARGS_2 _SAVE_RETURN_OFFSET 21,002,260 0.8% 65.0%
_PUSH_FRAME _RESUME_CHECK 21,002,260 0.8% 65.8%
_LOAD_FAST_5 _LOAD_FAST_1 20,478,920 0.8% 66.7%
_LOAD_FAST_4 _EXIT_TRACE 18,579,680 0.8% 67.4%
_CHECK_PEP_523 _CHECK_FUNCTION_EXACT_ARGS 17,284,080 0.7% 68.1%
_TIER2_RESUME_CHECK _ITER_CHECK_LIST 16,792,960 0.7% 68.8%
_ITER_CHECK_LIST _GUARD_NOT_EXHAUSTED_LIST 16,792,960 0.7% 69.5%
_PUSH_NULL _LOAD_FAST_2 14,294,140 0.6% 70.0%
_LOAD_FAST_4 _PUSH_NULL 14,253,520 0.6% 70.6%
_STORE_FAST_5 _LOAD_FAST_4 14,253,520 0.6% 71.2%
_GUARD_NOT_EXHAUSTED_LIST _ITER_NEXT_LIST 14,253,520 0.6% 71.8%
_ITER_NEXT_LIST _STORE_FAST_5 14,253,520 0.6% 72.3%
_SET_IP _FOR_ITER_TIER_TWO 13,679,360 0.6% 72.9%
_TIER2_RESUME_CHECK _SET_IP 13,679,360 0.6% 73.4%
_RESUME_CHECK _LOAD_FAST_0 13,557,020 0.5% 74.0%
_CHECK_FUNCTION_EXACT_ARGS _CHECK_STACK_SPACE 13,557,020 0.5% 74.5%
_CHECK_STACK_SPACE _INIT_CALL_PY_EXACT_ARGS_2 13,557,020 0.5% 75.1%
_LOAD_FAST_0 _IS_OP 13,557,020 0.5% 75.6%
_LOAD_FAST_0 _POP_FRAME 13,557,020 0.5% 76.2%
_LOAD_FAST_4 _LOAD_FAST_0 13,557,020 0.5% 76.7%
_POP_FRAME _STORE_FAST_4 13,557,020 0.5% 77.3%
_GUARD_IS_FALSE_POP _EXIT_TRACE 11,584,540 0.5% 77.8%
_LOAD_FAST_4 _POP_FRAME 11,058,680 0.4% 78.2%
_JUMP_TO_TOP _TIER2_RESUME_CHECK 11,058,520 0.4% 78.6%
_LOAD_FAST_4 _LOAD_FAST_1 9,902,780 0.4% 79.0%
_CHECK_PERIODIC _CHECK_VALIDITY_AND_SET_IP 8,752,860 0.4% 79.4%
_CHECK_VALIDITY_AND_SET_IP _BINARY_SUBSCR_DICT 8,712,240 0.4% 79.8%
_SET_IP _CHECK_FUNCTION_EXACT_ARGS 8,709,060 0.4% 80.1%
_CHECK_VALIDITY _UNPACK_SEQUENCE_TWO_TUPLE 8,682,780 0.4% 80.5%
_FOR_ITER_TIER_TWO _CHECK_VALIDITY 8,682,780 0.4% 80.8%
_RESUME_CHECK _LOAD_FAST_1 7,445,240 0.3% 81.1%
_STORE_SUBSCR_DICT _CHECK_VALIDITY 7,445,240 0.3% 81.4%
_SET_IP _STORE_SUBSCR_DICT 7,445,240 0.3% 81.7%
_CHECK_FUNCTION_EXACT_ARGS _CHECK_STACK_SPACE_OPERAND 7,445,240 0.3% 82.0%
_CHECK_STACK_SPACE_OPERAND _INIT_CALL_PY_EXACT_ARGS_2 7,445,240 0.3% 82.3%
_CHECK_VALIDITY _CHECK_FUNCTION 7,445,240 0.3% 82.6%
_LOAD_CONST_INLINE_WITH_NULL _LOAD_FAST_1 7,445,240 0.3% 82.9%
_LOAD_FAST_1 _LOAD_CONST_INLINE_WITH_NULL 7,445,240 0.3% 83.2%
_LOAD_FAST_1 _LOAD_FAST_3 7,445,240 0.3% 83.5%
_LOAD_FAST_3 _SET_IP 7,445,240 0.3% 83.8%
_START_EXECUTOR _LOAD_FAST_4 7,445,240 0.3% 84.1%
_ITER_CHECK_TUPLE _GUARD_NOT_EXHAUSTED_TUPLE 6,919,160 0.3% 84.4%
_CHECK_PEP_523 _CHECK_FUNCTION_VERSION 6,512,260 0.3% 84.7%
_TIER2_RESUME_CHECK _ITER_CHECK_TUPLE 6,388,160 0.3% 84.9%
_LOAD_CONST_INLINE_BORROW _SET_IP 6,347,520 0.3% 85.2%
_UNPACK_SEQUENCE_TWO_TUPLE _STORE_FAST_4 6,225,400 0.3% 85.4%
_STORE_FAST_4 _STORE_FAST_5 6,225,400 0.3% 85.7%
_STORE_FAST_5 _LOAD_FAST_2 6,225,400 0.3% 85.9%
_POP_TOP _JUMP_TO_TOP 6,143,760 0.2% 86.2%

Unsupported opcodes

unsupported opcodes
Opcode Count
CALL 4,020
CALL_FUNCTION_EX 500
CALL_LIST_APPEND 40

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: 2024-06-16