8 Replies Latest reply on Jan 19, 2010 12:42 AM by Gipsel

    CAL can not detect all my GPUs.

    rainysky


      I got two 5800 series GPU installed on single machine. But the calDeviceGetCount API always return 1, and the calDeviceOpen(&dev, 1) API always fail. Is there any special requirement to use the secondary GPU?

      My operating system is windows xp sp3. The SDK is atistream-1.4.0_beta-winxp32.exe and the driver is 9-12_xp32_dd.exe. No display is attached to any of the card.

        • CAL can not detect all my GPUs.
          Gipsel

           

          Originally posted by: rainysky I got two 5800 series GPU installed on single machine. But the calDeviceGetCount API always return 1, and the calDeviceOpen(&dev, 1) API always fail. Is there any special requirement to use the secondary GPU?

          My operating system is windows xp sp3. The SDK is atistream-1.4.0_beta-winxp32.exe and the driver is 9-12_xp32_dd.exe. No display is attached to any of the card.



          Only the GPU with the primary display (configurable in the display properties) is usable without an attached monitor. Simple solution is to enable Crossfire between the cards. Or you have to usa a VGA dummy.

            • CAL can not detect all my GPUs.
              emuller

              or to use linux ;-)

              • CAL can not detect all my GPUs.
                rainysky

                Will try the VGA dummy solution. Currently I attach a monitor on secondary card and extend the windows desktop to that monitor, after that all cards work properly.

                  • CAL can not detect all my GPUs.
                    Gipsel

                     

                    Originally posted by: rainysky Will try the VGA dummy solution. Currently I attach a monitor on secondary card and extend the windows desktop to that monitor, after that all cards work properly.


                    As I said, just enabling crossfire should do the trick without a secondary display or a dummy plug.

                      • CAL can not detect all my GPUs.
                        frankas

                         

                        Originally posted by: Gipsel
                        Originally posted by: rainysky Will try the VGA dummy solution. Currently I attach a monitor on secondary card and extend the windows desktop to that monitor, after that all cards work properly.


                         

                        As I said, just enabling crossfire should do the trick without a secondary display or a dummy plug.

                         

                        Crossfire does not work in Linux, (except maybe for 3D - but not for stream processing purposes). Actually the latest drivers doesn't work without crossfire either, as the primary display goes black. But if you use vnc to enable crossfire, 2 GPUs will be detected. But when you run jobs on both of them, performance is the same as a single GPU.

                        It would be interesting to know if this works in Windows, and the performance is what you expect from having a multi-GPU setup.

                         

                          • CAL can not detect all my GPUs.
                            Gipsel

                             

                            Originally posted by: frankasCrossfire does not work in Linux, (except maybe for 3D - but not for stream processing purposes). Actually the latest drivers doesn't work without crossfire either, as the primary display goes black. But if you use vnc to enable crossfire, 2 GPUs will be detected. But when you run jobs on both of them, performance is the same as a single GPU.

                            It would be interesting to know if this works in Windows, and the performance is what you expect from having a multi-GPU setup.



                            The thread starter stated that he uses WinXP32

                            And yes, it works with crossfire enabled. Have it running myself that way (WinXP64) and can load both GPUs independently to 100%. With earlier drivers I observed some performance hit compared to running them as individual cards (~15% for a somewhat memory intense algorithm, looks like some stuff was duplicated on both GPUs or transferred between them). But that has largely disappeared with Catalyst 9.3 or so, at least for me. So the runtime of one kernel on GPU A is not affected if GPU B also runs a kernel or not, the througput simply doubles.