因此,據我瞭解,緩存是分組在一起的RAM的副本,以便在給定空間和時間局部性時執行更快。但爲什麼不立即訪問內存並切斷中間人?爲什麼我們需要訪問緩存,它複製內存(有時甚至不是正確的部分)?爲什麼我們甚至需要緩存?
-2
A
回答
1
爲什麼你需要內存,如果你有TB的硬盤驅動器? :)
+0
那是怎麼回事?他們是完全分開的東西。 –
4
這裏是你的號碼,希望他們會回答你的問題
0.5 ns - Execute typical instruction
1 ns - Fetch from L1 cache memory
5 ns - CPU L1 CACHE branch misprediction
7 ns - Fetch from L2 cache memory
100 ns - Mutex lock/unlock
100 ns - Fetch from main memory
20,000 ns - Send 2K bytes over 1Gbps network
250,000 ns - Read 1MB sequentially from memory
10,000,000 ns - Fetch from new disk location (seek)
10,000,000 ns - Read 1MB sequentially from disk
150,000,000 ns - Send packet US to Europe and back
相關問題
- 1. 爲什麼我們需要3d甚至4d紋理?
- 2. 爲什麼我們甚至需要通過HTTPS刷新令牌?
- 3. 爲什麼我們甚至需要「delete []」運算符?
- 4. 爲什麼WEXITSTATUS甚至需要?
- 5. 如果有%ld或甚至%lld,爲什麼我們要使用%d甚至%hd?
- 6. 我甚至需要libusb嗎?
- 7. 爲什麼我甚至需要首先序列化?
- 8. 重寫CreateObjRef()時需要什麼?我甚至必須?
- 9. 爲什麼ng-class甚至需要額外的引號
- 10. 爲什麼在Razor中甚至需要使用lambda表示法?
- 11. 爲什麼我們在C#中至少需要一個類?
- 12. 爲什麼我們甚至在Spring MVC中使用模型類?
- 13. 爲什麼在黃瓜甚至需要支持BDD工具時需要specflow
- 14. 爲什麼運行我的Python代碼甚至需要一個小輸入?
- 15. DavLockDB:我們需要什麼?
- 16. 爲什麼我們需要simple_one_for_one?
- 17. 爲什麼我們需要TensorFlow tf.Graph?
- 18. 爲什麼我們需要使用prompt.start()?
- 19. 爲什麼我們需要scalaz.stream迭代?
- 20. 爲什麼我們需要WCF
- 21. 爲什麼我們需要Anaconda 2.7?
- 22. 爲什麼我們需要編寫log.isDebugEnabled?
- 23. 爲什麼我們需要ng-click?
- 24. 爲什麼我們需要Control.Lens.Reified?
- 25. 我們爲什麼需要纖維
- 26. 爲什麼我們需要org.junit.ComparisonFailure?
- 27. 爲什麼我們需要addRequestHeader方法?
- 28. 爲什麼我們需要時代?
- 29. 爲什麼我們需要ContinueWith方法?
- 30. 爲什麼我們需要Java NIO Selector?
緩存比RAM快。 – SLaks
好吧,它是如何更快?具體原因是什麼?我現在才知道這一切,所以我只是想弄明白。 –
https://en.wikipedia.org/wiki/CPU_cache – SLaks