Originally posted by: michael.chu@amd.com
Hi ryta1203,
The only difference between CPU vs. CAL is that with CPU, the Brook+ runtime will execute a version of the code on the CPU and not touch the GPU at all. The CAL setting will take the code path of sending IL down to the Brook+ runtime which sends it down to the CAL compilation API.
The Brook+ compiler (brcc) outputs both CPU code and Brook+ runtime (CAL) code (with IL for the kernels) each time it is run on a .br file. The decision on which path is run is completely determined at runtime via the environment variable.
Both paths of code are available in the C++ files that come out of brcc.
Michael. |
So code that runs in CPU mode should run in CAL mode too?
I have not noticed this to be the case.
Also, are we going to see, in the future, where the CPU mode mimics the CAL mode? That is, if you write code in emulation mode it will run in CAL mode providing the hardware supports the features used?
Maybe I am missing the point of having emulation mode.