Assembly Optimization Tips by Mark Larson (2004)
1–10 of 22 posts
Re: Assembly Optimization Tips by Mark Larson (2004)
#2Re: Assembly Optimization Tips by Mark Larson (2004)
#3Looks like this was written in 2004, or thereabouts.
Re: Assembly Optimization Tips by Mark Larson (2004)
#4I'm not familiar with Pentium but my guess is that memory store is relatively cheaper than load in many modern (out-of-order) microarchitectures.
> (Intermediate)14. Parallelization.
I feel like this is where compilers come into handy, because juggling critical paths and resource pressures at the same time sounds like a nightmare to me
> (Advanced)4. Interleaving 2 loops out of sync
Software pipelining!
Re: Assembly Optimization Tips by Mark Larson (2004)
#5Re: Assembly Optimization Tips by Mark Larson (2004)
#6Re: Assembly Optimization Tips by Mark Larson (2004)
#7For modern use, something about ARM CPUs would be much more useful since that's what microcontrollers all use now. No one's doing ASM programming on x86 CPUs these days (and certainly not Pentium4 CPUs).
Re: Assembly Optimization Tips by Mark Larson (2004)
#8This article title should have "(2004)" added; this is seriously old information. For modern use, something about ARM CPUs would be much more useful since that's what microcontrollers all use now. No one's doing ASM programming on x86 CPUs these days (and certainly not Pentium4 CPUs).
For instance Daniel Lemire's blog [1] is quite often featured here, and very often features very low-level performance analysis and improvements.
Re: Assembly Optimization Tips by Mark Larson (2004)
#9This article title should have "(2004)" added; this is seriously old information. For modern use, something about ARM CPUs would be much more useful since that's what microcontrollers all use now. No one's doing ASM programming on x86 CPUs these days (and certainly not Pentium4 CPUs).
I take your point, but I think there’s still a fair bit of x86 asm out there. For example, in ffmpeg and zstd.
Re: Assembly Optimization Tips by Mark Larson (2004)
#10What's a good resource like this for modern CPUs (especially ARM)?