Another difference with a system that employs caches is that a scratchpad commonly does not contain a copy of data that is also stored in the main memory. In contrast with a system that uses caches, a system with scratchpads is a system with Non-Uniform Memory Access latencies, because the memory access latencies to the different scratchpads and the main memory vary. It can be considered similar to the L1 cache in that it is the next closest memory to the ALU after the internal registers, with explicit instructions to move data to and from main memory, often using DMA-based data transfer. In reference to a microprocessor ("CPU"), scratchpad refers to a special high-speed memory circuit used to hold small items of data for rapid retrieval. It also adds to a growing body of recent work imploring hardware and software designers to rethink their distribution of work.Scratchpad memory (SPM), also known as scratchpad, scatchpad RAM or local store in computer terminology, is a high-speed internal memory used for temporary storage of calculations, data, and other work in progress. Stash may not be the final answer, but the paper asks the right question. By empowering hardware and software to do what each does best, stash improves both performance and energy. Hits in the stash are as efficient as a scratchpad, but (infrequent) misses incur a small hardware penalty. The stash redistributes the hardware-software burden – software determines what data should go into the stash, but relies on hardware smarts for address space conversion and coherence. Besides offering the proverbial cake as an audience prize, the presentation described a new memory organization called stash that gets the best of caches and scratchpads. Researchers at Illinois address this conundrum in a paper presented at the International Symposium of Computer Architecture – Stash: Have Your Scratchpad and Cache it Too. In practice, this is inefficient and scratchpads have remained an enticing but niche solution. Software must explicitly move data in and out of a different scratchpad address space and take responsibility for keeping coherent multiple copies in different address spaces. Its hardware memory structure is simple and efficient. And it is not always successful.Ī scratchpad moves the burden of managing fast accesses to software. The magic of caches is that this cleverness has been hidden almost entirely from software.īut this cleverness costs energy. Decades of hardware research has found clever ways to determine what data to keep in the cache, how to find it, and when to throw it out. While most readers will not face the last choice, it is important for saving time and energy in the devices we love by keeping frequently-used information close at hand.Ĭaches are the workhorse of modern computers, feeding the processor with data about 100X faster than main memory. Full disclosure: He had the pleasure of working with one of the authors of the discussed paper- Sarita Adve-on her 1993 Ph.D. Hill of the University of Wisconsin-Madison. The following is a special contribution to this blog by CCC Executive Council Member Mark D. PROGRAMMING LANGUAGES / COMPILERS / SOFTWARE ENGINEERING.HUMAN-COMPUTER INTERACTION / GRAPHICS / VISUALIZATION.DATABASES / INFORMATICS / DATA SCIENCE / HPC.
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |