Skip to main content [aditude-amp id="stickyleaderboard" targeting='{"env":"staging","page_type":"article","post_id":1892017,"post_type":"exclusive","post_chan":"none","tags":null,"ai":false,"category":"none","all_categories":"business,dev,games,","session":"C"}']
Exclusive

Otoy breakthrough lets game developers run the best graphics software across platforms

Otoy's OctaneRender, a complex Nvidia CUDA application, automatically runs on an AMD FirePro GPU (W9100) without changing a single line of code:

Image Credit: Otoy

It may be very arcane to most of us, but graphics startup Otoy has come up with a breakthrough that should help game developers create much more beautiful games that can run across different hardware platforms.

Above: Jules Urbach, CEO of Otoy, wearing Osterhaut’s augmented reality glasses.

Image Credit: Dean Takahashi

In a nutshell, Otoy reverse-engineered Nvidia’s general purpose graphics processing unit (GPGPU) software, known as CUDA, to run on non-Nvidia hardware. That means that programs written in the CUDA language are no longer exclusive to Nvidia graphics chips. Now they can run on GPUs from Advanced Micro Devices, ARM, and Intel. That means a CUDA program written for the PC could run on a PlayStation 4 or an Apple iPad.

[aditude-amp id="flyingcarpet" targeting='{"env":"staging","page_type":"article","post_id":1892017,"post_type":"exclusive","post_chan":"none","tags":null,"ai":false,"category":"none","all_categories":"business,dev,games,","session":"C"}']

Otoy has ported the CUDA language to run on AMD, Intel, and ARM GPUs for the first time ever. That means any application written in CUDA can run, without modification, on all major chipsets and platforms. While there is an independent GPGPU standard dubbed OpenCL, it isn’t necessarily as good as CUDA, Otoy believes.

Jules Urbach, chief executive of Los Angeles-based Otoy, said in an exclusive interview with GamesBeat that Nvidia’s CUDA language is superior and enables much richer graphics software. Hence, OpenCL hasn’t provided a true market alternative to CUDA. That’s why building the CUDA “cross compiler” was an important task. And Urbach said the Otoy research and development team was able to do it in 9 weeks.

AI Weekly

The must-read newsletter for AI and Big Data industry written by Khari Johnson, Kyle Wiggers, and Seth Colaner.

Included with VentureBeat Insider and VentureBeat VIP memberships.

“This is a big breakthrough from our point of view,” Urbach said.

Urbach said the move will save a huge amount of time for game and app developers, since they can now create a single CUDA code base that can run across a wide variety of PCs, Macs, iOS devices, Android, and other hardware platforms. For each team, that means saving months of engineering time, Urbach said. As an example, CUDA has something called “compute shaders” that allow for much more advanced graphics effects, Urbach said.

Above: Otoy’s OctaneRender app can run CUDA apps on other platforms.

Image Credit: Otoy

“We have been able to do this without changing a line of CUDA code, and it runs on AMD chips,” Urbach said. “You can now program once and take CUDA everywhere. AMD has never really been able to provide an alternative.”

Otoy will make the tool available within the 3.1 release of its Octane rendering engine, which can be used to build some awesome 3D graphics for games and animations. Urbach expects the work will be done and available by this summer. Otoy sells tools such as Octane and Brigade for game development, animation, and virtual reality app creation.

“It’s pretty ready, and it answers questions about whether this could be done,” Urbach said. “It runs on the other cards at the same speed as it runs on Nvidia cards.”

Otoy will be building new backends to this framework to allow CUDA to target alternative applications programming interfaces (APIs) such as Vulkan, DirectX, and OpenGL – across Android, Playstation 4 and WebGL 3 (the latter with the help of JavaScript creator Brendan Eich).

[aditude-amp id="medium1" targeting='{"env":"staging","page_type":"article","post_id":1892017,"post_type":"exclusive","post_chan":"none","tags":null,"ai":false,"category":"none","all_categories":"business,dev,games,","session":"C"}']

A primary goal for creating this technology is to bring CUDA applications such as Octane to Apple’s Metal GPGPU API on OSX and iOS, where support for OpenCL 2.1, Vulkan, and OpenGL ES compute is noticeably absent, Urbach said.

Urbach said that Otoy undertook the translation task because it wanted to make the beautiful CUDA-based Nvidia programs run on technology commonly by game developers, such as Mac computers and iOS devices. Otoy is adapting Octane to work as a plug-in for game engine’s such as Epic’s Unreal game engine.

“You can now take the best and highest GPU language and run it on other devices,” Urbach said. “OpenCL has been hit or miss. Now you can skip that.”

Above: Otoy’s OctaneRender uses ray-traced graphics for nearly unlimited details and lighting effects.

Image Credit: Otoy

VentureBeat's mission is to be a digital town square for technical decision-makers to gain knowledge about transformative enterprise technology and transact. Learn More