Message379083
From the creators of "opcode cache for LOAD_GLOBAL" (https://bugs.python.org/issue26219) now it's time for "opcode cache for LOAD_ATTR: the revenge". This issue/PR builds on top of Yury's original patch in the same way https://bugs.python.org/issue26219 did for LOAD_GLOBAL.
These are the benchmark results for the pyperformance test suite with PGO/LTO/CPU ISOLATION in a tuned system with pyperf:
+-------------------------+--------------------------------------+-------------------------------------+
| Benchmark | 2020-10-20_01-18-master-de73d432bb29 | 2020-10-20_02-28-cache-68f931f6938a |
+=========================+======================================+=====================================+
| go | 407 ms | 349 ms: 1.17x faster (-14%) |
+-------------------------+--------------------------------------+-------------------------------------+
| raytrace | 822 ms | 730 ms: 1.13x faster (-11%) |
+-------------------------+--------------------------------------+-------------------------------------+
| unpickle_pure_python | 497 us | 447 us: 1.11x faster (-10%) |
+-------------------------+--------------------------------------+-------------------------------------+
| scimark_sor | 311 ms | 280 ms: 1.11x faster (-10%) |
+-------------------------+--------------------------------------+-------------------------------------+
| hexiom | 15.4 ms | 14.0 ms: 1.10x faster (-9%) |
+-------------------------+--------------------------------------+-------------------------------------+
| logging_silent | 302 ns | 276 ns: 1.10x faster (-9%) |
+-------------------------+--------------------------------------+-------------------------------------+
| chaos | 176 ms | 163 ms: 1.08x faster (-7%) |
+-------------------------+--------------------------------------+-------------------------------------+
| pyflate | 1.01 sec | 948 ms: 1.06x faster (-6%) |
+-------------------------+--------------------------------------+-------------------------------------+
| scimark_lu | 246 ms | 232 ms: 1.06x faster (-6%) |
+-------------------------+--------------------------------------+-------------------------------------+
| pickle_pure_python | 712 us | 674 us: 1.06x faster (-5%) |
+-------------------------+--------------------------------------+-------------------------------------+
| regex_effbot | 4.49 ms | 4.26 ms: 1.05x faster (-5%) |
+-------------------------+--------------------------------------+-------------------------------------+
| scimark_monte_carlo | 160 ms | 153 ms: 1.05x faster (-5%) |
+-------------------------+--------------------------------------+-------------------------------------+
| richards | 120 ms | 115 ms: 1.05x faster (-4%) |
+-------------------------+--------------------------------------+-------------------------------------+
| 2to3 | 458 ms | 442 ms: 1.04x faster (-4%) |
+-------------------------+--------------------------------------+-------------------------------------+
| regex_v8 | 33.7 ms | 32.5 ms: 1.04x faster (-3%) |
+-------------------------+--------------------------------------+-------------------------------------+
| scimark_sparse_mat_mult | 7.16 ms | 6.93 ms: 1.03x faster (-3%) |
+-------------------------+--------------------------------------+-------------------------------------+
| deltablue | 12.1 ms | 11.7 ms: 1.03x faster (-3%) |
+-------------------------+--------------------------------------+-------------------------------------+
| regex_dna | 268 ms | 261 ms: 1.03x faster (-3%) |
+-------------------------+--------------------------------------+-------------------------------------+
| meteor_contest | 152 ms | 148 ms: 1.03x faster (-3%) |
+-------------------------+--------------------------------------+-------------------------------------+
| genshi_xml | 89.0 ms | 87.1 ms: 1.02x faster (-2%) |
+-------------------------+--------------------------------------+-------------------------------------+
| logging_simple | 12.8 us | 12.5 us: 1.02x faster (-2%) |
+-------------------------+--------------------------------------+-------------------------------------+
| genshi_text | 42.4 ms | 41.5 ms: 1.02x faster (-2%) |
+-------------------------+--------------------------------------+-------------------------------------+
| nbody | 215 ms | 211 ms: 1.02x faster (-2%) |
+-------------------------+--------------------------------------+-------------------------------------+
Not significant (35): chameleon; django_template; dulwich_log; fannkuch; float; json_dumps; json_loads; logging_format; mako; nqueens; pathlib; pickle; pickle_dict; pickle_list; pidigits; python_startup; python_startup_no_site; regex_compile; scimark_fft; spectral_norm; sqlalchemy_declarative; sqlalchemy_imperative; sqlite_synth; sympy_expand; sympy_sum; sympy_str; telco; tornado_http; unpack_sequence; unpickle; unpickle_list; xml_etree_parse; xml_etree_iterparse; xml_etree_generate; xml_etree_process; sympy_integrate |
|
Date |
User |
Action |
Args |
2020-10-20 03:18:36 | pablogsal | set | recipients:
+ pablogsal |
2020-10-20 03:18:36 | pablogsal | set | messageid: <1603163916.18.0.528007796853.issue42093@roundup.psfhosted.org> |
2020-10-20 03:18:36 | pablogsal | link | issue42093 messages |
2020-10-20 03:18:35 | pablogsal | create | |
|