PyAssemblyStats is Python project, that analyzes the binaries found in the default system paths. The aim is to understand, how often do our favorite tools use SIMD instructios, that make up a huge part of modern CPUs. The results are astonishing and show, that often less than 1% of generated lines even reference vector registers.
The full report is available in this article in the Unum blog.
main.py
generates themain.json
with stats about differnt binaries.topic_modeling.ipynb
shows, how the clusters of SIMD instruction can be recognized using Latend Dirichlet Allocation.
- Download top 100 most popular C++ projects from GitHub, compile them with SIMD flags and evaluate.
- Father precompiled packages from Conan and Conda.
- Implement
specs_arm.py
for ARM assembly. - Rewrite in C++ for speed.