Re:Assembly Optimization Tips
by thxg on Sunday January 08, 2023 @02:01PM
(#34301952)
This needs a (2004). The article mostly targets the Intel Pentium 4. Many high-level tips still hold true (for example those that could apply to any programming language, like expressing divisions as multiplies), but quite a few things have changed since then. Especially things related to microcode are likely be different now.
Re:Assembly Optimization Tips
by anthomtb on Sunday January 08, 2023 @03:19PM
(#34302657)
Linked in the article is Agner Fog's website: https://www.agner.org/optimize/. Which appears to have up-to-date knowledge and 2001's web aesthetic (just the way it should be).
Re:Assembly Optimization Tips
by bear8642 on Sunday January 08, 2023 @05:58PM
(#34304279)
Does anyone have good recommendation for beginner friendly optimisation material? Agner's website starts saying "Note that these manuals are not for beginners. "
Re:Assembly Optimization Tips
by anthomtb on Monday January 09, 2023 @12:57AM
(#34307283)
I don’t have any beginner-specific material for optimizing Assembly.
But after skimming a few of Agner’s manuals, I think “beginners” means “new to programming” or “new to computer science”. Not the optimization aspect.
If your level of programming knowledge is “I learned to write Hello World in Python last week!” then Agner’s material may as well be hieroglyphics. But if you’ve got some C or C++ under your belt, have written a little assembly and can articulate the difference between a register and the stack then you should be able to understand Agner’s manuals.
Edit: somebody has kindly updated it for me.
But after skimming a few of Agner’s manuals, I think “beginners” means “new to programming” or “new to computer science”. Not the optimization aspect.
If your level of programming knowledge is “I learned to write Hello World in Python last week!” then Agner’s material may as well be hieroglyphics. But if you’ve got some C or C++ under your belt, have written a little assembly and can articulate the difference between a register and the stack then you should be able to understand Agner’s manuals.