Why OpenGL for Sins is the future-If we fight for it

http://blogs.nvidia.com/blog/2014/03/20/opengl-gdc2014/

 

NVIDIA, AMD, Intel Explain How OpenGL Can Unlock 15x Performance Gains - See more at:

http://blogs.nvidia.com/blog/2014/03/20/opengl-gdc2014/#sthash.jfX2t56M.dpuf


Quote:

With OpenGL, an open, vendor-neutral standard, developers can get significantly better performance – up to 1.3 times. But with a little tuning, they can get 7 to 15 times more performance.

That’s a figure that will make any developer sit up and listen.

Better still: the techniques presented apply to all major vendors and are suitable for use across multiple platforms. And they brought demos, showing what these improvements mean on real world systems.

That’s because OpenGL can cut through the driver overhead that has been a frustrating reality for game developers since the beginning of the PC game industry.

On desktop systems, driver overhead can decrease frame rate. On mobile devices, however, driver overhead is even more insidious, robbing both battery life and frame rate.

- See more at: http://blogs.nvidia.com/blog/2014/03/20/opengl-gdc2014/#sthash.jfX2t56M.dpuf



Further more the same old song goes like this: "OpenGL would not single out windows xp users unlikes microsofts dx10/dx11 with every alteration of AMD or Nvidia hardware.

9,866 views 5 replies
Reply #1 Top

If/when OpenGL actually can get to DirectX 11 quality graphics with the performance, that will be interesting. So far, we've not seen it.

Reply #2 Top

Quote: http://www.extremetech.com/gaming/133824-valve-opengl-is-faster-than-directx-even-on-windows

In a scary twist that reinforces Valve’s distaste for Windows 8, it turns out that the Source engine — the 3D engine that powers Half Life 2, Left 4 Dead, and Dota 2 — runs faster on Ubuntu 12.04 and OpenGL than Windows 7 and DirectX/Direct3D.

The Valve Linux Team breaks it down on their shiny new blog: With an Nvidia GTX 680, Intel i7-3930k, and 32GB of RAM, Windows 7 and DirectX, Left 4 Dead 2 maxes out at 270.6 fps. With the same hardware, but different software — Ubuntu 12.04 and OpenGL — L4D2 scores 315 fps, almost 20% faster than Windows.

These figures are remarkable, considering Valve has been refining the Source engine’s performance under Windows for almost 10 years, while the Valve Linux team has only been working on the Linux port of Source for a few months. Valve attributes the speed-up to the “underlying efficiency of the [Linux] kernel and OpenGL.”

The Linux port of L4D2 didn’t start off at 315 fps, of course — the initial version actually maxed out at just 6 fps. To realize such a huge performance gain, a three-pronged approach is taken: The game is tweaked to play nicely with the Linux kernel, the game is optimized to work with OpenGL (rather than DirectX), and bugs in the Linux graphics drivers are addressed.

This last point is interesting: Valve has long-standing relationships with AMD, Nvidia, and Intel, where Valve reports driver bugs and the GPU maker fixes them in a timely fashion. Valve is carrying this relationship over to Linux, which is very important for the continued growth of Linux as a gaming platform. In this case, Valve says that the Nvidia Linux driver lacked multithreading support — and once they added it to a later version of the driver, performance increased.

But here’s the best bit: Using these new OpenGL optimizations, the OpenGL version of L4D2 on Windows is now faster than the DirectX version. With the same hardware, Windows 7/OpenGL/L4D2 clocks in at 303.4 fps — compared to Windows 7/DirectX/L4D2 at 270.6 fps. In short: OpenGL is faster than DirectX.

DirectX logoAs for why OpenGL is faster than DirectX/Direct3D, the simple answer is that OpenGL seems to have a smoother, more efficient pipeline. At 303.4 fps, OpenGL is rendering a frame every 3.29 milliseconds; at 270.6 fps, DirectX is rendering a frame in 3.69 milliseconds. That 0.4 millisecond difference is down to how fast the DirectX pipeline can process and draw 3D data.

Why do we still use Direct3D?

If OpenGL is faster, why is DirectX still the predominant API? It isn’t because of image quality or features: OpenGL 4.0 has all of shaders and tessellators and widgets that DX has. It isn’t because of hardware support: All Nvidia and AMD graphics cards support the latest version of OpenGL along with DirectX.

Really, it all comes down to that crummy old thing we call the network effect — and, of course, monopolistic heft and marketing dollars. DirectX, because it has a cleaner API and better documentation, is easier to learn. More developers using DirectX = more DirectX games = better driver support. This is a vicious loop that again leads to more DX devs, more DX games, and better DX drivers/tools/documentation. Microsoft has relentlessly marketed DirectX, too — and who can forget the release of Windows Vista and Microsoft’s OpenGL smear campaign? Vista’s bundled version of OpenGL was completely crippled, forcing many devs to switch to DirectX.

Steam LinuxMicrosoft has good reason to hamper the progress of OpenGL, of course: While DirectX is proprietary and only runs on Windows, Xbox and Windows Phone, OpenGL is completely cross-platform. There are solid OpenGL implementations for Mac, Linux, PlayStation 3, Nintendo Wii, and just about every modern smartphone (OpenGL ES). It obviously in Microsoft’s best interests to ensure that the best gaming experiences are exclusive to its platforms.

With Gabe Newell’s distaste for Windows 8 (and Blizzard echoing his sentiments), the imminent release of Steam on Linux, and the continued growth of smartphone games, we could be on the cusp of an OpenGL revolution. If the Windows gaming crown continues to slip, OpenGL might soon become the default API, rather than an afterthought. Very soon, it might be standard to develop a game that works well across every platform — rather than focusing on Direct3D and leaving Linux and OS X out in the cold.

Valve will be speaking about its Linux/OpenGL advancements at SIGGRAPH 2012 next week. SIGGRAPH is where we usually hear about the latest OpenGL and DirectX news, too — so stay tuned!

Updated @ 2:40: The story originally stated that the OpenGL spec is usually ahead of DirectX — but that hasn’t been true for a few years now.

 

 

Quote: http://www.electronista.com/articles/10/07/26/opengl.41.adds.hooks.for.opencl.and.opengl.es/

OpenGL 4.1 adds hooks for OpenCL and OpenGL ES

The Khronos Group today published the first specification for OpenGL4.1 in what's considered a coup for desktop graphics. The standard catches up to DirectX 11 in visual features and overtakes it in integration with other standards: it can now sync graphics with OpenCL to take advantage of video hardware's general-purpose math features. Mobile app developers also now have full compatibility with OpenGL ES 2.0, theoretically letting a developer write an app for the iPhone or Android without having to change the visual effects when porting to a computer.

Software writers also get the option of loading a program in to process shader objects sooner, binding programs to specific stages, 64-bit component vertex shaders, and multiple viewports for rendering to a single surface, such as a polygon. Fragment shaders support stencil values, and WebGL acceleration should work more effectively.

Developers should have access to both the OpenGL 4.1 spec and test NVIDIA drivers this week, but finished drivers for end users will come later. Support should eventually reach multiple platforms, though updates on the Mac will depend on Apple cooperating with graphics chipset designers.



Read more: http://www.electronista.com/articles/10/07/26/opengl.41.adds.hooks.for.opencl.and.opengl.es/#ixzz2xJGAZHqP

Reply #3 Top

Quoting Yarlen, reply 1
If/when OpenGL actually can get to DirectX 11 quality graphics with the performance, that will be interesting. So far, we've not seen it.

Since I'm a end user, what was it like using OpenGL vs. DirectX in terms of making a game as far as graphics better...?

Reply #4 Top

I'm not the person to ask; from what my graphics programmer friends have told me, OpenGL is missing a lot of features.

Reply #5 Top

Quote; http://www.theinquirer.net/inquirer/news/2335867/amd-intel-and-nvidia-join-forces-to-push-opengl-for-games-developers

AMD, Intel and Nvidia join forces to push OpenGL for games developers

CHIP DESIGNERS AMD, Intel and Nvidia teamed up to tout the advantages of the OpenGL multi-platform application programming interface (API) at this year's Game Developers Conference (GDC).

Sharing a stage at the event in San Francisco, the three major chip designers explained how, with a little tuning, OpenGL can offer developers between seven and 15 times better performance as opposed to the more widely recognised increases of 1.3 times.

AMD manager of software development Graham Sellers, Intel graphics software engineer Tim Foley and Nvidia OpenGL engineer Cass Everitt and senior software engineer John McDonald presented their OpenGL techniques on real-world devices to demonstrate how these techniques are suitable for use across multiple platforms.

During the presentation, Intel's Foley talked up three techniques that can help OpenGL increase performance and reduce driver overhead: persistent-mapped buffers for faster streaming of dynamic geometry, integrating Multidrawindirect (MDI) for faster submission of many draw calls, and packing 2D textures into arrays, so texture changes no longer break batches.

They also mentioned during their presentation that with proper implementations of these high-level OpenGL techniques, driver overhead could be reduced to almost zero. This is something that Nvidia's software engineers have already claimed is impossible with Direct3D and only possible with OpenGL (see video below).

Nvidia's VP of game content and technology, Ashu Rege, blogged his account of the GDC joint session on the Nvidia blog.

"The techniques presented apply to all major vendors and are suitable for use across multiple platforms," Rege wrote. 

"OpenGL can cut through the driver overhead that has been a frustrating reality for game developers since the beginning of the PC game industry. On desktop systems, driver overhead can decrease frame rate. On mobile devices, however, driver overhead is even more insidious, robbing both battery life and frame rate."

The slides from the talk, entitled Approaching Zero Driver Overhead, are embedded below.

At the Game Developers Conference (GDC), Microsoft also unveiled the latest version of its graphics API, Directx 12, with Direct3D 12 for more efficient gaming.

Showing off the new Directx 12 API during a demo of Xbox One racing game Forza 5 running on a PC with an Nvidia Geforce Titan Black graphics card, Microsoft said Directx 12 gives applications the ability to directly manage resources to perform synchronisation. As a result, developers of advanced applications can control the GPU to develop games that run more efficiently. µ