BF4 Integrates FCAT Overlay Support
Back in September AMD publicly announced Mantle, a new lower level API meant to offer more performance for gamers and more control for developers fed up with the restrictions of DirectX. Without diving too much into the politics of the release, the fact that Battlefield 4 developer DICE was integrating Mantle into the Frostbite engine for Battlefield was a huge proof point for the technology. Even though the release was a bit later than AMD had promised us, coming at the end of January 2014, one of the biggest PC games on the market today had integrated a proprietary AMD API.
When I did my first performance preview of BF4 with Mantle on February 1st, the results were mixed but we had other issues to deal with. First and foremost, our primary graphics testing methodology, called Frame Rating, wasn't able to be integrated due to the change of API. Instead we were forced to use an in-game frame rate counter built by DICE which worked fine, but didn't give us the fine grain data we really wanted to put the platform to the test. It worked, but we wanted more. Today we are happy to announce we have full support for our Frame Rating and FCAT testing with BF4 running under Mantle.
A History of Frame Rating
In late 2012 and throughout 2013, testing graphics cards became a much more complicated beast. Terms like frame pacing, stutter, jitter and runts were not in the vocabulary of most enthusiasts but became an important part of the story just about one year ago. Though complicated to fully explain, the basics are pretty simple.
Rather than using software on the machine being tested to measure performance, our Frame Rating system uses a combination of local software and external capture hardware. On the local system with the hardware being evaluated we run a small piece of software called an overlay that draws small colored bars on the left hand side of the game screen that change successively with each frame rendered by the game. Using a secondary system, we capture the output from the graphics card directly, intercepting it from the display output, in real-time in an uncompressed form. With that video file captured, we then analyze it frame by frame, measuring the length of each of those colored bars, how long they are on the screen, how consistently they are displayed. This allows us to find the average frame rate but also to find how smoothly the frames are presented, if there are dropped frames and if there are jitter or stutter issues.
Subject: General Tech, Graphics Cards | December 11, 2013 - 05:58 PM | Scott Michaud
Tagged: frame pacing, frame rating, amd, southern islands, 4k, eyefinity, crossfire, microstutter
The frame pacing issue has been covered at our website for almost a year now. It stems from the original "microstutter" problem which dates back over a year before we could quantify it. We like to use the term "Frame Rating" to denote the testing methodology we now use for our GPU tests.
AMD fared worse at these tests than NVIDIA (although even they had some problems in certain configurations). They have dedicated a lot of man-hours to the problem resulting in a driver updates for certain scenarios. Crossfire while utilizing Eyefinity or 4K MST was one area they did not focus on. The issue has been addressed in Hawaii and AMD asserted that previous cards will get a software fix soon.
The good news is that we have just received word from AMD that they plan on releasing a beta driver for Southern Islands and earlier GPUs (AMD believes it should work for anything that's not "legacy"). As usual, until it ships anything could change, but it looks good for now.
The beta "frame pacing" driver addressing Crossfire with 4K and Eyefinity, for supported HD-series and Southern Islands-based Rx cards, is expected to be public sometime in January.
Subject: General Tech, Graphics Cards | September 26, 2013 - 03:35 AM | Scott Michaud
Tagged: frame rating, frame pacing, amd
Scott Wasson of The Tech Report just received an interview with Raja Koduri, head of Graphics Hardware and Software Development at AMD, a few hours ago. Part of the interview discussed frame the frame pacing issues we, as well as The Tech Report, published over the last year. In short, the news seems good for owners of Radeon graphics cards, future and even current.
The "Hawaii" powered Radeon R9 290 and R9 290X graphics cards are expected to handle CrossFire pacing acceptably at launch. Clearly, if there is ever a time to fix the problem, it would be in new hardware. Still, this is good news for interested customers; if all goes to plan, you are likely going to have a good experience out of the box.
Current owners of GCN-based video cards, along with potential buyers of the R9 280X and lower upcoming cards, will apparently need to wait for AMD to release a driver to fix these issues. However, this driver is not far off: Koduri, unclear whether on or off the record, intends for an autumn release. This driver is expected to cover frame pacing issues for CrossFire, Eyefinity, and 4K.
Koduri does believe the CrossFire issues were unfortunate and expresses a desire to fix the issue for his customers.
Keep checking PC Perspective for more information as it comes out!
Editor's Note: I just spoke with Raja Koduri as well and he basically reiterated everything that Scott noted in his story on The Tech Report as well. The upcoming 290X will have frame pacing at Eyefinity and 4K resolution at launch while the cards below that in the R9 series, and users of Radeon HD 7000 cards (and likely beyond) will need some more time before the driver is ready. I'll be able to talk quite a bit more about the changes to BOTH architectures very shortly so stay tuned for that.
Subject: General Tech, Graphics Cards | August 2, 2013 - 12:44 PM | Jeremy Hellstrom
Tagged: video, stutter, radeon, nvidia, hd 7990, frame rating, frame pacing, amd
Scott Wasson from The Tech Report and Ryan have been discussing the microstuttering present in Crossfire and while Ryan got his hands on the hardware to capture the raw output first, The Tech Report have been investigating this issue as in depth as Ryan and Ken have been. Their look at the new Catalyst and the effects of Frame Pacing show the same results as you saw yesterday in Ryan's article; for essentially no cost in performance you can get a much smoother experience when using a CrossFire system on a single display. In their article they have done a great job of splicing together videos of runthroughs of several games with the Frame Pacing disabled on one side and enabled on the other, allowing you to see with your own eyes the difference in game play, without having to have your own Crossfire system.
"Can a driver fix what ails the Radeon HD 7990? Will the new Catalysts magically transform this baby into the fastest graphics card on the planet? We go inside the second to find out."
Here is some more Tech News from around the web:
- AMD Catalyst 13.8 Beta Frame Pacing CrossFire Driver @ [H]ard|OCP
- AMD Frame Pacing Explored: Catalyst 13.8 Brings Consistency to Crossfire @ AnandTech
- NVIDIA Shield Review: At the Crossroads of PC and Mobile Gaming @ AnandTech
- Gmail, Outlook.com and e-voting 'pwned' on stage in crypto-dodge hack @ The Register
- Boffins: We have FOOLED APPLE with malware app @ The Register
- iOS 7 Fix for Malicious iPhone Chargers Requires User Savvy @ DailyTech
- Happy 20th birthday, Windows NT 3.1 @ The Register
- NASA JPL boss Brian Muirhead talks about Mars exploration @ The Inquirer
- Man Builds Fully-Functional Boeing 737 Flight Simulator In His Son's Bedroom @ Slashdot
- Printing an Aston Martin DB4 @ Hack a Day
Subject: Graphics Cards | August 1, 2013 - 02:54 PM | Jeremy Hellstrom
Tagged: frame pacing, Catalyst 13.8 Beta, catalyst, beta, amd
Yes, you too can now benefit from the Frame Pacing which Ryan has been testing and posted the results to. For anyone with a multi-GPU system using Radeon cards this is an update worth installing as you will see a significant benefit to your gaming experience, along with the other benefits that the new Catalyst offers.
Highlights of the Windows AMD Catalyst™ 13.8 Beta release:
Support for CrossFire Frame Pacing
- Frame Pacing ensures that frames rendered across multiple GPUs in a CrossFire configuration will be displayed at an even and regular pace
- Enabled through the AMD Catalyst Control Center; Globally or on a per application basis
- Supported for DirectX 10 and DirectX 11 applications and resolutions up and including 2560x1600 (single display)
- OpenGL 4.3 support – full support for the OpenGL 4.3 feature set
Performance improvements found in AMD Catalyst 13.8 Beta:
- Metro Last Light – Improves performance up to 7% on the AMD Radeon HD 7000 Series
OpenGL support for User Profiles and Catalyst Application Profiles:
- Users can now create per application 3D setting profiles for OpenGL applications
- OpenGL applications are now supported through Catalyst Application Profile updates (for single GPU and AMD CrossFire configurations)
- AMD Enduro Technology enhancement – The AMD Catalyst Control Center now shows which applications are active on the Performance GPU and the Power saving GPU
Windows Catalyst Package: http://support.amd.com/us/kbarticles/Pages/AMDCatalyst13-8WINBetaDriver....
Highlights of the Linux AMD Catalyst 13.8 Beta release:
This release of AMD Catalyst™ Linux introduces support for the following new features:
- OpenGL 4.3 – full support for the OpenGL 4.3 feature set
- SLED11 SP3 support
- PowerXpress A+I support with Intel Haswell on SLED11 SP3
- Dynamic primary surface resizing
- Kernel 3.10 support
Resolved Issue highlights:
- Enduro Technology on AMD + AMD Ubuntu platforms
- Source Engine games hang when running on the High Performance ASIC
- Maya 2011-2013 – Various visual corruptions issues have been resolved
- Maya 2011-2013 – Mesh/Polygons selection performance has been improved
- Unigine Heaven – Intermittent Crashes have been resolved
- Unigine Heaven – Performance has been improved up to 11% on single GPU configurations
- Left 4 Dead 2 – Visual corruption issues have been resolved
- Visual artifacts are no longer seen with XvBA playback and CABAC=No
“Testing use Only” watermark has been removed.
Linux Catalyst Package: http://support.amd.com/us/kbarticles/Pages/AMDCatalyst13-8LINBetaDriver....
Frame Pacing for CrossFire
When the Radeon HD 7990 launched in April of this year, we had some not-so-great things to say about it. The HD 7990 depends on CrossFire technology to function and we had found quite a few problems with AMD's CrossFire technology over the last months of testing with our Frame Rating technology, the HD 7990 "had a hard time justifying its $1000 price tag." Right at launch, AMD gave us a taste of a new driver that they were hoping would fix the frame pacing and frame time variance issues seen in CrossFire, and it looked positive. The problem was that the driver wouldn't be available until summer.
As I said then: "But until that driver is perfected, is bug free and is presented to buyers as a made-for-primetime solution, I just cannot recommend an investment this large on the Radeon HD 7990."
Today could be a very big day for AMD - the release of the promised driver update that enables frame pacing on AMD 7000-series CrossFire configurations including the Radeon HD 7990 graphics cards with a pair of Tahiti GPUs.
It's not perfect yet and there are some things to keep an eye on. For example, this fix will not address Eyefinity configurations which includes multi-panel solutions and the new 4K 60 Hz displays that require a tiled display configuration. Also, we found some issues with more than two GPU CrossFire that we'll address in a later page too.
New Driver Details
Starting with 13.8 and moving forward, AMD plans to have the frame pacing fix integrated into all future drivers. The software team has implemented a software based frame pacing algorithm that simply monitors the time it takes for each GPU to render a frame, how long a frame is displayed on the screen and inserts delays into the present calls when necessary to prevent very tightly timed frame renders. This balances or "paces" the frame output to the screen without lowering the overall frame rate. The driver monitors this constantly in real-time and minor changes are made on a regular basis to keep the GPUs in check.
As you would expect, this algorithm is completely game engine independent and the games should be completely oblivious to all that is going on (other than the feedback from present calls, etc).
This fix is generic meaning it is not tied to any specific game and doesn't require profiles like CrossFire can from time to time. The current implementation will work with DX10 and DX11 based titles only with DX9 support being added later with another release. AMD claims this was simply a development time issue and since most modern GPU-bound titles are DX10/11 based they focused on that area first. In phase 2 of the frame pacing implementation AMD will add in DX9 and OpenGL support. AMD wouldn't give me a timeline for implementation though so we'll have to see how much pressure AMD continues with internally to get the job done.