Your Job is Harder Than Mine

Next-gen CPU architectures required for truly optimal smartphone design.

popularity

What I do for a living is listen – a lot – and try to make sense of the myriad challenges that I hear about in terms of design and managing power and performance. What you do as an architect, design engineer or verification engineer is live in the trenches with it all, every day. I admire and respect that.

This is especially true as I recently pondered and talked with industry luminaries about what will happen with both software and hardware in advanced CPU architectures.

We know that the software is not keeping up. This is due in part to the very large chunks of processor software that exist in the industry. This is a good thing for the design community so they aren’t reinventing the wheel, but it also means sometimes trying to force fit software that was written with more of a single threaded context associated with it. This means it wasn’t written from the ground up to take one function and try to distribute it across a bunch of processors. According to Mark Throndson at MIPS, some functions are written that way but the majority of software is not. And while that doesn’t mean that you can’t get any benefits from multicore processing, it does mean there are less opportunities to take advantage of it. There are more opportunities that come as a result a task-level parallelization than a specific function or application level parallelization.

Speaking of parallelism, over in the server world – the cloud – this is a place where there are a huge number of things that can be done in parallel. Because they are pretty much independent of one another, they can all be satisfied in parallel, Chris Rowen at Tensilica reminded.

He said highly parallel architectures with thread-level parallelism is in some ways the easiest kind because relatively small processors are replicated as many tens, hundreds, thousands, millions of them as needed. The task for the microprocessor designer isn’t so bad because while there is pressure on power there is still an infinite replicability and some of the standard techniques that have been around for 20 years can be used to ensure good utilization of the processor.

Looking across the spectrum to the smartphone, inside that platform, there are different kinds of processors and they are under different forces, Rowen observed. The main CPU is really increasingly about responsiveness: how quickly the webpage came up or how quickly the game moved to the next scene.

But, he pointed out, the smartphone is to a substantial degree a window on the world: it’s a window on the cloud, and it’s a window into visualization and media applications. To make that window really work the real compute is in both the communications and in the in the multimedia (audio, video, image processing, graphics,) which is not generally what the main CPU is going to do. Those tasks are really going to run on audio DSPs, baseband DSPs, imaging DSPs, GPUs and other kinds of specialized cores whose architectures really reflect this much more data-intensive demand and which are pushing so much data that they are obsessed with power.

Thanks to this obsession with power, Rowen believes most of the interesting architecture work is taking place in those power and energy-intensive devices: the DSPs, the image processors, the GPUs. More on this in the near future.

–Ann Steffora Mutschler