Multi Threading in Half-Life 2

December 02, 2006

Article: Multi-core in the Source Engine

Interesting article on the difficulties of adding multi threading to a game engine (namely the Source Engine from Half-Life2 and other games). Having worked a bit on a game engine (which is mostly single-threaded) from World War II Online I can relate to the difficulties.

With the future being multi cpu/core this is a situation that will become more common. Threaded code is always a pain to design, code and debug but like all revolutions, it will get easier with time. People build frameworks, learn the patterns that work, and become familiar with thinking in terms of multiple things happening at the same time. I would also expect that languages that make this easier will become more popular (like Haskell and Erlang).