Parallel Pixie Dust (PPD) is a C++ library that aims to make parallel programming easier and safer by avoiding deadlocks and race conditions. It uses futures and thread pools to schedule work across multiple threads. PPD allows work to be distributed across threads in different models and provides various thread pool types. It handles exceptions thrown across threads to improve debugging of multithreaded code. The library was designed based on an examination of threading patterns in SPEC2006 benchmarks.