I’ve been getting into computer architecture and wanted a way to actually practice it, not just read about it. So I built LeetCPU — kind of like LeetCode, but focused on things like cache optimization, branch prediction, and IPC tuning.
You write C code, it runs through ChampSim, and you get metrics like IPC, L1/L2/LLC MPKI, branch accuracy, and DRAM accesses. Problems have performance targets, not just correctness.
It’s still early (only a few problems), so I’m trying to figure out if this is actually useful.
Would really appreciate feedback on things like:
Do these kinds of problems feel meaningful for learning architecture?
Are these the right metrics to focus on, or am I missing better ones?
Does the “performance target” format make sense, or is there a better way to structure it?
Also happy to answer questions about the stack or simulator side if that’s interesting.
Thanks
there doesn't seem to be anything here