Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Intel Open Source Linux

Intel Releases New OpenCL Implementation for GNU/Linux 60

An anonymous reader writes "Intel has released its first version of Beignet, an open-source OpenCL run-time and LLVM back-end for Linux that uses LLVM/Clang and is compatible with Ivy Bridge processors. Right now there's partial support for OpenCL 1.0 and 1.1 along with other basic functionality." This is not using Gallium 3D, and at least David Arlie thinks it should not be an fd.o project because it duplicates functionality already present in Mesa.
This discussion has been archived. No new comments can be posted.

Intel Releases New OpenCL Implementation for GNU/Linux

Comments Filter:
  • by Plombo ( 1914028 ) on Tuesday April 16, 2013 @12:45AM (#43458561)

    This has nothing to do with Gallium 3D or Mesa which are 3D graphics related. The only similarity is that some of the targets happens to be GPU. The person has no clue what the hell he was talking about. May be he is confused it with OpenGL!?

    This is AMD's answer to CUDA.

    No, you're quite wrong and he's entirely right. This has everything to do with Gallium and Mesa. Despite it sometimes being called "Gallium3D", Gallium is not just for graphics. It also supports GPU compute, specifically OpenCL, through the Clover [freedesktop.org] state tracker.

    You must not recognize the name of Dave Airlie - among other things, he's an active Mesa developer, one of the main X.Org developers, and the maintainer of the Direct Rendering Manager in the Linux kernel; i.e., he is the person who submits the pull requests to Linus for the graphics drivers in the kernel. Not exactly the kind of person who would get confused over the difference between OpenGL and OpenCL, or who has "no clue" what he's talking about.

  • by phizi0n ( 1237812 ) on Tuesday April 16, 2013 @01:18AM (#43458717)

    http://en.wikipedia.org/wiki/OpenCL
    >Open Computing Language (OpenCL) is a framework for writing programs that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), DSPs and other processors.
    >OpenCL includes a language (based on C99) for writing kernels (functions that execute on OpenCL devices), plus application programming interfaces (APIs) that are used to define and then control the platforms. OpenCL provides parallel computing using task-based and data-based parallelism. OpenCL is an open standard maintained by the non-profit technology consortium Khronos Group. It has been adopted by Intel, Advanced Micro Devices (AMD), Nvidia, Altera, Samsung, Vivante and ARM Holdings.

    This has nothing to do with Gallium 3D or Mesa which are 3D graphics related. The only similarity is that some of the targets happens to be GPU. The person has no clue what the hell he was talking about. May be he is confused it with OpenGL!?

    This is AMD's answer to CUDA.

    Neither do you. How can it be AMD's answer to (Nvidia's) CUDA when Apple developed it with help from AMD, IBM, Intel, and Nvidia?

    AMD's answer to CUDA was their Stream framework that they abandoned in favor of an open standard (OpenCL) but Nvidia built a business around CUDA so they're supporting both but still pushing CUDA on their customers and using it as an excuse not to support other GPU's in PhysX.

  • by Plombo ( 1914028 ) on Tuesday April 16, 2013 @02:01AM (#43458835)
    I realize that the reply I just posted is unnecessarily vague, so here is a better explanation:

    * Clover has been merged to Mesa since that Phoronix article was published.

    * Mesa is indeed the name of the OpenGL implementation, but the larger Mesa project contains all of Gallium and its state trackers as well. That's what's being referred to here, not the OpenGL implementation specifically.

    * Wikipedia's description of Gallium isn't necessarily wrong, but it's also not the greatest. First of all, there are two working software drivers for Gallium in addition to the hardware drivers - the reference driver softpipe and the fast/practical LLVMpipe. And by "a free software library for 3D graphics device drivers", what Wikipedia really means (or what it should mean, anyway) is that Gallium is a common framework for implementing libraries that communicate with the GPU (OpenGL, OpenCL, OpenVG, VDPAU, etc.) across a wide range of hardware as well as the aforementioned software drivers.

    What it comes down to is that Clover is Gallium-based, but Gallium is not exclusively for "graphics". It's for anything that uses the GPU, including GPGPU libraries like OpenCL, and has no dependency on anything graphics or display-related.

  • Re:Duplicated effort (Score:5, Informative)

    by Plombo ( 1914028 ) on Tuesday April 16, 2013 @02:14AM (#43458855)

    The performance of the AMD Gallium driver is not because of Gallium - it's because of manpower. There are 2-3 paid full-time developers on the entire open source AMD graphics stack. Catalyst has easily 50 times that investment - it's only natural that it's faster and better optimized than the open source driver. On the contrary, as you can see from a few benchmarks on Phoronix and elsewhere, if an Nvidia card is reclocked properly to get around Nouveau's current lack of good power management, the performance of the nv50 and nvc0 Gallium drivers are quite competitive with Nvidia's own proprietary driver running at the same power level.

    The lack of a quality OpenCL implementation also has nothing to do with Gallium and everything to do with the minimal developer interest in Clover. If someone cared enough to take an interest in Clover and actively develop it, it would work much better. Clover is still farther along than Beignet, though.

  • by Plombo ( 1914028 ) on Tuesday April 16, 2013 @02:34AM (#43458891)

    Got a reference for us that isn't out of date, and which explains how Clover is independent of Mesa and Gallium3D?

    I never said it was independent of Gallium - it's not. Gallium, however, is a general-purpose API for GPU libraries that is independent of OS or any particular GPU hardware, and has LLVMpipe as a working and fast software backend for machines without a GPU.

    As for being independent of Mesa, Clover has never been dependent on Mesa. It just lives within the Mesa repository, because almost all GPU-related code in userspace lives in the Mesa repository. Clover and all other Gallium state trackers (with the obvious exception of the Mesa state tracker) have no dependency on core Mesa or OpenGL, and never have.

    I follow Mesa and Gallium development closely and have made (and am currently making) some non-trivial contributions, so I would consider myself a fairly credible primary source here. Certainly more credible than the Wikipedia page which makes LLVMpipe look like it's still in an experimental stage (it's been stable for years now) and has a list of arbitrary "milestones" that hasn't been updated in the last year and a half.

Suggest you just sit there and wait till life gets easier.

Working...