2008.08.06

Modern applications can often realize a substantial performance boost by dividing the work they have to do into logical groups that can be performed in parallel. Humans call this “Multi-tasking”, computer scientists call this “multithreading”. Not all workloads easily lend themselves to such divisions without a bit of effort, and even ones that endure the transformation well still require a way to re-group and coordinate once their work is done. In Computer Science lingo, these are called “synchronization points”. (more…)