malloc()
非 NUMA / 標準 PC でアプリケーションの速度を上げようとしているときに、マルチコア マシンでもすべてのコア間で共有/同期されているため、ボトルネックが必要であることがわかりました。
Linux と C を使用した NUMA アーキテクチャの PC を利用できますが、2 つの質問があります。
- NUMA マシンでは、各コアに独自のメモリが提供される
malloc()
ため、他のコアをブロックすることなく、各コア/メモリで独立して実行されますか? - これらのアーキテクチャでは、呼び出しはどのように
memcpy()
行われますか? これは各コアで個別に呼び出すことができますか、それともコアで呼び出すと他のコアがブロックされますか? 私は間違っているかもしれませんが、1つのコアがそれを使用しているときに他のコアが待たなければならないmemcpy()
という同じ問題もあったことを覚えています。malloc()