Barts: The Next Evolution of Cypress

At the heart of today’s new cards is Barts, the first member of AMD’s Northern Island GPUs. As we quickly hinted at earlier, Barts is a very direct descendant of Cypress. This is both a product of design, and a product of consequences.

It should come as no surprise that AMD was originally looking to produce what would be the Northern Islands family on TSMC’s 32nm process; as originally scheduled this would line up with the launch window AMD wanted, and half-node shrinks are easier for them than trying to do a full-node shrink. Unfortunately the 32nm process quickly became doomed for a number of reasons.

Economically, per-transistor it was going to be more expensive than the 40nm process, which is a big problem when you’re trying to make an economical chip like Barts. Technologically, 32nm was following TSMC’s troubled 40nm process; TSMC’s troubles ended up being AMD’s troubles when they launched the 5800 series last year, as yields were low and wafers were few, right at a time where AMD needed every chip they could get to capitalize on their lead over NVIDIA. 32nm never reached completion so we can’t really talk about yields or such, but it’s sufficient to say that TSMC had their hands full fixing 40nm and bringing up 28nm without also worrying about 32nm.

Ultimately 32nm was canceled around November of last year. But even before that AMD made the hard choice to take a hard turn to the left and move what would become Barts to 40nm. As a result AMD had to make some sacrifices and design choices to make Barts possible on 40nm, and to make it to market in a short period of time.

For these reasons, architecturally Barts is very much a rebalanced Cypress, and with the exception of a few key changes we could talk about Barts in the same way we talked about Juniper (the 5700 series) last year.


Click to enlarge

Barts continues AMD’s DirectX 11 legacy, building upon what they’ve already achieved with Cypress. At the SPU level, like Cypress and every DX10 AMD design before it continues to use AMD’s VLIW5 design. 5 stream processors – the w, x, y, z, and t units – work together with a branch unit and a set of GPRs to process instructions. The 4 simple SPs can work together to process 4 FP32 MADs per clock, while the t unit can either do FP32 math like the other units or handle special functions such as a transcendental. Here is a breakdown of what a single Barts SPU can do in a single clock cycle:

  • 4 32-bit FP MAD per clock
  • 4 24-bit Int MUL or ADD per clock
  • SFU : 1 32-bit FP MAD per clock

Compared to Cypress, you’ll note that FP64 performance is not quoted, and this isn’t a mistake. Barts isn’t meant to be a high-end product (that would be the 6900 series) so FP64 has been shown the door in order to bring the size of the GPU down. AMD is still a very gaming-centric company versus NVIDIA’s philosophy of GPU computing everywhere, so this makes sense for AMD’s position, while NVIDIA’s comparable products still offer FP64 if only for development purposes.

Above the SPs and SPUs, we have the SIMD. This remains unchanged from Cypress, with 80 SPs making up a SIMD. The L1 cache and number of texture units per SIMD remains at 16KB L1 texture, 8KB L1 compute, and 4 texture units per SIMD.

At the macro level AMD maintains the same 32 ROP design (which combined with Barts’ higher clocks, actually gives it an advantage over Cypress). Attached to the ROPs are AMD’s L2 cache and memory controllers; there are 4 128KB blocks of L2 cache (for a total of 512KB L2) and 4 64bit memory controllers that give Barts a 256bit memory bus.

Barts is not just a simple Cypress derivative however. For non-gaming/compute uses, UVD and the display controller have both been overhauled. Meanwhile for gaming Barts did receive one important upgrade: an enhanced tessellation unit. AMD has responded to NVIDIA’s prodding about tessellation at least in part, equipping Barts with a tessellation unit that in the best-case scenario can double their tessellation performance compared to Cypress. AMD has a whole manifesto on tessellation that we’ll get in to, but for now we’ll work with the following chart:

AMD has chosen to focus on tessellation performance at lower tessellation factors, as they believe these are the most important factors for gaming purposes. From their own testing the advantage over Cypress approaches 2x between factors 6 and 10, while being closer to a 1.5x increase before that and after that up to factor 13 or so. At the highest tessellation factors Barts’ tessellation unit falls to performance roughly in line with Cypress’, squeezing out a small advantage due to the 6870’s higher clockspeed. Ultimately this means tessellation performance is improved on AMD products at lower tessellation factors, but AMD’s tessellation performance is still going to more-or-less collapse at high factors when they’re doing an extreme amount of triangle subdivision.

So with all of this said, Barts ends up being 25% smaller than Cypress, but in terms of performance we’ve found it to only be 7% slower when comparing the 6870 to the 5870. How AMD accomplished this is the rebalancing we mentioned earlier.

Based on AMD’s design decisions and our performance data, it would appear that Cypress has more computing/shading power than it necessarily needs. True, Barts is slower, but it’s a bit slower and a lot smaller. AMD’s various compute ratios, such as compute:geometry and compute:rasterization would appear to be less than ideal on Cypress. So Barts changes the ratios.

Compared to Cypress and factoring in 6870/5870 clockspeeds, Barts has about 75% of the compute/shader/texture power of Cypress. However it has more rasterization, tessellation, and ROP power than Cypress; or in other words Barts is less of a compute/shader GPU and a bit more of a traditional rasterizing GPU with a dash of tessellation thrown in. Even in the worst case scenarios from our testing the drop-off at 1920x1200 is only 13% compared to Cypress/5870, so while Cypress had a great deal of compute capabilities, it’s clearly difficult to make extremely effective use of it even on the most shader-heavy games of today.

However it’s worth noting that internally AMD was throwing around 2 designs for Barts: a 16 SIMD (1280 SP) 16 ROP design, and a 14 SIMD (1120 SP) 32 ROP design that they ultimately went with. The 14/32 design was faster, but only by 2%. This along with the ease of porting the design from Cypress made it the right choice for AMD, but it also means that Cypress/Barts is not exclusively bound on the shader/texture side or the ROP/raster side.

Along with selectively reducing functional blocks from Cypress and removing FP64 support, AMD made one other major change to improve efficiency for Barts: they’re using Redwood’s memory controller. In the past we’ve talked about the inherent complexities of driving GDDR5 at high speeds, but until now we’ve never known just how complex it is. It turns out that Cypress’s memory controller is nearly twice as big as Redwood’s! By reducing their desired memory speeds from 4.8GHz to 4.2GHz, AMD was able to reduce the size of their memory controller by nearly 50%. Admittedly we don’t know just how much space this design choice saved AMD, but from our discussions with them it’s clearly significant. And it also perfectly highlights just how hard it is to drive GDDR5 at 5GHz and beyond, and why both AMD and NVIDIA cited their memory controllers as some of their biggest issues when bringing up Cypress and GF100 respectively.

Ultimately all of these efficiency changes are necessary for AMD to continue to compete in the GPU market, particularly in the face of NVIDIA and the GF104 GPU powering the GTX 460. Case in point, in the previous quarter AMD’s graphics division only made $1mil in profit. While Barts was in design years before that quarter, the situation still succinctly showcases why it’s important to target each market segment with an appropriate GPU; harvested GPUs are only a stop-gap solution, in the end purposely crippling good GPUs is a good way to cripple a company’ s gross margin.

Index Seeing the Future: DisplayPort 1.2
Comments Locked

197 Comments

View All Comments

  • Finally - Friday, October 22, 2010 - link

    Did you have a look at the games market lately? Noticed all those shabby console ports? There is no progress because the graphics power of an XBOX or PS3 is exactly the same as it has been when they were introduced.

    Then again, who wants to play dumbed-down console games, made by illiterates for illiterates running on antique hardware which severely limits innovation in the graphics sector?
  • jimhsu - Friday, October 22, 2010 - link

    "I know the 4890 is a pig (loud, noisy, power hungry) compared to the cards here"

    And hence your point. Essentially, major COMPUTER manufacturers (not just video card makers) simply are less concerned about maximum performance anymore -- for 95% of the population, what we have now is "good enough", and for the remaining 5%, getting more of the cheap stuff is also "good enough" (HPC builders, SLI/CrossFire, etc). Instead, people look at things like "is this quiet" (heat production, fans) or "what does this mean for my bottom line" (power consumption, replacability). The age of the monolithic "fast chip" is over.
  • Jamahl - Friday, October 22, 2010 - link

    AMD naming the cards the 6800 series or Anandtech changing their policy of not reviewing overclocked cards.
  • spigzone - Saturday, October 23, 2010 - link

    AMD renaming their cards = more confusing
    Anandtech 'changing' their policy = more inexplicable.
  • softdrinkviking - Friday, October 22, 2010 - link

    i join the throngs of disgruntled consumers that object to the new naming convention of the 6800 series.
    it's silly and stupid, and you should be ashamed of your collective AMD selves.
  • spigzone - Saturday, October 23, 2010 - link

    I didn't like it either ... until I saw the release prices ...

    Then I didn't much care anymore.
  • gorg_graggel - Friday, October 22, 2010 - link

    why the heck didn't they just call them 6850 and 6530? according to the numbers those are the the true internal competitors...
    that would also fit with the premise that a next-gen card with the same naming conventions is at least a bit faster...
    the upcoming 6950 and 6970 cards could accordingly be named 6870 and 6890 respectively...
    and the next 2-chip variant could have the 69xx namespace for itself as it clearly wouldn't be justified to append an x2 to it, due to the same reasons the 5000 dual-chip cards don't do this...
    because of different chips? john doe doesn't know about such distinctions and just cares about performance (compared to older generations) when upgrading.
    he's just confused why the 6870 is slower than a 5870 and the guy who knows more about the tech behind it is pissed, because he has to explain to him why the names are not analogous to performance and why it's not kept consistent at least for a few generations...

    the explanations amd has given about this is not satisfying and gives me the impression that they deliberately want to confuse customers...however i can't think of a logical "why"...
  • jonup - Friday, October 22, 2010 - link

    To answer your question, Because that makes too much sense!
  • Donkey2008 - Friday, October 22, 2010 - link

    I agree 100%. The new naming scheme is misleading and it seems like 6750 and 6770 would have been much more accurate IMO. From AMD releases over the last several years, the performance of nex-gen 2nd tier cards are ~ equal to the previous top tier cards. This is the first time AMD has strayed from their naming scheme in a long time and it has all the makings of a marketing dept telling the engineers what to call their cards.

    Like to pointed out, 95% of consumers (the ones who waddle into Best Buy and tell someone at the Geek Squad counter to "install a gaming card") won't know the difference. Most of these average consumers will believe that a 6870 is a much better card performance-wise then the previous generation 5870, so they will see the price and think it is a steal. AMD is playing the numbers game with uneducated consumers ("higher numbers are better, right?") and it is sort of disappointing IMO. I expect more from them as a psuedo-fanboy (I am a current of owner of a 4850 and (2) 4890)

    I am still anxious to see what the 69xx has to offer, but some of the excitement of the entire 6xxx series launch has faded because of the new naming scheme. I just don't like marketing games and being played. Tech people are not only sharp, but HIGHLY biased and any deviation from outright perfection usually gets punished (i.e. Microsoft Vista, iPhone 4 antenna, Nvidia GT 250, etc etc). AMD should have known better.
  • gorg_graggel - Friday, October 22, 2010 - link

    hmmm well, on second thought it could make more sense in the future as the new scheme reorganized the naming to fit more to the performance categories...
    if they would have been named 6750/6770 their would be riots, because amd dared to raise the prices in the midrange segment, as the author of the article already said i think, which would be even worse...
    in the past amd changed strategies of how big and fast chips are a few times, but the naming didn't...they just didn't have single chips that deserved a name in the x900-range...
    so now that the cayman chip is in the 300w size amd changed its sweet-spot only strategy to a more standard strategy again with low-end, midrange, performance and high-end cards and the new naming does fit perfectly here...at least i have this impression...
    so it maybe confusing now, but depending on how future products turn out it will make more sense again...

Log in

Don't have an account? Sign up now