I am new to OpenACC, which is the new programming standard for accelerating the GPU as well as the processor. According to my knowledge, OpenACC is a language that is a directive for the compiler, and we can speed up the code whenever we want, without changing the entire code. This programming standard will work on GPUs, unlike OpenMP.
Now my doubt arises here.
we have OpenCL for acceleration, now OpenACC (which is very easy to use, just providing compiler hints). To speed up the host program, we can simply set the compiler directives, but what if we have a kernel? that is, now I want to write my code for the GPU (c-language), what should I do? like opencl i need to write example.c and example.cl ?? do you need to add OpenACC compiler directives? or how? if so, what is OpenACC used for here because we write * .c and * .cl files (we have to check all the memory limitations and everything to write OpenCL, which is difficult work).
source share