Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Valve Sponsors Work To Greatly Speed-Up Linux OpenGL Game Load Times

timothy posted about 5 months ago | from the small-steps-add-up dept.

Graphics 202

An anonymous reader writes "Valve Software has sponsored some interesting improvements developed by LunarG for the Mesa OpenGL library on Linux for deferred and threaded GLSL shader compilation. What these changes mean for users of the open-source Linux graphics drivers when running their favorite games is that OpenGL games now load a lot faster. As an example, the time from starting Dota 2 until the time actually being within the game is reduced by about 20 seconds on an Intel system. While Direct3D has offered similar functionality for a while, OpenGL has not, which has given it a bad reputation with regard to game load times until all shaders are compiled and cached — fortunately it's now addressed for OpenGL if using the Mesa Linux graphics drivers on a supported game."

cancel ×

202 comments

Sorry! There are no comments related to the filter you selected.

And still linux sucks (-1)

Anonymous Coward | about 5 months ago | (#46917389)

When people ask me why I think linux sucks, this is one of the articles I will show them, it's 2014 and they just implemented this now...

Re:And still linux sucks (0)

Anonymous Coward | about 5 months ago | (#46917395)

Up until Steam, what linux games were there? Oh, that's right. Just the iD games.

Re:And still linux sucks (4, Insightful)

dingen (958134) | about 5 months ago | (#46917555)

So Linux sucks because anyone can improve it in the areas where they feel it is needed? Yeah, that does suck. Booo, Linux.

Re:And still linux sucks (3, Informative)

91degrees (207121) | about 5 months ago | (#46917573)

I think the argument is that nobody does so for several years.

Re:And still linux sucks (4, Insightful)

dingen (958134) | about 5 months ago | (#46917585)

If nobody is willing to develop a certain feature, then maybe there isn't a real demand for it.

Re:And still linux sucks (1, Insightful)

91degrees (207121) | about 5 months ago | (#46917623)

Well, there's no demand for this because there's a relatively convenient alternative. In this case, the alternative is Windows and DirectX. It doesn't really say a lot for Linux if this is what people are doing.

Re:And still linux sucks (5, Insightful)

dingen (958134) | about 5 months ago | (#46917649)

I doubt people are using Windows because of the deferred and threaded GLSL shader compilation. I think it has more to do with the fact games are barely available for Linux at all. And that also has little do with how shaders are precompiled I think.

This feature just shaves off a few seconds during load time. That's great of course, but by no means a killer feature that previously has been a real problem for anyone. That's why the feature is late to the party and it is a gaming company who comes up with the patch, as they want their games to load faster. Makes sense, right? In no way I see how this makes Linux look bad.

Re:And still linux sucks (2)

91degrees (207121) | about 5 months ago | (#46917669)

Lack of games is a factor, but the other factor is games just aren't as good. Load times is a factor in this. And while it may not seem important, 20 seconds is a lot! On consoles, load times are a reason to fail compliance testing.

Re:And still linux sucks (4, Insightful)

dingen (958134) | about 5 months ago | (#46917679)

So hurray to Valve for fixing this and hurray to Linux for letting them, right?

Re:And still linux sucks (2)

SuricouRaven (1897204) | about 5 months ago | (#46917675)

For games devs, the choice of API to use really depends on platform targetted.

The Direct3D API isn't *quite* the same as the one used on the XBox consoles, but it's very close. That makes porting a much easier, cheaper prospect. I don't know what API Playstation games require.

Re:And still linux sucks (5, Insightful)

mrchaotica (681592) | about 5 months ago | (#46917903)

I don't know what API Playstation games require.

OpenGL. Just like WiiU, Android, iOS, and every other platform that isn't Microsoft.

Re:And still linux sucks (1)

SuricouRaven (1897204) | about 5 months ago | (#46917933)

But is is 'pure' openGL, or something with lots of propritary extensions?

Re:And still linux sucks (1, Informative)

91degrees (207121) | about 5 months ago | (#46917967)

Uhm.. no. It's fairly similar to OpenGL and is based on the same principles, but certainly not the same. You don't really want the same. You have no need for the level of abstraction OpenGL provides.

The smartphones use OpenGL ES which is actually a different API from OpenGL although it is a variant used fro embedded systems.

Re:And still linux sucks (4, Informative)

jones_supa (887896) | about 5 months ago | (#46917681)

And that also has little do with how shaders are precompiled I think.

As far as I know, you cannot precompile shaders anyway because the compiled code is hardware-dependent. The shader processors are different among architectures and manufacturers, and do not have a common baseline like "x86-64" to target, like we have on the CPU side.

Re:And still linux sucks (2)

dingen (958134) | about 5 months ago | (#46917689)

I meant precompiling in the sense of compiling them during loading, so they can be used during gameplay.

Re:And still linux sucks (2)

mwvdlee (775178) | about 5 months ago | (#46917789)

As I understand it, compiled shaders aren't very big, so precompiling for a few dozen chipsets isn't much of an issue storage-wise.
How many different chipsets are there to support?

Re:And still linux sucks (4, Insightful)

geekmux (1040042) | about 5 months ago | (#46917691)

Well, there's no demand for this because there's a relatively convenient alternative. In this case, the alternative is Windows and DirectX. It doesn't really say a lot for Linux if this is what people are doing.

Yes, exactly right. 3D gaming isn't some half-dead community with no revenue stream on other platforms. Hell, other platforms were created for gaming due to demand (From Atari to PS4), which has been going on for decades.

In the meantime, the Linux community sat on the sidelines and assumed what everyone really wanted in any new distro...a new version of GNOME or KDE to keep other more "important" debates alive.

While I can understand an efficiency within demand, it's rather odd that Linux still looks at 3D gaming like it's a 20-megapixel camera in a cell phone, when we in fact have 20-megapixel cameras in cell phones these days...

Re:And still linux sucks (1)

king neckbeard (1801738) | about 5 months ago | (#46918389)

Yes, Linux has not been the go-to platform for desktop gaming. MS has had quite a bit of control over that area for a good long while, and has been in a pretty good position to protect that spot (and other practices regarding their OS have assisted with this as well). The impetus for the change here is that MS is shifted towards a walled garden approach now, which has Valve concerned.

Re:And still linux sucks (3, Informative)

slack_justyb (862874) | about 5 months ago | (#46918771)

You are smoking crack. The reason is because non-open drivers have had this implemented since word "go". That's what people wanted to use. Hence, the whole supply/demand thing kicking in. That someone is doing it in the open-source drivers means that they aren't getting the love they expected from the third party, and suddenly there is a business interest in having better support in the open driver.

To draw a parallel, would you use the default drivers that come "out of box" on a fresh install on Microsoft Windows whatever, or would you actually go to the vendor's website and download their specific drivers? I think we're done here.

Re:And still linux sucks (4, Insightful)

Wootery (1087023) | about 5 months ago | (#46917715)

Kinda, yeah. What we're seeing now is the breaking of the chicken-and-egg problem of gaming on Linux. Up until very recently, virtually no developers bothered developing games for Linux, because no-one does gaming in Linux. No-one ran Linux for gaming, because there were very few games for Linux (and the drivers were a pain).

Up until recently, Linux had merely taken over the world when it came to servers and mobile (Android). Now it's being given a real shot at gaming.

Re:And still linux sucks (0)

Anonymous Coward | about 5 months ago | (#46918079)

If nobody is willing to develop a certain feature, then maybe there isn't a real demand for it.

In the same way there was no demand for Interstate roads or the Internet.

Re:And still linux sucks (1)

dingen (958134) | about 5 months ago | (#46918159)

Yet we have interstate roads and the internet, just like we have threaded shader compilation on Linux now.

If someone wants to create a feature for Linux, one can. That is the freedom Linux provides. If nobody is willing to take on something, then apparently it isn't such an issue.

I really don't get why people are giving Linux so much hate for empowering it's user base in this way. If you have a complaint about Windows or Mac OS X, Microsoft and Apple tell you to go fuck yourself. But if you want Linux to have something it doesn't have already, you can just go ahead and build it.

I think that's cool.

Re:And still linux sucks (1)

master_kaos (1027308) | about 5 months ago | (#46918671)

You are an idiot. You are saying "one can" like it is as easy as baking a cake. I would love to replace windows with ubuntu or mint or something for all my gaming needs, but I wouldn't have the slightest idea on how to even start coding a feature for linux. This is some pretty specialized stuff. Sure you position it one way "Linux is empowering it's user base", where someone else sees it as "Linux doesn't give a fuck about anything.
Screw users. if they want something they can do it themselves.

Also, it isn't like windows is a walled garden like IOS, you can develop drivers, software, etc for it as well. Sure maybe you can't modify the kernel (easily), but at least Microsoft provides tons of tools to change windows behaviour.

Re:And still linux sucks (2)

crossmr (957846) | about 5 months ago | (#46917609)

except that no one does.

"anyone" sounds like a lot of people, but Linux isn't just for coder enthusiasts with the know-how to fix their own problems. If linux is going to really take off on the desktop those things simply need to be already taken care of. With microsoft floundering around with windows 8 and tablets taking off, if someone wanted to really get market share away from microsoft dumping money into Linux like valve is doing here is a good start. Especially if it can be done in such a way that major game studios can easily make their games multiplatform. Games are what keep a lot of dedicated enthusiasts of all ages away from Linux. So are things like photoshop or microsoft office, or etc. A lot of the core products that people need just don't work well or at all. You can carry on about alternatives, but people don't want alternatives for those kinds of things. The OS, which is mostly background to a lot of people is easy to persuade them on, you can make it look and feel like windows. but gimp will never feel and look like photoshop.

Re:And still linux sucks (4, Insightful)

dingen (958134) | about 5 months ago | (#46917651)

How is it Linux fault that Microsoft doesn't provide Office or Adobe doesn't provide Photoshop for it?

Re:And still linux sucks (-1, Flamebait)

jones_supa (887896) | about 5 months ago | (#46917709)

Maybe those companies think that Linux is somehow a bad platform to develop to. In that case it would be Linux's fault.

Re:And still linux sucks (1)

dingen (958134) | about 5 months ago | (#46917731)

I think the lack of these applications on Linux has a lot more to do with politics and business strategy than Linux being a bad platform somehow for developing applications like Excel or Photoshop for.

It's not that these applications have some intrinsic connection with Windows either, as both of these products are available for Mac OS X.

Re:And still linux sucks (1)

udippel (562132) | about 5 months ago | (#46917861)

Your argument is immaterial, because a lot of BOFH-s and ThePointyHaired-s use Mac. Plus, they are in average willing to spend serious money for licenses.

Re:And still linux sucks (3, Insightful)

crossmr (957846) | about 5 months ago | (#46917899)

Because linux isn't a cohesive platform. That's the problem. As I was googling around one of the staff at adobe mentioned last year that Linux lacked standardized APIs on a forum thread regarding photoshop on Linux.

There is a perception that Linux is a bit like the wild west and in this day and age when you have stable mature platforms like Mac and Windows available, that's risky for developers. Even for big companies.

The intrinsic connection they have is market share and having already been the platform for this programs for a long time. Linux needs to really step up and say "Hey we're ready look at us" but they haven't had that moment yet.

Ubuntu is a step in the right direction. If a company with real money can get behind it and drive it to some kind of consumer ready level like Windows or Mac is, enthusiasts can still sit there and fork and tweak and do as they like, but getting a real ready version there that gets people's attention and wants to make people use it and develop for it is what will drive Linux's success.

It might not be directly Linux's fault that Microsoft doesn't make office for Linux, but they just got office for IOS not that long ago. Who knows what kind of wrangling that took. But if I was someone like Canonical I'd see just how much money it would take to convince Microsoft to make it for linux and make that happen. I'd do the same with programs like Photoshop, and other major programs that have major user bases that are seen as core apps. Valve already seems like they're moving in the direction of taking care of games so I'd make sure I was meeting with them and getting everyone on the same page. They don't have to arrange all the programs. If they do a few core programs that reach a large percentage of the user base, the other programs will start to get ported to linux as user base picks up. For example if they paid to get photoshop and office ported and linux went from the low single digits its sitting around now on the desktop up to 20% or a little higher I think you'd see companies start to take notice and start to focus a little more on it.

Re:And still linux sucks (2)

dingen (958134) | about 5 months ago | (#46918119)

Because linux isn't a cohesive platform. That's the problem. As I was googling around one of the staff at adobe mentioned last year that Linux lacked standardized APIs on a forum thread regarding photoshop on Linux.

So how come Autodesk is able to ship Maya for Linux? Or MathWorks has no trouble releasing Matlab for Linux?

You're talking like it's impossible to create software for Linux. Clearly this is not the case, as there are numerous applications available for Linux and have been for years, in all sorts of forms and business models.

The lack of Photoshop and MS Office is not really because of any technical reason. The reality is that Adobe and Microsoft don't want their products available on Linux.

Re:And still linux sucks (1)

gonnagetya (3580051) | about 5 months ago | (#46918163)

Because there's demand for it from paying customers (although I wouldn't be surprised if the vast, vast majority of MATLAB users for example were Windows users, but I digress).

Adobe has presumably made some calculations, used various source of information, and made a determination that porting Photoshop and the rest of their core applications to Linux will not be profitable. FFS they've already stopped porting Adobe Reader years ago and don't patch the main Flash plugin on Linux unless a big security vulnerability is exposed.

They just don't see Linux as being that important a market. Do you really think they'd deny themselves profit? Are you so arrogant you think YOU know better than Adobe at the market they make millions in?

Do not think for a minute that the big companies that don't support Linux haven't made a calculated decision not to bother with porting software to it. No-one knocks back an increased income, but if it costs more to support it than they'd see as profit, it's a net loss and bad for business.

Re:And still linux sucks (1)

dingen (958134) | about 5 months ago | (#46918201)

I'm not the one saying Adobe should release Photoshop for Linux. I'm just saying the *only* reason why Photoshop isn't available for Linux is because Adobe doesn't want it to be on Linux. That may well be the result of some business calculation, or politics, or something personal or whatever, but certainly not because Linux is in some way not suitable for running an application like Photoshop.

Re:And still linux sucks (1)

crossmr (957846) | about 5 months ago | (#46918305)

Their claim is that it is is and that might be why they don't want it on Linux. Because it is less suitable, less easy, it will cost more to port it over and since they don't yet see a big market for users they won't do it.

It's chicken and the egg. The existence of other apps is immaterial. Other apps might be suited to Linux, they might be easy, cost effective to port and they might be targeting people who might otherwise already use linux.

However, if you get them to do it, the users will come and it will start to snowball. It needs that push to get going and that only comes with money.

Re:And still linux sucks (1)

dingen (958134) | about 5 months ago | (#46918481)

That's probably true, things only really change when someone brings a lot of dollars to the table. That's what Mark Shuttleworth did with Ubuntu, Google did with Android and Valve is doing now with SteamOS.

But that's really what I was trying to say at the start of this thread: the fact anyone can step in and add to the platform is what I think is cool about Linux. So having a real impact in businessland may cost some money, but it's not like that's going to Linus Torvald's personal bank account. Linux is open for everyone and not charging a dime. So why are people giving it a hard time?

Re:And still linux sucks (2)

crossmr (957846) | about 5 months ago | (#46918631)

Because being free isn't a pass on criticism. I'm not sure when that happened. Yes all the people who have devoted time and effort and money on Linux deserve credit for doing so. But for the end consumer there is no real difference between an OS you got for free and one you paid $100 for. They still need to work and they still need to do what you need. Otherwise free doesn't mean anything. In the end they're still providing a product regardless of the cost and the consumer is going to form an opinion on it and give feedback. It's simply just not there yet and the only thing that's really going to get it there, in my opinion, at this point is a huge infusion of cash in exactly the right direction.

Re:And still linux sucks (1)

jones_supa (887896) | about 5 months ago | (#46918395)

FFS they've already stopped porting Adobe Reader years ago and don't patch the main Flash plugin on Linux unless a big security vulnerability is exposed.

The PPAPI version of Adobe Flash plugin for Google Chrome under Linux is still being developed and is doing fine. The old NPAPI plugin will remain frozen in the 11.2.x.x tree and receive occasional security updates, as you correctly said.

Re:And still linux sucks (0)

Anonymous Coward | about 5 months ago | (#46918833)

Because linux isn't a cohesive DESKTOP platform. That's the problem. As I was googling around one of the staff at adobe mentioned last year that Linux lacked standardized APIs on a forum thread regarding photoshop on Linux.

There is a perception that Linux is a bit like the wild west and in this day and age when you have stable mature platforms like Mac and Windows available, that's risky for developers. Even for big companies.

Claiming that GNU/Linux is unstable and/or not mature as a platform feels like quite an ignorant claim. That is why I had to add the desktop part to your post. Yes, there is a proliferation of desktop environments and window managers for GNU/Linux and X (or whatever other alternatives are out there :) ), but that doesn't say much about Linux, the kernel. And if it was so risky for developers, how come Linux is so popular server side applications?

Re:And still linux sucks (0)

Anonymous Coward | about 5 months ago | (#46918435)

Well it isn't a bad platform to develop for. It is just insane to spend money developing for a platform that _nobody uses_. And by nobody, I mean the meager 1% or less that usage statistics show. Even within that 1%, there are a rabid subset of "no COTS, no proprietary, only open" - so those are immediate "no sales". So while the platform is fine, the economics of the situation would show insanity in developing for it.

Re:And still linux sucks (0)

Anonymous Coward | about 5 months ago | (#46918117)

It's not Linux's fault. It is, however, a legitimate reason why many people don't use it on the desktop, and simply stating that not the fault of Linux doesn't mean jack shit - the lack of suitable applications will still make it less desirable for many people as a desktop/workstation system if it ain't running the software they want.

Certain Linux users keep playing the victim, that the OS is perfectly fine and it's the manufacturers who don't support it. Be that as it may, an OS is only as useful as what you can run on it...

Re:And still linux sucks (1)

dingen (958134) | about 5 months ago | (#46918179)

I'm just saying if people want Photoshop on Linux, you should talk to Adobe, not Linus Torvalds or Mark Shuttleworth.

Re:And still linux sucks (0)

Anonymous Coward | about 5 months ago | (#46918457)

Neither would answer you if you tried to talk to them, so people do what is reasonable and vote with their money.

Re:And still linux sucks (-1)

Anonymous Coward | about 5 months ago | (#46917653)

Doesn't matter when nobody does. That's why Linux is still a broken, unstable mess with extremely limited hardware support and no quality software.

Re:And still linux sucks (3, Interesting)

jones_supa (887896) | about 5 months ago | (#46917733)

Actually the hardware support is quite good already. I agree with your other points though: Linux world is a mess with parts missing, lots of bugs, and lacking quality assurance.

Re: And still linux sucks. (0)

Anonymous Coward | about 5 months ago | (#46917843)

It's not lack of quality assurance, it's hostility towards quality assurance. And with quality assurance I don't mean bugs (there are lots of them), I mean basic usability. I have been told they specifically won't implement certain basic functionality just to be different from MS. With that attitude is no wonder that Linux is only used by "cultists" that use it more as a sign of group identity than as an OS.

Re: And still linux sucks. (0)

Anonymous Coward | about 5 months ago | (#46917955)

I have been told they specifically won't implement certain basic functionality just to be different from MS. With that attitude is no wonder that Linux is only used by "cultists" that use it more as a sign of group identity than as an OS.

Yes, because anyone wanting to avoid getting sued by Microsoft for infringing their patents is clearly a "cultist".

Re: And still linux sucks. (3, Insightful)

king neckbeard (1801738) | about 5 months ago | (#46918453)

Yes, there are some dickheads in charge of major Linux projects that refuse to do things users want. There are also dickheads in charge of major Microsoft proejct that refuse to do things users want. Same with Apple, Adobe, Oracle, and many other companies.

and no, it's not only used by cultists. It's used by smartphones, GPS, DVRs, servers, supercomputers, and other places. The desktop is more of an exception than a rule, but the desktop is the place where the OS is more visible.

Re:And still linux sucks (-1)

Anonymous Coward | about 5 months ago | (#46917857)

Dear God, are you really this stupid? I mean you have to be willfully ignorant to miss the point of his post. Slow load times for years and years and years and finally does something about it, and you are like "OMG, LOOK AT TEH IMPROVEMENETS!!!!!111111!!!!"

Linux sucks. It sucks bad for the desktop, yet you have Linus cum on your chin.

Re:And still linux sucks (0)

Anonymous Coward | about 5 months ago | (#46917565)

When someone asks me why I think you're an idiot, this is one of the posts I will show them, it's 2014 and you're still acting in a childish manner...

Re: And still linux sucks (0)

Anonymous Coward | about 5 months ago | (#46917719)

You sit around chatting to other real people about how much you hate one Slashdot poster? Enough so that you feel the need to collect evidence?

Something tells me you haven't GOT any real people to talk to. If you did, you might not be so sick in the head.

Re:And still linux sucks (1)

morgauxo (974071) | about 5 months ago | (#46918231)

Your right because clearly starting up your little games faster should be top priority of any operating system.

Re:And still linux sucks (1)

Kjella (173770) | about 5 months ago | (#46918441)

Your right because clearly starting up your little games faster should be top priority of any operating system.

Not any operating system, just one that has interactive users. When I turn on my computer I want to use it right now, boot time is dead time. When I click any application I want to use it right now, load time is dead time. If I click a button in the application I want a response right now, reaction time is dead time. If you're running a server, who really cares as it should be >99.99% up, use staggered boot and launch some huge backend processing service once it doesn't matter at all. But when it's my consumer device I hate fingertapping time, it's not that I really need those five seconds back but it's very, very annoying. I kind of accepted it when computers were slow as molasses, but I very rarely accept that I need to wait for my gigahertz quadcore CPU feeding off an SSD to do anything. YMMV, but I think there's more people in my camp than yours.

OpenGL is the future (1)

Anonymous Coward | about 5 months ago | (#46917411)

Nice to see that OpenGL is being improved on Linux. I wonder, if somebody will implement caching of the compilation results next? The ccache does exactly this for C/C++, and it really helps in re-compilations of the same source. Of course this is a bit harder as it sounds, since one needs to verify the compiler and all related component versions before using cached result of a compilation.

Re:OpenGL is the future (5, Informative)

TheRaven64 (641858) | about 5 months ago | (#46917523)

Caching of compiled shaders is supported by the OpenCL spec, and I presume by GLSL as well (I've not looked, but they generally use more or less the same code paths). The application is responsible for asking the driver for the cacheable version and then loading it again later. The problem is that, on first load, the game is effectively doing ahead-of-time compilation of all of its shaders and, previously, these were all done in a single thread. The multithreading part is a bit odd, because most DRI GPU drivers use LLVM on the back end and LLVM has supported multithreaded compilation for a few years.

Re:OpenGL is the future (2)

carlhaagen (1021273) | about 5 months ago | (#46917833)

Not by GLSL as such, but it is supported in GLES 2.0.

Re:OpenGL is the future (0)

Anonymous Coward | about 5 months ago | (#46917603)

Your future is still years behind DirectX...

Re:OpenGL is the future (0)

Anonymous Coward | about 5 months ago | (#46918517)

The shiny new features in DirectX do not actually matter for a long time after their release, since game developers will rarely use them as the new DirectX's are available only on newer Windows's. Quite a many developers try maximize amount of potential customers by a single codebase. If the MS would still release new versions of DirectX to all Windows variants still in support, it might have a better stand against OpenGL.

Re:OpenGL is the future (1)

VGPowerlord (621254) | about 5 months ago | (#46918707)

The shiny new features in DirectX do not actually matter for a long time after their release, since game developers will rarely use them as the new DirectX's are available only on newer Windows's. Quite a many developers try maximize amount of potential customers by a single codebase. If the MS would still release new versions of DirectX to all Windows variants still in support, it might have a better stand against OpenGL.

Windows XP's death has basically given developers free reign to support DirectX 11.0 as their new minimum.

Then again, even before this, DX11 features popped up as optional features in games like Batman: Arkham City (and presumably Origins).

Oh wow (-1)

Anonymous Coward | about 5 months ago | (#46917427)

Now I can get tuxracer to play at 997 fps, woo hoo!

Re:Oh wow (5, Informative)

Anonymous Coward | about 5 months ago | (#46917455)

This won't affect Tux Racer's FPS. This will affect the load time on DotA 2, as well as other games which compile many shaders during load time.

Re:Oh wow (0)

Anonymous Coward | about 5 months ago | (#46917467)

Your joke isn't funny because running Tux Racer faster than 997 FPS has been possible for ages, even without these optimizations.

Stop gap (2, Interesting)

Anonymous Coward | about 5 months ago | (#46917437)

OpenGL probably need to move to an IR for shaders. For thost that don't know, shaders are compiled by the driver today. Many games generate shaders with a combinatoric explosion which creates a lot of work for the driver. You can cache the result, which is often done, but you'll end up recompiling when the user change settings, etc.

The solution is off-line compilation to an IR, but of course everyone need to be aboard. The downside is that an IR spec will probably add 'DRM' considerations whereas today OpenGL shaders are shipped in source form.

Re:Stop gap (5, Interesting)

TheRaven64 (641858) | about 5 months ago | (#46917529)

An IR doesn't buy you much. The time taken for clang to compile OpenCL C to SPIR is about 10% of the time required for LLVM to optimise and codegen the resulting SPIR into native code. The driving force behind SPIR comes from developers who don't want their shader source code embedded in their binary source.

Re: (0)

Anonymous Coward | about 5 months ago | (#46917537)

Does an OpenGL shader go through a complex optimization process, though? *maybe* a cursory one, but no where near as complex as LLVM.

Re: (1)

Goaway (82658) | about 5 months ago | (#46917553)

Of course it does. A lot of them go through exactly LLVM!

Re: (2)

91degrees (207121) | about 5 months ago | (#46917809)

When I was working on this sort of thing a few years ago, we were experimenting with a RISC machine with a fairly deep pipeline for shader operations.

It worked pretty well, and wouldn't be surprised if the big boys used a similar idea but optimisation for these is very architecture dependent and can be an NP complete problem. Even register allocation can be quite slow and they'll have to deal with that.

3 words for Valve (-1, Offtopic)

jez9999 (618189) | about 5 months ago | (#46917451)

Hip, hip, horray! :-)

Valve sponsors (1)

Anonymous Coward | about 5 months ago | (#46917509)

Who are sponsoring Valve? And why are the sponsors working on speeding up OpenGL?

Off topic, I know, but English might possibly be the most ambiguous human language in the world.

Re:Valve sponsors (0)

Anonymous Coward | about 5 months ago | (#46917643)

They see a market in gaming for Linux, since Microsoft is moving toward complete lockdown to some kind of app-store where they get 30% of all application sales on Windows and Valve doesn't like that? Maybe?

Re:Valve sponsors (1)

SuricouRaven (1897204) | about 5 months ago | (#46917677)

Read it more carefully. It's a language thing.

Re:Valve sponsors (0)

Anonymous Coward | about 5 months ago | (#46917647)

English might possibly be the most ambiguous human language in the world.

Yes. That's a large part of what makes it so flexible and conducive to artistic expression. Many languages are so straight-forward and literal that it's like wearing handcuffs and a muzzle.

Re:Valve sponsors (2)

wonkey_monkey (2592601) | about 5 months ago | (#46918269)

wearing handcuffs and a muzzle.

Go ooooon...?

Re:Valve sponsors (2)

RobertLTux (260313) | about 5 months ago | (#46917783)

https://en.wikipedia.org/wiki/... [wikipedia.org]

"Valve created the critically acclaimed Half-Life (released in 1998) and Portal series (released in 2007), as well as the software distribution platform Steam (released in 2002) "

btw as of last year Steam has a native Linux version

Re:Valve sponsors (1)

mrchaotica (681592) | about 5 months ago | (#46917881)

It's not that ambiguous; if the headline really meant what you think it meant it would have said "Valve's sponsors..." instead.

Re:Valve sponsors (1)

wonkey_monkey (2592601) | about 5 months ago | (#46918283)

if the headline really meant what you think it meant it would have said "Valve's sponsors..." instead.

That would be the unambiguous way of saying it, but that doesn't mean that's how it would have been written.

Valve competing with Microsoft (0)

Anonymous Coward | about 5 months ago | (#46917567)

Lets hope OpenGL can seriously compete with DirectX now that it has Valve support.
Can someone say something about the development effort to develop for both OpenGL and DirectX?
Maybe Microsoft will start letting everyone use their newest version of DirectX.

Re:Valve competing with Microsoft (5, Informative)

ledow (319597) | about 5 months ago | (#46917599)

I think you miss something:

On Windows, OpenGL already competes with DirectX. Especially with the indie-game revolution of the last 10 years.

On Linux, OpenGL wins 100% complete, hands-down. Because DirectX can't even run, let alone come close on performance.

On Mac, OpenGL wins 100% complete, hands-down. Unless you count boot-camp, which is really just Windows.

You can try to paint a different picture all you like - fact is that OpenGL is not only "the same" as DirectX when you're on Windows, but also runs in a ton of other places. That fact that it has slightly less performance than the ideal scenario on one of those (it has to be said) more obscure platforms is pretty inconsequential (and now fixed). I haven't seen anyone complain about the OpenGL performance on those millions of smartphones that run it. I haven't heard much about DirectX on smartphones, however.

Cherry-picking the battlefield for a comparison is no worse than cheating because you know you're going to lose.

Re:Valve competing with Microsoft (5, Interesting)

Anonymous Coward | about 5 months ago | (#46917613)

Even on windows, OpenGL is not that much slower, on the order of 10% for 'normal' 3D game code. With a modern video card that difference almost doesnt matter.

Depends on how you look at it (0)

Anonymous Coward | about 5 months ago | (#46917787)

Well, 10% is not that big of a deal if you look at frame rates or such. However, If you turn that into dollars by comparing how much you have to pay extra for a better video card or processor to get that additional 10% boost, well then the whole situation looks a bit different. Then again this is a bit of dumb way to look at it...

Re:Valve competing with Microsoft (5, Insightful)

Charliemopps (1157495) | about 5 months ago | (#46917799)

The problem with OpenGL isn't speed or load times. Microsoft made directx so 3D programming in windows would be easier. It's just like C# or VBA. They made it much easier to use, and therefore much cheaper to hire for. If you're hiring people to write a new 3D engine using OpenGL you need people at the top of their field... If you're hiring for DirectX there are dozens of local tech colleges filled with mediocre talent that will fit the bill. Now, you could argue that you should be getting top talent anyways, but that's why you don't run a major game producers.

Re:Valve competing with Microsoft (0)

edxwelch (600979) | about 5 months ago | (#46918009)

I call bullshit. DirectX is only marginally easier at best. If you're implementing a game engine your going to need people at top of field, regardless whether it's OpenGL or DirectX

Re:Valve competing with Microsoft (1)

Charliemopps (1157495) | about 5 months ago | (#46918459)

And which major company is pushing OpenGL in schools? Providing training materials? Certifications?

It's easier for the same reasons Cisco stuff is. Yea, you can find people that know Juniper or something else, but how many are there? Limited resources are expensive. This is how Microsoft does business. It's a very smart plan.

Now you have companies like Google and Valve pushing open source so it's slowly changing.

Re:Valve competing with Microsoft (0)

Anonymous Coward | about 5 months ago | (#46918589)

The difficult part is the underlying ideas, structures and practices, not to mention the math for some people. If your developer can't adapt to a different API with different function names that do essentially the same thing and some slightly different boilerplate, they aren't qualified to work on any big project, 3D engine or not.

Re:Valve competing with Microsoft (2)

91degrees (207121) | about 5 months ago | (#46918735)

On Windows, if you use Visual Studio (which most studios do), DirectX is easier.

The documentation is fully integrated, and you don't need to use a wrapper or the hideous OpenGL extensions mechanism to use any of the remotely modern features. You can use GLEW for the latter but you really shouldn't have to rely on a third party library just to use it.

Re:Valve competing with Microsoft (0)

Anonymous Coward | about 5 months ago | (#46918235)

No. They both provide roughly the same abstraction level. DirectX might be a bit easier in some aspects (I like how their shaders are specified for example) but not enough to make a difference.

Re:Valve competing with Microsoft (0)

Anonymous Coward | about 5 months ago | (#46918295)

Yea, thinking about it, Microsoft did the same when they released word, making it cheaper to hire those pesky secretary people. Back in the day, when real men used vi, you couldn't just go and hire a secretary..

They also killed my cat and stole my lunch. "Insightful" my ass

Re:Valve competing with Microsoft (1)

jones_supa (887896) | about 5 months ago | (#46918489)

The problem with OpenGL isn't speed or load times. Microsoft made directx so 3D programming in windows would be easier. It's just like C# or VBA. They made it much easier to use, and therefore much cheaper to hire for. If you're hiring people to write a new 3D engine using OpenGL you need people at the top of their field... If you're hiring for DirectX there are dozens of local tech colleges filled with mediocre talent that will fit the bill. Now, you could argue that you should be getting top talent anyways, but that's why you don't run a major game producers.

Not really. Direct3D and OpenGL are mostly the same stuff, and both require a developer with a high level of competence. With DirectX you also wind up doing some crusty Win32 trickery, even opening the window is quite painful process. When you combine OpenGL with SDL or SFML, you get that kind of boilerplate stuff done much cleaner.

Re:Valve competing with Microsoft (0)

Anonymous Coward | about 5 months ago | (#46918579)

The problem with OpenGL isn't speed or load times. Microsoft made directx so 3D programming in windows would be easier. It's just like C# or VBA. They made it much easier to use, and therefore much cheaper to hire for.

"Easier" ? Hmmm... Not really.

"Microsoft made directx so 3D programming in windows would be easier" ? I don't think that was their motivation.

Re:Valve competing with Microsoft (1)

Rich0 (548339) | about 5 months ago | (#46918669)

The issue is probably more that MS promotes its platform better, and also the fact that the XBox does not support OpenGL. It is popular for the same reason that Win32 is popular - network effects.

Re:Valve competing with Microsoft (1)

The Cat (19816) | about 5 months ago | (#46918677)

Using one API is harder than using some other API? Bullllllllshit.

Re:Valve competing with Microsoft (2, Interesting)

Anonymous Coward | about 5 months ago | (#46917925)

In most cases OpenGL is 10 to 20% faster on Windows, just shader compile times were 5 to 10% slower on average.
but once things are running DX11 isn't very competitive, and that's also because it's hard to make proper drivers for it (see Nvidia's late optimizations that made them reach near AMD Mantle performance, that took almost 2 years to reach)

Re:Valve competing with Microsoft (5, Informative)

dingen (958134) | about 5 months ago | (#46917661)

And that's just the desktop. On phones, OpenGL wins all. On tablets, OpenGL wins all. On consoles, DirectX is only relevant for the Xbox, the rest runs OpenGL.

The sphere of influence Microsoft has on the computing industry as a whole has been shrinking with each passing year for at least a decade now. The diminishing relevance of DirectX is yet another proof of this.

OpenGL ES (0)

Anonymous Coward | about 5 months ago | (#46918139)

>

On Mac, OpenGL wins 100% complete, hands-down. Unless you count boot-camp, which is really just Windows.

You can try to paint a different picture all you like - fact is that OpenGL is not only "the same" as DirectX when you're on Windows, but also runs in a ton of other places.

Don't forget iOS and Android. Both of those use OpenGL ES.

Re:Valve competing with Microsoft (0)

Anonymous Coward | about 5 months ago | (#46918829)

It's Direct3D, not DirectX. One is a component of the other.

On Linux, OpenGL wins 100% complete, hands-down. Because DirectX can't even run, let alone come close on performance.

This is the illogical thinking of a fanboy. There can be no winner or loser if there is only one choice. You can't have a competition with only one competitor.

obligatory (5, Funny)

Anonymous Coward | about 5 months ago | (#46917629)

Drivers to be renamed "Black Mesa OpenGL Library"?

GLES 2.0 and OpenCL... (4, Informative)

carlhaagen (1021273) | about 5 months ago | (#46917825)

...both have functionality for accessing (and saving) a compiled shader so that it can be loaded and used instantly on next run.

Compilation of shaders, eh (1)

fa2k (881632) | about 5 months ago | (#46917837)

So that's what is taking so long when starting Dota. I was wondering what part of loading a game could max out a thread on the CPU.

As an example, the time from starting Dota 2 until the time actually being within the game is reduced by about 20 seconds on an Intel system.

A WTF comment if I ever saw one. One would prefer at least two numbers to know how good the improvement is, though a percentage would also be better. On my Intel system Dota2 takes about 15 seconds now. And what's with the pointless Intel name-drop anyway.

Caching seems like a better solution to me, but multithreaded compilation is also good. Well done Valve

Re:Compilation of shaders, eh (0)

Anonymous Coward | about 5 months ago | (#46918019)

A WTF comment if I ever saw one. One would prefer at least two numbers to know how good the improvement is, though a percentage would also be better. On my Intel system Dota2 takes about 15 seconds now. And what's with the pointless Intel name-drop anyway.

I see your point. Now, after you update Mesa, DotA 2 will finish loading 5 seconds before it starts.

Great work from Valve. (3, Interesting)

nimbius (983462) | about 5 months ago | (#46917905)

Im also hoping they deprecate the libraries in Team Fortress 2 that are patent encumbered before someone hauls them into a texas court. W have perfectly reasonable alternatives to S3TC.
Installation and posix portability are also on my wishlist but thats sort of offtopic and not likely to happen without a bit of ecosystem backlash..

Re:Great work from Valve. (1)

ledow (319597) | about 5 months ago | (#46918553)

S3TC is part of OpenGL, not Valve-software specifically.

As such, if you want to support OpenGL, you're pretty much going to have to pay for the patent and/or workaround it.

Duh! (0)

Anonymous Coward | about 5 months ago | (#46918343)

So 20 seconds off the start of a game you'll probably play the next two hours. Duh!

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?