Improved Turbo

Trinity features a much improved version of AMD's Turbo Core technology compared to Llano. First and foremost, both CPU and GPU turbo are now supported. In Llano only the CPU cores could turbo up if there was additional TDP headroom available, while the GPU cores ran no higher than their max specified frequency. In Trinity, if the CPU cores aren't using all of their allocated TDP but the GPU is under heavy load, it can exceed its typical max frequency to capitalize on the available TDP. The same obviously works in reverse.

Under the hood, the microcontroller that monitors all power consumption within the APU is much more capable. In Llano, the Turbo Core microcontroller looked at activity on the CPU/GPU and performed a static allocation of power based on this data. In Trinity, AMD implemented a physics based thermal calculation model using fast transforms. The model takes power and translates it into a dynamic temperature calculation. Power is still estimated based on workload, which AMD claims has less than a 1% error rate, but the new model gets accurate temperatures from those estimations. The thermal model delivers accuracy at or below 2C, in real time. Having more accurate thermal data allows the turbo microcontroller to respond quicker, which should allow for frequencies to scale up and down more effectively.

At the end of the day this should improve performance, although it's difficult to compare directly to Llano since so much has changed between the two APUs. Just as with Llano, AMD specifies nominal and max turbo frequencies for the Trinity CPU/GPU. 

A Beefy Set of Interconnects

The holy grail for AMD (and Intel for that matter) is a single piece of silicon with CPU and GPU style cores that coexist harmoniously, each doing what they do best. We're not quite there yet, but in pursuit of that goal it's important to have tons of bandwidth available on chip.

Trinity still features two 64-bit DDR3 memory controllers with support for up to DDR3-1866 speeds. The controllers add support for 1.25V memory. Notebook bound Trinities (Socket FS1r2 and Socket FP2) support up to 32GB of memory, while the desktop variants (Socket FM2) can handle up to 64GB.

Hyper Transport is gone as an external interconnect, leaving only PCIe for off-chip IO. The Fusion Control Link is a 128-bit (each direction) interface giving off-chip IO devices access to system memory. Trinity also features a 256-bit (in each direction, per memory channel) Radeon Memory Bus (RMB) direct access to the DRAM controllers. The excessive width of this bus likely implies that it's also used for CPU/GPU communication as well.

IOMMU v2 is also supported by Trinity, giving supported discrete GPUs (e.g. Tahiti) access to the CPU's virtual memory. In Llano, you used to take data from disk, copy it to memory, then copy it from the CPU's address space to pinned memory that's accessible by the GPU, then the GPU gets it and brings it into its frame buffer. By having access to the CPU's virtual address space now the data goes from disk, to memory, then directly to the GPU's memory—you skip that intermediate mem to mem copy. Eventually we'll get to the point where there's truly one unified address space, but steps like these are what will get us there.

The Trinity GPU

Trinity's GPU is probably the most well understood part of the chip, seeing as how its basically a cut down Cayman from AMD's Northern Islands family. The VLIW4 design features 6 SIMD engines, each with 16 VLIW4 arrays, for a total of up to 384 cores. The A10 SKUs get 384 cores while the lower end A8 and A6 parts get 256 and 192, respectively. FP64 is supported but at 1/16 the FP32 rate.

As AMD never released any low-end Northern Islands VLIW4 parts, Trinity's GPU is a bit unique. It technically has fewer cores than Llano's GPU, but as we saw with AMD's transition from VLIW5 to VLIW4, the loss didn't really impact performance but rather drove up efficiency. Remember that most of the time that 5th unit in AMD's VLIW5 architectures went unused.

The design features 24 texture units and 8 ROPs, in line with what you'd expect from what's effectively 1/4 of a Cayman/Radeon HD 6970. Clock speeds are obviously lower than a full blown Cayman, but not by a ton. Trinity's GPU runs at a normal maximum of 497MHz and can turbo up as high as 686MHz.

Trinity includes AMD's HD Media Accelerator, which includes accelerated video decode (UVD3) and encode components (VCE). Trinity borrows Graphics Core Next's Video Codec Engine (VCE) and is actually functional in the hardware/software we have here today. Don't get too excited though; the VCE enabled software we have today won't take advantage of the identical hardware in discrete GCN GPUs. AMD tells us this is purely a matter of having the resources to prioritize Trinity first, and that discrete GPU VCE support is coming.

Introduction and Piledriver Overview Mobile Trinity Lineup
Comments Locked

271 Comments

View All Comments

  • codedivine - Tuesday, May 15, 2012 - link

    Does the GPU support fp64?
  • JarredWalton - Tuesday, May 15, 2012 - link

    I would assume so, though like most consumer GPUs it's going to be 1/16 FP32 performance or something similarly dire. If you have a quick test I could run, I'll be happy to report back.
  • codedivine - Tuesday, May 15, 2012 - link

    Thanks. Can you post the relevant output from "clinfo.exe"? This utility should either be part of new Catalyst releases, or you can alternately install AMD's APP SDK and it is a prebuilt utility. This will list a lot things, including extensions supported in OpenCL. It will show two devices available: one for CPU and one for GPU. If the GPU side lists cl_khr_fp64 (or the less-compliant cl_amd_fp64) then it supports FP64 in OpenCL.

    Not sure about how to test the rate.
  • JarredWalton - Tuesday, May 15, 2012 - link

    Both cl_khr_fp64 and cl_amd_fp64 are listed as supported on both the CPU and GPU. Full CLinfo output is available here:

    http://images.anandtech.com/reviews/mobile/Trinity...
  • codedivine - Tuesday, May 15, 2012 - link

    That is great! Your help is greatly appreciated!
    So I guess I am buying a Trinity then, as it will simplify my OpenCL development workflow.

    Sidenote: I have some OpenCL code under development (as part of my grad research) that might be useful for you for benchmarking purposes for as well. Will get back to you about that in a few weeks.
  • JarredWalton - Tuesday, May 15, 2012 - link

    Cool -- I'd love to see more OpenCL benchmarks, especially if they're actually meaningful to other people!
  • GullLars - Tuesday, May 15, 2012 - link

    This may not be relevant, but i think the next generation APU with GCN graphics architecture is where we will really start to see a benefit of using GPGPU on mainstream integrated GPUs.
    Various GPGPU benchmarks show a signifficant increase going from VLIW4 to GCN.

    I hope to get into openCL, GPGPU and parallel programming too at a later point. Currently i'm styding a BS in Computer Engineering; Embedded Systems. I love it, as it gives insight into both software and hardware at all levles from logic gates to complete systems.
  • Brutalizer - Tuesday, July 10, 2012 - link

    WOW! Does the Trinity only have two cores? That is brutal!

    AMD's version of hyperthreading is a piledriver core: it has duplicated several components which is much better than Intel hyperthreading. So one piledriver core, corresponds to one Intel core with hyper threading.

    So, what Anandtech is actually testing, is four Intel core cpus, vs two AMD core cpus. There is no surprise that four cores beats two cores, but the cool thing is that AMD two cores does very well compared to four Intel cores!

    If I was AMD, I would say that the Trinity only has two cores, and still it gives a four core Intel cpu a match! That is much better marketing than claiming Trinity is four cores (which is not) and get beaten by Intel four core cpus.
  • moozoo - Tuesday, May 15, 2012 - link

    Thanks!
    I too was after the CLInfo for trinity to find out its fp64 support.
  • MySchizoBuddy - Tuesday, May 15, 2012 - link

    so it only supports OpenCL 1.1 not the newer 1.2

Log in

Don't have an account? Sign up now