The Price of Modularity

I ran across an article speculating reasons why integrated graphics in PC CPUs aren’t “fast enough.” “Fast enough” being that even the fastest AMD integrated GPU as of this writing can’t compete with something like a GeForce GTX 1050, a graphics card that is about $110 USD. While it listed good points, towards the end of the article the author seemed to point to cost as the main factor:

Earlier versions of Iris Pro Graphics included up to a 128MB eDRAM cache, and Kaby Lake G included a 4GB HBM2 stack. Both helped alleviate the need for lots of system memory bandwidth, but they of course cost extra. Pairing ‘cheap’ integrated graphics with ‘expensive’ integrated VRAM sort of defeats the purpose.

I’ve also seen suggestions over the years since HBM was introduced to consumers that CPUs should include some with it. This sort of makes sense as with the rise of multi-core processors with more than a dozen cores in a CPU package in the hands of the consumer, you’re going to need a lot of system memory bandwidth to feed the CPU if you plan on putting it to work.

There’s just a small problem to all of this. The PC market wants to remain modular. For the main components like the CPU, system memory, storage, and possibly the GPU, they want these to remain as options to customize whenever they want. For system builders, this allows them to build multiple product lines from a single platform. Other people may also want the option to upgrade or add if possible.

Better integrated graphics and/or CPUs with HBM memory not being considered on a modular platform like the CPU is the price we pay for the modularity most people want from it. There’s already a grumbling dislike for soldered on memory in laptops. Imagine if, to get rid of the RAM slots on motherboards, CPUs are sold with HBM. However, you’re stuck with the amount of memory it comes with. You could say “leave the RAM slots so we can upgrade!” Except it won’t really be an upgrade unless the RAM is as fast as HBM. Otherwise it’ll only act as cache at best, increasing the complexity of the system and giving software developers, at least those who work on heavy-hitting software, a headache of having yet another layer of memory to deal with.

Looking at integrated GPU cores, if we wanted to push core performance, that would require a large amount of space on the package. In Intel’s case, a higher end integrated GPU can take up almost as much space as the CPU cores, if not more, though it depends on the configuration.

Labeled die shot of a 6-core Intel Coffee Lake. Source: WikiChip

ATX motherboard real-estate is a surprisingly precious commodity. Socket TR4 motherboards look awfully cramped. On top of this, that GPU needs really fast memory to operate at its best.

The last point I want to bring up is who is a better integrated graphics even for? Many people don’t use their PCs to run demanding games and amusingly a lot of the top played PC games don’t have high system requirements to run at a frame rate of around 60 FPS. Even if someone who’s on a tight budget is stuck with a potato iGPU, a ~$120 USD graphics card like the GTX 1050 is all they need to get going. It’s like PC gamers demand such a thing as a relatively high performing integrated GPU, but when push comes to shove, very few actually buy it. Though to be fair, processors like Intel’s Kaby Lake G weren’t available in traditional desktop or even laptop machines.

At the end of the day, the price of modularity is that ideas like highly integrated core components seem less feasible. Those who crave modularity want choice, but tightly coupling components will likely reduce that choice or make option of choice worse. In the current playing field of modularity, we have CPU + GPU combinations. To tightly couple them turns the equation into CPU x GPU combinations. Or we could just leave out the poor sap who wanted a specific combination but it won’t be built because “not enough demand”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create your website at WordPress.com
Get started
%d bloggers like this: