State Space Reduction: JPF is a so-called explicit-state model checker, as it enumerates all visited states, and therefore suffers from the state explosion problem inherent in analyzing large programs. It also contains garbage collection, because a typical Java program will be infinite state (state size will grow infinitely) without garbage collection.
Previous versions of JPF used a facility for marking blocks of code as atomic, using calls to Verify.beginAtomic() and Verify.endAtomic(). This is not supported in the latest version of the tool. Instead, it supports dynamic partial-order reduction by default, as a means of reducing the number of interleavings analyzed by the tool while checking concurrent code.