#151 overallRising
Performance Aware Programming
computerenhance.com
3 recommenders · 4 threads · recommended in 2 years, 2023–2025 · score 2.9
A course by Casey Muratori on writing performance-aware software, working from x86-64 assembly and machine code up to measuring and optimizing real programs. The first part has students build a simulator for the Intel 8086 instruction set.
Commenters call it a great course for experienced programmers who want to understand how to measure and write high-performance code, and praise its hands-on look at how instructions are encoded.
CS Fundamentals & Systemsintermediatepaidvideo lectures#performance#x86-64#assembly#machine code#8086#muratori
Recommendations by year
20062026
computerenhance.com is a course focused on understanding how to measure and write high performance software. It's a great course targeting experienced programmers.
Ok but if you do want to play with writing binary code manually I recommend Casey Muratori's performance course
ASM programming is fun. Machine code (as in what ASM encodes to) isn't scary, but it is extremely tedious to work with. I recommend the first part of Casey Muratori's Performance Aware Programming course if you want to feel that pain.
OP, you should take a look at Casey Muratori's course at computerenhance.com
The first part of the course's homework creates a simulator of the 1978 intel 8086 (which modern x86_64 assembly still closely resembles). You will learn a lot of things about computers that are really difficult to find elsewhere.
Agreed, but most people here haven't paid for the rest of the course, and Casey sometimes forgot that here he's addressing a wider audience.
For instance he fails to explain why he didn't bother addressing the tail of his unrolled loop. He does in the course, but here he's just assuming it's irrelevant, and doesn't address again potential criticism like "he doesn't even bother to write correct code, look at that lazy unrolling!".
Thankfully there's a free lecture that explains the broad concept with an example. It's this lecture that convinced me to try out his course, where I hope he'll go into more details: https://www.youtube.com/watch?v=pgoetgxecw8&list=PLEMXAbCVnm...