OpenCL vs DirectX

Discussion in 'macOS' started by MBX, Sep 10, 2009.

  1. MBX macrumors 68000

    Sep 14, 2006
    Is OpenCL better than DirectX?

    In the past years (at least before Leopard) OS-X seemed to lag behind Windows in 3D/ OpenGL performance. Does the OpenCL implementation in SL mean faster than DirectX?

    Would 3D application perform better under SL now? What about games? I guess the latter is more dependent on developers.
  2. Consultant macrumors G5


    Jun 27, 2007
    OpenCL is not OpenGL

    You are thinking about comparing OpenGL with DirectX

    On mobile devices OpenGL beats windows, because MS doesn't have a monopoly to push their technology.

    Yes as there are more Macs (and people are switching), companies will optimize their openGL implementation. It's already happening with iPhone and iPod touch games.

    Developing on a Mac means no recurrent microsoft tax (both developer tools and time and effort to get windows running ok). A lot of developers who started using Macs to develop for iPhone are beginning to realized that. =)
  3. jeznav macrumors 6502

    Aug 10, 2007
    OpenGL is to DirectX as OpenCL is to CUDA

    You can't compare OpenCL to DirectX in terms of performance. DirectX is a graphics api and OpenCL is a computational api. It just happens to use the GPU to take the processing power. In theory if an application took advantage of the OpenCL api like Rar compression, it would decrease the amount of time by a lot, than it takes to perform the same task on a regular cpu. DirectX does not do that.

    Graphics APIs such as DirectX and OpenGL are merely a high level to low level constructor for the GPU to display the information as well as perform mathematical transformations on the given information in real time.

    As for developers, there is a difference between the two SDKs. Its completely up to them to write code for a proprietary api or an industry standard api.

    EDIT: Actually it's possible, to have both DirectX and OpenCL utilize by a game engine, to improve performance. But thats already been done since OpenCL is essentially a CUDA derivative.

Share This Page