1. A method comprising: performing, by a computer, a first pipeline pass comprising: receiving a fetch request from a requesting processor in a multiprocessor system; accessing a cache directory based on the received fetch request, the cache directory organized into congruence classes that are comprised of compartments containing cache entries; determining that a fetch miss has occurred in the cache directory; accessing a directory least recently used (LRU) array to determine a specified congruence class and a LRU compartment associated with a LRU entry in the cache directory; and performing a second pipeline pass comprising: receiving the LRU compartment and the specified congruence class; and accessing the cache directory to select an address of cache entry to be cast out of the cache directory, the selecting responsive to the LRU compartment and to the specified congruence class.