Closest Point of Approach (CPA) calculations are fundamental calculations for determining the utility and safety of a candidate maneuver of a marine vessel with respect to another vessel, i.e., contact. In certain kinds of path planning, a set of CPA calculations is made for thousands of candidate maneuvers, perhaps several times per second. Furthermore, with multiple contacts, multiple sets need to be calculated. This computational workload can overwhelm the computational resources of the onboard computer, especially on a low-power computer commonly found on marine platforms. We present here a layered cache algorithm for performing CPA calculations that capitalizes on assumptions that can be made when performing large sets of calculations for candidate maneuvers given a particular ownship position and contact position and trajectory. Testing on different computer architectures shows between a 45x and 80x improvement on the average rate over the naive CPA algorithm. On our target computer, the Raspberry Pi 3, a 114x improvement on the worst-case rate of calculations was achieved.