@@ -652,41 +652,41 @@ Here's a summary of performance improvements from Python 3.4 through Python 3.9:
652652 -------------- --- --- --- --- --- ---
653653
654654 Variable and attribute read access:
655- read_local 7.1 7.1 5.4 5.1 3.9 4.0
656- read_nonlocal 7.1 8.1 5.8 5.4 4.4 4.8
657- read_global 15.5 19.0 14.3 13.6 7.6 7.7
658- read_builtin 21.1 21.6 18.5 19.0 7.5 7.7
659- read_classvar_from_class 25.6 26.5 20.7 19.5 18.4 18.6
660- read_classvar_from_instance 22.8 23.5 18.8 17.1 16.4 20.1
661- read_instancevar 32.4 33.1 28.0 26.3 25.4 27.7
662- read_instancevar_slots 27.8 31.3 20.8 20.8 20.2 24 .5
663- read_namedtuple 73.8 57.5 45.0 46.8 18.4 23.2
664- read_boundmethod 37.6 37.9 29.6 26.9 27.7 45.9
655+ read_local 7.1 7.1 5.4 5.1 3.9 3.9
656+ read_nonlocal 7.1 8.1 5.8 5.4 4.4 4.5
657+ read_global 15.5 19.0 14.3 13.6 7.6 7.8
658+ read_builtin 21.1 21.6 18.5 19.0 7.5 7.8
659+ read_classvar_from_class 25.6 26.5 20.7 19.5 18.4 17.9
660+ read_classvar_from_instance 22.8 23.5 18.8 17.1 16.4 16.9
661+ read_instancevar 32.4 33.1 28.0 26.3 25.4 25.3
662+ read_instancevar_slots 27.8 31.3 20.8 20.8 20.2 20 .5
663+ read_namedtuple 73.8 57.5 45.0 46.8 18.4 18.7
664+ read_boundmethod 37.6 37.9 29.6 26.9 27.7 41.1
665665
666666 Variable and attribute write access:
667- write_local 8.7 9.3 5.5 5.3 4.3 4.2
668- write_nonlocal 10.5 11.1 5.6 5.5 4.7 4.9
669- write_global 19.7 21.2 18.0 18.0 15.8 17.2
670- write_classvar 92.9 96.0 104.6 102.1 39.2 43.2
671- write_instancevar 44.6 45.8 40.0 38.9 35.5 40.7
672- write_instancevar_slots 35.6 36.1 27.3 26.6 25.7 27.7
667+ write_local 8.7 9.3 5.5 5.3 4.3 4.3
668+ write_nonlocal 10.5 11.1 5.6 5.5 4.7 4.8
669+ write_global 19.7 21.2 18.0 18.0 15.8 16.7
670+ write_classvar 92.9 96.0 104.6 102.1 39.2 39.8
671+ write_instancevar 44.6 45.8 40.0 38.9 35.5 37.4
672+ write_instancevar_slots 35.6 36.1 27.3 26.6 25.7 25.8
673673
674674 Data structure read access:
675- read_list 24.2 24.5 20.8 20.8 19.0 21.1
676- read_deque 24.7 25.5 20.2 20.6 19.8 21.6
677- read_dict 24.3 25.7 22.3 23.0 21.0 22.5
678- read_strdict 22.6 24.3 19.5 21.2 18.9 21.6
675+ read_list 24.2 24.5 20.8 20.8 19.0 19.5
676+ read_deque 24.7 25.5 20.2 20.6 19.8 20.2
677+ read_dict 24.3 25.7 22.3 23.0 21.0 22.4
678+ read_strdict 22.6 24.3 19.5 21.2 18.9 21.5
679679
680680 Data structure write access:
681- write_list 27.1 28.5 22.5 21.6 20.0 21.6
682- write_deque 28.7 30.1 22.7 21.8 23.5 23.2
683- write_dict 31.4 33.3 29.3 29.2 24.7 27.8
684- write_strdict 28.4 29.9 27.5 25.2 23.1 29.8
681+ write_list 27.1 28.5 22.5 21.6 20.0 20.0
682+ write_deque 28.7 30.1 22.7 21.8 23.5 21.7
683+ write_dict 31.4 33.3 29.3 29.2 24.7 25.4
684+ write_strdict 28.4 29.9 27.5 25.2 23.1 24.5
685685
686686 Stack (or queue) operations:
687- list_append_pop 93.4 112.7 75.4 74.2 50.8 53.9
688- deque_append_pop 43.5 57.0 49.4 49.2 42.5 45.5
689- deque_append_popleft 43.7 57.3 49.7 49.7 42.8 45.5
687+ list_append_pop 93.4 112.7 75.4 74.2 50.8 50.6
688+ deque_append_pop 43.5 57.0 49.4 49.2 42.5 44.2
689+ deque_append_popleft 43.7 57.3 49.7 49.7 42.8 46.4
690690
691691 Timing loop:
692692 loop_overhead 0.5 0.6 0.4 0.3 0.3 0.3
0 commit comments