Skip to content

gh-146073: Add fitness/exit quality mechanism for JIT trace frontend#148089

Open
cocolato wants to merge 16 commits intopython:mainfrom
cocolato:jit-tracer-fitness
Open

gh-146073: Add fitness/exit quality mechanism for JIT trace frontend#148089
cocolato wants to merge 16 commits intopython:mainfrom
cocolato:jit-tracer-fitness

Conversation

@cocolato
Copy link
Copy Markdown
Member

@cocolato cocolato commented Apr 4, 2026

@cocolato
Copy link
Copy Markdown
Member Author

cocolato commented Apr 6, 2026

Build configure: ./configure --enable-experimental-jit --enable-optimizations

The new bench result with higher initial value and lower frame penalty:

+---------------------+----------+-----------------------+
| Benchmark           | baseline | fitness               |
+=====================+==========+=======================+
| raytrace            | 236 ms   | 209 ms: 1.13x faster  |
+---------------------+----------+-----------------------+
| pyflate             | 262 ms   | 250 ms: 1.05x faster  |
+---------------------+----------+-----------------------+
| xml_etree_iterparse | 60.3 ms  | 58.2 ms: 1.04x faster |
+---------------------+----------+-----------------------+
| json_dumps          | 6.29 ms  | 6.08 ms: 1.03x faster |
+---------------------+----------+-----------------------+
| float               | 44.2 ms  | 42.8 ms: 1.03x faster |
+---------------------+----------+-----------------------+
| xml_etree_parse     | 94.2 ms  | 91.4 ms: 1.03x faster |
+---------------------+----------+-----------------------+
| richards            | 15.4 ms  | 15.0 ms: 1.02x faster |
+---------------------+----------+-----------------------+
| chaos               | 39.9 ms  | 39.1 ms: 1.02x faster |
+---------------------+----------+-----------------------+
| nbody               | 48.1 ms  | 47.1 ms: 1.02x faster |
+---------------------+----------+-----------------------+
| spectral_norm       | 51.8 ms  | 50.8 ms: 1.02x faster |
+---------------------+----------+-----------------------+
| deltablue           | 2.11 ms  | 2.07 ms: 1.02x faster |
+---------------------+----------+-----------------------+
| go                  | 80.6 ms  | 79.3 ms: 1.02x faster |
+---------------------+----------+-----------------------+
| xml_etree_process   | 44.0 ms  | 43.3 ms: 1.01x faster |
+---------------------+----------+-----------------------+
| xml_etree_generate  | 65.6 ms  | 64.9 ms: 1.01x faster |
+---------------------+----------+-----------------------+
| regex_compile       | 92.4 ms  | 91.5 ms: 1.01x faster |
+---------------------+----------+-----------------------+
| json_loads          | 17.0 us  | 17.1 us: 1.01x slower |
+---------------------+----------+-----------------------+
| telco               | 4.96 ms  | 5.02 ms: 1.01x slower |
+---------------------+----------+-----------------------+
| fannkuch            | 215 ms   | 220 ms: 1.02x slower  |
+---------------------+----------+-----------------------+
| Geometric mean      | (ref)    | 1.02x faster          |
+---------------------+----------+-----------------------+

@cocolato
Copy link
Copy Markdown
Member Author

cocolato commented Apr 6, 2026

It appears that the current parameters do not yet guarantee runtime safety; I will continue to work on fixes and optimizations.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant