Stream HPC

NVIDIA’s answer to SandyBridge and Fusion

Intel has Sandy Bridge, AMD has Fusion, now NVIDIA has a combination of CPU and GPU too: Project Denver. The only difference is that it is not X86-based, but an ARM-architecture. And most-probable the most powerful ARM-GPU of 2011.

For years there were ARM-based Systems-on-a-chip: a CPU and a GPU combined (see list below). On the X86-platform the “integrated GPU” was on the motherboard, and since this year now both AMD/ATI and Intel hit this “new market”.The big advantage is that it’s cheaper to produce, is more powerful per Watt (in total) and has good acceleration-potential. NVIDIA does not have X86-chips and would have been the big loser of 2011; they did everything to reinvent themselves: 3D was reintroduced, CUDA was actively developed and pushed (free libraries and tools, university-programs, many books and trainings, Tesla, etc), a mobile Tegra graphics solution [1] (see image at the right),  and all existing products got extra backing from the marketing-department. A great time for researchers who needed to get free products in exchange of naming NVIDIA in their research-reports.

NVIDIA chose for ARM; interesting for who is watching the CUDA-vs-OpenCL battle, since CUDA was for GPUs of NVIDIA on X86 and ARM was solely for OpenCL. Period. In the contrary to their other ARM-based chips, this new chip probably won’t be in smartphones (yet); it targets systems that need more GPU-power like CUDA and games.

In a few days the article about Windows-on-ARM is to be released, which completes this article.

**SoC: System-on-a-chip

A system-on-a-chip has advantages if it comes to transfer-speed: no need for a bus like PCI, just interaction between parts at full processor-speed. The actual problem with more functionality on one chip is the heat and thus the cooling. The reason why the GPU is rather small in the new X86-SoCs is because of that; eventually they will become more powerful. We can also expect to get the more interesting X86-SoCs which are based on less-heat-producing mobile processors; you already see a nice 2011 line-up of mobile processors of both Intel and AMD, where usually the new stuff (like dual cores) gets into desktop-version first.

For the rest it is the same like a normal system; the user only knows because the device uses less power and bus-speeds are higher and the motherboard might get cheaper.

A side-note. Dual cores are a licensable ARM design [2], which is also used by Samsung’s Orion-processors. Even 4-core designs haven been announced. NVIDIA promoted their Tegra-chip with “dual core on mobile is the future”, but know they are not the only one.

ARM licensees

The ARM-architecture is famous for its low power-usage [3]. Furthermore they have open licensing [4], so anybody can buy a license, study the schedules, alter it to their own taste and produce ARM-based chips. Not a surprise almost all smartphones make use of ARM’s technology; actually you can find the processors in any type of device. The actual idea and ARM’s strength is that a SoC is made, not that only the CPU is used. Here is a list of a few licensees:

  • Apple – used in the iPhone4 and iPad
  • Freescale
  • Intel – through its settlement with Digital Equipment Corporation.
  • IBM
  • Infineon Technologies
  • Microsoft
  • NEC
  • Nintendo
  • NXP Semiconductors – daughter of Philips electronics.
  • Qualcomm
  • Sony
  • Samsung – currently a big player and expert for mobile phones.
  • STMicroelectronics
  • Texas Instruments
  • Toshiba
  • VIA

Full list is here.

If you count the items in this reduced list, you see that the list is quite larger than the two for X86 (No, Cyrix/VIA does not make them any more). Understand that all these licensees are the first group to get interested in NVIDIA’s new products. Also notice Intel in the list and AMD’s absence; not that is expected to Intel will make ARM-CPUs soon but you never know.

Project Denver

NVIDIA will produce it second family of ARM-based System-on-a-chip, named “Project Denver”. Denver is a a city in Colorado, USA which started as a Gold-digger’s city. “Denver City was founded in November 1858 as a mining town during the Pikes Peak Gold Rush (…) Denver City was a frontier town, with an economy based on servicing local miners with gambling, saloons, livestock and goods trading” [3]. This sums it up really well: NVIDIA starts in a new, fast-growing market, trying their luck. We’ll hear what the official explanation of the name is. I have deeply respect for NVIDIA being so flexible and daring to take risks.

Project Denver is expected to be a NVIDIA-beast with an adjusted ARM-CPU in a SoC. There is much discussion about how much the ARM-CPU is, but it will be disclosed at NVIDIA’s will. The GPU will for sure be more powerful than their Tegra-chip.

Both ARM and GPUs have been named as solutions for reducing power-consumption. So a full-blown NVIDIA-GTX’s power-consumption can be very low when the extra processing power is not needed; combine that with an ARM-CPU and you have a lower energy-bill. GPUs are very easy to scale up and down, since they have many cores which will not all be used in normal usage. Where on the X86-DoCs there is interest in how to use the embedded GPU for normal usage and to only turn on the “big GPU” when needed, NVIDIA gets it done already.

So NVIDIA is now surrounded by many competitors, who have access to ARM’s Mali-design [6]. For people not familiar with ARM, it might be a field only for the big boys of the PC-hardware-market; ARM is a huge sector. What we can see below (Intel, AMD, NVIDIA, ARM) is that the project is well-rewarded by investors [7]. Here Intel is the loser of both December and CES, while SandyBridge is very promising. AMD is a good second, even with no Fusion-chips on the market. ARM doesn’t seem to make big jumps, but grows steadily.

CUDA and OpenCL

So the battle-field expanded to ARM. But what will NVIDIA do? Will they keep CUDA for themselves, or license their design to other ARM-manufacturers? For StreamHPC this is very important; while OpenCL needs time to mature, CUDA can still grow. Currently we have support for OpenCL[8] on many ARM-devices, but zero OpenCL-SDKs. For more than a year there is OpenCL-support announced, but not much to increase that zero to one:

  • Ziilabs has announced support and a SDK is in the make.
  • Samsung has certified OpenCL-drivers.
  • Apple is probably using OpenCL on their iPhone and iPad, but it’s not official nor in reach for programmers.
  • Imagination Technologies supports OpenCL on their SGX Series 5.

And guess what: NVIDIA has years of experience with CUDA-drivers for their GPUs. And what to think of their SDKs which are already finished? The coming months will be exciting for sure. Come back the end of the week for my article on Windows-on-ARM.

Other stories on Project Denver

Read more about NVIDIA’s entrance in the ARM-world here:

References

[1] NVIDIA Tegra press release
[2] ARM dual core A9
[3] ARM processors
[4] ARM buying guide
[5] Wikipedia – City of Denver, history
[6] ARM Mali GPU design
[7] Google finance: Intel, AMD, NVIDIA, ARM
[8] ARM-blog: why there will be OpenCL on every smartphone in 2014