Skip to content

Latest commit

 

History

History
6333 lines (5811 loc) · 115 KB

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

File metadata and controls

6333 lines (5811 loc) · 115 KB

Pystats results

  • benchmark: telco
  • 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
POP_TOP 6,404,440 33.1% 33.1%
ENTER_EXECUTOR 6,401,860 33.1% 66.1%
CALL_KW 6,400,080 33.0% 99.2%
LOAD_FAST 51,820 0.3% 99.4%
STORE_FAST 28,400 0.1% 99.6%
BINARY_OP 14,880 0.1% 99.6%
LOAD_CONST 14,620 0.1% 99.7%
CALL 5,400 0.0% 99.8%
LOAD_GLOBAL_MODULE 5,240 0.0% 99.8%
CALL_NON_PY_GENERAL 4,880 0.0% 99.8%
CALL_METHOD_DESCRIPTOR_FAST 4,520 0.0% 99.8%
LOAD_ATTR_METHOD_LAZY_DICT 4,520 0.0% 99.8%
POP_JUMP_IF_FALSE 3,200 0.0% 99.9%
LOAD_GLOBAL_BUILTIN 3,100 0.0% 99.9%
LOAD_ATTR_METHOD_NO_DICT 3,000 0.0% 99.9%
LOAD_ATTR 2,180 0.0% 99.9%
FOR_ITER_RANGE 1,960 0.0% 99.9%
COMPARE_OP 1,700 0.0% 99.9%
BINARY_SUBSCR_LIST_INT 1,580 0.0% 99.9%
CALL_BUILTIN_FAST 1,580 0.0% 99.9%
TO_BOOL_INT 1,580 0.0% 100.0%
UNPACK_SEQUENCE_TUPLE 1,580 0.0% 100.0%
CALL_BUILTIN_CLASS 1,440 0.0% 100.0%
GET_ITER 1,360 0.0% 100.0%
LOAD_GLOBAL 920 0.0% 100.0%
EXTENDED_ARG 740 0.0% 100.0%
JUMP_BACKWARD 680 0.0% 100.0%
PUSH_NULL 560 0.0% 100.0%
LOAD_ATTR_MODULE 300 0.0% 100.0%
LOAD_DEREF 240 0.0% 100.0%
RETURN_VALUE 160 0.0% 100.0%
CALL_FUNCTION_EX 160 0.0% 100.0%
RESUME_CHECK 120 0.0% 100.0%
STORE_ATTR 100 0.0% 100.0%
BEFORE_WITH 80 0.0% 100.0%
NOP 80 0.0% 100.0%
BUILD_LIST 80 0.0% 100.0%
CALL_INTRINSIC_1 80 0.0% 100.0%
COPY_FREE_VARS 80 0.0% 100.0%
FOR_ITER 80 0.0% 100.0%
LIST_EXTEND 80 0.0% 100.0%
LOAD_FAST_CHECK 80 0.0% 100.0%
BINARY_OP_SUBTRACT_FLOAT 60 0.0% 100.0%
CALL_BUILTIN_FAST_WITH_KEYWORDS 60 0.0% 100.0%
BINARY_SUBSCR 40 0.0% 100.0%
TO_BOOL 40 0.0% 100.0%
UNPACK_SEQUENCE 40 0.0% 100.0%
RESUME 40 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
POP_TOP ENTER_EXECUTOR 6,400,600 33.0% 33.0%
CALL_KW POP_TOP 6,400,000 33.0% 66.1%
ENTER_EXECUTOR CALL_KW 6,398,380 33.0% 99.1%
STORE_FAST LOAD_FAST 22,220 0.1% 99.2%
LOAD_FAST LOAD_FAST 15,560 0.1% 99.3%
LOAD_FAST BINARY_OP 12,380 0.1% 99.4%
BINARY_OP STORE_FAST 12,340 0.1% 99.4%
LOAD_FAST LOAD_CONST 4,900 0.0% 99.5%
LOAD_GLOBAL_MODULE LOAD_CONST 4,760 0.0% 99.5%
CALL_NON_PY_GENERAL STORE_FAST 4,640 0.0% 99.5%
LOAD_FAST CALL_NON_PY_GENERAL 4,520 0.0% 99.5%
LOAD_FAST LOAD_ATTR_METHOD_LAZY_DICT 4,420 0.0% 99.6%
CALL STORE_FAST 4,380 0.0% 99.6%
LOAD_CONST CALL 3,460 0.0% 99.6%
LOAD_ATTR_METHOD_LAZY_DICT LOAD_CONST 3,200 0.0% 99.6%
LOAD_CONST CALL_METHOD_DESCRIPTOR_FAST 3,140 0.0% 99.6%
LOAD_ATTR_METHOD_NO_DICT LOAD_FAST 3,000 0.0% 99.6%
LOAD_FAST LOAD_ATTR_METHOD_NO_DICT 2,960 0.0% 99.7%
STORE_FAST LOAD_GLOBAL_BUILTIN 2,900 0.0% 99.7%
CALL_METHOD_DESCRIPTOR_FAST POP_TOP 2,880 0.0% 99.7%
STORE_FAST LOAD_GLOBAL_MODULE 2,720 0.0% 99.7%
POP_TOP LOAD_FAST 2,560 0.0% 99.7%
FOR_ITER_RANGE STORE_FAST 1,940 0.0% 99.7%
LOAD_FAST LOAD_ATTR 1,880 0.0% 99.7%
LOAD_GLOBAL_BUILTIN LOAD_FAST 1,720 0.0% 99.8%
LOAD_CONST CALL_KW 1,700 0.0% 99.8%
LOAD_ATTR LOAD_FAST 1,640 0.0% 99.8%
CALL_METHOD_DESCRIPTOR_FAST STORE_FAST 1,640 0.0% 99.8%
BINARY_OP LOAD_FAST 1,600 0.0% 99.8%
COMPARE_OP POP_JUMP_IF_FALSE 1,600 0.0% 99.8%
LOAD_CONST BINARY_OP 1,600 0.0% 99.8%
LOAD_CONST COMPARE_OP 1,600 0.0% 99.8%
LOAD_CONST LOAD_FAST 1,600 0.0% 99.8%
BINARY_SUBSCR_LIST_INT STORE_FAST 1,580 0.0% 99.8%
TO_BOOL_INT POP_JUMP_IF_FALSE 1,580 0.0% 99.8%
UNPACK_SEQUENCE_TUPLE STORE_FAST 1,580 0.0% 99.8%
LOAD_FAST BINARY_SUBSCR_LIST_INT 1,560 0.0% 99.8%
LOAD_FAST CALL_BUILTIN_FAST 1,560 0.0% 99.9%
LOAD_FAST TO_BOOL_INT 1,560 0.0% 99.9%
POP_JUMP_IF_FALSE LOAD_GLOBAL_MODULE 1,560 0.0% 99.9%
CALL_BUILTIN_FAST UNPACK_SEQUENCE_TUPLE 1,560 0.0% 99.9%
ENTER_EXECUTOR POP_TOP 1,340 0.0% 99.9%
CALL_BUILTIN_CLASS GET_ITER 1,320 0.0% 99.9%
LOAD_CONST CALL_BUILTIN_CLASS 1,280 0.0% 99.9%
LOAD_ATTR_METHOD_LAZY_DICT CALL_METHOD_DESCRIPTOR_FAST 1,280 0.0% 99.9%
GET_ITER FOR_ITER_RANGE 1,260 0.0% 99.9%
ENTER_EXECUTOR LOAD_FAST 1,260 0.0% 99.9%
POP_JUMP_IF_FALSE ENTER_EXECUTOR 1,260 0.0% 99.9%
LOAD_GLOBAL_BUILTIN LOAD_CONST 1,260 0.0% 99.9%
BINARY_OP BINARY_OP 900 0.0% 99.9%
ENTER_EXECUTOR CALL 880 0.0% 99.9%
STORE_FAST LOAD_GLOBAL 480 0.0% 99.9%
POP_TOP LOAD_GLOBAL_MODULE 420 0.0% 99.9%
CALL CALL 420 0.0% 100.0%
EXTENDED_ARG FOR_ITER_RANGE 360 0.0% 100.0%
POP_TOP EXTENDED_ARG 340 0.0% 100.0%
POP_TOP JUMP_BACKWARD 340 0.0% 100.0%
EXTENDED_ARG JUMP_BACKWARD 340 0.0% 100.0%
LOAD_GLOBAL LOAD_GLOBAL_MODULE 340 0.0% 100.0%
POP_JUMP_IF_FALSE LOAD_FAST 340 0.0% 100.0%
JUMP_BACKWARD EXTENDED_ARG 320 0.0% 100.0%
JUMP_BACKWARD FOR_ITER_RANGE 300 0.0% 100.0%
LOAD_ATTR_MODULE PUSH_NULL 300 0.0% 100.0%
PUSH_NULL CALL 200 0.0% 100.0%
LOAD_FAST CALL 200 0.0% 100.0%
LOAD_GLOBAL LOAD_CONST 200 0.0% 100.0%
LOAD_GLOBAL_MODULE LOAD_ATTR_MODULE 200 0.0% 100.0%
PUSH_NULL LOAD_FAST 160 0.0% 100.0%
CALL CALL_NON_PY_GENERAL 160 0.0% 100.0%
LOAD_CONST LOAD_CONST 160 0.0% 100.0%
LOAD_DEREF PUSH_NULL 160 0.0% 100.0%
PUSH_NULL CALL_NON_PY_GENERAL 120 0.0% 100.0%
LOAD_GLOBAL LOAD_GLOBAL_BUILTIN 120 0.0% 100.0%
CALL_NON_PY_GENERAL POP_TOP 120 0.0% 100.0%
POP_TOP LOAD_GLOBAL 100 0.0% 100.0%
CALL POP_TOP 100 0.0% 100.0%
CALL CALL_METHOD_DESCRIPTOR_FAST 100 0.0% 100.0%
COMPARE_OP COMPARE_OP 100 0.0% 100.0%
LOAD_ATTR PUSH_NULL 100 0.0% 100.0%
LOAD_ATTR LOAD_ATTR 100 0.0% 100.0%
LOAD_ATTR LOAD_ATTR_METHOD_LAZY_DICT 100 0.0% 100.0%
LOAD_ATTR LOAD_ATTR_MODULE 100 0.0% 100.0%
LOAD_GLOBAL LOAD_ATTR 100 0.0% 100.0%
LOAD_GLOBAL_MODULE LOAD_ATTR 100 0.0% 100.0%
BEFORE_WITH STORE_FAST 80 0.0% 100.0%
GET_ITER EXTENDED_ARG 80 0.0% 100.0%
NOP LOAD_DEREF 80 0.0% 100.0%
POP_TOP NOP 80 0.0% 100.0%
PUSH_NULL LOAD_FAST_CHECK 80 0.0% 100.0%
RETURN_VALUE RETURN_VALUE 80 0.0% 100.0%
BUILD_LIST LOAD_DEREF 80 0.0% 100.0%
CALL CALL_BUILTIN_CLASS 80 0.0% 100.0%
CALL_FUNCTION_EX COPY_FREE_VARS 80 0.0% 100.0%
CALL_INTRINSIC_1 CALL_FUNCTION_EX 80 0.0% 100.0%
CALL_KW STORE_FAST 80 0.0% 100.0%
LIST_EXTEND CALL_INTRINSIC_1 80 0.0% 100.0%
LOAD_DEREF LIST_EXTEND 80 0.0% 100.0%
LOAD_FAST BUILD_LIST 80 0.0% 100.0%
LOAD_FAST CALL_FUNCTION_EX 80 0.0% 100.0%
LOAD_FAST_CHECK CALL 80 0.0% 100.0%

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.

BEFORE_WITH

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

BINARY_SUBSCR

Successors and predecessors for BINARY_SUBSCR
Predecessors Count Percentage
LOAD_FAST 40 100.0%
Successors Count Percentage
STORE_FAST 20 50.0%
BINARY_SUBSCR_LIST_INT 20 50.0%

GET_ITER

Successors and predecessors for GET_ITER
Predecessors Count Percentage
CALL_BUILTIN_CLASS 1,320 97.1%
CALL 40 2.9%
Successors Count Percentage
FOR_ITER_RANGE 1,260 92.6%
EXTENDED_ARG 80 5.9%
FOR_ITER 20 1.5%

NOP

Successors and predecessors for NOP
Predecessors Count Percentage
POP_TOP 80 100.0%
Successors Count Percentage
LOAD_DEREF 80 100.0%

POP_TOP

Successors and predecessors for POP_TOP
Predecessors Count Percentage
CALL_KW 6,400,000 99.9%
CALL_METHOD_DESCRIPTOR_FAST 2,880 0.0%
ENTER_EXECUTOR 1,340 0.0%
CALL_NON_PY_GENERAL 120 0.0%
CALL 100 0.0%
Successors Count Percentage
ENTER_EXECUTOR 6,400,600 99.9%
LOAD_FAST 2,560 0.0%
LOAD_GLOBAL_MODULE 420 0.0%
EXTENDED_ARG 340 0.0%
JUMP_BACKWARD 340 0.0%

PUSH_NULL

Successors and predecessors for PUSH_NULL
Predecessors Count Percentage
LOAD_ATTR_MODULE 300 53.6%
LOAD_DEREF 160 28.6%
LOAD_ATTR 100 17.9%
Successors Count Percentage
CALL 200 35.7%
LOAD_FAST 160 28.6%
CALL_NON_PY_GENERAL 120 21.4%
LOAD_FAST_CHECK 80 14.3%

RETURN_VALUE

Successors and predecessors for RETURN_VALUE
Predecessors Count Percentage
RETURN_VALUE 80 50.0%
BINARY_OP_SUBTRACT_FLOAT 60 37.5%
BINARY_OP 20 12.5%
Successors Count Percentage
RETURN_VALUE 80 50.0%
LOAD_GLOBAL 40 25.0%
LOAD_GLOBAL_MODULE 40 25.0%

TO_BOOL

Successors and predecessors for TO_BOOL
Predecessors Count Percentage
LOAD_FAST 40 100.0%
Successors Count Percentage
POP_JUMP_IF_FALSE 20 50.0%
TO_BOOL_INT 20 50.0%

BINARY_OP

Successors and predecessors for BINARY_OP
Predecessors Count Percentage
LOAD_FAST 12,380 83.2%
LOAD_CONST 1,600 10.8%
BINARY_OP 900 6.0%
Successors Count Percentage
STORE_FAST 12,340 82.9%
LOAD_FAST 1,600 10.8%
BINARY_OP 900 6.0%
RETURN_VALUE 20 0.1%
BINARY_OP_SUBTRACT_FLOAT 20 0.1%

BUILD_LIST

Successors and predecessors for BUILD_LIST
Predecessors Count Percentage
LOAD_FAST 80 100.0%
Successors Count Percentage
LOAD_DEREF 80 100.0%

CALL

Successors and predecessors for CALL
Predecessors Count Percentage
LOAD_CONST 3,460 64.1%
ENTER_EXECUTOR 880 16.3%
CALL 420 7.8%
PUSH_NULL 200 3.7%
LOAD_FAST 200 3.7%
Successors Count Percentage
STORE_FAST 4,380 81.1%
CALL 420 7.8%
CALL_NON_PY_GENERAL 160 3.0%
POP_TOP 100 1.9%
CALL_METHOD_DESCRIPTOR_FAST 100 1.9%

CALL_FUNCTION_EX

Successors and predecessors for CALL_FUNCTION_EX
Predecessors Count Percentage
CALL_INTRINSIC_1 80 50.0%
LOAD_FAST 80 50.0%
Successors Count Percentage
COPY_FREE_VARS 80 50.0%
RESUME_CHECK 60 37.5%
RESUME 20 12.5%

CALL_INTRINSIC_1

Successors and predecessors for CALL_INTRINSIC_1
Predecessors Count Percentage
LIST_EXTEND 80 100.0%
Successors Count Percentage
CALL_FUNCTION_EX 80 100.0%

CALL_KW

Successors and predecessors for CALL_KW
Predecessors Count Percentage
ENTER_EXECUTOR 6,398,380 100.0%
LOAD_CONST 1,700 0.0%
Successors Count Percentage
POP_TOP 6,400,000 100.0%
STORE_FAST 80 0.0%

COMPARE_OP

Successors and predecessors for COMPARE_OP
Predecessors Count Percentage
LOAD_CONST 1,600 94.1%
COMPARE_OP 100 5.9%
Successors Count Percentage
POP_JUMP_IF_FALSE 1,600 94.1%
COMPARE_OP 100 5.9%

COPY_FREE_VARS

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

ENTER_EXECUTOR

Successors and predecessors for ENTER_EXECUTOR
Predecessors Count Percentage
POP_TOP 6,400,600 100.0%
POP_JUMP_IF_FALSE 1,260 0.0%
Successors Count Percentage
CALL_KW 6,398,380 99.9%
POP_TOP 1,340 0.0%
LOAD_FAST 1,260 0.0%
CALL 880 0.0%

EXTENDED_ARG

Successors and predecessors for EXTENDED_ARG
Predecessors Count Percentage
POP_TOP 340 45.9%
JUMP_BACKWARD 320 43.2%
GET_ITER 80 10.8%
Successors Count Percentage
FOR_ITER_RANGE 360 48.6%
JUMP_BACKWARD 340 45.9%
FOR_ITER 40 5.4%

FOR_ITER

Successors and predecessors for FOR_ITER
Predecessors Count Percentage
EXTENDED_ARG 40 50.0%
GET_ITER 20 25.0%
JUMP_BACKWARD 20 25.0%
Successors Count Percentage
STORE_FAST 40 50.0%
FOR_ITER_RANGE 40 50.0%

JUMP_BACKWARD

Successors and predecessors for JUMP_BACKWARD
Predecessors Count Percentage
POP_TOP 340 50.0%
EXTENDED_ARG 340 50.0%
Successors Count Percentage
EXTENDED_ARG 320 47.1%
FOR_ITER_RANGE 300 44.1%
CALL 20 2.9%
FOR_ITER 20 2.9%
LOAD_FAST 20 2.9%

LIST_EXTEND

Successors and predecessors for LIST_EXTEND
Predecessors Count Percentage
LOAD_DEREF 80 100.0%
Successors Count Percentage
CALL_INTRINSIC_1 80 100.0%

LOAD_ATTR

Successors and predecessors for LOAD_ATTR
Predecessors Count Percentage
LOAD_FAST 1,880 86.2%
LOAD_ATTR 100 4.6%
LOAD_GLOBAL 100 4.6%
LOAD_GLOBAL_MODULE 100 4.6%
Successors Count Percentage
LOAD_FAST 1,640 75.2%
PUSH_NULL 100 4.6%
LOAD_ATTR 100 4.6%
LOAD_ATTR_METHOD_LAZY_DICT 100 4.6%
LOAD_ATTR_MODULE 100 4.6%

LOAD_CONST

Successors and predecessors for LOAD_CONST
Predecessors Count Percentage
LOAD_FAST 4,900 33.5%
LOAD_GLOBAL_MODULE 4,760 32.6%
LOAD_ATTR_METHOD_LAZY_DICT 3,200 21.9%
LOAD_GLOBAL_BUILTIN 1,260 8.6%
LOAD_GLOBAL 200 1.4%
Successors Count Percentage
CALL 3,460 23.7%
CALL_METHOD_DESCRIPTOR_FAST 3,140 21.5%
CALL_KW 1,700 11.6%
BINARY_OP 1,600 10.9%
COMPARE_OP 1,600 10.9%

LOAD_DEREF

Successors and predecessors for LOAD_DEREF
Predecessors Count Percentage
NOP 80 33.3%
BUILD_LIST 80 33.3%
RESUME_CHECK 60 25.0%
RESUME 20 8.3%
Successors Count Percentage
PUSH_NULL 160 66.7%
LIST_EXTEND 80 33.3%

LOAD_FAST

Successors and predecessors for LOAD_FAST
Predecessors Count Percentage
STORE_FAST 22,220 42.9%
LOAD_FAST 15,560 30.0%
LOAD_ATTR_METHOD_NO_DICT 3,000 5.8%
POP_TOP 2,560 4.9%
LOAD_GLOBAL_BUILTIN 1,720 3.3%
Successors Count Percentage
LOAD_FAST 15,560 30.0%
BINARY_OP 12,380 23.9%
LOAD_CONST 4,900 9.5%
CALL_NON_PY_GENERAL 4,520 8.7%
LOAD_ATTR_METHOD_LAZY_DICT 4,420 8.5%

LOAD_FAST_CHECK

Successors and predecessors for LOAD_FAST_CHECK
Predecessors Count Percentage
PUSH_NULL 80 100.0%
Successors Count Percentage
CALL 80 100.0%

LOAD_GLOBAL

Successors and predecessors for LOAD_GLOBAL
Predecessors Count Percentage
STORE_FAST 480 52.2%
POP_TOP 100 10.9%
LOAD_GLOBAL 80 8.7%
RETURN_VALUE 40 4.3%
POP_JUMP_IF_FALSE 40 4.3%
Successors Count Percentage
LOAD_GLOBAL_MODULE 340 37.0%
LOAD_CONST 200 21.7%
LOAD_GLOBAL_BUILTIN 120 13.0%
LOAD_ATTR 100 10.9%
LOAD_GLOBAL 80 8.7%

POP_JUMP_IF_FALSE

Successors and predecessors for POP_JUMP_IF_FALSE
Predecessors Count Percentage
COMPARE_OP 1,600 50.0%
TO_BOOL_INT 1,580 49.4%
TO_BOOL 20 0.6%
Successors Count Percentage
LOAD_GLOBAL_MODULE 1,560 48.8%
ENTER_EXECUTOR 1,260 39.4%
LOAD_FAST 340 10.6%
LOAD_GLOBAL 40 1.2%

STORE_ATTR

Successors and predecessors for STORE_ATTR
Predecessors Count Percentage
CALL_NON_PY_GENERAL 60 60.0%
CALL 20 20.0%
STORE_ATTR 20 20.0%
Successors Count Percentage
LOAD_GLOBAL 40 40.0%
LOAD_GLOBAL_BUILTIN 40 40.0%
STORE_ATTR 20 20.0%

STORE_FAST

Successors and predecessors for STORE_FAST
Predecessors Count Percentage
BINARY_OP 12,340 43.5%
CALL_NON_PY_GENERAL 4,640 16.3%
CALL 4,380 15.4%
FOR_ITER_RANGE 1,940 6.8%
CALL_METHOD_DESCRIPTOR_FAST 1,640 5.8%
Successors Count Percentage
LOAD_FAST 22,220 78.2%
LOAD_GLOBAL_BUILTIN 2,900 10.2%
LOAD_GLOBAL_MODULE 2,720 9.6%
LOAD_GLOBAL 480 1.7%
LOAD_CONST 80 0.3%

UNPACK_SEQUENCE

Successors and predecessors for UNPACK_SEQUENCE
Predecessors Count Percentage
CALL 20 50.0%
CALL_BUILTIN_FAST 20 50.0%
Successors Count Percentage
STORE_FAST 20 50.0%
UNPACK_SEQUENCE_TUPLE 20 50.0%

RESUME

Successors and predecessors for RESUME
Predecessors Count Percentage
CALL_FUNCTION_EX 20 50.0%
COPY_FREE_VARS 20 50.0%
Successors Count Percentage
LOAD_DEREF 20 50.0%
LOAD_GLOBAL 20 50.0%

BINARY_OP_SUBTRACT_FLOAT

Successors and predecessors for BINARY_OP_SUBTRACT_FLOAT
Predecessors Count Percentage
LOAD_FAST 40 66.7%
BINARY_OP 20 33.3%
Successors Count Percentage
RETURN_VALUE 60 100.0%

BINARY_SUBSCR_LIST_INT

Successors and predecessors for BINARY_SUBSCR_LIST_INT
Predecessors Count Percentage
LOAD_FAST 1,560 98.7%
BINARY_SUBSCR 20 1.3%
Successors Count Percentage
STORE_FAST 1,580 100.0%

CALL_BUILTIN_CLASS

Successors and predecessors for CALL_BUILTIN_CLASS
Predecessors Count Percentage
LOAD_CONST 1,280 88.9%
CALL 80 5.6%
LOAD_FAST 40 2.8%
CALL_BUILTIN_CLASS 40 2.8%
Successors Count Percentage
GET_ITER 1,320 91.7%
STORE_FAST 60 4.2%
CALL_BUILTIN_CLASS 40 2.8%
CALL 20 1.4%

CALL_BUILTIN_FAST

Successors and predecessors for CALL_BUILTIN_FAST
Predecessors Count Percentage
LOAD_FAST 1,560 98.7%
CALL 20 1.3%
Successors Count Percentage
UNPACK_SEQUENCE_TUPLE 1,560 98.7%
UNPACK_SEQUENCE 20 1.3%

CALL_BUILTIN_FAST_WITH_KEYWORDS

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

CALL_METHOD_DESCRIPTOR_FAST

Successors and predecessors for CALL_METHOD_DESCRIPTOR_FAST
Predecessors Count Percentage
LOAD_CONST 3,140 69.5%
LOAD_ATTR_METHOD_LAZY_DICT 1,280 28.3%
CALL 100 2.2%
Successors Count Percentage
POP_TOP 2,880 63.7%
STORE_FAST 1,640 36.3%

CALL_NON_PY_GENERAL

Successors and predecessors for CALL_NON_PY_GENERAL
Predecessors Count Percentage
LOAD_FAST 4,520 92.6%
CALL 160 3.3%
PUSH_NULL 120 2.5%
LOAD_CONST 40 0.8%
LOAD_GLOBAL_MODULE 40 0.8%
Successors Count Percentage
STORE_FAST 4,640 95.1%
POP_TOP 120 2.5%
LOAD_FAST 60 1.2%
STORE_ATTR 60 1.2%

FOR_ITER_RANGE

Successors and predecessors for FOR_ITER_RANGE
Predecessors Count Percentage
GET_ITER 1,260 64.3%
EXTENDED_ARG 360 18.4%
JUMP_BACKWARD 300 15.3%
FOR_ITER 40 2.0%
Successors Count Percentage
STORE_FAST 1,940 99.0%
LOAD_GLOBAL 20 1.0%

LOAD_ATTR_METHOD_LAZY_DICT

Successors and predecessors for LOAD_ATTR_METHOD_LAZY_DICT
Predecessors Count Percentage
LOAD_FAST 4,420 97.8%
LOAD_ATTR 100 2.2%
Successors Count Percentage
LOAD_CONST 3,200 70.8%
CALL_METHOD_DESCRIPTOR_FAST 1,280 28.3%
CALL 40 0.9%

LOAD_ATTR_METHOD_NO_DICT

Successors and predecessors for LOAD_ATTR_METHOD_NO_DICT
Predecessors Count Percentage
LOAD_FAST 2,960 98.7%
LOAD_ATTR 40 1.3%
Successors Count Percentage
LOAD_FAST 3,000 100.0%

LOAD_ATTR_MODULE

Successors and predecessors for LOAD_ATTR_MODULE
Predecessors Count Percentage
LOAD_GLOBAL_MODULE 200 66.7%
LOAD_ATTR 100 33.3%
Successors Count Percentage
PUSH_NULL 300 100.0%

LOAD_GLOBAL_BUILTIN

Successors and predecessors for LOAD_GLOBAL_BUILTIN
Predecessors Count Percentage
STORE_FAST 2,900 93.5%
LOAD_GLOBAL 120 3.9%
STORE_ATTR 40 1.3%
LOAD_GLOBAL_BUILTIN 40 1.3%
Successors Count Percentage
LOAD_FAST 1,720 55.5%
LOAD_CONST 1,260 40.6%
LOAD_GLOBAL 40 1.3%
LOAD_GLOBAL_BUILTIN 40 1.3%
LOAD_GLOBAL_MODULE 40 1.3%

LOAD_GLOBAL_MODULE

Successors and predecessors for LOAD_GLOBAL_MODULE
Predecessors Count Percentage
STORE_FAST 2,720 51.9%
POP_JUMP_IF_FALSE 1,560 29.8%
POP_TOP 420 8.0%
LOAD_GLOBAL 340 6.5%
LOAD_GLOBAL_MODULE 80 1.5%
Successors Count Percentage
LOAD_CONST 4,760 90.8%
LOAD_ATTR_MODULE 200 3.8%
LOAD_ATTR 100 1.9%
LOAD_GLOBAL_MODULE 80 1.5%
LOAD_GLOBAL 40 0.8%

RESUME_CHECK

Successors and predecessors for RESUME_CHECK
Predecessors Count Percentage
CALL_FUNCTION_EX 60 50.0%
COPY_FREE_VARS 60 50.0%
Successors Count Percentage
LOAD_DEREF 60 50.0%
LOAD_GLOBAL_MODULE 40 33.3%
LOAD_GLOBAL 20 16.7%

TO_BOOL_INT

Successors and predecessors for TO_BOOL_INT
Predecessors Count Percentage
LOAD_FAST 1,560 98.7%
TO_BOOL 20 1.3%
Successors Count Percentage
POP_JUMP_IF_FALSE 1,580 100.0%

UNPACK_SEQUENCE_TUPLE

Successors and predecessors for UNPACK_SEQUENCE_TUPLE
Predecessors Count Percentage
CALL_BUILTIN_FAST 1,560 98.7%
UNPACK_SEQUENCE 20 1.3%
Successors Count Percentage
STORE_FAST 1,580 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.

13,960 93.4%
hit

Specialized instructions that complete.

60 0.4%
Success Count Ratio
Success 20 2.2%
Failure 900 97.8%
Failure kind Count Ratio
add other 500 55.6%
multiply other 200 22.2%
and int 100 11.1%
multiply different types 100 11.1%

BINARY_SUBSCR

specialization stats for BINARY_SUBSCR family
Kind Count Ratio
deferred

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

20 1.2%
hit

Specialized instructions that complete.

1,580 97.5%
Success Count Ratio
Success 20 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.

4,620 35.5%
hit

Specialized instructions that complete.

7,600 58.5%
Success Count Ratio
Success 380 48.7%
Failure 400 51.3%
Failure kind Count Ratio
class no vectorcall 400 100.0%

COMPARE_OP

specialization stats for COMPARE_OP family
Kind Count Ratio
deferred

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

1,600 94.1%
Success Count Ratio
Success 0 0.0%
Failure 100 100.0%
Failure kind Count Ratio
different types 100 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.

40 2.0%
hit

Specialized instructions that complete.

1,960 96.1%
Success Count Ratio
Success 40 100.0%
Failure 0 0.0%

LOAD_ATTR

specialization stats for LOAD_ATTR family
Kind Count Ratio
deferred

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

1,840 18.4%
hit

Specialized instructions that complete.

7,820 78.2%
Success Count Ratio
Success 240 70.6%
Failure 100 29.4%
Failure kind Count Ratio
overridden 100 100.0%

LOAD_GLOBAL

specialization stats for LOAD_GLOBAL family
Kind Count Ratio
deferred

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

460 5.0%
hit

Specialized instructions that complete.

8,340 90.1%
Success Count Ratio
Success 460 100.0%
Failure 0 0.0%

POP_JUMP_IF_FALSE

specialization stats for POP_JUMP_IF_FALSE family

STORE_ATTR

specialization stats for STORE_ATTR family
Kind Count Ratio
deferred

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

80 80.0%
Success Count Ratio
Success 0 0.0%
Failure 20 100.0%
Failure kind Count Ratio
overridden 20 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.

20 1.2%
hit

Specialized instructions that complete.

1,580 97.5%
Success Count Ratio
Success 20 100.0%
Failure 0 0.0%

UNPACK_SEQUENCE

specialization stats for UNPACK_SEQUENCE family
Kind Count Ratio
deferred

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

20 1.2%
hit

Specialized instructions that complete.

1,580 97.5%
Success Count Ratio
Success 20 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.

19,305,720 99.7%
Not specialized

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

28,580 0.1%
Specialized hits

Specialized instructions, e.g. LOAD_ATTR_MODULE that complete.

35,520 0.2%
Specialized misses

Specialized instructions, e.g. LOAD_ATTR_MODULE that deopt.

0 0.0%

Deferred by instruction

Breakdown of deferred (not specialized) instruction counts by family
Name Count Ratio
BINARY_OP 13,960 61.6%
CALL 4,620 20.4%
LOAD_ATTR 1,840 8.1%
COMPARE_OP 1,600 7.1%
LOAD_GLOBAL 460 2.0%
STORE_ATTR 80 0.4%
FOR_ITER 40 0.2%
BINARY_SUBSCR 20 0.1%
TO_BOOL 20 0.1%
UNPACK_SEQUENCE 20 0.1%

Misses by instruction

Breakdown of misses (specialized deopts) instruction counts by family

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 0 0.0%
Calls to Python functions inlined 160 100.0%
Calls via PyEval_EvalFrame (total) 0 0.0%
Calls via PyEval_EvalFrame (vector) 0 0.0%
Calls via PyEval_EvalFrame (generator) 0 0.0%
Calls via PyEval_EvalFrame (legacy) 0 0.0%
Calls via PyEval_EvalFrame (function vectorcall) 0 0.0%
Calls via PyEval_EvalFrame (build class) 0 0.0%
Calls via PyEval_EvalFrame (slot) 0 0.0%
Calls via PyEval_EvalFrame (function ex) 160 100.0%
Calls via PyEval_EvalFrame (api) 0 0.0%
Calls via PyEval_EvalFrame (method) 0 0.0%
Frame objects created 0 0.0%
Frames pushed 160 100.0%

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 28,814,360 20.8%
Frees to freelist 28,814,360
Allocations 110,034,860 79.2%
Allocations to 512 bytes 110,034,640 79.2%
Allocations to 4 kbytes 60 0.0%
Allocations over 4 kbytes 160 0.0%
Frees 110,034,531
Inline values 0
Interpreter increfs 209,442,800 38.6%
Interpreter decrefs 292,358,280 43.3%
Increfs 332,979,014 61.4%
Decrefs 382,507,567 56.7%
Materialize dict (on request) 0
Materialize dict (new key) 0
Materialize dict (too big) 0
Materialize dict (str subclass) 0
Method cache hits 19,201,988
Method cache misses 312
Method cache collisions 238
Method cache dunder hits 217
Method cache dunder misses 23

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

1,800
Traces created

The number of traces that were successfully created.

60 3.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.

0 0.0%
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.

1,740 96.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

16,010,080
Uops executed

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

745,699,540 4,657.7%
Count Ratio
Optimizer attempts

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

60
Optimizer successes

The number of traces that were successfully optimized.

60 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 0 0.0%
<= 16 0 0.0%
<= 32 20 33.3%
<= 64 20 33.3%
<= 128 0 0.0%
<= 256 20 33.3%

Optimized trace length histogram

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

Trace run length histogram

trace run length histogram
Range Count Ratio
<= 1 0 0.0%
<= 2 0 0.0%
<= 4 0 0.0%
<= 8 1,340 0.0%
<= 16 0 0.0%
<= 32 900 0.0%
<= 64 3,207,520 20.0%
<= 128 6,398,400 40.0%

Uop execution stats

uop execution stats
Name Count Self Cumulative Miss ratio
_LOAD_FAST 128,017,840 17.2% 17.2%
_SET_IP 89,611,760 12.0% 29.2%
_CHECK_VALIDITY 89,611,760 12.0% 41.2%
_STORE_FAST 83,213,360 11.2% 52.4%
_BINARY_OP 48,012,940 6.4% 58.8%
_CHECK_PERIODIC 28,802,020 3.9% 62.7%
_LOAD_CONST_INLINE_BORROW 19,197,000 2.6% 65.2%
_GUARD_TYPE_VERSION 16,005,220 2.1% 67.4%
_CALL_NON_PY_GENERAL 16,004,320 2.1% 69.5%
_CHECK_IS_NOT_PY_CALLABLE 16,004,320 2.1% 71.7%
_LOAD_FAST_3 16,004,320 2.1% 73.8%
_LOAD_CONST_INLINE_WITH_NULL 12,797,680 1.7% 75.5%
_GUARD_IS_FALSE_POP 12,796,800 1.7% 77.3% 25.1%
_LOAD_CONST_INLINE 12,796,780 1.7% 79.0%
_EXIT_TRACE 9,608,160 1.3% 80.3%
_START_EXECUTOR 9,608,160 1.3% 81.5%
_CHECK_FUNCTION 9,606,820 1.3% 82.8%
_LOAD_ATTR_METHOD_NO_DICT 9,605,920 1.3% 84.1%
_COLD_EXIT 6,401,920 0.9% 85.0%
_GUARD_NOT_EXHAUSTED_RANGE 6,400,640 0.9% 85.8% 0.0%
_ITER_CHECK_RANGE 6,400,640 0.9% 86.7%
_TIER2_RESUME_CHECK 6,400,640 0.9% 87.6%
_CALL_METHOD_DESCRIPTOR_FAST 6,399,300 0.9% 88.4%
_CHECK_ATTR_METHOD_LAZY_DICT 6,399,300 0.9% 89.3%
_ITER_NEXT_RANGE 6,399,300 0.9% 90.1%
_LOAD_ATTR_METHOD_LAZY_DICT 6,399,300 0.9% 91.0%
_LOAD_FAST_7 6,399,300 0.9% 91.8%
_BINARY_SUBSCR_LIST_INT 6,398,400 0.9% 92.7%
_TO_BOOL_INT 6,398,400 0.9% 93.6%
_UNPACK_SEQUENCE_TUPLE 6,398,400 0.9% 94.4%
_CALL_BUILTIN_FAST 6,398,400 0.9% 95.3%
_COMPARE_OP 6,398,400 0.9% 96.1%
_LOAD_ATTR 6,398,400 0.9% 97.0%
_LOAD_FAST_2 6,398,400 0.9% 97.9%
_LOAD_FAST_4 6,398,400 0.9% 98.7%
_LOAD_FAST_5 6,398,400 0.9% 99.6%
_LOAD_FAST_6 3,207,520 0.4% 100.0%
_POP_TOP 900 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_VALIDITY _STORE_FAST 64,017,260 8.6% 8.6%
_STORE_FAST _LOAD_FAST 57,618,880 7.7% 16.3%
_SET_IP _BINARY_OP 48,012,940 6.4% 22.8%
_BINARY_OP _CHECK_VALIDITY 48,012,940 6.4% 29.2%
_LOAD_FAST _SET_IP 38,407,020 5.2% 34.3%
_LOAD_FAST _LOAD_FAST 38,407,000 5.2% 39.5%
_CHECK_PERIODIC _CHECK_VALIDITY 28,802,020 3.9% 43.4%
_LOAD_CONST_INLINE_BORROW _SET_IP 19,196,100 2.6% 45.9%
_SET_IP _CHECK_IS_NOT_PY_CALLABLE 16,004,320 2.1% 48.1%
_CALL_NON_PY_GENERAL _CHECK_PERIODIC 16,004,320 2.1% 50.2%
_CHECK_IS_NOT_PY_CALLABLE _CALL_NON_PY_GENERAL 16,004,320 2.1% 52.4%
_LOAD_FAST_3 _SET_IP 16,004,320 2.1% 54.5%
_LOAD_FAST _LOAD_CONST_INLINE_BORROW 12,796,800 1.7% 56.2%
_CHECK_FUNCTION _LOAD_CONST_INLINE_WITH_NULL 9,606,820 1.3% 57.5%
_GUARD_TYPE_VERSION _LOAD_ATTR_METHOD_NO_DICT 9,605,920 1.3% 58.8%
_LOAD_ATTR_METHOD_NO_DICT _LOAD_FAST_3 9,605,920 1.3% 60.1%
_LOAD_FAST _GUARD_TYPE_VERSION 9,605,920 1.3% 61.4%
_ITER_CHECK_RANGE _GUARD_NOT_EXHAUSTED_RANGE 6,400,640 0.9% 62.2%
_START_EXECUTOR _TIER2_RESUME_CHECK 6,400,640 0.9% 63.1%
_TIER2_RESUME_CHECK _ITER_CHECK_RANGE 6,400,640 0.9% 64.0%
_SET_IP _CALL_METHOD_DESCRIPTOR_FAST 6,399,300 0.9% 64.8%
_CALL_METHOD_DESCRIPTOR_FAST _CHECK_PERIODIC 6,399,300 0.9% 65.7%
_CHECK_ATTR_METHOD_LAZY_DICT _LOAD_ATTR_METHOD_LAZY_DICT 6,399,300 0.9% 66.5%
_GUARD_NOT_EXHAUSTED_RANGE _ITER_NEXT_RANGE 6,399,300 0.9% 67.4%
_GUARD_TYPE_VERSION _CHECK_ATTR_METHOD_LAZY_DICT 6,399,300 0.9% 68.2%
_ITER_NEXT_RANGE _STORE_FAST 6,399,300 0.9% 69.1%
_LOAD_ATTR_METHOD_LAZY_DICT _LOAD_CONST_INLINE_BORROW 6,399,300 0.9% 70.0%
_LOAD_FAST_7 _GUARD_TYPE_VERSION 6,399,300 0.9% 70.8%
_STORE_FAST _LOAD_FAST_7 6,399,300 0.9% 71.7%
_BINARY_SUBSCR_LIST_INT _STORE_FAST 6,398,400 0.9% 72.5%
_TO_BOOL_INT _GUARD_IS_FALSE_POP 6,398,400 0.9% 73.4%
_UNPACK_SEQUENCE_TUPLE _STORE_FAST 6,398,400 0.9% 74.3%
_SET_IP _CALL_BUILTIN_FAST 6,398,400 0.9% 75.1%
_SET_IP _COMPARE_OP 6,398,400 0.9% 76.0%
_SET_IP _LOAD_ATTR 6,398,400 0.9% 76.8%
_CALL_BUILTIN_FAST _CHECK_PERIODIC 6,398,400 0.9% 77.7%
_CHECK_VALIDITY _UNPACK_SEQUENCE_TUPLE 6,398,400 0.9% 78.5%
_CHECK_VALIDITY _GUARD_IS_FALSE_POP 6,398,400 0.9% 79.4%
_CHECK_VALIDITY _LOAD_FAST 6,398,400 0.9% 80.3%
_CHECK_VALIDITY _LOAD_FAST_3 6,398,400 0.9% 81.1%
_COMPARE_OP _CHECK_VALIDITY 6,398,400 0.9% 82.0%
_GUARD_IS_FALSE_POP _CHECK_FUNCTION 6,398,400 0.9% 82.8%
_LOAD_ATTR _CHECK_VALIDITY 6,398,400 0.9% 83.7%
_LOAD_CONST_INLINE _LOAD_FAST 6,398,400 0.9% 84.5%
_LOAD_CONST_INLINE_WITH_NULL _LOAD_CONST_INLINE 6,398,400 0.9% 85.4%
_LOAD_FAST _BINARY_SUBSCR_LIST_INT 6,398,400 0.9% 86.3%
_LOAD_FAST _TO_BOOL_INT 6,398,400 0.9% 87.1%
_LOAD_FAST _LOAD_FAST_5 6,398,400 0.9% 88.0%
_LOAD_FAST_2 _LOAD_FAST 6,398,400 0.9% 88.8%
_LOAD_FAST_4 _SET_IP 6,398,400 0.9% 89.7%
_LOAD_FAST_5 _SET_IP 6,398,400 0.9% 90.6%
_STORE_FAST _LOAD_FAST_2 6,398,400 0.9% 91.4%
_STORE_FAST _LOAD_FAST_4 6,398,400 0.9% 92.3%
_LOAD_CONST_INLINE _EXIT_TRACE 6,398,380 0.9% 93.1%
_LOAD_CONST_INLINE_WITH_NULL _LOAD_FAST 6,398,380 0.9% 94.0%
_LOAD_FAST _LOAD_CONST_INLINE 6,398,380 0.9% 94.8%
_GUARD_IS_FALSE_POP _EXIT_TRACE 3,207,540 0.4% 95.3%
_LOAD_FAST _LOAD_FAST_6 3,207,520 0.4% 95.7%
_LOAD_FAST_6 _SET_IP 3,207,520 0.4% 96.1%
_START_EXECUTOR _LOAD_FAST 3,207,520 0.4% 96.6%
_STORE_FAST _CHECK_FUNCTION 3,207,520 0.4% 97.0%
_GUARD_IS_FALSE_POP _LOAD_FAST 3,190,860 0.4% 97.4%
_STORE_FAST _LOAD_CONST_INLINE_WITH_NULL 3,190,860 0.4% 97.9%
_GUARD_NOT_EXHAUSTED_RANGE _EXIT_TRACE 1,340 0.0% 97.9%
_POP_TOP _CHECK_FUNCTION 900 0.0% 97.9%
_CHECK_VALIDITY _POP_TOP 900 0.0% 97.9%
_LOAD_CONST_INLINE_BORROW _EXIT_TRACE 900 0.0% 97.9%
_LOAD_CONST_INLINE_WITH_NULL _LOAD_CONST_INLINE_BORROW 900 0.0% 97.9%

Unsupported opcodes

unsupported opcodes
Opcode Count
CALL_KW 1,780
CALL 20

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 20

Stats gathered on: 2024-06-16