Yes, ATI hurried to report "release" of SDK, but even with 2.1 version it's far from release quality. Looks like Linux version still buggy for AP app at least. Windows version works quite OK for me now (big improvement over 2.01 version) but some counterproductive features like already mentioned cmd windows and GPU memory limitation to 128MB on 4xxx cards still remain. It still doesn't fit auto-deployment requirements of BOINC indeed. Problem with inter-GPU compatibility not in OpenCL code per se. It can be compiled from sources (moreover until recently it was single available option for ATI GPUs). Problems start with OpenCL runtime API calls like buffer copying or kernel enqueuing. This part looks stricly GPU type (NV or ATI) dependent for now. So single binary is not possible, at least for now IMO. Moreover, very probably that for best performance NV and ATI OpenCL code should be different too. ATI and NV have different approaches to GPU memory accesses (ATI insists on usage float4/int4 128bit-wide accesses, NV has some memory coalescing and broadcasting features but non-vector ALUs) so optimal GPU memory access patterns (and for some applications memory access is limiting factor) could be quite different for these GPUs.
----- Original Message ----- From: "Rom Walton" <[email protected]> To: "Eric J Korpela" <[email protected]>; "Raistmer" <[email protected]> Cc: <[email protected]> Sent: Monday, May 17, 2010 11:12 PM Subject: RE: [boinc_dev] OpenCL support? I suspect that OpenCL for ATI hasn't hit a production quality level yet and that is why they are holding off putting it into their drivers and it is only included in the SDK. It appears to me that the standard is still in the process of fine tuning, specifying calling conventions on Windows and stuff like that. According to the API set you should be able to compile the kernel from source at runtime (clCreateProgramWithSource/ clBuildProgram). So it is probably just a matter of time. ----- Rom -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Eric J Korpela Sent: Monday, May 17, 2010 1:59 PM To: Raistmer Cc: [email protected] Subject: Re: [boinc_dev] OpenCL support? On Wed, May 12, 2010 at 3:27 PM, Raistmer <[email protected]> wrote: > Maybe. Ability to load kernels right from binaries was implemented as > preview feature only in Stream SDK 2.1. > Still didn't check this ability. For now, if you want to provide *.cl file, > you need not only OpenCL.DLL, you also need 2 or more executables that will > actually do compilation and linkage. They even will open cmd windows for a > moment - very nasty "feature" that remained in SDK 2.1. ATI promised to get > rid of it till next SDK release. That's pretty disturbing. I had assumed that the driver would support compilation when passed a block of text containing code for a kernel. I thought that (or support for some intermediate pseudo-language) was a required part of OpenCL. I had thought that one of the benefits of OpenCL what that a single binary would support CPU multiple GPUs and any other coprocessor that supported OpenCL. Maybe that's been reduced to source code compatibility only? _______________________________________________ boinc_dev mailing list [email protected] http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev To unsubscribe, visit the above URL and (near bottom of page) enter your email address. _______________________________________________ boinc_dev mailing list [email protected] http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev To unsubscribe, visit the above URL and (near bottom of page) enter your email address.
