11 Replies Latest reply on Jan 4, 2012 8:10 PM by MicahVillmow

    Using IL?

    afo
      How to use IL from now on?

      Hi,

      When I looked at the first impressions of SDK2.5 and its drivers, I decided to stay on SDK2.4/Cat11.3 (I need multiGPU on 2xHD5970).

      Now it seems that multiGPU problems were solved, but CAL is deprecated and as SDK2.7, it won't be supported. So my question is: Is it possible to use an IL kernel using OpenCL API in an official way? (Reading the forum, it seems to be an unofficial way but it isn't clear to me how to do it). Rewriting the question: How can I use IL in an official way? Thanks in advance to pointing me in the right direction

      best regards,

      Alfonso

        • Using IL?
          afo

          This silence is more than eloquent...

          I will make another question:

          Besides OOP, what options do I have to program a HD5970 board? As far as I understand I can use:

          1) OpenCL

          2) DirectX (DX HLSL / ASM Shader)

          3) OpenGL (GLSL / ARB)

          None of them use IL or ISA. Do I miss some other option that uses IL or ISA as input languaje? Thanks in advance for any clarification

          best regards,

          Alfonso

            • Using IL?
              nou

              do DirectCompute use HLSL?

              i read that somone get binary kernel from OpenCL patch it up and then upload back to OpenCL ang get some speedup. he replaced some instructions.

                • Using IL?
                  afo

                   

                  Hi,

                   

                  >do DirectCompute use HLSL?

                  I am not sure, but the answer seems to be "yes".

                  http://www.danielmoth.com/Blog/DirectCompute.aspx

                  About patching a kernel. I had enough with the unnoficial support for multiGPU, I am tired of trying something to see if its works because "this will be available in an upcoming release". So I am exploring other options besides openCL to get better performance for my ALU bound kernels.

                  best regards,

                  Alfonso



                      • Using IL?
                        afo

                        Thanks for the links,

                        I will give it a try.

                        best regards,

                        Alfonso

                          • Using IL?
                            corry

                            2.7 isn't out yet.  I understand being prepared, but I think you've got some time ;)

                            As for the IL, if I had to gander a guess, it would be the move towards APU's thats effecting things.  I would further venture to guess, that nothing new would be added to the current discreet GPUs in >= 2.7 releases.  To go even further down this road of speculation, I'd guess that IL will be replaced by FSAIL, thus the lack of support for CAL/IL in 2.7.

                            In short, I don't think you need to worry, just hop on board the APU bandwagon and hopefully all will be well :)  I admit, it would certainly be *nice* if they backport FSAIL code to older discreet GPUs so we can get the advantages of the new software interfaces with older GPUs! (hint hint)

                              • Using IL?
                                afo

                                 

                                Hi,

                                I know that it seems that I am overreacting, but SDK 2.7 will be around april, and I don't want to put in the trash the work done to get the perfomance that I have now. 

                                I would like to go for APU, but my problems are ALU bounded without divergences in the wavefront, so I need raw computing power; is better for me a system with 2xHD5970 because I have 3200 cores in this system. With APU I would have only 400. And about FSA IL: is in the future, so I can't compare to OpenCL or my IL code and I can't start the migration. It would be great to have more information about FSA.

                                best regards,

                                Alfonso



                                  • Using IL?
                                    corry

                                    Again, all I can do is speculate, but were I in AMD's position, I think I would make FSAIL some combination of x86 and IL.  The only reason not to do that is to be more friendly to nVidia/Intel.  Again though, AMD even says in their docs, IL is roughly based on Direct3D, so technically, nVidia *should* be able to map IL to their cards fairly well, it would just render CUDA useless (IMO a good thing, proprietary is never the way to go....anyone remember what happened to glide?)

                                    Anyhow, I know the concern.  I'm developing a lot for IL as well.  I have figured worst case, I won't upgrade and will have to work with the bugs present.  Best case is the IL needs only minor tweaking to run in FSAIL, and the tools are better :)  (no more mysterious uav numbers doing different things, would certainly be nice!)

                      • Using IL?
                        MicahVillmow
                        corry,
                        The mysterious UAV numbers doing different things was combination of the limitations of the hardware capabilities, requirements for OpenCL on said hardware, and limitations in the current software stack. IL for our just released HD7XXX cards do not have this issue(IL has up to 256 UAV's and they all are equivalent) and should make programming at the IL layer, although not officially supported, less mysterious.
                          • Using IL?
                            corry

                             

                            Originally posted by: MicahVillmow corry, The mysterious UAV numbers doing different things was combination of the limitations of the hardware capabilities, requirements for OpenCL on said hardware, and limitations in the current software stack. IL for our just released HD7XXX cards do not have this issue(IL has up to 256 UAV's and they all are equivalent) and should make programming at the IL layer, although not officially supported, less mysterious.


                            Well, that was supposed to be a bit of a joke/half serious hope :) You know, the old, Software is magic and can fix any hardware problem?  Between my time at a non-software as the main product, and other people I know who have/are working for companies where software isn't the main product, they've all run into that!  Software can fix anything!  (Of course being in software I do understand its not magic, and it can't fix any problem, or overcome any restriction, but I know there are clever ways to cover up/work around them! Thus the hope!)

                            Whenever I make a joke that I have to explain I always follow up the explanation with if you have to explain your joke, it probably wasn't funny....guess since it was a half hope as well, that doesn't entirely apply :)  (I kid! I kid!)

                          • Using IL?
                            MicahVillmow
                            :) Sure software can fix most hardware problems, but there is often a trade-off in complexity. We believe we found the right balance given our requirements, but we definitely did not document it well enough.