Sign in with
Sign up | Sign in

Battlefield 4: RAM Issues And Driver Updates

AMD Mantle: A Graphics API Tested In Depth
By

As mentioned, we let AMD know about our Mantle issues under Battlefield 4, and was told that the game currently suffers from an issue that results in lower performance on cards with less than 4 GB of memory. In order to test this issue, we were sent an MSI Radeon R9 270X with 4 GB of GDDR5. Does the extra memory alleviate our observed problem?

While we don't see the performance penalty that Mantle caused previously, there's no perceptible advantage, either.

Once again, the frame time variance is exceptionally low on average, and the occasional spikes make little difference.

For now, it appears that on-board memory isn't the only limiting factor. At least in Battlefield 4, Mantle demonstrates an advantage over DirectX on high-end cards with 4 GB of memory. The extra GDDR5 doesn't appear to help a Radeon R9 270X under the API.

Battlefield 4 (June 3 Update) And Catalyst 14.6 Beta Release Candidate 2

This is one of the most benchmark-intensive articles I've ever written, involving multiple graphics cards tested across multiple platforms. I began the project back when Catalyst 14.4 Beta was the newest driver available, but used Catalyst 14.3 Beta because there were instances of the 14.4 driver penalizing performance.

Once testing was complete, I spent a lot of time doing additional research. I discussed the numbers with AMD, which led to 4 GB corner case benchmarking. I did more homework on APIs, and Chris Angelini spent some time with AMD's Richard Huddy in Bakersfield. To make a long story short, enough time passed that Battlefield 4 received an update on June 3rd, and AMD released its Catalyst 14.6 Beta driver.

I needed to make sure that my Mantle-based performance data was still relevant, so I ran a few tests with the latest updates and found that, in Battlefield 4, performance under Mantle improved on video cards with less than 4 GB of memory. The bad news is that, while the gap gets smaller, AMD's API is still a tad slower with a less consistent frame rate than DirectX 11. Even though the gap is much closer, Mantle doesn't offer an advantage in anything less than a Radeon R9 290.

The bottom line is that Radeon cards with less than 4 GB of memory still do not benefit from a performance advantage in Battlefield 4 under Mantle. But with the newest driver and game patch, that hit is smaller than our numbers with the 14.3 Beta package. Its an encouraging development, which speaks to the work AMD and DICE are putting into the API. But it also shows us how much effort is required. We'd hope that Battlefield 4 would run faster under Mantle, regardless of the card installed and its on-board graphics memory capacity.

Ask a Category Expert

Create a new thread in the Reviews comments forum about this subject

Example: Notebook, Android, SSD hard drive

Display all 107 comments.
This thread is closed for comments
Top Comments
  • 10 Hide
    Memnarchon , July 16, 2014 1:07 AM
    Mantle is not glide. 3DFX had 85% of the GPU share when they had glide so it was easier for developers to use the glide (AMD has 35% right now).
    But Mantle did something really good for gamers. Till now Microsoft with no competition didn't gave too much attention in performance optimising the DirectX. They gave Microsoft a reason to improve DirectX (so they will bring DX12) in the way mantle works. This benefits all the gamers.
    Unfortunately I have a feeling that Microsoft will give DirectX12 only with Windows9 (due to kernel limitations at their pockets).
    If this will be true then Mantle might have more life than most users expected to (since it wil take time for windows 9 to rule the market share)...
Other Comments
  • 0 Hide
    Amdlova , July 16, 2014 12:44 AM
    memory problems... so my 260x with 1gb will sufferrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
  • 10 Hide
    Memnarchon , July 16, 2014 1:07 AM
    Mantle is not glide. 3DFX had 85% of the GPU share when they had glide so it was easier for developers to use the glide (AMD has 35% right now).
    But Mantle did something really good for gamers. Till now Microsoft with no competition didn't gave too much attention in performance optimising the DirectX. They gave Microsoft a reason to improve DirectX (so they will bring DX12) in the way mantle works. This benefits all the gamers.
    Unfortunately I have a feeling that Microsoft will give DirectX12 only with Windows9 (due to kernel limitations at their pockets).
    If this will be true then Mantle might have more life than most users expected to (since it wil take time for windows 9 to rule the market share)...
  • -3 Hide
    ZolaIII , July 16, 2014 1:07 AM
    Next Open GL specification is almost redy & will be announced next month in (ironically) Vancouver Canada. Naturally it will be available on all platforms (that want to integrate OGL) & it will be addressing lover overheads. As gaming market is getting more fragmented it's getting natural to develop for api that can run on all platforms.
  • 9 Hide
    tomfreak , July 16, 2014 2:18 AM
    Is the battlefield 4 tested in multi-player?

    [Answer By Cleeve:]

    It was tested in single player, as its easier to get consistent results. We're trying to eliminate variables except the graphics engine as much as possible.
  • -3 Hide
    chaosmassive , July 16, 2014 2:51 AM
    "AMD Mantle: AMD's PhysX "

    please do a research what is Mantle before post
    it seems you don't understand what are you writing about.

    [Answer by Cleeve:]

    I think the problem may be that you don't understand the context of the answer, which does not equate Mantle with PhysX on a technical level.

    We equate Mantle with PhysX in the sense that it's a value-add that assists in a limited number of games. Its not a universal advantage.
  • 0 Hide
    ta152h , July 16, 2014 4:47 AM
    As a programmer of 30 years, that's arguably the worst description of an API I have heard.

    An API is a set of commands, with required parameters, a software package presents to another application that wishes to use its services. It's essentially the language to use the services it provides.

    Mantle isn't just an API. It's an abstraction layer that makes it unnecessary for the developer to write directly to the hardware, which is tedious, time-consuming and extremely difficult to do on a large product. The API is what Mantle accepts to tell it what to do, and what the programmer must learn to use it, but it is NOT all Mantle is. It's just how to talk to it.

    A pure API would be something someone demented would write, because it would mean you could issue commands to do nothing. I'm guessing Apple is patenting this technology now.

    [Answer by Cleeve]

    I'm sorry you feel that way. I don't agree as I feel it's a useful high-level primer for folks who haven't been programming for 30 years, but you're certainly entitled to your opinion. :) 
  • -4 Hide
    elbert , July 16, 2014 4:54 AM
    On page 4 its clear mantle doesn't work well with Intel's Hyper-Threading but what about Intel's 6 core CPU's? Does mantle give an Intel 6 core a bigger advantage in games that dx? I wouldn't throw mantle under the bus just due to its unoptimized for Hyper-Threading. Please add an Intel's 6 core to these tests.
  • 0 Hide
    SteelCity1981 , July 16, 2014 5:55 AM
    I can see intel supporting mantle in its future gpu hardware. I mean just recently intel asked amd for its mantles api specs. So intel using mantle in the future is much more plausible then Nvidia using mantle.
  • 2 Hide
    K-beam , July 16, 2014 6:55 AM
    Mantle can actually become quite relevant in any next-gen ultra-portable x86 APUs that AMD come up with. Especially useful if coupled with proper integration with Steam-OS.
  • 6 Hide
    cypeq , July 16, 2014 7:07 AM
    How I see line graph with 15 positions.



    (Image viewable on Forum here:) 
    http://www.tomshardware.com/forum/id-2221312/amd-mantle-graphics-api-tested-depth.html#13731289
  • 1 Hide
    serendipiti , July 16, 2014 7:10 AM
    Nice analysis.

    Probably there wasn't a DirectX 12 on the works because of maturity (what else add to DirectX that it pays for?) and Mantle showed the way.

    I don't like the comparation to PhysX (because of what has finally become) and the fact that Mantle won´t bring new features to games.

    It is Mantle here to stay, probably, sadly, not. Its success as an universal graphics API is complicated:
    if it was on time for PS4, XBox One (M$...) and Linux / Valve Steam OS and above all: Mobile devices (ARM...), if it could get NVidia involved also, perhaps Mantle would gain enough momentum to become an accepted universal standard.

    The other battle field is on the developer front: get major 3D Engines to support a Mantle code path (and what are the costs related to maintaining that code path from a developer standpoint).

    ta512, as deep as a naming convention discussion can go, what AMD is doing is an API which implements a Hardware Abstraction Layer for the graphics cards of any hardware vendor (AMD, NVidia, Intel). What have tested here is the AMD own implementation of that API made to run on AMD hardware.

    What is open source is the API, not the AMD own implementation.

    This Is like discussing if ARM it is a processor or an instruction set... and what / where the difference is.

    In a case scenario where you have BattleField 4 running on an i7 with an NVidia card with a Mantle enabled driver (let's suppose Nvidia gets on the Mantle train) the only thing AMD would have done would be decide how the game will talk to the graphics card, but neither the game, the driver, the graphics card, none of these would be AMD's work,,,

    Cheers
  • 4 Hide
    cleeve , July 16, 2014 7:12 AM
    Quote:
    How I see line graph with 15 positions.


    Urmehghurd, I LOLed. Nice one.

    Yeah, this is a little ugly. Note that I made the mantle results thicker so it'd be slightly easier to pick out the Mantle trends, but yeah. Would be a little easier to pinpoint specific cards with less data.
  • 0 Hide
    guskline , July 16, 2014 7:19 AM
    Very interesting article. I have a Sapphire R9 290 Tri-X in my FX8350 rig and BF4 has slightly faster fps in Mantle than in DirectX
  • 3 Hide
    Alethinos , July 16, 2014 7:21 AM
    Is it just me, or is that last Frame Time Variance graph on the 8th page labeled wrong? I wouldn't think frame time variance would be displayed in frames per second, and if it was, the majority of the items on the chart would (hopefully) not be between 0-10 if "higher is better".

    Maybe I misunderstand what the chart is trying to show.

    [Answer by Cleeve:]

    Doh! You're quite right, I'll get that fixed.
  • 1 Hide
    ddpruitt , July 16, 2014 7:25 AM
    I think Tom's doesn't really understand the difference between the OS API and a regular API. The entire first page muddies the discussion. Mantle isn't an API it's the low level driver behind the API, and that can be made as lean or as bloated as possible with no changes to the API itself. As an example Android uses the Java API but it's a completely different implementation than what you would see on an EA game.

    I'm also concerned that Battlefield was used as a benchmark. Although I understand that the available benches are limited by those that support Mantle Battlefield is notoriously difficult to get consistent results with, I would consider the differences well within experimental error and therefore unreliable.
  • 3 Hide
    Onus , July 16, 2014 7:30 AM
    Quote:
    Alright, I think I have a handle on the basics of Mantle. What now?

    For the sake of professional image, please remember that Alright is Alwrong. All right?
    [/nazi]
    To the meat of the article, it does look like Mantle will help some of AMD's weaker CPUs some of the time, but if that isn't what you have, Mantle does not make a large enough difference to influence buying decisions (sort of like PhysX; in only a few cases does it really matter). If your system is one of those cases, it is a pretty substantial difference, but for many people it won't be.

  • 1 Hide
    cleeve , July 16, 2014 7:34 AM
    Quote:
    I think Tom's doesn't really understand the difference between the OS API and a regular API. The entire first page muddies the discussion. Mantle isn't an API it's the low level driver behind the API


    I'm not sure I read you here. There's a Mantle API and a Mantle driver, these are separate entities.

    I've been at briefings and talked to developers, and it's been made very clear that Mantle is a graphics API, which requires a Mantle-compatible driver to work with specific hardware.

    Quote:
    I'm also concerned that Battlefield was used as a benchmark. Although I understand that the available benches are limited by those that support Mantle Battlefield is notoriously difficult to get consistent results with, I would consider the differences well within experimental error and therefore unreliable.


    I'll have to disagree on this one. We have a BF4 test run that has been extremely reliable and repeatable for us, usually with less than 1.5 FPS difference in three runs.

    When there's an issue found in data, it's easy to assume its the test. Sometimes it's what you're testing, though. We can't ignore issues out of convenience.

  • 3 Hide
    Yuka , July 16, 2014 7:53 AM
    You guys need to test MP... I know its hard and blah blah, but you can just add error margin to results and just describe the differences if you guys notice any.

    You guys are testing a grippy car in just a drag race. That's unfair. You need to add cornering as well.

    Cheers!
Display more comments