よくわかりません。これで高速化するために、4 つのコアで大きな memset (たとえば 10 MB) を作成できますか?
そのような RAM チップの並列化はまったく可能ですか? また、他のスレッドを起動する時間コストはどれくらいですか? ミリ秒以上ですか?
よくわかりません。これで高速化するために、4 つのコアで大きな memset (たとえば 10 MB) を作成できますか?
そのような RAM チップの並列化はまったく可能ですか? また、他のスレッドを起動する時間コストはどれくらいですか? ミリ秒以上ですか?
あなたは正しい質問を指摘していますが、同時にそれに簡単な答えを出すことは困難です。関連するいくつかの側面があります。
大型の PC には複数のメモリ バスがあります。小さいものは1つしかありません。メモリ バスが 1 つのシステムでは、これは意味がありません。システムに複数のメモリ バス (チャネル) がある場合、データの配列はメモリ バンク間で任意に分割される可能性があります。配列全体が同じメモリバンクにある場合、並列化は役に立ちません。配列のレイアウトを理解することは、やはりオーバーヘッドです。つまり、コア間で操作を分割する前に、これが価値があるかどうかを判断する必要があります。
簡単な答えは、これらの予測が困難なオーバーヘッドが利益を消費し、全体的な結果を悪化させる可能性が高いということです。
同時に、一部のアーキテクチャでは非常に巨大なメモリ領域が必要になります。