If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.
![]() |
|
|
#1 |
|
Member
Join Date: Jan 2009
Posts: 229
|
OpenGL 4.3 specifications are now up on the registry:
http://www.opengl.org/registry/ New addition: Compute Shaders! Wha? |
|
|
|
|
|
#2 |
|
Member
Join Date: Jul 2004
Location: England
Posts: 452
|
|
|
|
|
|
|
#3 |
|
Junior Member
Join Date: Mar 2010
Posts: 73
|
There are some pretty specific scenarios Khronos is targeting with OpenGL compute shaders, not to mention a desire to make OpenGL more approachable to DirectX developers.
http://www.anandtech.com/show/6134/k...pression-clu/3 |
|
|
|
|
|
#4 |
|
Heteroscedasticitate
Join Date: Mar 2005
Posts: 2,362
|
CL-GL interop is not exactly a substitute for something that exposes similar functionality yet lives in the same API and employs the same scheduling mechanism. This was a reasonably big advantage for DX CS, IMHO.
__________________
Donald Knuth: Science is what we understand well enough to explain to a computer. Art is everything else we do. |
|
|
|
|
|
#5 | |
|
Senior Member
|
Quote:
WRT CL, what the bloody hell? 6 years after G80 and all they can offer is G80+CLU. The hw is miles ahead of what CL is offering. Pathetic. |
|
|
|
|
|
|
#6 | |
|
super willyjuice
Join Date: May 2005
Location: Astoria, NY
Posts: 998
|
Quote:
|
|
|
|
|
|
|
#7 | |
|
Member
Join Date: Mar 2012
Location: Switzerland
Posts: 692
|
Quote:
|
|
|
|
|
|
|
#8 |
|
Senior Member
|
Where are the extensions for recursion, function pointers, dynamic dispatch, unified memory space....
|
|
|
|
|
|
#9 | |
|
Senior Member
|
Quote:
|
|
|
|
|
|
|
#10 |
|
Heteroscedasticitate
Join Date: Mar 2005
Posts: 2,362
|
Part of OCL's problem is that it doesn't concern anything directly, it's more like a hodge-podge of who pulled in which direction when. Another big part is that it doesn't have a proper arbiter to rap people over the knuckles and actually give it some direction.
__________________
Donald Knuth: Science is what we understand well enough to explain to a computer. Art is everything else we do. |
|
|
|
|
|
#11 |
|
Senior Member
Join Date: Feb 2004
Posts: 2,482
|
Hasn't that been a big problem for OGL as a whole for years now?
|
|
|
|
|
|
#12 |
|
Senior Member
|
Yes.
|
|
|
|
|
|
#13 |
|
Member
Join Date: Feb 2007
Location: Irvine, CA
Posts: 432
|
Obviously GPU compute is useful for a lot of things outside of graphics, but it's also important to note that they're also really good for graphics! In that regard compute shaders have been a major advantage (IMO) for D3D compared to OpenGL. In D3D if I wanted to render to a texture and then use a compute shader to do some fancy maths on it with a compute shader, it was easy since compute shaders are a first-class citizen and no interop is required. Or if I wanted to to have a whole slew of shader code shared between a compute shader used for deferred rendering and a more standard forward rendering pixel shader, it was also easy since both shaders use the same language, compiler, and API.
|
|
|
|
|
|
#14 |
|
a.k.a. Ingenu
Join Date: Feb 2002
Location: Apsley, U.K.
Posts: 2,752
|
Where's my OpenGL 2 Lean & Mean ?
Where's my OpenGL Long Peaks ? Always promesses, never delivering...
__________________
So many things to do, and yet so little time to spend... |
|
|
|
|
|
#15 |
|
Senior Member
|
__________________
Apple: China -- Brutal leadership done right.
Google: United States -- Somewhat democratic. Microsoft: Russia -- Big and bloated. Linux: EU -- Diverse and broke. |
|
|
|
|
|
#16 |
|
a.k.a. Ingenu
Join Date: Feb 2002
Location: Apsley, U.K.
Posts: 2,752
|
It's way too little and it's too late.
What we need/want is a minimal standard command buffer API, standard texture layouts in memory, and good memory control too, gimme an ISA and it will be even better. (Not required for now, a GPU specific compiler is ok) Alternatively, go higher level and make Chapel (http://chapel.cray.com/) work well with GPU/heterogenous compute.
__________________
So many things to do, and yet so little time to spend... |
|
|
|
|
|
#17 | |
|
super willyjuice
Join Date: May 2005
Location: Astoria, NY
Posts: 998
|
Quote:
|
|
|
|
|
|
|
#18 | |
|
Senior Member
|
Quote:
Cool. So can we please have all the CL functionality baked into GL compute shaders, pretty please? |
|
|
|
|
|
|
#19 |
|
Senior Member
Join Date: Feb 2002
Posts: 2,038
|
|
|
|
|
|
|
#20 | |
|
super willyjuice
Join Date: May 2005
Location: Astoria, NY
Posts: 998
|
Quote:
But in reality, they just end up making a mess. Developers have to maintain a more complex code base (what if ihv x and y support extension w but ihv z doesn't? or what if ihv x, y, and z all implement extension w differently? what if it's changed again when it's officially added to the API?) for usually minor gains. Things are even worse in the embedded market. Extensions could work if somehow we could force all the relevant ihv's to agree on implementing the same feature in same manner in the same timeframe. I'd much prefer D3D10+'s all or nothing approach. I can perform essentially one check and immediately know what the card is or is not capable of. I realize this is more of a personal preference thing (and my initial post was probably a bit too strong), but never will extensions (in their current form) make sense to me. |
|
|
|
|
|
|
#21 |
|
Senior Member
Join Date: Feb 2002
Posts: 2,038
|
An API that's stagnant requires developers to use extensions and have a messy code base, but if an extension is truly useful it should show up in competing hardware about two years later. Since game development times are so long this means most games won't ship until a lot of hardware supports the feature. The problem comes when the API isn't updated frequently enough to pickup useful features.
It's hard to force IHVs to implement features in the same time frame and this removes a benefit of innovation by being first. It takes a gorilla like Microsoft to drag companies in a direction they wouldn't otherwise go. |
|
|
|
|
|
#22 |
|
Member
Join Date: Jan 2010
Posts: 378
|
Extension-capability also gives a HV to express a different opinion than either the standard-body or a API-owner, and that is a good thing. Besides supporting true evolution (instead of planning) it allows a HV to play it's strengths in a context of it's choosing. I don't know if it exists, but nVidia could for example provide OGL-CUDA interfaces via extensions, formally and well defined. As much as I respect the work of ATI in hacking up the DX9-API ("extending" it), it shouldn't be necessary to do it that way. Extendability is better.
|
|
|
|
|
|
#23 | |
|
Member
Join Date: Feb 2007
Location: Irvine, CA
Posts: 432
|
Quote:
I really feel that the feature levels system is one of the best things that ever happened to D3D, since they let you easily partition your target hardware into large groups with a corresponding set of functionality. I'm actually pretty upset that they added some new caps for D3D11.1. |
|
|
|
|
|
|
#24 | ||
|
hardly a Senior Member
Join Date: Jul 2008
Location: still camping with a mauler
Posts: 3,677
|
Quote:
__________________
Quote:
|
||
|
|
|
|
|
#25 |
|
Member
Join Date: Jan 2010
Posts: 378
|
Once your in control of the target-hardware it is practical. Once the target hardware doesn't change for a while it is even a necessity to take advantage of all the unique capability.
I'm not arguing against willardjuice, I just remind you of the chance which is in extensions, and honestly as a developer I never bothered to have choice and exotic stuff if I wanted to, and I haven't been forced to support them all at point blank yet. I think it's a constructed argument which has no bearing in reality. Code is an organic thing, it changes all the time, and API-changes are really very minor. Is deferred-shading now bad-bad-bad because I have to rewrite the whole core? Damn, they shouldn't have invented it. The principle that extensibility is good per-se isn't invalidated by that a developer thinks a specific extension is a waste of time (of IHV resources). Wasting time on lamenting it, is the developer's problem. |
|
|
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|