HYBLM.dev
.dev
H
Y
B
L
M
🦀
All Projects

Performance Aware Programming Course

Computer Enhance is an online course explaining what you need to know and think about in order to produce performant programs. The curriculum includes weekly homework that gradually builds up into larger projects.

8086 simulator

In order to get a feel for the work a CPU needs to do when executing code and to become decently proficient in reading assembly, the course has you build an 8086 emulator.

Haversine distance

Given the example problem of quickly computing a large number of haversine distances loaded from JSON, we built:

  • a JSON parser
  • a custom instrumentation-based profiler
  • a repetition-testing harness to compare the runtime of different approaches, which runs each function many times to eliminate statistical outliers
  • a custom implementation of sine and cosine