3 Replies Latest reply on Oct 10, 2008 10:58 PM by udeepta@amd

    How to use >1GB of texture memory.


      According to the specs, my HD 4870 X2 graphics card should have 2 GB of memory. Yet I can only make use of 1 GB in CAL. For example, I can allocate 61 textures of size 1024x1024 and type float4, which would correspond do 61*16 MB = 976 MB. Allocating more memory fails, with calGetErrorString() returning the error message 'Operational error'.

      Assigning the memory equally to both gpu cores does not help, in that case I can allocate 30 textures on each core.

      Any ideas why I cannot allocate more memory? Can someone confirm these results? I am using 64 bit gentoo linux.


        • How to use >1GB of texture memory.

          The two cores are linked via Crossfire which mirrors the allocations on both cores.  As far as I know, there is nothing that we can do to change this behaviour at this point.

            • How to use >1GB of texture memory.

              Hmm, if the memory allocations are mirrored, how can I use the memory that is allocated by the second core? Or am I limited to 1 GB of memory? If so, what happens if I combine two cards via crossfire? Am I still limited to 1 GB?


                • How to use >1GB of texture memory.

                  If you have two (or more) cards, you should disable crossfire. Then you will be able to use the full memory on each card.

                  The 4870X2 is not an officially supported card for the Stream SDK. I have not used it myself -- but accordoing to feedback from external users -- you cannot disable crossfire, and the effective memory available for use by CAL/Brook+ is 1Gig. You can see both devices in WinXP and WinXP64, but not in other OS.