Recently, one of AMDs Fellows and chief technologists, Chuck Moore sat down to talk about the latest architectures and why they made the choices they did. Here's some higlights from an interesting chat.
On the shared resources element of “Bulldozer,” and the implications:
You can look at two cores next to each other and say surely there are some aspects of those two cores we could share. If I share them, I can save power or space.
Each core in a typical system is somewhat overprovisioned for those workloads that have an extreme amount of computing. By sharing some of the subsystems, what we’re able to do is not overprovision each core, but appropriately provision each core and share some of the subsystems like the floating-point unit. In fact, when either of the CPUs in a shared “Bulldozer” environment need to use the floating point unit, they have more capability than they would have in the past.
Here’s a good analogy; if you want to have a very, very, very fast sports car but you know you’re not going to use it every day but you know you have friends that also would like to have a sports car, perhaps you alternate every other week or every other day. Therefore, each one of you gets to use the fast sports car.
So when you want that high performance, you’ve got it. When you don’t need it, you have your average car, and things go along as normal. So the sharing is a way of reducing area, reducing power, and actually dealing with this overprovisioning problem, which left alone would contribute to higher power consumption.
Check out the rest here.