diff --git a/README.md b/README.md
index d0de7cd5..a1adbd3d 100644
--- a/README.md
+++ b/README.md
@@ -21,8 +21,6 @@ Here are some recent and important revisions. π [Complete list of results](RE
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-b7e9a16) | mpage/gh_115999_integrate | b7e9a16 | 1.129x β
[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-linux-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-linux-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.12.6.svg) | 1.080x β
[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-linux-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-linux-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.13.0rc2.svg) | 1.004x β
[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-linux-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-linux-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-linux-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-base-mem.svg) |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-2de048c) | python/2de048ce79e621f5ae05 | 2de048c | 1.128x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.svg) | 1.084x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.svg) | |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL) | python/2de048ce79e621f5ae05 | 2de048c (NOGIL) | 1.170x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.svg) | 1.201x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.svg) | 1.257x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-linux-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-base-mem.svg) |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-ba2d2fd) | python/ba2d2fda93a03a91ac6c | ba2d2fd | 1.102x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.12.6.svg) | 1.061x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.13.0rc2.svg) | |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL) | python/ba2d2fda93a03a91ac6c | ba2d2fd (NOGIL) | 1.173x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.12.6.svg) | 1.203x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.13.0rc2.svg) | 1.243x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-linux-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-base-mem.svg) |
## linux x86_64 (vultr)
| date | fork/ref | hash/flags | vs. 3.12.6: | vs. 3.13.0rc2: | vs. base: |
@@ -38,21 +36,10 @@ Here are some recent and important revisions. π [Complete list of results](RE
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-b1ed3ee) | mpage/gh_115999_load_attr_ | b1ed3ee | 1.091x β
[π](results/bm-20241213-3.14.0a2%2B-b1ed3ee/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-b1ed3ee-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-b1ed3ee/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-b1ed3ee-vs-3.12.6.svg) | 1.053x β
[π](results/bm-20241213-3.14.0a2%2B-b1ed3ee/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-b1ed3ee-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-b1ed3ee/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-b1ed3ee-vs-3.13.0rc2.svg) | 1.007x β
[π](results/bm-20241213-3.14.0a2%2B-b1ed3ee/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-b1ed3ee-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-b1ed3ee/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-b1ed3ee-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-b1ed3ee/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-b1ed3ee-vs-base-mem.svg) |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-b7e9a16-NOGIL) | mpage/gh_115999_integrate | b7e9a16 (NOGIL) | 1.084x β
[π](results/bm-20241213-3.14.0a2%2B-b7e9a16-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-b7e9a16-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.12.6.svg) | 1.114x β
[π](results/bm-20241213-3.14.0a2%2B-b7e9a16-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-b7e9a16-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.13.0rc2.svg) | 1.160x β
[π](results/bm-20241213-3.14.0a2%2B-b7e9a16-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-b7e9a16-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-b7e9a16-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-base-mem.svg) |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-b7e9a16) | mpage/gh_115999_integrate | b7e9a16 | 1.087x β
[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.12.6.svg) | 1.048x β
[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-3.13.0rc2.svg) | 1.001x β
[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-b7e9a16/bm-20241213-vultr-x86_64-mpage-gh_115999_integrate-3.14.0a2%2B-b7e9a16-vs-base-mem.svg) |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-5dd775b-NOGIL) | python/5dd775bed086909722ec | 5dd775b (NOGIL) | 1.219x β
[π](results/bm-20241213-3.14.0a2%2B-5dd775b-NOGIL/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-5dd775b-NOGIL/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.12.6.svg) | 1.244x β
[π](results/bm-20241213-3.14.0a2%2B-5dd775b-NOGIL/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-5dd775b-NOGIL/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.13.0rc2.svg) | 1.272x β
[π](results/bm-20241213-3.14.0a2%2B-5dd775b-NOGIL/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-5dd775b-NOGIL/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-5dd775b-NOGIL/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-base-mem.svg) |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-5dd775b) | python/5dd775bed086909722ec | 5dd775b | 1.083x β
[π](results/bm-20241213-3.14.0a2%2B-5dd775b/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-5dd775b/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.12.6.svg) | 1.044x β
[π](results/bm-20241213-3.14.0a2%2B-5dd775b/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-5dd775b/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.13.0rc2.svg) | |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL) | mpage/gh_115999_load_attr_ | 0e874cd (NOGIL) | 1.120x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.12.6.svg) | 1.149x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.13.0rc2.svg) | 1.121x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base-mem.svg) |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-0e874cd) | mpage/gh_115999_load_attr_ | 0e874cd | 1.088x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.12.6.svg) | 1.048x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.13.0rc2.svg) | 1.004x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base-mem.svg) |
+| [2024-12-13](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL) | nascheme/gh_115999_specialize | 4c484ab (NOGIL) | 1.193x β
[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.12.6.svg) | 1.219x β
[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.13.0rc2.svg) | 1.027x β
[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-base-mem.svg) |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-2de048c) | python/2de048ce79e621f5ae05 | 2de048c | 1.083x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.svg) | 1.044x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.svg) | |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL) | python/2de048ce79e621f5ae05 | 2de048c (NOGIL) | 1.215x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.svg) | 1.240x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.svg) | 1.269x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-base-mem.svg) |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL) | nascheme/gh_115999_specialize | f920dcd (NOGIL) | 1.202x β
[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-3.12.6.svg) | 1.228x β
[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-3.13.0rc2.svg) | 1.026x β
[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-base-mem.svg) |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-ba2d2fd) | python/ba2d2fda93a03a91ac6c | ba2d2fd | 1.080x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.12.6.svg) | 1.042x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.13.0rc2.svg) | |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL) | python/ba2d2fda93a03a91ac6c | ba2d2fd (NOGIL) | 1.228x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.12.6.svg) | 1.252x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-3.13.0rc2.svg) | 1.279x β
[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-ba2d2fd-NOGIL/bm-20241213-vultr-x86_64-python-ba2d2fda93a03a91ac6c-3.14.0a2%2B-ba2d2fd-vs-base-mem.svg) |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-d6ea4f1) | nascheme/gh_115999_specialize | d6ea4f1 | 1.082x β
[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-3.12.6.svg) | 1.044x β
[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-3.13.0rc2.svg) | 1.001x β
[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-d6ea4f1/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-base-mem.svg) |
-| [2024-12-13](results/bm-20241213-3.14.0a2%2B-d6ea4f1-NOGIL) | nascheme/gh_115999_specialize | d6ea4f1 (NOGIL) | 1.197x β
[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-3.12.6.svg) | 1.222x β
[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-3.13.0rc2.svg) | 1.033x β
[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-d6ea4f1-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-d6ea4f1-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-d6ea4f1-vs-base-mem.svg) |
-| [2024-12-12](results/bm-20241212-3.14.0a2%2B-39cab3f) | mpage/gh_115999_load_attr_ | 39cab3f | 1.080x β
[π](results/bm-20241212-3.14.0a2%2B-39cab3f/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-3.12.6.md)[π](results/bm-20241212-3.14.0a2%2B-39cab3f/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-3.12.6.svg) | 1.041x β
[π](results/bm-20241212-3.14.0a2%2B-39cab3f/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-3.13.0rc2.md)[π](results/bm-20241212-3.14.0a2%2B-39cab3f/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-3.13.0rc2.svg) | 1.004x β
[π](results/bm-20241212-3.14.0a2%2B-39cab3f/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-base.md)[π](results/bm-20241212-3.14.0a2%2B-39cab3f/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-base.svg)[π§ ](results/bm-20241212-3.14.0a2%2B-39cab3f/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-base-mem.svg) |
-| [2024-12-12](results/bm-20241212-3.14.0a2%2B-39cab3f-NOGIL) | mpage/gh_115999_load_attr_ | 39cab3f (NOGIL) | 1.136x β
[π](results/bm-20241212-3.14.0a2%2B-39cab3f-NOGIL/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-3.12.6.md)[π](results/bm-20241212-3.14.0a2%2B-39cab3f-NOGIL/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-3.12.6.svg) | 1.164x β
[π](results/bm-20241212-3.14.0a2%2B-39cab3f-NOGIL/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-3.13.0rc2.md)[π](results/bm-20241212-3.14.0a2%2B-39cab3f-NOGIL/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-3.13.0rc2.svg) | 1.106x β
[π](results/bm-20241212-3.14.0a2%2B-39cab3f-NOGIL/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-base.md)[π](results/bm-20241212-3.14.0a2%2B-39cab3f-NOGIL/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-base.svg)[π§ ](results/bm-20241212-3.14.0a2%2B-39cab3f-NOGIL/bm-20241212-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-39cab3f-vs-base-mem.svg) |
-| [2024-12-12](results/bm-20241212-3.14.0a2%2B-487fdbe-NOGIL) | python/487fdbed40734fd77214 | 487fdbe (NOGIL) | 1.221x β
[π](results/bm-20241212-3.14.0a2%2B-487fdbe-NOGIL/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-3.12.6.md)[π](results/bm-20241212-3.14.0a2%2B-487fdbe-NOGIL/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-3.12.6.svg) | 1.246x β
[π](results/bm-20241212-3.14.0a2%2B-487fdbe-NOGIL/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-3.13.0rc2.md)[π](results/bm-20241212-3.14.0a2%2B-487fdbe-NOGIL/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-3.13.0rc2.svg) | 1.275x β
[π](results/bm-20241212-3.14.0a2%2B-487fdbe-NOGIL/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-base.md)[π](results/bm-20241212-3.14.0a2%2B-487fdbe-NOGIL/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-base.svg)[π§ ](results/bm-20241212-3.14.0a2%2B-487fdbe-NOGIL/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-base-mem.svg) |
-| [2024-12-12](results/bm-20241212-3.14.0a2%2B-487fdbe) | python/487fdbed40734fd77214 | 487fdbe | 1.085x β
[π](results/bm-20241212-3.14.0a2%2B-487fdbe/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-3.12.6.md)[π](results/bm-20241212-3.14.0a2%2B-487fdbe/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-3.12.6.svg) | 1.045x β
[π](results/bm-20241212-3.14.0a2%2B-487fdbe/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-3.13.0rc2.md)[π](results/bm-20241212-3.14.0a2%2B-487fdbe/bm-20241212-vultr-x86_64-python-487fdbed40734fd77214-3.14.0a2%2B-487fdbe-vs-3.13.0rc2.svg) | |
| [2024-12-08](results/bm-20241208-3.14.0a2%2B-7015485) | python/70154855cf698560dd9a | 7015485 | 1.065x β
[π](results/bm-20241208-3.14.0a2%2B-7015485/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-3.12.6.md)[π](results/bm-20241208-3.14.0a2%2B-7015485/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-3.12.6.svg) | 1.027x β
[π](results/bm-20241208-3.14.0a2%2B-7015485/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-3.13.0rc2.md)[π](results/bm-20241208-3.14.0a2%2B-7015485/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-3.13.0rc2.svg) | 1.003x β
[π](results/bm-20241208-3.14.0a2%2B-7015485/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-base.md)[π](results/bm-20241208-3.14.0a2%2B-7015485/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-base.svg)[π§ ](results/bm-20241208-3.14.0a2%2B-7015485/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-base-mem.svg) |
| [2024-12-08](results/bm-20241208-3.14.0a2%2B-7015485-NOGIL) | python/70154855cf698560dd9a | 7015485 (NOGIL) | 1.231x β
[π](results/bm-20241208-3.14.0a2%2B-7015485-NOGIL/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-3.12.6.md)[π](results/bm-20241208-3.14.0a2%2B-7015485-NOGIL/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-3.12.6.svg) | 1.256x β
[π](results/bm-20241208-3.14.0a2%2B-7015485-NOGIL/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-3.13.0rc2.md)[π](results/bm-20241208-3.14.0a2%2B-7015485-NOGIL/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-3.13.0rc2.svg) | 1.004x β
[π](results/bm-20241208-3.14.0a2%2B-7015485-NOGIL/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-base.md)[π](results/bm-20241208-3.14.0a2%2B-7015485-NOGIL/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-base.svg)[π§ ](results/bm-20241208-3.14.0a2%2B-7015485-NOGIL/bm-20241208-vultr-x86_64-python-70154855cf698560dd9a-3.14.0a2%2B-7015485-vs-base-mem.svg) |
diff --git a/RESULTS.md b/RESULTS.md
index 2f3f19b9..2c6f6141 100644
--- a/RESULTS.md
+++ b/RESULTS.md
@@ -212,6 +212,7 @@
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-5dd775b) | python/5dd775bed086909722ec | 5dd775b | 1.083x β
[π](results/bm-20241213-3.14.0a2%2B-5dd775b/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-5dd775b/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.12.6.svg) | 1.044x β
[π](results/bm-20241213-3.14.0a2%2B-5dd775b/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-5dd775b/bm-20241213-vultr-x86_64-python-5dd775bed086909722ec-3.14.0a2%2B-5dd775b-vs-3.13.0rc2.svg) | |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL) | mpage/gh_115999_load_attr_ | 0e874cd (NOGIL) | 1.120x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.12.6.svg) | 1.149x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.13.0rc2.svg) | 1.121x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-0e874cd-NOGIL/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base-mem.svg) |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-0e874cd) | mpage/gh_115999_load_attr_ | 0e874cd | 1.088x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.12.6.svg) | 1.048x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-3.13.0rc2.svg) | 1.004x β
[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-0e874cd/bm-20241213-vultr-x86_64-mpage-gh_115999_load_attr_-3.14.0a2%2B-0e874cd-vs-base-mem.svg) |
+| [2024-12-13](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL) | nascheme/gh_115999_specialize | 4c484ab (NOGIL) | 1.193x β
[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.12.6.svg) | 1.219x β
[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.13.0rc2.svg) | 1.027x β
[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-base-mem.svg) |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-2de048c) | python/2de048ce79e621f5ae05 | 2de048c | 1.083x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.svg) | 1.044x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.svg) | |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL) | python/2de048ce79e621f5ae05 | 2de048c (NOGIL) | 1.215x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.12.6.svg) | 1.240x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-3.13.0rc2.svg) | 1.269x β
[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-2de048c-NOGIL/bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2%2B-2de048c-vs-base-mem.svg) |
| [2024-12-13](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL) | nascheme/gh_115999_specialize | f920dcd (NOGIL) | 1.202x β
[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-3.12.6.md)[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-3.12.6.svg) | 1.228x β
[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-3.13.0rc2.md)[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-3.13.0rc2.svg) | 1.026x β
[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-base.md)[π](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-base.svg)[π§ ](results/bm-20241213-3.14.0a2%2B-f920dcd-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-f920dcd-vs-base-mem.svg) |
diff --git a/configs.svg b/configs.svg
index 0fc20f4d..0f5e2d5b 100644
--- a/configs.svg
+++ b/configs.svg
@@ -8,9 +8,9 @@
-
+
-
+
@@ -28,7 +28,7 @@
-
+
@@ -42,7 +42,7 @@
-
+
@@ -56,7 +56,7 @@
-
+
@@ -67,7 +67,7 @@
-
+
@@ -79,9 +79,9 @@
-
+
-
+
@@ -95,7 +95,7 @@
-
+
@@ -107,7 +107,7 @@
-
+
@@ -116,7 +116,7 @@
-
+
@@ -125,7 +125,7 @@
-
+
@@ -424,49 +424,49 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -475,7 +475,7 @@
-
+
@@ -484,7 +484,7 @@
-
+
@@ -493,7 +493,7 @@
-
+
@@ -502,7 +502,7 @@
-
+
@@ -511,7 +511,7 @@
-
+
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/README.md b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/README.md
new file mode 100644
index 00000000..9e007268
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/README.md
@@ -0,0 +1,51 @@
+# Results
+
+- fork: nascheme/gh_115999_specialize
+- version: 3.14.0a2+
+- config: NOGIL
+- commit hash: [4c484ab](https://github.com/nascheme/cpython/commit/4c484ab)
+- commit date: 2024-12-13T11:10:35-08:00
+- commit merge base: [2de048ce79e621f5ae0574095b9600fe8595f607](https://github.com/python/cpython/commit/2de048ce79e621f5ae0574095b9600fe8595f607)
+- ref: gh_115999_specialize
+
+## linux x86_64 (vultr)
+
+- [GitHub Action run](https://github.com/facebookexperimental/free-threading-benchmarking/actions/runs/12358901432)
+- cpu model: Intel(R) Xeon(R) E-2286G CPU @ 4.00GHz
+- platform: Linux-6.8.0-45-generic-x86_64-with-glibc2.39
+- [raw results](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab.json)
+
+### vs. 3.12.6
+
+- Geometric mean: 1.193x slower (HPT: reliability of 100.00%, 1.15x slower at 99th %ile)
+- Memory usage: 1.33x
+- missing benchmarks: aiohttp, asyncio_tcp, asyncio_tcp_ssl, chameleon, dask, flaskblogging, gunicorn, mypy2, pickle, pickle_dict, pickle_list, tornado_http, unpack_sequence, unpickle, unpickle_list
+- new benchmarks: connected_components, k_core, many_optionals, shortest_path, sphinx, subparsers
+- [πtable](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.12.6.md)
+- [πtime plot](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.12.6.svg)
+
+### vs. 3.13.0rc2
+
+- Geometric mean: 1.219x slower (HPT: reliability of 100.00%, 1.17x slower at 99th %ile)
+- Memory usage: 1.32x
+- missing benchmarks: aiohttp, asyncio_tcp, asyncio_tcp_ssl, chameleon, dask, flaskblogging, gunicorn, pickle, pickle_dict, pickle_list, tornado_http, unpack_sequence, unpickle, unpickle_list
+- new benchmarks: connected_components, k_core, many_optionals, shortest_path, sphinx, sqlalchemy_declarative, sqlalchemy_imperative, subparsers
+- [πtable](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.13.0rc2.md)
+- [πtime plot](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-3.13.0rc2.svg)
+
+### vs. base
+
+- Geometric mean: 1.027x faster (HPT: reliability of 100.00%, 1.00x faster at 99th %ile)
+- Memory usage: 1.00x
+- [π§ memory plot](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-base-mem.svg)
+- [πtable](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-base.md)
+- [πtime plot](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-base.svg)
+
+### vs. default_base_vs_NOGIL
+
+- Geometric mean: 1.250x slower (HPT: reliability of 100.00%, 1.24x slower at 99th %ile)
+- Memory usage: 1.19x
+- new benchmarks: html5lib
+- [πtable](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-default_base_vs_NOGIL.md)
+- [πtime plot](bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2%2B-4c484ab-vs-default_base_vs_NOGIL.svg)
+
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.12.6.md b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.12.6.md
new file mode 100644
index 00000000..fd215e75
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.12.6.md
@@ -0,0 +1,207 @@
+# Results vs. 3.12.6
+
+- fork: nascheme
+- ref: gh_115999_specialize
+- machine: linux-x86_64
+- commit hash: 4c484ab
+- commit date: 2024-12-13
+- overall geometric mean: 1.193x slower
+- HPT reliability: 100.00%
+- HPT 99th percentile: 1.15x slower
+- Memory change: 1.33x
+
+Benchmarks with tag 'apps':
+===========================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.12.6-3.12.6-a4a2d2b | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:------------------------------------------------------:|:------------------------------------------------------------------------:|
+| 2to3 | 264 ms | 360 ms: 1.37x slower |
+| docutils | 2.64 sec | 3.05 sec: 1.16x slower |
+| html5lib | 63.6 ms | 95.0 ms: 1.49x slower |
+| Geometric mean | (ref) | 1.33x slower |
+
+Benchmarks with tag 'asyncio':
+==============================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.12.6-3.12.6-a4a2d2b | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------------|:------------------------------------------------------:|:------------------------------------------------------------------------:|
+| async_tree_io_tg | 1.11 sec | 740 ms: 1.50x faster |
+| async_tree_io | 1.08 sec | 761 ms: 1.42x faster |
+| async_tree_memoization_tg | 560 ms | 401 ms: 1.40x faster |
+| async_tree_none_tg | 446 ms | 322 ms: 1.39x faster |
+| async_tree_none | 464 ms | 354 ms: 1.31x faster |
+| async_tree_memoization | 555 ms | 429 ms: 1.29x faster |
+| async_tree_cpu_io_mixed_tg | 723 ms | 574 ms: 1.26x faster |
+| async_tree_cpu_io_mixed | 715 ms | 598 ms: 1.20x faster |
+| asyncio_websockets | 517 ms | 520 ms: 1.01x slower |
+| coroutines | 23.9 ms | 24.1 ms: 1.01x slower |
+| async_generators | 384 ms | 444 ms: 1.16x slower |
+| Geometric mean | (ref) | 1.22x faster |
+
+Benchmarks with tag 'math':
+===========================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.12.6-3.12.6-a4a2d2b | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:------------------------------------------------------:|:------------------------------------------------------------------------:|
+| pidigits | 184 ms | 181 ms: 1.02x faster |
+| float | 80.8 ms | 111 ms: 1.37x slower |
+| nbody | 89.3 ms | 131 ms: 1.46x slower |
+| Geometric mean | (ref) | 1.25x slower |
+
+Benchmarks with tag 'regex':
+============================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.12.6-3.12.6-a4a2d2b | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:------------------------------------------------------:|:------------------------------------------------------------------------:|
+| regex_effbot | 3.17 ms | 2.97 ms: 1.07x faster |
+| regex_dna | 168 ms | 192 ms: 1.15x slower |
+| regex_compile | 142 ms | 170 ms: 1.19x slower |
+| regex_v8 | 20.6 ms | 25.0 ms: 1.22x slower |
+| Geometric mean | (ref) | 1.12x slower |
+
+Benchmarks with tag 'serialize':
+================================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.12.6-3.12.6-a4a2d2b | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------|:------------------------------------------------------:|:------------------------------------------------------------------------:|
+| xml_etree_iterparse | 96.7 ms | 90.4 ms: 1.07x faster |
+| xml_etree_parse | 139 ms | 131 ms: 1.06x faster |
+| json_loads | 26.5 us | 28.5 us: 1.07x slower |
+| xml_etree_generate | 85.2 ms | 97.6 ms: 1.15x slower |
+| tomli_loads | 2.11 sec | 2.58 sec: 1.22x slower |
+| xml_etree_process | 59.0 ms | 73.8 ms: 1.25x slower |
+| json_dumps | 10.4 ms | 14.2 ms: 1.37x slower |
+| unpickle_pure_python | 221 us | 331 us: 1.50x slower |
+| pickle_pure_python | 308 us | 502 us: 1.63x slower |
+| Geometric mean | (ref) | 1.21x slower |
+
+Benchmarks with tag 'startup':
+==============================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.12.6-3.12.6-a4a2d2b | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|------------------------|:------------------------------------------------------:|:------------------------------------------------------------------------:|
+| python_startup_no_site | 7.16 ms | 10.2 ms: 1.42x slower |
+| python_startup | 9.93 ms | 17.1 ms: 1.72x slower |
+| Geometric mean | (ref) | 1.57x slower |
+
+Benchmarks with tag 'template':
+===============================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.12.6-3.12.6-a4a2d2b | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|-----------------|:------------------------------------------------------:|:------------------------------------------------------------------------:|
+| genshi_xml | 50.2 ms | 63.7 ms: 1.27x slower |
+| genshi_text | 22.8 ms | 30.9 ms: 1.35x slower |
+| django_template | 34.7 ms | 50.2 ms: 1.45x slower |
+| mako | 11.0 ms | 17.2 ms: 1.56x slower |
+| Geometric mean | (ref) | 1.40x slower |
+
+All benchmarks:
+===============
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.12.6-3.12.6-a4a2d2b | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------------|:------------------------------------------------------:|:------------------------------------------------------------------------:|
+| async_tree_io_tg | 1.11 sec | 740 ms: 1.50x faster |
+| async_tree_io | 1.08 sec | 761 ms: 1.42x faster |
+| async_tree_memoization_tg | 560 ms | 401 ms: 1.40x faster |
+| async_tree_none_tg | 446 ms | 322 ms: 1.39x faster |
+| async_tree_none | 464 ms | 354 ms: 1.31x faster |
+| async_tree_memoization | 555 ms | 429 ms: 1.29x faster |
+| async_tree_cpu_io_mixed_tg | 723 ms | 574 ms: 1.26x faster |
+| async_tree_cpu_io_mixed | 715 ms | 598 ms: 1.20x faster |
+| gc_traversal | 3.46 ms | 3.15 ms: 1.10x faster |
+| deepcopy | 352 us | 323 us: 1.09x faster |
+| pathlib | 21.5 ms | 19.9 ms: 1.08x faster |
+| xml_etree_iterparse | 96.7 ms | 90.4 ms: 1.07x faster |
+| regex_effbot | 3.17 ms | 2.97 ms: 1.07x faster |
+| xml_etree_parse | 139 ms | 131 ms: 1.06x faster |
+| sqlite_synth | 2.20 us | 2.16 us: 1.02x faster |
+| pidigits | 184 ms | 181 ms: 1.02x faster |
+| spectral_norm | 110 ms | 110 ms: 1.00x faster |
+| asyncio_websockets | 517 ms | 520 ms: 1.01x slower |
+| coroutines | 23.9 ms | 24.1 ms: 1.01x slower |
+| json | 5.02 ms | 5.07 ms: 1.01x slower |
+| deepcopy_memo | 40.3 us | 40.8 us: 1.01x slower |
+| bpe_tokeniser | 4.74 sec | 5.03 sec: 1.06x slower |
+| json_loads | 26.5 us | 28.5 us: 1.07x slower |
+| deepcopy_reduce | 3.08 us | 3.42 us: 1.11x slower |
+| pylint | 319 ms | 364 ms: 1.14x slower |
+| xml_etree_generate | 85.2 ms | 97.6 ms: 1.15x slower |
+| regex_dna | 168 ms | 192 ms: 1.15x slower |
+| scimark_fft | 342 ms | 392 ms: 1.15x slower |
+| dulwich_log | 78.9 ms | 90.8 ms: 1.15x slower |
+| async_generators | 384 ms | 444 ms: 1.16x slower |
+| docutils | 2.64 sec | 3.05 sec: 1.16x slower |
+| crypto_pyaes | 76.6 ms | 90.7 ms: 1.18x slower |
+| mdp | 2.42 sec | 2.86 sec: 1.18x slower |
+| pycparser | 1.17 sec | 1.39 sec: 1.19x slower |
+| generators | 32.2 ms | 38.5 ms: 1.19x slower |
+| regex_compile | 142 ms | 170 ms: 1.19x slower |
+| regex_v8 | 20.6 ms | 25.0 ms: 1.22x slower |
+| nqueens | 80.1 ms | 97.6 ms: 1.22x slower |
+| tomli_loads | 2.11 sec | 2.58 sec: 1.22x slower |
+| sqlglot_optimize | 53.3 ms | 65.7 ms: 1.23x slower |
+| typing_runtime_protocols | 163 us | 203 us: 1.24x slower |
+| sqlglot_normalize | 107 ms | 133 ms: 1.25x slower |
+| xml_etree_process | 59.0 ms | 73.8 ms: 1.25x slower |
+| meteor_contest | 104 ms | 131 ms: 1.26x slower |
+| thrift | 791 us | 1.00 ms: 1.27x slower |
+| genshi_xml | 50.2 ms | 63.7 ms: 1.27x slower |
+| sqlalchemy_imperative | 21.8 ms | 27.8 ms: 1.28x slower |
+| scimark_sparse_mat_mult | 4.39 ms | 5.62 ms: 1.28x slower |
+| pprint_safe_repr | 743 ms | 965 ms: 1.30x slower |
+| pprint_pformat | 1.52 sec | 2.00 sec: 1.31x slower |
+| telco | 6.53 ms | 8.64 ms: 1.32x slower |
+| fannkuch | 372 ms | 498 ms: 1.34x slower |
+| genshi_text | 22.8 ms | 30.9 ms: 1.35x slower |
+| 2to3 | 264 ms | 360 ms: 1.37x slower |
+| json_dumps | 10.4 ms | 14.2 ms: 1.37x slower |
+| logging_simple | 6.63 us | 9.06 us: 1.37x slower |
+| sqlalchemy_declarative | 143 ms | 196 ms: 1.37x slower |
+| float | 80.8 ms | 111 ms: 1.37x slower |
+| logging_format | 7.35 us | 10.1 us: 1.38x slower |
+| coverage | 71.4 ms | 99.2 ms: 1.39x slower |
+| comprehensions | 19.8 us | 27.7 us: 1.40x slower |
+| python_startup_no_site | 7.16 ms | 10.2 ms: 1.42x slower |
+| sympy_integrate | 20.5 ms | 29.4 ms: 1.43x slower |
+| django_template | 34.7 ms | 50.2 ms: 1.45x slower |
+| nbody | 89.3 ms | 131 ms: 1.46x slower |
+| pyflate | 448 ms | 662 ms: 1.48x slower |
+| html5lib | 63.6 ms | 95.0 ms: 1.49x slower |
+| richards_super | 51.9 ms | 77.6 ms: 1.50x slower |
+| unpickle_pure_python | 221 us | 331 us: 1.50x slower |
+| richards | 45.9 ms | 69.1 ms: 1.50x slower |
+| chaos | 62.8 ms | 95.9 ms: 1.53x slower |
+| mako | 11.0 ms | 17.2 ms: 1.56x slower |
+| scimark_monte_carlo | 68.4 ms | 108 ms: 1.57x slower |
+| hexiom | 6.17 ms | 9.87 ms: 1.60x slower |
+| sqlglot_transpile | 1.67 ms | 2.69 ms: 1.61x slower |
+| scimark_lu | 114 ms | 185 ms: 1.62x slower |
+| sympy_str | 292 ms | 473 ms: 1.62x slower |
+| create_gc_cycles | 1.09 ms | 1.78 ms: 1.63x slower |
+| pickle_pure_python | 308 us | 502 us: 1.63x slower |
+| raytrace | 299 ms | 495 ms: 1.65x slower |
+| logging_silent | 109 ns | 186 ns: 1.71x slower |
+| sqlglot_parse | 1.36 ms | 2.33 ms: 1.72x slower |
+| python_startup | 9.93 ms | 17.1 ms: 1.72x slower |
+| go | 139 ms | 244 ms: 1.75x slower |
+| scimark_sor | 130 ms | 232 ms: 1.79x slower |
+| sympy_expand | 468 ms | 953 ms: 2.04x slower |
+| sympy_sum | 166 ms | 348 ms: 2.10x slower |
+| deltablue | 3.45 ms | 7.65 ms: 2.22x slower |
+| bench_thread_pool | 941 us | 3.37 ms: 3.58x slower |
+| bench_mp_pool | 10.8 ms | 107 ms: 9.90x slower |
+| Geometric mean | (ref) | 1.29x slower |
+Ignored benchmarks (15) of results/bm-20240906-3.12.6-a4a2d2b/bm-20240906-vultr-x86_64-python-v3.12.6-3.12.6-a4a2d2b.json: aiohttp, asyncio_tcp, asyncio_tcp_ssl, chameleon, dask, flaskblogging, gunicorn, mypy2, pickle, pickle_dict, pickle_list, tornado_http, unpack_sequence, unpickle, unpickle_list
+Ignored benchmarks (6) of results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab.json: connected_components, k_core, many_optionals, shortest_path, sphinx, subparsers
+
+- Geometric mean (including insignificant results): 1.193x slower
+
+# HPT report
+
+- Reliability score: 100.00% likely to be slow
+- 90% likely to have a slowdown of 1.18x
+- 95% likely to have a slowdown of 1.18x
+- 99% likely to have a slowdown of 1.15x
+
+# Memory
+- memory change: 1.33x
\ No newline at end of file
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.12.6.svg b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.12.6.svg
new file mode 100644
index 00000000..19535f5d
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.12.6.svg
@@ -0,0 +1,3060 @@
+
+
+
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.13.0rc2.md b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.13.0rc2.md
new file mode 100644
index 00000000..3fc09a49
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.13.0rc2.md
@@ -0,0 +1,204 @@
+# Results vs. 3.13.0rc2
+
+- fork: nascheme
+- ref: gh_115999_specialize
+- machine: linux-x86_64
+- commit hash: 4c484ab
+- commit date: 2024-12-13
+- overall geometric mean: 1.219x slower
+- HPT reliability: 100.00%
+- HPT 99th percentile: 1.17x slower
+- Memory change: 1.32x
+
+Benchmarks with tag 'apps':
+===========================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.13.0rc2-3.13.0rc2-ec61006 | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| 2to3 | 260 ms | 360 ms: 1.39x slower |
+| docutils | 2.62 sec | 3.05 sec: 1.17x slower |
+| html5lib | 67.0 ms | 95.0 ms: 1.42x slower |
+| Geometric mean | (ref) | 1.32x slower |
+
+Benchmarks with tag 'asyncio':
+==============================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.13.0rc2-3.13.0rc2-ec61006 | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------------|:------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| async_tree_io_tg | 913 ms | 740 ms: 1.23x faster |
+| async_tree_io | 876 ms | 761 ms: 1.15x faster |
+| async_tree_cpu_io_mixed | 666 ms | 598 ms: 1.11x faster |
+| async_tree_cpu_io_mixed_tg | 638 ms | 574 ms: 1.11x faster |
+| async_tree_memoization | 461 ms | 429 ms: 1.07x faster |
+| async_tree_none_tg | 336 ms | 322 ms: 1.05x faster |
+| async_tree_memoization_tg | 414 ms | 401 ms: 1.03x faster |
+| coroutines | 23.6 ms | 24.1 ms: 1.02x slower |
+| async_generators | 377 ms | 444 ms: 1.18x slower |
+| Geometric mean | (ref) | 1.05x faster |
+
+Benchmark hidden because not significant (2): asyncio_websockets, async_tree_none
+
+Benchmarks with tag 'math':
+===========================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.13.0rc2-3.13.0rc2-ec61006 | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| pidigits | 217 ms | 181 ms: 1.20x faster |
+| float | 77.5 ms | 111 ms: 1.43x slower |
+| nbody | 85.1 ms | 131 ms: 1.54x slower |
+| Geometric mean | (ref) | 1.23x slower |
+
+Benchmarks with tag 'regex':
+============================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.13.0rc2-3.13.0rc2-ec61006 | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| regex_effbot | 3.08 ms | 2.97 ms: 1.04x faster |
+| regex_dna | 180 ms | 192 ms: 1.07x slower |
+| regex_v8 | 22.7 ms | 25.0 ms: 1.10x slower |
+| regex_compile | 132 ms | 170 ms: 1.29x slower |
+| Geometric mean | (ref) | 1.10x slower |
+
+Benchmarks with tag 'serialize':
+================================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.13.0rc2-3.13.0rc2-ec61006 | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------|:------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| xml_etree_iterparse | 94.9 ms | 90.4 ms: 1.05x faster |
+| xml_etree_parse | 136 ms | 131 ms: 1.04x faster |
+| json_loads | 27.0 us | 28.5 us: 1.05x slower |
+| xml_etree_generate | 85.4 ms | 97.6 ms: 1.14x slower |
+| xml_etree_process | 59.3 ms | 73.8 ms: 1.24x slower |
+| tomli_loads | 2.01 sec | 2.58 sec: 1.29x slower |
+| json_dumps | 10.5 ms | 14.2 ms: 1.34x slower |
+| unpickle_pure_python | 210 us | 331 us: 1.58x slower |
+| pickle_pure_python | 294 us | 502 us: 1.71x slower |
+| Geometric mean | (ref) | 1.23x slower |
+
+Benchmarks with tag 'startup':
+==============================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.13.0rc2-3.13.0rc2-ec61006 | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|------------------------|:------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| python_startup_no_site | 7.39 ms | 10.2 ms: 1.38x slower |
+| python_startup | 11.0 ms | 17.1 ms: 1.56x slower |
+| Geometric mean | (ref) | 1.46x slower |
+
+Benchmarks with tag 'template':
+===============================
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.13.0rc2-3.13.0rc2-ec61006 | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|-----------------|:------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| genshi_xml | 48.8 ms | 63.7 ms: 1.31x slower |
+| genshi_text | 21.5 ms | 30.9 ms: 1.43x slower |
+| django_template | 34.1 ms | 50.2 ms: 1.47x slower |
+| mako | 11.3 ms | 17.2 ms: 1.51x slower |
+| Geometric mean | (ref) | 1.43x slower |
+
+All benchmarks:
+===============
+
+| Benchmark | bm-20240906-vultr-x86_64-python-v3.13.0rc2-3.13.0rc2-ec61006 | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------------|:------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| async_tree_io_tg | 913 ms | 740 ms: 1.23x faster |
+| pidigits | 217 ms | 181 ms: 1.20x faster |
+| async_tree_io | 876 ms | 761 ms: 1.15x faster |
+| async_tree_cpu_io_mixed | 666 ms | 598 ms: 1.11x faster |
+| async_tree_cpu_io_mixed_tg | 638 ms | 574 ms: 1.11x faster |
+| deepcopy | 355 us | 323 us: 1.10x faster |
+| async_tree_memoization | 461 ms | 429 ms: 1.07x faster |
+| xml_etree_iterparse | 94.9 ms | 90.4 ms: 1.05x faster |
+| async_tree_none_tg | 336 ms | 322 ms: 1.05x faster |
+| xml_etree_parse | 136 ms | 131 ms: 1.04x faster |
+| regex_effbot | 3.08 ms | 2.97 ms: 1.04x faster |
+| async_tree_memoization_tg | 414 ms | 401 ms: 1.03x faster |
+| sqlite_synth | 2.21 us | 2.16 us: 1.02x faster |
+| spectral_norm | 111 ms | 110 ms: 1.01x faster |
+| coroutines | 23.6 ms | 24.1 ms: 1.02x slower |
+| json | 4.93 ms | 5.07 ms: 1.03x slower |
+| pathlib | 19.2 ms | 19.9 ms: 1.04x slower |
+| deepcopy_memo | 39.1 us | 40.8 us: 1.04x slower |
+| json_loads | 27.0 us | 28.5 us: 1.05x slower |
+| regex_dna | 180 ms | 192 ms: 1.07x slower |
+| deepcopy_reduce | 3.11 us | 3.42 us: 1.10x slower |
+| regex_v8 | 22.7 ms | 25.0 ms: 1.10x slower |
+| telco | 7.82 ms | 8.64 ms: 1.10x slower |
+| scimark_fft | 349 ms | 392 ms: 1.12x slower |
+| bpe_tokeniser | 4.45 sec | 5.03 sec: 1.13x slower |
+| xml_etree_generate | 85.4 ms | 97.6 ms: 1.14x slower |
+| pylint | 317 ms | 364 ms: 1.15x slower |
+| docutils | 2.62 sec | 3.05 sec: 1.17x slower |
+| async_generators | 377 ms | 444 ms: 1.18x slower |
+| scimark_sparse_mat_mult | 4.71 ms | 5.62 ms: 1.19x slower |
+| coverage | 83.0 ms | 99.2 ms: 1.20x slower |
+| dulwich_log | 74.8 ms | 90.8 ms: 1.21x slower |
+| mdp | 2.36 sec | 2.86 sec: 1.22x slower |
+| nqueens | 78.6 ms | 97.6 ms: 1.24x slower |
+| pycparser | 1.12 sec | 1.39 sec: 1.24x slower |
+| xml_etree_process | 59.3 ms | 73.8 ms: 1.24x slower |
+| sqlglot_optimize | 52.7 ms | 65.7 ms: 1.25x slower |
+| sqlglot_normalize | 106 ms | 133 ms: 1.26x slower |
+| tomli_loads | 2.01 sec | 2.58 sec: 1.29x slower |
+| regex_compile | 132 ms | 170 ms: 1.29x slower |
+| thrift | 778 us | 1.00 ms: 1.29x slower |
+| meteor_contest | 102 ms | 131 ms: 1.29x slower |
+| genshi_xml | 48.8 ms | 63.7 ms: 1.31x slower |
+| pprint_safe_repr | 738 ms | 965 ms: 1.31x slower |
+| typing_runtime_protocols | 155 us | 203 us: 1.31x slower |
+| create_gc_cycles | 1.34 ms | 1.78 ms: 1.33x slower |
+| pprint_pformat | 1.50 sec | 2.00 sec: 1.33x slower |
+| generators | 28.8 ms | 38.5 ms: 1.34x slower |
+| crypto_pyaes | 67.9 ms | 90.7 ms: 1.34x slower |
+| json_dumps | 10.5 ms | 14.2 ms: 1.34x slower |
+| fannkuch | 370 ms | 498 ms: 1.35x slower |
+| python_startup_no_site | 7.39 ms | 10.2 ms: 1.38x slower |
+| 2to3 | 260 ms | 360 ms: 1.39x slower |
+| html5lib | 67.0 ms | 95.0 ms: 1.42x slower |
+| genshi_text | 21.5 ms | 30.9 ms: 1.43x slower |
+| float | 77.5 ms | 111 ms: 1.43x slower |
+| django_template | 34.1 ms | 50.2 ms: 1.47x slower |
+| logging_simple | 6.16 us | 9.06 us: 1.47x slower |
+| pyflate | 449 ms | 662 ms: 1.48x slower |
+| sympy_integrate | 19.8 ms | 29.4 ms: 1.48x slower |
+| logging_format | 6.84 us | 10.1 us: 1.48x slower |
+| richards_super | 51.6 ms | 77.6 ms: 1.50x slower |
+| mako | 11.3 ms | 17.2 ms: 1.51x slower |
+| richards | 45.2 ms | 69.1 ms: 1.53x slower |
+| nbody | 85.1 ms | 131 ms: 1.54x slower |
+| python_startup | 11.0 ms | 17.1 ms: 1.56x slower |
+| unpickle_pure_python | 210 us | 331 us: 1.58x slower |
+| scimark_lu | 113 ms | 185 ms: 1.64x slower |
+| scimark_monte_carlo | 65.4 ms | 108 ms: 1.65x slower |
+| hexiom | 5.99 ms | 9.87 ms: 1.65x slower |
+| chaos | 57.3 ms | 95.9 ms: 1.67x slower |
+| comprehensions | 16.5 us | 27.7 us: 1.68x slower |
+| pickle_pure_python | 294 us | 502 us: 1.71x slower |
+| sympy_str | 275 ms | 473 ms: 1.72x slower |
+| sqlglot_transpile | 1.56 ms | 2.69 ms: 1.72x slower |
+| scimark_sor | 134 ms | 232 ms: 1.73x slower |
+| go | 141 ms | 244 ms: 1.73x slower |
+| logging_silent | 103 ns | 186 ns: 1.81x slower |
+| sqlglot_parse | 1.25 ms | 2.33 ms: 1.87x slower |
+| raytrace | 253 ms | 495 ms: 1.96x slower |
+| sympy_expand | 457 ms | 953 ms: 2.09x slower |
+| sympy_sum | 156 ms | 348 ms: 2.24x slower |
+| deltablue | 3.12 ms | 7.65 ms: 2.45x slower |
+| bench_thread_pool | 919 us | 3.37 ms: 3.67x slower |
+| bench_mp_pool | 11.0 ms | 107 ms: 9.73x slower |
+| Geometric mean | (ref) | 1.33x slower |
+
+Benchmark hidden because not significant (3): asyncio_websockets, async_tree_none, gc_traversal
+Ignored benchmarks (14) of results/bm-20240906-3.13.0rc2-ec61006/bm-20240906-vultr-x86_64-python-v3.13.0rc2-3.13.0rc2-ec61006.json: aiohttp, asyncio_tcp, asyncio_tcp_ssl, chameleon, dask, flaskblogging, gunicorn, pickle, pickle_dict, pickle_list, tornado_http, unpack_sequence, unpickle, unpickle_list
+Ignored benchmarks (8) of results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab.json: connected_components, k_core, many_optionals, shortest_path, sphinx, sqlalchemy_declarative, sqlalchemy_imperative, subparsers
+
+- Geometric mean (including insignificant results): 1.219x slower
+
+# HPT report
+
+- Reliability score: 100.00% likely to be slow
+- 90% likely to have a slowdown of 1.21x
+- 95% likely to have a slowdown of 1.19x
+- 99% likely to have a slowdown of 1.17x
+
+# Memory
+- memory change: 1.32x
\ No newline at end of file
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.13.0rc2.svg b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.13.0rc2.svg
new file mode 100644
index 00000000..6dd80dc5
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-3.13.0rc2.svg
@@ -0,0 +1,2984 @@
+
+
+
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-base-mem.svg b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-base-mem.svg
new file mode 100644
index 00000000..a58a8c55
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-base-mem.svg
@@ -0,0 +1,3691 @@
+
+
+
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-base.md b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-base.md
new file mode 100644
index 00000000..e7c6ad5a
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-base.md
@@ -0,0 +1,201 @@
+# Results vs. base
+
+- fork: nascheme
+- ref: gh_115999_specialize
+- machine: linux-x86_64
+- commit hash: 4c484ab
+- commit date: 2024-12-13
+- overall geometric mean: 1.027x faster
+- HPT reliability: 100.00%
+- HPT 99th percentile: 1.00x faster
+- Memory change: 1.00x
+
+Benchmarks with tag 'apps':
+===========================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| 2to3 | 365 ms | 360 ms: 1.01x faster |
+| docutils | 3.08 sec | 3.05 sec: 1.01x faster |
+| html5lib | 98.4 ms | 95.0 ms: 1.04x faster |
+| sphinx | 1.17 sec | 1.16 sec: 1.01x faster |
+| Geometric mean | (ref) | 1.02x faster |
+
+Benchmarks with tag 'asyncio':
+==============================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| async_tree_memoization_tg | 434 ms | 401 ms: 1.08x faster |
+| async_tree_none_tg | 347 ms | 322 ms: 1.08x faster |
+| async_tree_memoization | 462 ms | 429 ms: 1.08x faster |
+| async_tree_io_tg | 793 ms | 740 ms: 1.07x faster |
+| async_tree_io | 813 ms | 761 ms: 1.07x faster |
+| async_tree_none | 376 ms | 354 ms: 1.06x faster |
+| async_tree_cpu_io_mixed_tg | 603 ms | 574 ms: 1.05x faster |
+| async_tree_cpu_io_mixed | 627 ms | 598 ms: 1.05x faster |
+| coroutines | 25.2 ms | 24.1 ms: 1.05x faster |
+| async_generators | 453 ms | 444 ms: 1.02x faster |
+| Geometric mean | (ref) | 1.06x faster |
+
+Benchmark hidden because not significant (1): asyncio_websockets
+
+Benchmarks with tag 'math':
+===========================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| float | 136 ms | 111 ms: 1.23x faster |
+| pidigits | 181 ms | 181 ms: 1.00x faster |
+| nbody | 128 ms | 131 ms: 1.02x slower |
+| Geometric mean | (ref) | 1.06x faster |
+
+Benchmarks with tag 'regex':
+============================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| regex_compile | 177 ms | 170 ms: 1.04x faster |
+| regex_effbot | 2.82 ms | 2.97 ms: 1.05x slower |
+| regex_v8 | 23.7 ms | 25.0 ms: 1.06x slower |
+| regex_dna | 181 ms | 192 ms: 1.06x slower |
+| Geometric mean | (ref) | 1.03x slower |
+
+Benchmarks with tag 'serialize':
+================================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| xml_etree_process | 79.0 ms | 73.8 ms: 1.07x faster |
+| unpickle_pure_python | 335 us | 331 us: 1.01x faster |
+| xml_etree_generate | 98.3 ms | 97.6 ms: 1.01x faster |
+| xml_etree_iterparse | 90.7 ms | 90.4 ms: 1.00x faster |
+| xml_etree_parse | 130 ms | 131 ms: 1.01x slower |
+| json_dumps | 14.0 ms | 14.2 ms: 1.01x slower |
+| Geometric mean | (ref) | 1.01x faster |
+
+Benchmark hidden because not significant (3): tomli_loads, json_loads, pickle_pure_python
+
+Benchmarks with tag 'startup':
+==============================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|------------------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| python_startup_no_site | 10.3 ms | 10.2 ms: 1.01x faster |
+| python_startup | 17.2 ms | 17.1 ms: 1.01x faster |
+| Geometric mean | (ref) | 1.01x faster |
+
+Benchmarks with tag 'template':
+===============================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|-----------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| mako | 17.2 ms | 17.2 ms: 1.00x faster |
+| genshi_xml | 63.2 ms | 63.7 ms: 1.01x slower |
+| genshi_text | 30.5 ms | 30.9 ms: 1.01x slower |
+| django_template | 49.5 ms | 50.2 ms: 1.01x slower |
+| Geometric mean | (ref) | 1.01x slower |
+
+All benchmarks:
+===============
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| float | 136 ms | 111 ms: 1.23x faster |
+| raytrace | 555 ms | 495 ms: 1.12x faster |
+| richards | 77.4 ms | 69.1 ms: 1.12x faster |
+| gc_traversal | 3.52 ms | 3.15 ms: 1.12x faster |
+| sqlglot_parse | 2.59 ms | 2.33 ms: 1.11x faster |
+| thrift | 1.11 ms | 1.00 ms: 1.11x faster |
+| richards_super | 86.0 ms | 77.6 ms: 1.11x faster |
+| pycparser | 1.54 sec | 1.39 sec: 1.11x faster |
+| logging_simple | 10.00 us | 9.06 us: 1.10x faster |
+| sqlglot_transpile | 2.95 ms | 2.69 ms: 1.10x faster |
+| go | 268 ms | 244 ms: 1.10x faster |
+| scimark_monte_carlo | 118 ms | 108 ms: 1.10x faster |
+| logging_format | 11.1 us | 10.1 us: 1.09x faster |
+| chaos | 104 ms | 95.9 ms: 1.09x faster |
+| async_tree_memoization_tg | 434 ms | 401 ms: 1.08x faster |
+| async_tree_none_tg | 347 ms | 322 ms: 1.08x faster |
+| async_tree_memoization | 462 ms | 429 ms: 1.08x faster |
+| async_tree_io_tg | 793 ms | 740 ms: 1.07x faster |
+| deltablue | 8.19 ms | 7.65 ms: 1.07x faster |
+| xml_etree_process | 79.0 ms | 73.8 ms: 1.07x faster |
+| async_tree_io | 813 ms | 761 ms: 1.07x faster |
+| async_tree_none | 376 ms | 354 ms: 1.06x faster |
+| subparsers | 30.7 ms | 29.2 ms: 1.05x faster |
+| async_tree_cpu_io_mixed_tg | 603 ms | 574 ms: 1.05x faster |
+| async_tree_cpu_io_mixed | 627 ms | 598 ms: 1.05x faster |
+| coroutines | 25.2 ms | 24.1 ms: 1.05x faster |
+| sqlalchemy_imperative | 29.0 ms | 27.8 ms: 1.04x faster |
+| regex_compile | 177 ms | 170 ms: 1.04x faster |
+| html5lib | 98.4 ms | 95.0 ms: 1.04x faster |
+| dulwich_log | 93.9 ms | 90.8 ms: 1.03x faster |
+| create_gc_cycles | 1.83 ms | 1.78 ms: 1.03x faster |
+| sqlalchemy_declarative | 202 ms | 196 ms: 1.03x faster |
+| sqlite_synth | 2.21 us | 2.16 us: 1.02x faster |
+| pprint_pformat | 2.04 sec | 2.00 sec: 1.02x faster |
+| async_generators | 453 ms | 444 ms: 1.02x faster |
+| spectral_norm | 112 ms | 110 ms: 1.02x faster |
+| pprint_safe_repr | 979 ms | 965 ms: 1.02x faster |
+| many_optionals | 1.26 ms | 1.24 ms: 1.01x faster |
+| pyflate | 671 ms | 662 ms: 1.01x faster |
+| coverage | 101 ms | 99.2 ms: 1.01x faster |
+| mdp | 2.90 sec | 2.86 sec: 1.01x faster |
+| 2to3 | 365 ms | 360 ms: 1.01x faster |
+| deepcopy_reduce | 3.46 us | 3.42 us: 1.01x faster |
+| unpickle_pure_python | 335 us | 331 us: 1.01x faster |
+| scimark_sor | 235 ms | 232 ms: 1.01x faster |
+| comprehensions | 28.0 us | 27.7 us: 1.01x faster |
+| sympy_str | 478 ms | 473 ms: 1.01x faster |
+| bench_mp_pool | 108 ms | 107 ms: 1.01x faster |
+| docutils | 3.08 sec | 3.05 sec: 1.01x faster |
+| sphinx | 1.17 sec | 1.16 sec: 1.01x faster |
+| python_startup_no_site | 10.3 ms | 10.2 ms: 1.01x faster |
+| bench_thread_pool | 3.40 ms | 3.37 ms: 1.01x faster |
+| python_startup | 17.2 ms | 17.1 ms: 1.01x faster |
+| xml_etree_generate | 98.3 ms | 97.6 ms: 1.01x faster |
+| sqlglot_optimize | 66.2 ms | 65.7 ms: 1.01x faster |
+| sympy_expand | 958 ms | 953 ms: 1.01x faster |
+| scimark_sparse_mat_mult | 5.64 ms | 5.62 ms: 1.00x faster |
+| sympy_integrate | 29.5 ms | 29.4 ms: 1.00x faster |
+| sympy_sum | 349 ms | 348 ms: 1.00x faster |
+| xml_etree_iterparse | 90.7 ms | 90.4 ms: 1.00x faster |
+| mako | 17.2 ms | 17.2 ms: 1.00x faster |
+| pidigits | 181 ms | 181 ms: 1.00x faster |
+| bpe_tokeniser | 5.02 sec | 5.03 sec: 1.00x slower |
+| fannkuch | 496 ms | 498 ms: 1.00x slower |
+| scimark_lu | 184 ms | 185 ms: 1.00x slower |
+| hexiom | 9.83 ms | 9.87 ms: 1.00x slower |
+| nqueens | 97.2 ms | 97.6 ms: 1.00x slower |
+| telco | 8.60 ms | 8.64 ms: 1.01x slower |
+| xml_etree_parse | 130 ms | 131 ms: 1.01x slower |
+| genshi_xml | 63.2 ms | 63.7 ms: 1.01x slower |
+| deepcopy_memo | 40.4 us | 40.8 us: 1.01x slower |
+| deepcopy | 320 us | 323 us: 1.01x slower |
+| json | 5.02 ms | 5.07 ms: 1.01x slower |
+| pathlib | 19.7 ms | 19.9 ms: 1.01x slower |
+| json_dumps | 14.0 ms | 14.2 ms: 1.01x slower |
+| genshi_text | 30.5 ms | 30.9 ms: 1.01x slower |
+| django_template | 49.5 ms | 50.2 ms: 1.01x slower |
+| scimark_fft | 385 ms | 392 ms: 1.02x slower |
+| logging_silent | 182 ns | 186 ns: 1.02x slower |
+| nbody | 128 ms | 131 ms: 1.02x slower |
+| regex_effbot | 2.82 ms | 2.97 ms: 1.05x slower |
+| regex_v8 | 23.7 ms | 25.0 ms: 1.06x slower |
+| regex_dna | 181 ms | 192 ms: 1.06x slower |
+| Geometric mean | (ref) | 1.03x faster |
+
+Benchmark hidden because not significant (13): pylint, connected_components, meteor_contest, tomli_loads, generators, asyncio_websockets, json_loads, shortest_path, pickle_pure_python, k_core, typing_runtime_protocols, crypto_pyaes, sqlglot_normalize
+
+- Geometric mean (including insignificant results): 1.027x faster
+
+# HPT report
+
+- Reliability score: 100.00% likely to be faster
+- 90% likely to have a speedup of 1.01x
+- 95% likely to have a speedup of 1.00x
+- 99% likely to have a speedup of 1.00x
+
+# Memory
+- memory change: 1.00x
\ No newline at end of file
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-base.svg b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-base.svg
new file mode 100644
index 00000000..c7b1dc93
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-base.svg
@@ -0,0 +1,3368 @@
+
+
+
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-default_base_vs_NOGIL.md b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-default_base_vs_NOGIL.md
new file mode 100644
index 00000000..acb6cf50
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-default_base_vs_NOGIL.md
@@ -0,0 +1,213 @@
+# Results vs. default_base_vs_NOGIL
+
+- fork: nascheme
+- ref: gh_115999_specialize
+- machine: linux-x86_64
+- commit hash: 4c484ab
+- commit date: 2024-12-13
+- overall geometric mean: 1.250x slower
+- HPT reliability: 100.00%
+- HPT 99th percentile: 1.24x slower
+- Memory change: 1.19x
+
+Benchmarks with tag 'apps':
+===========================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| 2to3 | 256 ms | 360 ms: 1.41x slower |
+| docutils | 2.55 sec | 3.05 sec: 1.20x slower |
+| sphinx | 992 ms | 1.16 sec: 1.17x slower |
+| Geometric mean | (ref) | 1.25x slower |
+
+Benchmarks with tag 'asyncio':
+==============================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| asyncio_websockets | 523 ms | 520 ms: 1.01x faster |
+| coroutines | 21.6 ms | 24.1 ms: 1.12x slower |
+| async_tree_cpu_io_mixed_tg | 484 ms | 574 ms: 1.19x slower |
+| async_tree_cpu_io_mixed | 499 ms | 598 ms: 1.20x slower |
+| async_tree_io_tg | 610 ms | 740 ms: 1.21x slower |
+| async_tree_io | 627 ms | 761 ms: 1.21x slower |
+| async_tree_none_tg | 256 ms | 322 ms: 1.26x slower |
+| async_generators | 352 ms | 444 ms: 1.26x slower |
+| async_tree_none | 277 ms | 354 ms: 1.28x slower |
+| async_tree_memoization | 332 ms | 429 ms: 1.29x slower |
+| async_tree_memoization_tg | 307 ms | 401 ms: 1.30x slower |
+| Geometric mean | (ref) | 1.21x slower |
+
+Benchmarks with tag 'math':
+===========================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| pidigits | 185 ms | 181 ms: 1.02x faster |
+| nbody | 90.3 ms | 131 ms: 1.45x slower |
+| float | 76.4 ms | 111 ms: 1.45x slower |
+| Geometric mean | (ref) | 1.27x slower |
+
+Benchmarks with tag 'regex':
+============================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| regex_v8 | 24.4 ms | 25.0 ms: 1.03x slower |
+| regex_effbot | 2.69 ms | 2.97 ms: 1.10x slower |
+| regex_dna | 175 ms | 192 ms: 1.10x slower |
+| regex_compile | 127 ms | 170 ms: 1.34x slower |
+| Geometric mean | (ref) | 1.14x slower |
+
+Benchmarks with tag 'serialize':
+================================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| xml_etree_parse | 129 ms | 131 ms: 1.02x slower |
+| json_loads | 26.1 us | 28.5 us: 1.09x slower |
+| xml_etree_generate | 84.5 ms | 97.6 ms: 1.15x slower |
+| json_dumps | 11.3 ms | 14.2 ms: 1.25x slower |
+| xml_etree_process | 58.8 ms | 73.8 ms: 1.25x slower |
+| tomli_loads | 1.97 sec | 2.58 sec: 1.31x slower |
+| pickle_pure_python | 323 us | 502 us: 1.55x slower |
+| unpickle_pure_python | 213 us | 331 us: 1.56x slower |
+| Geometric mean | (ref) | 1.23x slower |
+
+Benchmark hidden because not significant (1): xml_etree_iterparse
+
+Benchmarks with tag 'startup':
+==============================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|------------------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| python_startup | 14.6 ms | 17.1 ms: 1.17x slower |
+| python_startup_no_site | 7.49 ms | 10.2 ms: 1.36x slower |
+| Geometric mean | (ref) | 1.26x slower |
+
+Benchmarks with tag 'template':
+===============================
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|-----------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| genshi_xml | 49.7 ms | 63.7 ms: 1.28x slower |
+| django_template | 35.4 ms | 50.2 ms: 1.42x slower |
+| genshi_text | 21.7 ms | 30.9 ms: 1.43x slower |
+| mako | 11.6 ms | 17.2 ms: 1.48x slower |
+| Geometric mean | (ref) | 1.40x slower |
+
+All benchmarks:
+===============
+
+| Benchmark | bm-20241213-vultr-x86_64-python-2de048ce79e621f5ae05-3.14.0a2+-2de048c | bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab |
+|----------------------------|:----------------------------------------------------------------------:|:------------------------------------------------------------------------:|
+| gc_traversal | 4.27 ms | 3.15 ms: 1.36x faster |
+| create_gc_cycles | 1.83 ms | 1.78 ms: 1.03x faster |
+| pidigits | 185 ms | 181 ms: 1.02x faster |
+| sqlite_synth | 2.20 us | 2.16 us: 1.02x faster |
+| asyncio_websockets | 523 ms | 520 ms: 1.01x faster |
+| xml_etree_parse | 129 ms | 131 ms: 1.02x slower |
+| regex_v8 | 24.4 ms | 25.0 ms: 1.03x slower |
+| json | 4.76 ms | 5.07 ms: 1.06x slower |
+| json_loads | 26.1 us | 28.5 us: 1.09x slower |
+| pathlib | 18.2 ms | 19.9 ms: 1.09x slower |
+| regex_effbot | 2.69 ms | 2.97 ms: 1.10x slower |
+| regex_dna | 175 ms | 192 ms: 1.10x slower |
+| coroutines | 21.6 ms | 24.1 ms: 1.12x slower |
+| spectral_norm | 96.3 ms | 110 ms: 1.14x slower |
+| k_core | 2.05 sec | 2.36 sec: 1.15x slower |
+| xml_etree_generate | 84.5 ms | 97.6 ms: 1.15x slower |
+| python_startup | 14.6 ms | 17.1 ms: 1.17x slower |
+| sphinx | 992 ms | 1.16 sec: 1.17x slower |
+| dulwich_log | 76.6 ms | 90.8 ms: 1.19x slower |
+| async_tree_cpu_io_mixed_tg | 484 ms | 574 ms: 1.19x slower |
+| bpe_tokeniser | 4.24 sec | 5.03 sec: 1.19x slower |
+| docutils | 2.55 sec | 3.05 sec: 1.20x slower |
+| async_tree_cpu_io_mixed | 499 ms | 598 ms: 1.20x slower |
+| telco | 7.18 ms | 8.64 ms: 1.20x slower |
+| bench_mp_pool | 88.9 ms | 107 ms: 1.20x slower |
+| async_tree_io_tg | 610 ms | 740 ms: 1.21x slower |
+| async_tree_io | 627 ms | 761 ms: 1.21x slower |
+| many_optionals | 1.02 ms | 1.24 ms: 1.21x slower |
+| nqueens | 80.3 ms | 97.6 ms: 1.22x slower |
+| mdp | 2.33 sec | 2.86 sec: 1.23x slower |
+| pycparser | 1.12 sec | 1.39 sec: 1.24x slower |
+| scimark_fft | 314 ms | 392 ms: 1.25x slower |
+| coverage | 79.2 ms | 99.2 ms: 1.25x slower |
+| connected_components | 398 ms | 499 ms: 1.25x slower |
+| json_dumps | 11.3 ms | 14.2 ms: 1.25x slower |
+| xml_etree_process | 58.8 ms | 73.8 ms: 1.25x slower |
+| async_tree_none_tg | 256 ms | 322 ms: 1.26x slower |
+| shortest_path | 438 ms | 552 ms: 1.26x slower |
+| deepcopy | 256 us | 323 us: 1.26x slower |
+| async_generators | 352 ms | 444 ms: 1.26x slower |
+| sqlglot_optimize | 52.1 ms | 65.7 ms: 1.26x slower |
+| async_tree_none | 277 ms | 354 ms: 1.28x slower |
+| genshi_xml | 49.7 ms | 63.7 ms: 1.28x slower |
+| scimark_sparse_mat_mult | 4.38 ms | 5.62 ms: 1.28x slower |
+| sqlglot_normalize | 103 ms | 133 ms: 1.29x slower |
+| async_tree_memoization | 332 ms | 429 ms: 1.29x slower |
+| meteor_contest | 101 ms | 131 ms: 1.30x slower |
+| pylint | 280 ms | 364 ms: 1.30x slower |
+| async_tree_memoization_tg | 307 ms | 401 ms: 1.30x slower |
+| typing_runtime_protocols | 155 us | 203 us: 1.31x slower |
+| tomli_loads | 1.97 sec | 2.58 sec: 1.31x slower |
+| subparsers | 22.2 ms | 29.2 ms: 1.31x slower |
+| deepcopy_reduce | 2.60 us | 3.42 us: 1.31x slower |
+| regex_compile | 127 ms | 170 ms: 1.34x slower |
+| fannkuch | 372 ms | 498 ms: 1.34x slower |
+| deepcopy_memo | 30.1 us | 40.8 us: 1.35x slower |
+| thrift | 738 us | 1.00 ms: 1.36x slower |
+| pprint_safe_repr | 710 ms | 965 ms: 1.36x slower |
+| python_startup_no_site | 7.49 ms | 10.2 ms: 1.36x slower |
+| pprint_pformat | 1.45 sec | 2.00 sec: 1.37x slower |
+| crypto_pyaes | 65.4 ms | 90.7 ms: 1.39x slower |
+| 2to3 | 256 ms | 360 ms: 1.41x slower |
+| django_template | 35.4 ms | 50.2 ms: 1.42x slower |
+| generators | 27.1 ms | 38.5 ms: 1.42x slower |
+| genshi_text | 21.7 ms | 30.9 ms: 1.43x slower |
+| nbody | 90.3 ms | 131 ms: 1.45x slower |
+| float | 76.4 ms | 111 ms: 1.45x slower |
+| sqlalchemy_imperative | 19.1 ms | 27.8 ms: 1.46x slower |
+| logging_simple | 6.14 us | 9.06 us: 1.48x slower |
+| sympy_integrate | 19.9 ms | 29.4 ms: 1.48x slower |
+| mako | 11.6 ms | 17.2 ms: 1.48x slower |
+| logging_format | 6.79 us | 10.1 us: 1.49x slower |
+| richards_super | 50.7 ms | 77.6 ms: 1.53x slower |
+| richards | 44.7 ms | 69.1 ms: 1.55x slower |
+| sqlalchemy_declarative | 126 ms | 196 ms: 1.55x slower |
+| pickle_pure_python | 323 us | 502 us: 1.55x slower |
+| unpickle_pure_python | 213 us | 331 us: 1.56x slower |
+| pyflate | 421 ms | 662 ms: 1.57x slower |
+| comprehensions | 17.2 us | 27.7 us: 1.61x slower |
+| chaos | 58.4 ms | 95.9 ms: 1.64x slower |
+| scimark_monte_carlo | 64.7 ms | 108 ms: 1.66x slower |
+| scimark_lu | 110 ms | 185 ms: 1.68x slower |
+| hexiom | 5.84 ms | 9.87 ms: 1.69x slower |
+| sqlglot_transpile | 1.57 ms | 2.69 ms: 1.72x slower |
+| sympy_str | 271 ms | 473 ms: 1.75x slower |
+| logging_silent | 106 ns | 186 ns: 1.76x slower |
+| scimark_sor | 128 ms | 232 ms: 1.82x slower |
+| sqlglot_parse | 1.25 ms | 2.33 ms: 1.86x slower |
+| raytrace | 260 ms | 495 ms: 1.90x slower |
+| go | 117 ms | 244 ms: 2.09x slower |
+| sympy_expand | 453 ms | 953 ms: 2.10x slower |
+| sympy_sum | 152 ms | 348 ms: 2.29x slower |
+| deltablue | 3.17 ms | 7.65 ms: 2.41x slower |
+| bench_thread_pool | 1.04 ms | 3.37 ms: 3.25x slower |
+| Geometric mean | (ref) | 1.35x slower |
+
+Benchmark hidden because not significant (1): xml_etree_iterparse
+Ignored benchmarks (1) of results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab.json: html5lib
+
+- Geometric mean (including insignificant results): 1.250x slower
+
+# HPT report
+
+- Reliability score: 100.00% likely to be slow
+- 90% likely to have a slowdown of 1.25x
+- 95% likely to have a slowdown of 1.25x
+- 99% likely to have a slowdown of 1.24x
+
+# Memory
+- memory change: 1.19x
\ No newline at end of file
diff --git a/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-default_base_vs_NOGIL.svg b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-default_base_vs_NOGIL.svg
new file mode 100644
index 00000000..0bf70d90
--- /dev/null
+++ b/results/bm-20241213-3.14.0a2+-4c484ab-NOGIL/bm-20241213-vultr-x86_64-nascheme-gh_115999_specialize-3.14.0a2+-4c484ab-vs-default_base_vs_NOGIL.svg
@@ -0,0 +1,3216 @@
+
+
+