有人尝试在Android上运行对象检测或crnn模型吗?我尝试运行crnn模型(序列化pytorch),但在华为P30 lite上花费1s,在三星J4 Core上花费5s。
Huawei P30 lite
CPU : octa core processor
GPU : Mali-G51 MP4
Samsung J4
CPU : quad core
GPU : Adreno 308
android设备中的GPU与专用GPU有所不同,因为它们没有VRAM和电源管理。 CPU和GPU共享相同的RAM。在具有GPU的PC上运行模型之前,我们先指定将计算结果放置在GPU上,例如
model = MyModel()
model.cuda()
但是,当我尝试在Android上运行模型时,是否可以利用此内置GPU?由于采用了八核处理器,因此在我的华为中运算速度更快,但华为显然拥有比三星设备更好的GPU。
答案 0 :(得分:1)
答案 1 :(得分:1)
如果您可以从PyTorch移动,TFLite效果很好。
具体来说,对于https://developer.arm.com/ip-products/processors/machine-learning/arm-nn中的Mali GPU-ArmNN将在与TFLite / Caffe2交互的Android NNAPI下工作,将工作适当地分配到CPU / GPU。
NNAPI信息:https://developer.android.com/ndk/guides/neuralnetworks