doonny / PipeCNN

An OpenCL-based FPGA Accelerator for Convolutional Neural Networks
Apache License 2.0
1.23k stars 370 forks source link

CL_OUT_OF_HOST_MEMORY on Arria10 SoC platform #150

Closed WenyeLiu closed 3 years ago

WenyeLiu commented 4 years ago

Hi,

I can run PipeCNN on my de10-standard board except the resnet50. It seems resnet50 is too large for the Cyclone V SoC. Now I am trying to run resnet50 on the Terasic HAN pilot platform (Arria10 SoC). The aocx file generated successfully for the fpga device, however, an error of "CL_OUT_OF_HOST_MEMORY" returned when I run the application on the ARM host. Based on my investigation, this error happened when creating the mean_buf for the 24th BN layer, "mean_buf[iCONV_NUM+j] = clCreateBuffer(context, CL_MEM_READ_ONLY, layer_config[j][bias_size] sizeof(FTYPE), NULL, &status);" This line of clCreateBuffer seems to allocate a buffer on the fpga side, how come return an error about the host side? On the other hand, the memory requirement of the host application seems may not exceed the main memory of the HPS side (768MB)?

Does anyone have clue on this?

BTW, does anyone test resnet50 on the Arria10 device successfully?

Thanks.