A decade ago, I embarked on a journey in computing. My fascination with Computer Architecture has only grown as I move forward. Over the years, I’ve gathered valuable pointers — this blog post is my way of sharing them with anyone interested. I learn best by ping-ponging between multiple sources until the ‘aha’ moment arrives, so expect some redundancies. While not exhaustive, these pointers reflect a decade of curiosity and learning. Notably, this doesn’t delve into the ongoing AI revolution—that’s a story for another day. For now, I remain deeply grateful to the brilliant minds driving advancements in this ever-evolving field and to those who distill its complexities for others to understand, some of whom I have had the pleasure of working with.
Legend: [V] = Video [B] = Blog [P] = Playlist
CPU Architecture
Bits of Architecture [P]
CS6810 - Rajeev Balasubramanian [P]
Modern Microprocessors lightera
Processor Architecture 101
What's new in CPUs since the 80s?
Modern CPU Microarchitecture: An Overview
How CPUs are designed
WTF is SIMD/SIMT/SMT
ISA - ARM vs x86
Understanding CPU Microarchitecture to Increase Performance [V]
Microarchitecture Primer | Complimentary thread
CMU 418/618: Parallel Computer Architecture and Programming
CMU ECE 18-600 Foundations of Computer Systems
To reinvent the processor blog
Microprocessors by Erik Engheim [B]
Easy Perf blog [B]
Agner Fog CPU Blog [B]
Moore's Law Hits the roof
X86 internals [V]
GPU Architecture
GPU Programming: When, Why and How?
Graphics Beginners' Guide, Part 1 & Part2
Cornell GPU Architecture
Stanford CS149 I Parallel Computing I 2023 I Kayvon Fatahalian
SIMD < SIMT < SMT: parallelism in NVIDIA GPUs
Cuda Programming Guide
Nvidia Deep Learning Architecture
What Every Developer Should Know About GPU Computing
Understanding GPU Arch by Cornell Virtual workshop
An Intro to GPU Architecture and Programming Models [V]
GPUs for Deep Learning
Graphics Pipeline Performance
Life of a Triangle: Nvidias Logical Pipeline
Anadtech Nvidia Turing deepdive [Ray Tracing]
NVIDIA GPU Architecture: from Pascal to Turing to Ampere
Understanding Tensor Cores
Kayvon Fatahlian
Gentle introduction to GPUs inner workings
Caroline Collange Gpu Lectures 2019/20
Towards Microarchitectural Design of Nvidia GPUs
Gpu Architecture & Models
GPU Arch types explained
GPU Programming: When, Why and How?
A Primer On Efficient Rendering Algorithms & Clustered Shading
Mesh and task shaders intro and basics
Mesh Shaders explained
OGL Shaders
AMD GPU Hardware Basics
A trip through the Graphics Pipeline
Intel Gen11
David Kanter - Why CUDA cores aren’t actual cores [V]
OS Performance Concepts
Linux Performance by Brendann Greg [B]
Huge Pages
How Kernel manages your memory
Swapping
Paging
Mars Pathfinder - Priority Inversion Problem
Memory Hierarchy
Main Memory Primer
Virtual memory by David Black-Schaffer [P]
What Every Programmer Should Know About Memory
Swap Memory
Bandwidth vs Latency
Memory Bandwidth Napkin Math
Numa Deepdive
Vectorization
SIMD vs SIMT vs SMT
What is Vectorization
SIMD < SIMT < SMT: parallelism in NVIDIA GPUs
Impact on CPU Frequencies
Apple AMX
MMX vs SSE vs AVX
Vectorization walkthrough
Case Studies
Pentium4 Microarchitecture
Spectre vs MeltDown
Why is Apple M1 so fast
Apple M1 Anandtech
Skylake / Icelake / GoldenCove
Nvidia Grace
ChatGPT Hardware
Which GPU(s) to Get for Deep Learning
Fermi & Volta & Hopper & Turing & Ampere & Ada Lovelace
Evolution of Nvidia Gpu Arch
Power
Power Consumption
TechUnrwapped
Why Intel Processors Draw More Power Than Expected: TDP and Turbo Explained
System Design
CprE488 - Embedded Systems Design
System Design Blogs
Conference Talks & Podcasts
Jim Keller: Moore's Law, Microprocessors, and First Principles | Lex Fridman Podcast #70
Jim Keller: The Future of Computing, AI, Life, and Consciousness | Lex Fridman Podcast #162
David Patterson: Computer Architecture and Data Storage | Lex Fridman Podcast
A Decade of Machine Learning Accelerators:Lessons Learned and Carbon Footprint by David Patterson [slides]
Trends in Deep Learning Hardware: Bill Dally (NVIDIA)
A New Golden Age for Computer Architecture by David Patterson - Publication & Lecture
Leave a comment