täko: A Polymorphic Cache Hierarchy for General-Purpose Optimization of Data Movement

18Citations
Citations of this article
41Readers
Mendeley users who have this article in their library.

This article is free to access.

Abstract

Current systems hide data movement from software behind the load-store interface. Software's inability to observe and respond to data movement is the root cause of many inefciencies, including the growing fraction of execution time and energy devoted to data movement itself. Recent specialized memory-hierarchy designs prove that large data-movement savings are possible. However, these designs require custom hardware, raising a large barrier to their practical adoption. This paper argues that the hardware-software interface is the problem, and custom hardware is often unnecessary with an expanded interface. The täko architecture lets software observe data movement and interpose when desired. Specifcally, caches in täko can trigger software callbacks in response to misses, evictions, and writebacks. Callbacks run on reconfgurable dataflow engines placed near caches. Five case studies show that this interface covers a wide range of data-movement features and optimizations. Microarchitecturally, täko is similar to recent near-data computing designs, adding 5% area to a baseline multicore. täko improves per-formance by 1.4×-4.2×, similar to prior custom hardware designs, and comes within 1.8% of an idealized implementation.

Cite

CITATION STYLE

APA

Schwedock, B. C., Yoovidhya, P., Seibert, J., & Beckmann, N. (2022). täko: A Polymorphic Cache Hierarchy for General-Purpose Optimization of Data Movement. In Proceedings - International Symposium on Computer Architecture (pp. 42–58). Institute of Electrical and Electronics Engineers Inc. https://doi.org/10.1145/3470496.3527379

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free