多個內核可以同時讀取同一個RAM位置嗎?我特別感興趣的是x86體系結構CPU。同一個CPU上的兩個不同內核的內部緩存是否可以同時從相同的RAM位置填充?多個內核可以同時讀取相同的RAM位置嗎?
3
A
回答
5
總之,他們可以獨立地讀出並高速緩存將被獨立地填充,但位置可以在共享的L3高速緩存預加載。同步不保證精確的時鐘週期,但內存狀態對應用程序是一致的和透明的。有由烏利齊·德雷珀,這是一個必須閱讀記憶的優秀文章:http://lwn.net/Articles/250967/
+0
感謝您的答覆和文章! –
+0
哇,看起來確實是一個超級綜合性的文章,絕對是它的書籤。 –
相關問題
- 1. CUDA:可以不同的線程同時從同一個內存位置讀取嗎?
- 2. 從相同的位置讀取紋理時的可能性
- 3. 兩個線程可以同時讀取相同的CONST內存塊
- 4. 我可以允許多個程序同時讀取同一個文件嗎?
- 5. 可以同時寫入/讀取同一個數據流嗎?
- 6. Android:可以將相同的位圖設置爲兩個ImageViews嗎?
- 7. 你可以有多個相同目錄的gitignore配置嗎?
- 8. 內核可以通過多線程同時處理兩個系統調用嗎?
- 9. 多個qsub提交可以讀取同一組文件嗎?
- 10. 多個URL同時讀取
- 11. 多個讀進程都可以讀出相同的消息
- 12. 內核可以調度不同內核上相同進程的用戶級線程嗎?
- 13. Magento:兩個模塊可以擴展相同的內核模型嗎?
- 14. 可以多個表單提交id可以相同嗎?
- 15. WPF:我可以同時對多個項目應用相同的樣式嗎?
- 16. 標籤可以被多個閱讀器同時讀取嗎?並且讀者能夠同時閱讀多個標籤嗎?
- 17. 多個線程可以同時訪問共享內存嗎?
- 18. 兩個cpu機器上的兩個不同進程可以同時訪問相同的RAM地址
- 19. 多個內核模塊可以使用相同的netfilter鉤子而不會相互影響嗎?
- 20. 如果兩個內核嘗試同時寫入主內存中的相同位置,會發生什麼情況?
- 21. 相同佈局在相同位置重複多個視圖
- 22. redis:40多個服務器讀取相同的redis內容
- 23. 兩個不同的變量指向相同的內存位置
- 24. 可以兩個進程共享相同的GPU內存嗎? (CUDA)
- 25. Python:調用API:以不同方式輸入相同位置時獲取不同的位置ID
- 26. 許多線程可以同時在同一個字上設置位?
- 27. 多個WebGLRenderer可以呈現相同的場景嗎?
- 28. 我可以從多個線程繪製到相同的CGContextRef嗎?
- 29. 多個線程可以加入相同的boost :: thread嗎?
- 30. 可以多個線程操作相同的數據庫嗎?
這取決於你的意思是「在同一時間」 - 只能有一個總線讀取週期從DRAM在任何給定的時間,但核心之間的緩存監聽邏輯將負責緩存一致性。 –
@保羅R:以「在同一時間」我的意思是在時間X,做在從地址ADDR兩個核的負載將加載在兩個芯的寄存器在ADDR的值。 –
@Lyth在下面給出了一個很好的答案,但簡短的回答是:不能從一個地址加載兩個核心是一個總線讀取週期。 –