GPU computing Stay up to date in OpenCL, DirectCompute, CUDA, CAL and OpenGL information

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Friday, 23 October 2009

About binary compatiblity on OpenCL..

Posted on 13:41 by Unknown
Hi,
if you have following OpenCL shipping implementations it's a mess to provide executables that are future proof running tomorrow.. Important part of that is that ABI of the libraries has not been stabilized (I mean calling conventions and names of exported functions)..
A brief resume is that (on Windows):
May 2009 Nvidia ships with cdecl calling convention and clean exported names (say clGetPlatformIDs exported name is clGetPlatformIDs)
August 2009 AMD ships with stdcall calling convention and dirty exported names (say _clGetPlatformIDs@12)
October 2009 AMD ships with stdcall calling convention and clean exported names

Seems that on Octber 2009 (found from an Nvidia employee on Nvidia forums) Khronos agreed
that on Windows functions must use stdcall calling convention following Windows APIs and OpenGL ICD..

So seems that currently AMD SDK is using finally with all the right bits..

Now it's time to fix Nvidia libraries (Nvidia employee on Nvidia forums agreed that next SDK will have it fixed)..

All this effort is a the key first step part of getting an OpenCL ICD on Windows..
Note that I don't understand why but seems that all of this is on Windows x32 as in Windows x64
all works fine.. perhaps is that headers (cl_platform) check _WIN32 and is not in effect in Win64 or that the two calling methods are equivalent on Win64..

Note that on Linux currently there are no issues..
So briefly the conclusion is that examples from one SDK are running on the another (nvidia,amd) either way (well excepting implementation differences as lack of existing extensions)

I say all of that because of two things:
* I want to have a future proof OpenCL-Z! (see next psot)
* I want to make an OpenCL wrapper supporting multiplatform support something I'm not fully sure it's going to be added in OpenCL ICD.. This would add
Also I want to add three things to the wrapper:
* OpenGL emulation on OpenCL backends with image support (implement gl_khr_sharing emulation support)
* Getting AMD IL code (join previous work)
* Building kernels AMD IL code or device assembly..
Email ThisBlogThis!Share to XShare to FacebookShare to Pinterest
Posted in | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • Porting CUDA to OpenCL!
    Well so you want to port CUDA code to OpenCL: you are in AMD GPU competition of porting Cuda codes to opencl (see previous post) or you are ...
  • Megapost!
    Today fools{ *GTX 485 is 512 cores 3gbytes gddr5 and 850/1750 shaders.. *ati 5990 has 4 gpus in board.. *bulldozer benchmarks }end fools.. A...
  • About ATI and Nvidia drivers (OCL included)!
    Hi I have been investigating AMD and Nvidia drivers.. for 10.3 there are 3d hooks support for 120hz monitors but is d3d9 d3d10 or d3d11 enab...
  • things found in CUDA forums
    Also some CUDA news: Mandelbulb stereo angalyph -> have to port to 3D Vision http://forums.nvidia.com/index.php?showtopic=150985&st=2...
  • opencl/opengl linux interop! seen in opencl cuda 3.0 sdk samples
    Following my OpenCL/OpenGL Window interop work: now has come to Linux  for Nvidia GPU computing registered developers via 195.17 driver! Als...
  • State of the blog..
    Sorry for the delay guys of posting code of Apple OpenCL demos port.. the blog has been with no updated for more than 2 weeks in this rapid ...
  • Optix and OpenCL SDKs with Visual Studio 2010
    Optix 1.0 ========= install cg download Cmake 2.80 cmake says error dumpbin not found and it is cuda doesn't work with vc2010 so copy pt...
  • CUDA 3.0 forums stuff!
    1.Getting CUBIN instead of ELF If you need the older text format, you can disable ELF cubins in nvcc.profile by changing "CUBINS_ARE_EL...
  • News from the web!
    Some things learned in AMD forums: 1.Why 3xxx no OpenCL: Compute shader mode is a hardware feature that did not exist in the HD38XX line of ...
  • Shaders: measuring perf, source translation and parsing different languages!
    Hi, I hope to be pretty exhaustive of options for parsing and translating between graphics and compute shaders ( some open source) For DX sh...

Blog Archive

  • ►  2013 (5)
    • ►  September (1)
    • ►  March (3)
    • ►  February (1)
  • ►  2012 (1)
    • ►  December (1)
  • ►  2010 (46)
    • ►  July (4)
    • ►  May (1)
    • ►  April (3)
    • ►  March (9)
    • ►  February (15)
    • ►  January (14)
  • ▼  2009 (125)
    • ►  December (51)
    • ►  November (53)
    • ▼  October (21)
      • IBM OpenCL support!
      • Whises for OpenCL 1.1 and more!
      • 3D Vision and Direct3D 11
      • H264 harware decoding/ encoding GPUs
      • Interop GPU computing graphics apis stuff
      • 3D vision good stuff
      • Getting PTX, AMD_IL from languages:
      • Updated CUBLAS before CUDA 3.0
      • ATI and Nvidia extensions for DX11 and 10.1 ARBs
      • OpenGL 5870 extensions
      • Nvidia 195
      • News from the web!
      • Mem export in OpenCL
      • Double precision support in GPU computing APIs and...
      • Support 3d image write on CUDA and with OpenCL wra...
      • About OpenCL OpenGL interop..
      • Improved OpenCL-Z!
      • About binary compatiblity on OpenCL..
      • AMD IL backend for LLVM and getting AMD IL in MacOS?
      • Building OpenCL kernels from AMD IL code or device...
      • A CAL wrapper for getting AMD IL from OpenCL AMD G...
Powered by Blogger.

About Me

Unknown
View my complete profile