This PR updates cache recorder to use a vector of RubyPorts for cache cooldown and warmup instead of Sequencer or GPUCoalescer vectors (refer to issue #403 for more details). It also removes the extra guards that were added in #377 to prevent compile-time failures in non-GPU builds.