Results 1 to 5 of 5

Thread: A Closer Look At Mantle and EQAA In Civilization

  1. #1
    AMD Community Rep
    Join Date
    Sep 2014
    Location
    Norwich
    Posts
    84
    Thanks
    4
    Thanked
    13 times in 8 posts
    • AMDMatt's system
      • Motherboard:
      • Asus Rampage Extreme IV
      • CPU:
      • i7 i7 5960X @4.7Ghz
      • Memory:
      • 16GB 3200Mhz GSkill CL14
      • Storage:
      • Samsung 850/840
      • Graphics card(s):
      • 4x 290X 8GB
      • PSU:
      • 1600W EVGA
      • Case:
      • Carbide 540
      • Operating System:
      • Windows 8.1
      • Monitor(s):
      • Iiyama ProLite B2888UHSU-B1 28" 4K
      • Internet:
      • Virgin 100mb down 6mb up

    A Closer Look At Mantle and EQAA In Civilization

    I wanted to start this thread to help explain some of the exciting features we've implemented in this new game. This is not about benchmark results or discussion of said results, this is information about the tech behind the numbers. Information about the power that Mantle puts in the hands of the developer. The reason why developers have been calling out for a new, low level and advanced API. I hope you find it of interest.


    MANTLE SPLIT-FRAME RENDERING WITH AMD CROSSFIRE™ TECHNOLOGY

    With a traditional graphics API, multi-GPU arrays like AMD CrossFire™ are typically utilized with a rendering method called “alternate-frame rendering” (AFR). AFR renders odd frames on the first GPU, and even frames on the second GPU. Parallelizing a game’s workload across two GPUs working in tandem has obvious performance benefits.

    As AFR requires frames to be rendered in advance, this approach can occasionally suffer from some issues:
    Large queue depths can reduce the responsiveness of the user’s mouse input
    The game’s design might not accommodate a queue sufficient for good mGPU scaling
    Predicted frames in the queue may not be useful to the current state of the user’s movement or camera

    Thankfully, AFR is not the only approach to multi-GPU. Mantle empowers game developers with full control of a multi-GPU array and the ability to create or implement unique mGPU solutions that fit the needs of the game engine.

    In Civilization: Beyond Earth, Firaxis designed a “split-frame rendering” (SFR) subsystem. SFR divides each frame of a scene into proportional sections, and assigns a rendering slice to each GPU in AMD CrossFire™ configuration.2 The “master” GPU quickly receives the work of each GPU and composites the final scene for the user to see on his or her monitor.
    ESSENTIAL READING:How Does Split Frame Rendering Work In CIV?

    As you can probably surmise, SFR requires high parallelization, efficient inter-GPU communication, and reliable delivery of slices to the master GPU. AMD Radeon™ graphics cards running Mantle are uniquely equipped to meet those requirements.

    MANTLE MULTI-THREADED COMMAND BUFFER SUBMISSION

    As Mantle rises to meet the parallelization requirements of SFR, Mantle also supercharges Beyond Earth’s ability to utilize a gamer’s multi-core CPU.

    In computer graphics, a “command buffer” is a type of memory buffer containing instructions (or “commands”) that the GPU will execute to carry out required rendering workloads. Feeding the GPU with a continuous, uninterrupted flow of commands is essential to keeping the whole graphics card at high utilization. High utilization can yield higher framerates and/or higher image quality, depending on the focus of the game developer.


    Mantle is remarkable in its ability to spread a game engine’s command buffer submissions across multiple CPU cores, ultimately allowing for a wider stream of graphics work to be processed and queued to the GPU.

    In the case of Sid Meier’s Civilization: Beyond Earth, you’ll see later in this blog that this wide communication lane to the AMD Radeon™ GPU is used to sustain higher overall framerates when empires get large and detailed in the late game.

    EQAA in Mantle

    Aliasing, the nasty “jaggies” on the edges of 3D objects in a PC game, is the bane of gamers everywhere. Aliasing is produced when a sharp edge is rendered to a monitor, which doesn’t offer sufficiently high pixels per square inch to properly express a smooth line.

    There are many types of anti-aliasing designed to combat this unwanted phenomenon, and the majority of them fall into a category known as “multisample anti-aliasing” or MSAA. As the name implies, MSAA relies on “samples,” which is a graphics card’s test for whether or not a pixel on your monitor is occupied by one or more objects from the game world. If a pixel is covered by more than one triangle then the final contents/color of that pixel will be a blend of the information covering that pixel to produce a smoother edge.

    Games and GPUs can cooperate to increase the number of samples being taken with each pixel, and these samples may test for color or coverage. Higher coverage sampling improves the accuracy of detecting whether or not an object occupies the pixel; higher color sampling improves the blending between samples confirmed to be occupied. Gamers increase the sample rate by choosing 2x, 4x or 8x MSAA, causing every pixel to be tested for color and coverage in two, four or eight locations.
    Learn More: MSAA Overview

    Like MSAA, AMD’s Enhanced Quality Anti-Aliasing (EQAA) also comes in 2x, 4x and 8x sampling modes, but each EQAA mode takes twice as many coverage samples as MSAA. Increased coverage testing allows the GPU to more accurately detect objects within a pixel, potentially allowing EQAA to detect and smooth a hard edge that might have been missed with fewer samples. Coverage samples are computationally cheaper than color samples, so EQAA proves to be a good compromise between quality and performance.


    Civilization: Beyond Earth automatically enables EQAA in Mantle (and DirectX®!) on supporting AMD Radeon™ GPUs when the user chooses to enable the in-game anti-aliasing options.

    Customers with older GPUs that lack hardware support for Mantle can still take advantage of EQAA through the AMD Catalyst™ graphics driver. Simply enable 2x, 4x or 8xMSAA in the options menu of your favorite game (if supported), and ensure you have “enhance application settings” selected in the 3D Application Settings tab of AMD Catalyst™ Control Center.

    AMD and Firaxis Games have worked together for months, not only to equip Civilization: Beyond Earth with a Mantle-based renderer, but to refine the Mantle specification with the features that Firaxis wanted to see. Hundreds of collaborative man hours are coming together for AMD Radeon™ customers at this very moment, and the results speak for themselves: fast, beautiful, efficient performance for Sid Meier’s Civilization: Beyond Earth.

    That is the power of the AMD Gaming Evolved Program. We hope you enjoy one more turn!

    Full Article & More Info
    http://community.amd.com/community/a...n-beyond-earth
    <b>Official AMD Community Rep on HEXUS</b>

  2. #2
    Senior Member kalniel's Avatar
    Join Date
    Aug 2005
    Posts
    28,817
    Thanks
    1,431
    Thanked
    2,858 times in 2,320 posts
    • kalniel's system
      • Motherboard:
      • Gigabyte X58A UD3R rev 2
      • CPU:
      • Intel Xeon X5680
      • Memory:
      • 12gb DDR3 2000
      • Graphics card(s):
      • nVidia GTX 1060 6GB
      • PSU:
      • Seasonic 600W
      • Case:
      • Cooler Master HAF 912
      • Operating System:
      • Win 10 Pro x64
      • Monitor(s):
      • Dell U2311H
      • Internet:
      • O2 8mbps

    Re: A Closer Look At Mantle and EQAA In Civilization

    Woah, blast from the past.

    Can you explain why you mention EQAA? Surely we've been able to use EQAA/CSAA for games in the past for years, is the fact that when you select in-game AA it uses this, all that exciting?

  3. #3
    AMD Community Rep
    Join Date
    Sep 2014
    Location
    Norwich
    Posts
    84
    Thanks
    4
    Thanked
    13 times in 8 posts
    • AMDMatt's system
      • Motherboard:
      • Asus Rampage Extreme IV
      • CPU:
      • i7 i7 5960X @4.7Ghz
      • Memory:
      • 16GB 3200Mhz GSkill CL14
      • Storage:
      • Samsung 850/840
      • Graphics card(s):
      • 4x 290X 8GB
      • PSU:
      • 1600W EVGA
      • Case:
      • Carbide 540
      • Operating System:
      • Windows 8.1
      • Monitor(s):
      • Iiyama ProLite B2888UHSU-B1 28" 4K
      • Internet:
      • Virgin 100mb down 6mb up

    Re: A Closer Look At Mantle and EQAA In Civilization

    Quote Originally Posted by kalniel View Post
    Woah, blast from the past.

    Can you explain why you mention EQAA? Surely we've been able to use EQAA/CSAA for games in the past for years, is the fact that when you select in-game AA it uses this, all that exciting?
    It's mentioned because it's a feature which is automatically enabled in DirectX and Mantle for superior image quality for (supported) Radeon users when any level of ingame AA is applied. I believe this is quite unique, even though the technique has been around for sometime already.
    <b>Official AMD Community Rep on HEXUS</b>

  4. #4
    Senior Member kalniel's Avatar
    Join Date
    Aug 2005
    Posts
    28,817
    Thanks
    1,431
    Thanked
    2,858 times in 2,320 posts
    • kalniel's system
      • Motherboard:
      • Gigabyte X58A UD3R rev 2
      • CPU:
      • Intel Xeon X5680
      • Memory:
      • 12gb DDR3 2000
      • Graphics card(s):
      • nVidia GTX 1060 6GB
      • PSU:
      • Seasonic 600W
      • Case:
      • Cooler Master HAF 912
      • Operating System:
      • Win 10 Pro x64
      • Monitor(s):
      • Dell U2311H
      • Internet:
      • O2 8mbps

    Re: A Closer Look At Mantle and EQAA In Civilization

    I see.

    Is there any chance AMD will support driver command lists in DX11? I understand you've done the same thing in Mantle here with "MANTLE MULTI-THREADED COMMAND BUFFER SUBMISSION", but your competitors have support in DX11 for something similar without the need for mantle, which various sites have shown really helps in Civ.

  5. #5
    AMD Community Rep
    Join Date
    Sep 2014
    Location
    Norwich
    Posts
    84
    Thanks
    4
    Thanked
    13 times in 8 posts
    • AMDMatt's system
      • Motherboard:
      • Asus Rampage Extreme IV
      • CPU:
      • i7 i7 5960X @4.7Ghz
      • Memory:
      • 16GB 3200Mhz GSkill CL14
      • Storage:
      • Samsung 850/840
      • Graphics card(s):
      • 4x 290X 8GB
      • PSU:
      • 1600W EVGA
      • Case:
      • Carbide 540
      • Operating System:
      • Windows 8.1
      • Monitor(s):
      • Iiyama ProLite B2888UHSU-B1 28" 4K
      • Internet:
      • Virgin 100mb down 6mb up

    Re: A Closer Look At Mantle and EQAA In Civilization

    Quote Originally Posted by kalniel View Post
    I see.

    Is there any chance AMD will support driver command lists in DX11? I understand you've done the same thing in Mantle here with "MANTLE MULTI-THREADED COMMAND BUFFER SUBMISSION", but your competitors have support in DX11 for something similar without the need for mantle, which various sites have shown really helps in Civ.
    I don't know the answer to that. What i can safely say is we don't need to in Civilization beyond earth as we have Mantle, which is much better.
    <b>Official AMD Community Rep on HEXUS</b>

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •