Is software prefetching (__builtin_prefetch) useful for performance? – Daniel Lemire's blog
Many software performance problems have to do with data access. You could have the most powerful processor in the world, if the data is not available at the right time, the computation will be delayed. It is intuitive. We used to locate libraries close to universities. In fact, universities were built around libraries. We also … Continue reading Is software prefetching (__builtin_prefetch) useful for performance?
Many software performance problems have to do with data access. You could have the most powerful processor in the world, if the data is not available at the right time, the computation will be delayed. It is intuitive. We used to locate libraries close to universities. In fact, universities were built around libraries. We also aggregate smart and knowledgeable people together. Sadly, our computers are organized with processors on one side and memory on the other. To make matters worse, memory chips are simply unable to keep up with the processing power of processors. Thus we introduce caches.
related reading
- abseil / Performance Hintsabseil.io
- Algorithms for Modern Hardware - Algorithmicaen.algorithmica.org
- Memory location matters for performancepythonspeed.com
- What Every Programmer Should Know About Memorypeople.freebsd.org
- abseil / Performance Hintsabseil.io
- täkō: A Polymorphic Cache Hierarchy for General-Purpose Optimization of Data Movementcs.cmu.edu
- The compiler will optimize that away | RoyalSlothblog.royalsloth.eu
- Infographics: Operation Costs in CPU Clock Cycles - 6IT6it.dev
- A very concrete explanation of how a cache worksparksb.github.io
- What Every Programmer Should Know About Memoryakkadia.org
- Optimize CPU performance with Instruments - WWDC25 - Videos - Apple Developerdeveloper.apple.com
- Memory access is O(N^[1/3])vitalik.eth.limo