6 Replies Latest reply on Nov 19, 2009 2:20 PM by ankurdh

    New to openCL

    ankurdh

      Hello everyone. I'm totally new to openCL and would like to learn to integrate CPU and GPU and try running complex programs on them concurrently and analyze the performance improvement. I've downloaded the stream sdk and some documentation about openCL and its programming constructs.

      What i would want to know from community experts is that, how will i be able to port a part of a complex computation to the GPU? Like, say if i'm doin a triple integration, with all limits from -infinity to +infinity, will i be able to port two inner integrals to the GPU and then then last one to the CPU?

      I also wanted to learn about how to use the Stream SDK. Any help or links would be most welcome. I'l be really thankful

      Regards,

      Ankur

        • New to openCL
          ankurdh

          Are there any good book that trains for OpenCL programming for the above requirements?

           

            • New to openCL
              cgorac

              Unfortunately, there are still no books dedicated for teaching OpenCL programming, so you'll have to start by looking into sample code, and reading relevant bits of the specification document.  You may wish also to search for tutorials, or eventually some introductory video materials (you could find some videos on AMD and NVIDIA developer pages).  Then, you'll just have to start with writing code solving your problems; and: yes, numerical integration is nice to start with - simpler quadrature rules should be easy to implement in OpenCL (you'd just divide the interval of the integration to many smaller sub-intervals, and then would just assign each thread with the task of the calculating the value of the integral over this sub-interval), and you should be able to learn a lot along the way (and then you could proceed with more complex schemes).

              • New to openCL
                omkaranathan

                Ankur,

                The documents and samples coming with the SDK will help you get started with Stream SDK,

                Some useful tutorials and documents are available at 

                http://developer.amd.com/gpu/ATIStreamSDK/pages/Publications.aspx

                also read the OpenCL specification from,  http://www.khronos.org/registry/cl/specs/opencl-1.0.48.pdf in case you haven't already. 

                  • New to openCL
                    nou

                    http://www.macresearch.org/opencl and i think even article about CUDA may help with theory behind GPU computing.

                      • New to openCL
                        ankurdh

                        @Omkar: hello sir, thanks for the info. I really found the link you've sent useful

                        @cgorac: Thanks sir, i'l surely search for videos. And the other processes we were planning to run on GPU and CPU were, solving an nth order differential equation(very very complex for a normal CPU i guess), finding factorials of 8 digit numbers using doubly linked list and other ideas were to employ the Curve tracing rules and formulae to trace the path of a comet. . I kno the overhead of programming geometry, calculus and physics formulae will be difficult. But our team felt that, these would be the ones that will depict the difference very well!! any other ideas that u feel can be used would be most welcome.

                        @nou: lessons on that link are really good! thanks sir

                          • New to openCL
                            ankurdh

                            I'm an student, persuing engineering in Computer Science. I'm currently in my final year of school, and for the finay year, me and some classmates of mine were thinking of demonstrating the power of a CPU-GPU coupled system for parallel computing. Hope to get maximum information from the forum . .

                            Regards,

                            Ankur Huralikoppi