Vengineerの妄想(準備期間)

人生は短いけど、長いです。人生を楽しみましょう!

Adreno GPUでメモリの最適化


先日、ARMの新しいMaliシリーズ(Bifrost(バイフロスト)を発表しましたが、現在のMidgardは残念ながらL2キャッシュはあるものの、OpenCLでいうところのShared MemoryがDRAMマッピングされているので、Global Memory<=>Shared Memory 間でもDRAM間でコピー発生して遅くなります。なので、MidgardはL2キャッシュを上手く使うようにOpenCLのコードを書かなくてはいけません。

Better OpenCL Performance on Qualcomm Adreno GPU – Memory Optimizationでは、QualcommGPU、Adrenoでlocal memoryとconstant memoryを使った高速化について。

Adreno 530では4CUで、各CUは32KBのlocal memory付き。ということは、128KBのメモリ付き?
constant memoryは3KB。


Dragonboard 410cにも、Adreno 306が搭載されているが、残念ながらOpenCLは使えません。