1 Reply Latest reply on Oct 27, 2016 4:13 PM by cgrant78@netzero.com

    CrossFire, transfer texture after ID3D11DeviceContext->Unmap

    roger1

      Hi,

       

       

      In my application I have the following sequence :

      • Frame1: Function ID3D11DeviceContext->Map is used to get texture pointer.
      • Somewhere in between two frames: Texture is filled with data, using pointer from Frame1.
      • Frame2: ID3D11DeviceContext->Unmap is called and the texture is used.

       

       

      It works fine, but not on CrossFire(AFR Friendly), because texture appears inside GPU1 memory(I think) and the application needs it inside GPU2 memory.

       

       

      Is it possible to transfer texture to GPU2 after deviceContext->Unmap ?

       

       

      If yes, where do I place functions ?

      agsDriverExtensionsDX11_NotifyResourceBeginAllAccess

      agsDriverExtensionsDX11_NotifyResourceEndWrites

      agsDriverExtensionsDX11_NotifyResourceEndAllAccess

        • Re: CrossFire, transfer texture after ID3D11DeviceContext->Unmap
          cgrant78@netzero.com

          How are you coming to the conclusion that the texture is available on only GPU1 ? .Crossfire is not that different that SLI and the resource needs to be available on either device in order to be used. AFAIK one does not manually manage resource at the level you are thinking, thats work for the driver to do. Since you are not addressing individual GPU when you are writing the code to utilize Crossfire, the behavior should be seamless to the application.

           

          "It works fine, but not on CrossFire(AFR Friendly), because texture appears inside GPU1 memory(I think) and the application needs it inside GPU2 memory"

           

          What exactly does that mean ?