Hi,
On 04/04/2014 10:43, Clément Léger wrote:
[...]
> Each device driver would have a "probe" operation:
>
> unsigned int (*probe)();
I globally support this idea. I just have a few comments on the
quick example description:
> With this setup, pthread could for instance use a PTRHEAD_DEVICE_COUNT
> env var to specify the number of devices in probe function
I think that, per default, the pthread driver should return the
number of usable cores into the current cpuset.
Then, a environment variable can override this default. It would
be good if:
- as all other pocl envvar, this one also starts with POCL_
- its contents is similar to the contents of same-goal-envvar in
other environment. In particular, I think to:
* OMP_NUM_THREADS to define the number of thread to use
* KMP_AFFINITY (Intel extension) that defines how logical thread
numbers are mapped onto physical cores. I think pocl pthread
driver will need something similar (ie define which groups of
threads (on which physical cores) will form a workgroup, ...)
=> if possible, using the same syntax and keyword (as must as
possible) would be great for users
> Finally, device init operation would also be called only on
> clGetDeviceIds/clCreateContext when requesting a specific device in
> order to speedup the initialization and use less ressources.
There can be an envvar to limit the scanned plateform/devices on
enumerating functions (clIcdGetPlatformIDsKHR, clGetDeviceIDs, ...)
Regards,
Vincent
------------------------------------------------------------------------------
_______________________________________________
pocl-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pocl-devel