Announcement

Collapse
No announcement yet.

Beignet: OpenCL/GPGPU Comes For Ivy Bridge On Linux

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

  • Beignet: OpenCL/GPGPU Comes For Ivy Bridge On Linux

    Phoronix: Beignet: OpenCL/GPGPU Comes For Ivy Bridge On Linux

    For the open-source Radeon and Nouveau graphics drivers on Linux, OpenCL/GPGPU support has been implemented via the "Clover" OpenCL state tracker with the Radeon/Nouveau drivers built atop the Gallium3D driver architecture. While Intel's latest hardware supports OpenCL with its graphics core, their open-source Linux driver has lacked any support, but that is changing...

    http://www.phoronix.com/vr.php?view=MTI3MTU

  • #2
    Sucks

    So this depends on X?
    So how do you use this on Wayland?

    How do you use this on servers for GPGPU computing?

    Comment


    • #3
      I don't understand the technicalities behind it, but wayland is developed by intel, I doubt they would undermine their own project.

      Intel graphics is not meant to be used on servers, there are no xeons with it, and they have a specific product for that: xeon phi.

      Comment


      • #4
        Originally posted by uid313 View Post
        So this depends on X?
        So how do you use this on Wayland?

        How do you use this on servers for GPGPU computing?
        several X11 components
        It's hard to say exactly what that is supposed to mean. You could probably say Wayland uses several X11 components, so maybe it's not really a dependency like you think it is.

        Comment


        • #5
          Yay!

          I'm sooo excited about that! Maybe next year I will be able to use GIMP and Darktable with GPU OpenCL on my Intel ultrabook!

          Comment


          • #6
            So why doesn't this work with Sandy parts? Afaik the GPU architectures are quite similar, if not identical

            Comment


            • #7
              Originally posted by Raven3x7 View Post
              So why doesn't this work with Sandy parts? Afaik the GPU architectures are quite similar, if not identical
              No, they aren't. Ivy was the first hardware from Intel able to support OpenCL fully - i think it was the same hardware limitation AMD had in the HD4000 series, but don't hold me to that.

              Comment


              • #8
                Hello,
                I am the one who used to work on this code. Unfortunately, I am working for Intel anymore. I am not sure what the future will be for this code base. More info here:


                http://bouliiii.blogspot.co.uk/2013/...ivybridge.html


                This code base only uses documented parts of the chip so I guess that anybody motivated to play with it should be able to do so :-)

                About SandyBridge, the two architectures are pretty different and it will require a large amount of work to make it run on this machine. If you read both specs (both online), you will see that a substantial amount of features have been added to IVB to make it a DX11 chip.

                Cheers,
                Ben

                Comment


                • #9
                  Hello bouliiii,

                  I created a Fork of beignet on github: https://github.com/karolherbst/beignet/tree/changes

                  my goal is it to make beignet full ICD compatible (what means to implement parts of cl_khr_icd extension). I think this would be a very good thing, because beignet could be then loaded and used by third party implementation. In the current state it is a bit useless, because I can't use the intel HD4000 with other system devices for computing (ivb i7 + nvidia gpu).

                  But most of the changes are stored locally, because I can't find llvm with cmake (I don't have the llvm cmake files) and put nearly everything into cl_api.c

                  But are there any other efforts to have an OpenCL implementation for intel GPUs on Linux?

                  Comment


                  • #10
                    Originally posted by karolherbst View Post
                    Hello bouliiii,

                    I created a Fork of beignet on github: https://github.com/karolherbst/beignet/tree/changes

                    my goal is it to make beignet full ICD compatible (what means to implement parts of cl_khr_icd extension). I think this would be a very good thing, because beignet could be then loaded and used by third party implementation. In the current state it is a bit useless, because I can't use the intel HD4000 with other system devices for computing (ivb i7 + nvidia gpu).

                    But most of the changes are stored locally, because I can't find llvm with cmake (I don't have the llvm cmake files) and put nearly everything into cl_api.c

                    But are there any other efforts to have an OpenCL implementation for intel GPUs on Linux?
                    This sounds really good. Note that there is a Makefile build system that does not require to have CMake files (one way to have Cmake files for LLVM is to compile LLVM with CMake :-)). As for further development, the best you can do is to contact Keith (Packard) to ask what they have in mind. I left Intel two months ago so I am not fully up-to-date about they are doing and what they want to do. As for technical questions, I can obviously answer. Use my personal email.

                    Note that it was a *spare time* project of me at Intel. I never was in OTC (open source group) (I was in the GPU architecture team). So, at the time I was at Intel, nobody inside OTC worked on it. Just me and Keith who helped me to make the code base more presentable and easier to build :-)

                    Cheers,
                    Ben

                    Comment


                    • #11
                      Originally posted by bouliiii View Post
                      one way to have Cmake files for LLVM is to compile LLVM with CMake :-)
                      Yeah I thought that too, but didn't want to do it. But now I should I think.

                      Originally posted by bouliiii View Post
                      As for further development, the best you can do is to contact Keith (Packard) to ask what they have in mind.
                      Thanks for this advice

                      Comment


                      • #12
                        Originally posted by karolherbst View Post
                        Yeah I thought that too, but didn't want to do it. But now I should I think.



                        Thanks for this advice
                        For Gentoo I've modified my local live LLVM ebuild to install the LLVM cmake files, along with a FindLLVM.cmake I hacked together to provide the needed env vars.

                        I've also created a live beignet ebuild, pulling in the source from karolhebst's changes branch along with a few patches of my own to make it build.

                        If anybody is interested I'll create an overlay on github.

                        Next, I'm planning on making it compatible with the other OpenCL implementations if you don't beat me to it. Right now I'm waiting for my new shiny i7 3840QM based (Ivy Bridge) laptop!

                        Comment


                        • #13
                          Originally posted by bouliiii View Post
                          This sounds really good. Note that there is a Makefile build system that does not require to have CMake files (one way to have Cmake files for LLVM is to compile LLVM with CMake :-)). As for further development, the best you can do is to contact Keith (Packard) to ask what they have in mind. I left Intel two months ago so I am not fully up-to-date about they are doing and what they want to do. As for technical questions, I can obviously answer. Use my personal email.

                          Note that it was a *spare time* project of me at Intel. I never was in OTC (open source group) (I was in the GPU architecture team). So, at the time I was at Intel, nobody inside OTC worked on it. Just me and Keith who helped me to make the code base more presentable and easier to build :-)

                          Cheers,
                          Ben
                          Ben,

                          We have a small team in China OTC Graphics department, already have been working on the project created by you. Our progress are as below:
                          0. Fix the cmake problem. Now cmake works fine.
                          1. Added image support.
                          2. Added OCL-OGL interoperation which is cl_khr_gl_sharing extension.
                          3. Added barrier support...
                          4..

                          And some other new features to comply with the OCL spec. Although it's still not fully comply with the spec. I will push our work to the fdo's beignet tree soon and maybe I will create a new branch.

                          Cheers,
                          Zhigang Gong

                          Comment


                          • #14
                            Did I just hear: Ivy Bridge bitcoin miner?

                            Comment

                            Working...
                            X