We have proposed a processor called AutoMemoization Processor which is based on computation reuse, and merged it with speculative multi-threading based on value prediction into a mechanism called Parallel Speculative Execution. The processor has table called Reuse Table for registering inputs and outputs of computation blocks. The table is implemented by a ternary CAM, and input sequences are stored onto the table. The past model cannot efficiently use Reuse Table entries because the purging algorithm for Reuse Table is too simple. This paper proposes a new algorithm for purging useless entries based on characteristics of loops. We also propose a new storing and searching filter against useless entries for loops. The evaluation result with SPEC CPU95 benchmark suite shows that these mechanisms allow Reuse Table to be implemented with a smaller CAM without any performance degradation.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.