先日、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では、QualcommのGPU、Adrenoでlocal memoryとconstant memoryを使った高速化について。
Adreno 530では4CUで、各CUは32KBのlocal memory付き。ということは、128KBのメモリ付き?
constant memoryは3KB。
constant memoryは3KB。
Dragonboard 410cにも、Adreno 306が搭載されているが、残念ながらOpenCLは使えません。