0

任意のサイズの行列とベクトルの高速なベクトル化された線形代数計算をサポートするために何が必要かを理解しようとしています。x86 プロセッサ アーキテクチャについて私が理解していることから、制限されたサイズの特殊なレジスタが含まれています。これらのレジスターを使用すると、浮動小数点数をロードしたり、操作をレジスター全体にブロードキャストしたりできます。限られたサイズを効率的に回避するにはどうすればよいですか?

これを理解するためにOpenBLASのソースコードを見ていましたが、開発ドキュメントを見ても、 などの単純な操作の一般的な流れを理解できませんでしたgemv

4

1 に答える 1

0

OpenBLAS は、これらの操作を効率的に実行するためにカーネルに依存しています。このコンテキストでは、「カーネル」は、線形代数演算用に特別に記述されたアセンブリ コードです。たとえば、操作については、 x86-64およびARM64gemvのこれらのカーネルを参照してください。

于 2017-03-21T03:16:17.250 に答える