Meskipun sebagian besar jawaban mendekati dari sisi perangkat lunak dan / atau model perangkat keras, cara terbersih adalah dengan mempertimbangkan cara kerja chip RAM fisik. (Cache terletak di antara prosesor dan memori, dan hanya menggunakan bus alamat yang sama, dan operasinya benar-benar transparan untuk prosesor.) Chip RAM memiliki satu decoder alamat tunggal, yang menerima alamat sel memori, tiba di bus alamat (dan juga bus data, baik masuk atau keluar). Memori yang ada dibangun dalam "pendekatan prosesor tunggal", yaitu satu prosesor dihubungkan melalui satu bus ke satu chip memori. Dengan kata lain, ini adalah "von Neumann bottleneck", karena setiap instruksi harus merujuk memori setidaknya satu kali. Karena itu, pada satu kabel (atau kabel, alias bus) hanya satu sinyal yang mungkin ada pada suatu waktu, jadi chip RAM dapat menerima satu alamat sel pada satu waktu. Sampai Anda dapat memastikan dua core memasukkan alamat yang sama ke bus alamat, akses bus simultan oleh dua pengemudi bus yang berbeda (seperti core) secara fisik tidak mungkin. (Dan, jika itu sama, itu mubazir).
Sisanya adalah akselerasi perangkat keras yang disebut. Bus koherensi, cache, akses SIMD, dll. Hanyalah beberapa fasad yang bagus di depan RAM fisik, pertanyaan Anda adalah tentang. Akselerator yang disebutkan mungkin mencakup perjuangan untuk menggunakan bus alamat secara eksklusif, dan model pemrograman tidak banyak berhubungan dengan pertanyaan Anda. Juga perhatikan bahwa akses simultan juga akan bertentangan dengan abstraksi "ruang alamat pribadi".
Jadi, untuk pertanyaan Anda: akses RAM langsung simultan tidak mungkin, baik dengan alamat yang sama maupun berbeda. Menggunakan cache mungkin mencakup fakta ini dan mungkin memungkinkan akses simultan dalam beberapa kasus. Itu tergantung pada tingkat cache dan konstruksi, serta lokalitas spasial dan temporal data Anda. Dan ya, Anda benar: pemrosesan multi (inti) tanpa peningkatan akses RAM, tidak akan banyak membantu untuk aplikasi intensif RAM.
Untuk pemahaman yang lebih baik: cukup ingat cara kerja Akses Memori Langsung. Baik CPU dan perangkat DMA dapat menempatkan alamat ke bus, sehingga harus mengeluarkan satu sama lain dari penggunaan bus secara simultan.