Altera OpenCL parallel execution in FPGA -
i have been looking altera opencl little while, improve heavy computation programs moving computation part fpga. managed execute vector addition example provided altera , seems work fine. i've looked @ documentations altera opencl , came know opencl uses pipelined parallelism improve performance.
i wondering if possible achieve parallel execution similar multiple processes in vhdl executing in parallel using altera opencl in fpga. launching multiple kernels in 1 device can execute in parallel? possible? how check if supported? appreciated.
thanks!
the quick answer yes.
according altera opencl guides, there 2 ways achieve this:
1/ simd vectorised data load/store
2/ replicate compute resources on device
for 1/, use num_simd_work_items , reqd_work_group_size kernel attributes, multiple work-items same work-group run @ same time
for 2/, use num_compute_units kernel attribute, multiple work-groups run @ same time
please develop single work-item kernel first, use 1/ improve kernel performance, 2/ considered @ last.
by doing 1/ , 2/, there multiple work-groups, each multiple work-items running @ same time on fpga device.
note: depending on nature of problem solving, may above optimization may not suitable.
Comments
Post a Comment