Announcement

Collapse
No announcement yet.

Running OpenCL On The GPU With Gallium3D

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Running OpenCL On The GPU With Gallium3D

    Phoronix: Running OpenCL On The GPU With Gallium3D

    With all of the recent improvements going into Mesa/Gallium3D, along with some work advancements to the AMD GPU LLVM back-end, it's slowly becoming a suitable time for enthusiasts wishing to experiment with OpenCL on the open-source Linux graphics stack through Gallium3D and the "Clover" state tracker...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    Application support?

    Does any software applications on Linux support GPGPU or OpenCL?

    Does GIMP or Blender support GPGPU or OpenCL?

    Comment


    • #3
      Blender does support GPU rendering with their Cycles Render Engine. There is work on openCL in gegl (the library that new versions gimp uses for graphics operations), but i am not sure what state it is in. Darktable also has openCL.

      Comment


      • #4
        Originally posted by uid313 View Post
        Does any software applications on Linux support GPGPU or OpenCL?

        Does GIMP or Blender support GPGPU or OpenCL?
        It's a chicken and egg problem.
        Without a proper and widely deployed OpenCL implementation, there won't be too many people willing to use OpenCL.
        Last edited by zxy_thf; 23 January 2013, 07:53 AM. Reason: typo fix

        Comment


        • #5
          Originally posted by zxy_thf View Post
          It's a chicken and egg problem.
          Without a proper and widely deployed OpenCL implementation, there won't be too many people willing to use OpenCL.
          OpenCL support is available in both blobs, so the chicken is there.

          Comment


          • #6
            Originally posted by pingufunkybeat View Post
            OpenCL support is available in both blobs, so the chicken is there.
            Not really, because that is strictly restricted to the blobs. You might find yourself a few corner-case users, but certainly not widespread deployment. Why would anyone build software depending on openCL if they can't trust that their customers will be able to use it?

            In other words, it MUST be supported by both AMD and Intel **open source** drivers, AND have a solid CPU fallback, before software developers can trust in its availability.

            Comment


            • #7
              Originally posted by droidhacker View Post
              Why would anyone build software depending on openCL if they can't trust that their customers will be able to use it?
              I don't think that consumer any software will DEPEND on OpenCL any time soon. But it is reasonable to provide an OpenCL-accelerated path for some computationally intensive operations if there are enough people who can make use of it. And there are enough blob users out there.

              I'm just saying that "nobody can run OpenCL" is not a good argument. Plenty of people can already, others will follow as open drivers mature.

              Comment


              • #8
                i think right now it makes more sense for developers to invest time in openMP if they want to target a wide audience. dual cores are now standard on laptops and desktops, and quad and oct are not rare. Often adding just a few prama statements to the loops that do most of the processing can give big speed ups. OpenCL (and CUDA) only work on a smaller subset of algorithms, and are more effort to program and debug (though if you have a problem that suits them you can get huge speed ups).

                I'd also suspect that foss software developers are more likely to be using opensource drivers than typical linux users. They are more likely to have chosen hardware with drivers in mind. they are more likely to be using opensource for philosophical reasons. and they might like to be able to debug kernel crashes.

                Comment


                • #9
                  Originally posted by droidhacker View Post
                  Not really, because that is strictly restricted to the blobs. You might find yourself a few corner-case users, but certainly not widespread deployment. Why would anyone build software depending on openCL if they can't trust that their customers will be able to use it?

                  In other words, it MUST be supported by both AMD and Intel **open source** drivers, AND have a solid CPU fallback, before software developers can trust in its availability.
                  There are CPU fallbacks already in place. Most code which runs OpenCL has a pure CPU path just in case the CL runtime isn't available... And on top of that, there are pure-CPU OpenCL runtime libraries available. The AMD CL SDK, when installed, will run on any Radeon 5000+ with an appropriate Catalyst version, and will run on any x86/x86_64 CPU with SSE 2.1 (I think it's 2.1, could be mistaken).

                  Two accelerated applications which haven't been mentioned: Bitcoin mining, aircrack-ng.

                  There's also open-source CPU-based OpenCL implementations already available.

                  The OpenCL run-times (closed and open) I know about:
                  PoCL: a performance portable open source OpenCL implementation




                  AMD's run-time is included in the catalyst driver (they have a separate SDK for devs)
                  Nvidia includes their run-time in their binary driver (they have a separate SDK for devs)
                  Qualcomm supposedly ships a runtime for some of their GPUs
                  Same for some PowerVR/Adreno chips
                  MacOS X 10.6 and higher all come with both GPU (when the hardware supports it) and CPU-based CL implementations.

                  For those who've actually paid khronos for compliance testing, there's a page of valid conformance runs here:
                  Deploying and developing royalty-free open standards for 3D graphics, Virtual and Augmented Reality, Parallel Computing, Neural Networks, and Vision Processing


                  One that I didn't expect in that page:
                  Imagination Technologies 2011-03-15 OpenCL_1_0
                  Poulsbo OpenCL Driver for Linux (running on atom)
                  SGX535

                  Comment


                  • #10
                    Originally posted by uid313 View Post
                    Does any software applications on Linux support GPGPU or OpenCL?
                    Some BOINC projects already support OpenCL on linux; see for example MilkyWay@home.

                    Comment

                    Working...
                    X