Talk:Scratchpad memory

Wikified as part of the Wikification wikiproject! JubalHarshaw 15:07, 5 October 2006 (UTC)

I think referring to the Local Storages of STI's Cell as scratchpad RAM is not accurate, as it stores code as well, not just data. It's called embedded (S)RAM, instead. For that matter, the mentioning of L1 cache of CPU's also not accurate here, IMHO. —Preceding unsigned comment added by 80.99.94.64 (talk) 18:58, 7 October 2007 (UTC)

Fair points, I'll try and explain the slant I've put on the article:-

The progression of [1] SonyPS1 R3000 with 4k scratchpad -> [2] SonyPS2 EE 16k scratchpad with DMA -> [3] CELL with embedded SRAM with DMA - seems to me to clearly represent an evolution of "the same component". The old DSP chips are also worth mentioning for their similarity.

They're more similar to eachother than they are to a CPU cache. And yet most CPU's with cachecontrol instructions can also claim to do the job of a scratchpad. I've mentioned the CPU cache for comparison, I dont claim regular L1 is scratchpad. But: the SH4 in the Dreamcast explicitely called it's locked L1 cache facility Scratchpad... how can that not be mentioned or at least point to similarity :)

Furthermore on the CUDA GPU L1 useage: I feel it's worth mentioning because there the cache memory is accessible in a manner where it does NOT contain data that is committed to main-memory - it can be used for pure on-chip workspace, shared between threads. I see this as very similar to the SH4 (in that a cache is re-assigned to a pure scratchpad role).

Maybe a compromize is to re-name this article "Scratchpad / Local Store" ? Some sort of evolutionary tree of on-chip memories seems applicable... parallel evolution sometimes arrives at the same solution with a different name.

The differences between Cell Local store and Scratchpad in the context of multiprocessing is possibly veering off topic but this seemed a reasonable place to explain exactly what can & can't be acheived by either setup.

195.188.17.251 17:07, 9 October 2007 (UTC) walter_bz

Article needs improvement
The two key characteristics listed in the article are not really key characteristics

"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."

For a cache based system, memory access times vary as well.

"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."

This is wrong. There can be copies of information in main memory.

The key characteristic of a scratch pad is that loading and spilling is under software control, instead of being automatic, as it is the case for caches. And it can be done for code and data. 87.161.185.77 (talk) 11:02, 12 January 2014 (UTC)