![見出し画像](https://assets.st-note.com/production/uploads/images/38746638/rectangle_large_type_2_cb210c26e25f9b63e415d6852f5bede7.png?width=1200)
キャッシュコピー|行列積高速化#6
この記事は、以下の記事を分割したものです。
[元の記事]行列積計算を高速化してみる
一括で読みたい場合は、元の記事をご覧ください。
キャッシュ・ブロッキングをしても、最初のメモリアクセスの時はデータがキャッシュにありません。そこで、予めキャッシュにデータを乗せておくことを考えます。
幸運なことに、行列積の計算量はO(N^3)なのに対し、行列コピーの計算量はO(N^2)なので、行列積計算に対して行列コピーはほとんど負荷になりません。そこで、この差を利用し、行列をバッファにコピーすることで、キャッシュにデータを乗せます。
実際のやり方については、有料にさせていただきます。
次の記事
6-1. 行列Aのキャッシュコピー
行列積のループを外側からN→M→Kの順序に反復する場合、Nに依存しない行列A(M,K)は何度も同じ要素が参照されます。そのため、行列Aをキャッシュに乗せておくと高速化される可能性があります。
ここから先は
9,165字
¥ 100
この記事が気に入ったらサポートをしてみませんか?