Below you can find list of code snippets/small projects presented in the notes of this blog. I decided to gather them in one place as it became harder and harder to find them amongst all the other articles.
Unless specified otherwise – everything listed here is published under a zlib license.
MemTracer - system for tracking memory usage patterns, leaks, fragmentation and so on. Make sure to read the last article as it describes modifications I made to use it with a real-world application instead of small test. New version released in 2010, at Google Code.
Visual Studio Expression Evaluator plugin allowing for viewing original strings next to their CRC32 values.
Instrumenting profiler - poor man’s VTune. Profile your code with minimal changes to original source.
Thread Profiler - poor man’s ITP (another try to put Intel out of business :).
Distributed processing system - skeleton of system allowing to distribute tasks on multiple machines.
Software occlusion culling - old technique made viable again,
Game editor testbed - employs IPC to separate C# editor layer and C++ renderer. Crash of one of them, doesn’t cause a data loss.
Lock-free double ended bounded queue - … in C++. Perfect for your threadpool.
Automatic Win32 crash reporter/handler - with “blackbox” class.
Reflection system - for C++, works out-of-the box, no/minor code modifications required.
Thread pools collection - tests of various containers (mosly lock free, using thread pool as an example).
Go path tracer - my Go programming language experiment
Z-machine interpreter in Go - capable of playing Zork I
Rust path tracer - path tracer in Rust