Announcement

Collapse
No announcement yet.

How Much Video RAM Is Needed For Catalyst R3 Graphics?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • How Much Video RAM Is Needed For Catalyst R3 Graphics?

    Phoronix: How Much Video RAM Is Needed For Catalyst R3 Graphics?

    For those wondering how much video memory you should allocate from your system RAM for the Radeon R3 Graphics with the new AM1 APUs, we have up some new Linux OpenGL benchmarks of the AMD Athlon 5350 performance with varying amounts of video memory available.

    http://www.phoronix.com/vr.php?view=20225

  • #2
    This is one of the most interesting phoronix articles I've seen in a while. I'm quite surprised that there is little return in using more than 512MB. Does this mean that there would also be little different in performance between a GPU with 512MB vs 1024MB using the same processing unit?

    I wouldn't think so because otherwise it simply wouldn't make sense to get the 2048MB version of cards intead of the 1024MB, where we do see a performance difference. There must be some other bottle neck going on. Could it be the bus? Or is it something inherent to how APUs work?

    Any insight would be most welcome.

    Comment


    • #3
      Originally posted by FourDMusic View Post
      This is one of the most interesting phoronix articles I've seen in a while. I'm quite surprised that there is little return in using more than 512MB. Does this mean that there would also be little different in performance between a GPU with 512MB vs 1024MB using the same processing unit?

      I wouldn't think so because otherwise it simply wouldn't make sense to get the 2048MB version of cards intead of the 1024MB, where we do see a performance difference. There must be some other bottle neck going on. Could it be the bus? Or is it something inherent to how APUs work?

      Any insight would be most welcome.
      From my observation, it depends on the game engine. A texture caching engines profit from additional memory, where the scene and textures are loaded partially and on demand. Gamebryo, Xray, GTA etc. With such engines the absolute minimum is set to 512MiB. I am surprised that Xonotic did not degrade performance on ultimate Quality. Either the scene contained little textures, or Xonotic guys set a total maximum under 512MiB.

      Comment


      • #4
        Good test but some test on HD resolution (1080p is too much for this hardware on my opinion) maybe interesting

        Comment


        • #5
          Asus AM1M-A does not allow 32 MB, but allows 768MB to be set . Of course up to 2GB .

          And 32MB is wrong to expose there , opensource radeon driver i think requires at least 64MB for full accel to work .
          Last edited by dungeon; 04-19-2014, 01:20 PM.

          Comment


          • #6
            Originally posted by brosis View Post
            From my observation, it depends on the game engine. A texture caching engines profit from additional memory, where the scene and textures are loaded partially and on demand. Gamebryo, Xray, GTA etc. With such engines the absolute minimum is set to 512MiB. I am surprised that Xonotic did not degrade performance on ultimate Quality. Either the scene contained little textures, or Xonotic guys set a total maximum under 512MiB.
            Can I ask an even simpler question? Why the hell does an APU (on-die gpu) need to have _any_ RAM allocated to it, given that both CPU and GPU are in the same package, accessing the same RAM? Is that because the kernel will actually take over the rest of the RAM and not make it available to the graphics driver? But isn't the graphics drive memory management live inside the kernel anyways? I am not a kernel or graphics hacker, so please excuse my silly question.

            On that vain: I am using a Haswell i5 these days. Of course I overclocled/fine tuned it as much as I could. But adding or removing RAM for Graphics in the BIOS made no difference whatsoever in my tests (even with the intensive Unigine tests). I actually suggested another user in these forums to try that, and they got exactly the same behavior.

            Thanks for any clarifications, I am pretty perplexed

            Comment


            • #7
              Originally posted by mendieta View Post
              Can I ask an even simpler question? Why the hell does an APU (on-die gpu) need to have _any_ RAM allocated to it, given that both CPU and GPU are in the same package, accessing the same RAM? Is that because the kernel will actually take over the rest of the RAM and not make it available to the graphics driver? But isn't the graphics drive memory management live inside the kernel anyways? I am not a kernel or graphics hacker, so please excuse my silly question.

              On that vain: I am using a Haswell i5 these days. Of course I overclocled/fine tuned it as much as I could. But adding or removing RAM for Graphics in the BIOS made no difference whatsoever in my tests (even with the intensive Unigine tests). I actually suggested another user in these forums to try that, and they got exactly the same behavior.

              Thanks for any clarifications, I am pretty perplexed
              it is the way opengl works, it puts things into buffers that are to be sent to the "gpu"
              afaik it could just say "it's there" but games expect to be limited in terms of gpu memory so they do their own memory management anyway
              (opengl driver does it but game engines do it also as they can predict what is needed next)

              anyway
              "memory management improvements are still forthcoming"


              @brosis
              if i remember good xonotic uses about ~300MB gpu memory
              i think most if not all of the level/objects is in there

              Comment


              • #8
                Originally posted by mendieta View Post
                Can I ask an even simpler question? Why the hell does an APU (on-die gpu) need to have _any_ RAM allocated to it, given that both CPU and GPU are in the same package, accessing the same RAM? Is that because the kernel will actually take over the rest of the RAM and not make it available to the graphics driver? But isn't the graphics drive memory management live inside the kernel anyways? I am not a kernel or graphics hacker, so please excuse my silly question.
                It's not a silly question at all. The distinction between "video RAM" and "system RAM" on an IGP is made for a few different reasons :

                1. It allows the reserved area of memory to be owned by a graphics-specific memory manager rather than having to work with/through the OS memory manager

                2. The reserved area can easily be configured to ignore things like cache coherency with the CPU, so accesses to this area can run faster than accesses to regular system memory

                3. Some of the GPU functions (eg display circuitry) require physically contiguous memory rather than a bunch of non-contiguous physical blocks mapped together with page tables. It's often difficult/impossible to allocate big chunks of physically contiguous memory via the OS memory manager after the system has been running for a while... but having a reserved area of memory keeps the OS memory manager's grubby little fingers off it

                EDIT -- 3 is arguably a subset of 1

                Comment


                • #9
                  Originally posted by mendieta View Post
                  Can I ask an even simpler question? Why the hell does an APU (on-die gpu) need to have _any_ RAM allocated to it, given that both CPU and GPU are in the same package, accessing the same RAM? Is that because the kernel will actually take over the rest of the RAM and not make it available to the graphics driver? But isn't the graphics drive memory management live inside the kernel anyways? I am not a kernel or graphics hacker, so please excuse my silly question.
                  I used to wonder the same thing - it's the same RAM, same stick. The magic is in two parts: a continuous area is needed (which is only possible to allocate at boot, before fragmentation sets in), and secondly, the cache settings for that area.

                  If each write to that block of RAM needed to update CPU caches, the performance would be several times lower.

                  Comment


                  • #10
                    Bridgman was faster

                    Comment

                    Working...
                    X