2 つの CPU と 64 GB の RAM、CPU あたり 32 GB のサーバーがあります。
各CPUにはRAMの独自の部分があることを知っています.RAM1とRAM2と呼びましょう。プログラムにデータを割り当てる RAM (RAM1 または RAM2) を知らせたいと思います。
ポインターの値を確認しようとしました:
// put the thread at i-th CPU, using pthread_setaffinity_np
TData *a = new TData[N];
...
cout << "CPU = " << i << " adress = " << a << endl;
しかし、出力はランダムに見えます。これは、アドレスが仮想であるためだと思います。仮想メモリ アドレスと RAM の一部との間に対応関係はありますか?
配列「a」が割り当てられているRAMを確認するにはどうすればよいですか?