product計算速度比較をする。pycudaはSourceModuleバージョンを使用する。mat_width')plt.legend(legends);mat_widthが16384の場合、numpyとpycudaの速度差が62393.9倍で、pycudaとskcudaの速度差は17.6倍だった。mat_widthが8192だと、numpyとpycudaの速度差は59556.5倍で、pycudaとskcudaの速度差は41.6倍だった。pycuda速過ぎの結果となっている。mat_widthが、$2^{15}=32768$になるとパソコンが固まる。メインメモリ64G、GPUメモリ16Gは欲しいところだ。実際には、pycudaの場合、host→deviceのデータ転送時間も含める必要があるらしい。上記の速度比較は、そのデータ転送を含めていないので、ある意味、インチキと言えるかもしれないが、pureなpycudaの速度とも言えるので、必ずしもインチキとも言えない。268435456ホスト→デバイスのデータ転送速度を含めると、CPU(numpy)とpycudaの速度差が劇的に縮まる一方で、skcudaがpycudaよりも高速という結果になった。mat_widthが、16384の場合、skcudaとpycudaの速度差は78.7倍だった。確かに速度差が5万倍とか、あまりにも差が有りすぎるのは何かおかしいと思ってはいた。timeで比較する¶しかし、よくよく考えると、scikit-cudaの方もホスト→デバイスのデータ転送時間がタイミングデータに反映されていないということに気付いたので、改めて速度比較をやり直した。1.0xTrue結局、pycudaとskcudaの内積計算速度はほぼ同じという結果になった。いうことは、過去の速度比較の結果が正確でないということになるので、何ともやるせない。product速度比較をしてみた。mat_width')plt.legend(legends);実際の速度は、numpyとpycudaにそれ程差はなく、numpyとskcudaの速度差が13倍だった。結論としては、内積計算にはscikit-cudaを使うのがベストのようだ。