Timeline for Most Efficient Cache Replacement Algorithm [closed]
Current License: CC BY-SA 3.0
15 events
| when toggle format | what | by | license | comment | |
|---|---|---|---|---|---|
| Dec 31, 2013 at 3:32 | history | closed | gnat CommunityBot amon Michael Kohne | Needs details or clarity | |
| Dec 28, 2013 at 13:04 | review | Close votes | |||
| Dec 31, 2013 at 3:32 | |||||
| Apr 24, 2011 at 13:17 | vote | accept | ashes999 | ||
| Apr 24, 2011 at 11:30 | comment | added | maaartinus | "Also, this is a bit of an academic question, since, generally, main memory is cheap and abundant and I don't really need to worry about cache size too much." - Wrong, unless you're working on a small app. Databases, web servers, and many others use a lot of RAM for caching and would profit from more RAM or a better strategy. | |
| Apr 24, 2011 at 11:27 | comment | added | maaartinus | @Omega Centauri You think of the CPU caches only, but there's much more. The OS caches used files and directories, databases caches their data, nearly each application does a lot of caching (e.g. of already computed results). | |
| Apr 23, 2011 at 23:08 | comment | added | Omega Centauri | Main memory may be cheap, but if performance is an important issue, access efficiency will matter. I don't think you get to choose your cache replacement strategy -unless you are a chief architect of a new computer. The rest of us get whatever the market offers. If you need to go fast, you need to organize your computation and data structures to make efficient usage of the memory hierarchy. | |
| Apr 23, 2011 at 21:50 | answer | added | Ross | timeline score: 2 | |
| Apr 23, 2011 at 15:09 | answer | added | user1249 | timeline score: 0 | |
| Apr 23, 2011 at 11:41 | comment | added | Anon | If you "know almost nothing about the application" then it's farto early to think about "efficient" cache replacement algorithms. | |
| Apr 23, 2011 at 8:43 | answer | added | sakisk | timeline score: 3 | |
| Apr 23, 2011 at 6:52 | comment | added | rwong | You will need to obtain sample traces (the list of data access patterns) that are representative of your intended application domain. You may be able to find publicly-available test sets from academic research. Then you can implement each algorithm, do simulation, and report your findings. Failing that, use LRU with sparingly random replacement. | |
| Apr 23, 2011 at 5:20 | comment | added | rwong | Is pre-fetching relevant to your application? If so, the pre-fetching and retaining strategy must be considered together when choosing algorithms. | |
| Apr 23, 2011 at 1:30 | answer | added | Arseni Mourzenko | timeline score: 9 | |
| Apr 23, 2011 at 1:26 | answer | added | barrem23 | timeline score: 16 | |
| Apr 23, 2011 at 0:00 | history | asked | ashes999 | CC BY-SA 3.0 |