10 ms·
It’s Time to Open Up the GPU
- FussyZeus 11y agoSpeaking of opening GPU's, is this page making anyone else's scrolling chug hardcore? I don't think I've ever had a page stutter this hard.
- sccxy 11y ago5MB website... 90% of this are useless super large images. Also webpagetest.com counted 23 javascript requests.
- ino 11y agoThe thumbnails are 1920×700px in case you use a 20K monitor.
- badlucklottery 11y agoSmooth for me on Win7/FF44b+IE11. Chrome 48 doesn't appear to like it much though.
- ricardobeat 11y agoAbsolutely sluggish on Mobile Safari, latest iPad mini.
- r3bl 11y agoCould we open up the website first so we could improve its performance? Because this is just silly.
- plq 11y agoIn the first year of grad school when I was trying to choose a field to delve in, real time rendering was one of the options. So I took the relevant CS-fivesomething class to see how things worked. The first time I got my feet wet with code, I realized that the workflow was mostly "write and pray it works". No debugging tools, huge blobs of proprietary code and total lack of consensus among manufacturers even on the most basic stuff scared me away. I ended up doing a machine learning thesis instead. This was almost ten years ago. I can't say I've been following the graphics field closely, but my impression is that while tooling came a long way in the past ten years, the GPU is still mostly a black box for the developers who don't have access to a debug build of the driver of the graphics hardware at hand. Such initiatives couldn't come soon enough.
- tmikaeld 11y agoEver heard of image compression? It exists.
- ChuckMcM 11y agoFirst, nullify all the patents ... Seriously, back around the turn of the century I was pretty heavily into graphics and rendering and was frustrated by all the constraints on getting access to documentation. I finally figured out a way to pin down a vendor with all the necessary NDAs and all the necessary agreements so that I could actually get 100% access to the inner workings of the GPU. As long as I read the documents onsite at the vendor's office and brought no means to make copies. And after all of that, in discussions with the vendor's counsel, their biggest fear was that as GPUs were so competitive, and so heavily protected by IP, that they did not disclose any details to people who might see something that might be protected by some patent somewhere and defending a lawsuit, which always settled before discovery because nobody wanted to actually share their documents! It was insane. That said, I think an open GPU is an excellent idea, however while I don't think it will get built any time soon I think just publishing all the techniques and algorithms will draw out all these lawyers and we could hopefully arrive at the 'available set' of features which one can implement. I expect though that you need a Google level VP8 kind of program for this to make progress (and Google failed there if you recall)
- theandrewbailey 11y ago> I expect though that you need a Google level VP8 kind of program for this to make progress (and Google failed there if you recall) Google paid off MPEGLA so they wouldn't sue for anyone using VP8. That smells like success. http://arstechnica.com/information-technology/2013/03/google-mpeg-la-agree-to-royalty-free-terms-for-vp8-video-codec/ http://arstechnica.com/information-technology/2013/03/google...
- robbies 11y agoI'm actually amazed that you were able to get an IHV to give you that access. Interestingly, most console developers currently have this sort of access. If they are just targeting consoles (or better, a specific platform), they're able to get a lot done. The tricky part is if they have to target PC and consoles. They have the access they want on consoles, but can't replicate on PC. Actually, on top of that, replicating that task on PC would mean giving developers a nightmarish mix of varying, quirky architectures to target. Realistically, what most _engine_ devs want on PC are more current and lower level access APIs (DX12 and Vulkan) and maybe even an OSS shader compiler. The compiler wouldn't be even for them to poke at. I think they'd hope that the OSS community might do a better job than the IHVs at maintaining the compiler.
- Sleaker 11y agoDoesn't give off the impression of being super open when you have samples say they are only for Radeon cards. This seems almost like a marketing strategy/guise from AMD, and if you go look at other websites for this article it literally says AMD launches GPUopen.com. AMD is only mentioned once in the article.. shady in my opinion and not very 'open' either. When one company continually calls out for 'openness' in a marketplace over time I think people get annoyed at it, I know I do. AMD, you're nearing the point where people are just going to scoff at you and take it as whining. You can't say you want openness then build your tools specifically for your own hardware without looking like an ass. Furthermore, 3/4ths of the sample are for DX only. How open is DX again?
- sliverstorm 11y agoIt doesn't seem all that clandestine. The snippet at the bottom about the author: Nicolas Thibieroz is the Senior Manager of Worldwide Gaming Engineering at AMD... From the middle of the article: GPUOpen marks the beginning of a new philosophy at AMD.
- Sleaker 11y agoAhh I was misinterpreting the 3rd party affiliate links where they say they aren't responsible for any content on them.
- poopchute 11y agoDid you even read the post? The whole thing talks about how this is AMD's new version of mantle which is specifically for gcn cards. It even says who its written by at the bottom, the senior manager of engineering at AMD.
- Sleaker 11y agoNo it doesn't. It puts out that it's making something called gpuopen, which right now is just a brand page with a bunch of fluff and nothing more with links to resources that are already available on AMDs website, but with nearly all of the AMD branding removed.
- dragandj 11y agoI wanted to add my GPU compute library for Clojure to their list of libraries, and there is no option to send them anything. So, it seems that gpuopen site is open for AMD to promote whatever they deem promotable. Not very open for this age in my opinion.
- toocute2care 11y agoA really cool site by AMD
- aexaey 11y agoIt is really exciting to see AMD opening up, especially in GPU driver area - arguably the weakest point for the free software. I hope this will go further than "1 step forward, 2 steps backward" approach same AMD showed with libreboot involvement: https://libreboot.org/faq/#amdbastards https://libreboot.org/faq/#amdbastards https://news.ycombinator.com/item?id=10895021 https://news.ycombinator.com/item?id=10895021
- akerro 11y agoHey, what about Intel? They suck even more: https://libreboot.org/faq/#intel https://libreboot.org/faq/#intel
- tracker1 11y agoWasn't OpenCL supposed to deal with this? Obligatory XKCD[1] [1] https://m.xkcd.com/927/ https://m.xkcd.com/927/
- wtallis 11y agoOpenCL is basically a framework to make it more convenient to run shaders for non-graphics purposes. It's still a high-level cross-vendor hardware abstraction layer. This sounds like it's more about officially documenting and supporting the kinds of things people have been reverse-engineering: https://news.ycombinator.com/item?id=10605156 https://news.ycombinator.com/item?id=10605156
- robbies 11y agoYes to your OpenCL stuff, no to your reverse-engineering stuff. The post you linked is about generating your own native shaders on GCN. GPUOpen could possibly expose that, but that's a difficult problem to expose to developers considering the variety of architectures exposed at any time by the IHVs (including just inside one IHV at any time). If they did go down that path, they would open up their internal bytecode-to-native-ISA shader compiler...which they haven't done yet, and have shown no indication of doing.
- wtallis 11y agoYes, it may be a difficult problem to handle exposing hardware-specific functionality in a non-portable way, but if GPUOpen is to have any substance at all it's obvious that they're going to actually do some of that. This can't just be an announcement of a batch of OpenGL vendor extensions. And at the moment, it seems like GPU architectures within one company aren't really that much more diverse than Intel's CPU architectures over a similar time period. They're not overhauling the ISA every year.
- robbies 11y ago> but if GPUOpen is to have any substance at all it's obvious that they're going to actually do some of that. I don't think they'll do it. I think they're going to shoot for SPIR-V being close enough that SPIR-V compilers generate code good enough that the internal compilers can gen good ISA code. > They're not overhauling the ISA every year. They aren't, but the changes rev to rev are more significant than you'd expect. On top of that, the big bumps are significant, such as Fermi to Kepler or Northern Islands to Southern Islands (or whatever). These are not backwards compatible with each other, unlike Intel x86 ISA. Bonus edit: Also...I'd speculate that some IHVs would rather not expose their IL-to-ISA compiler. Not because of 'secret sauce'. But because they aren't that good, and would rather have the OSS community start fresh and do a better job.
- cs702 11y agoThis is an AMD project motivated by the fact that NVIDIA has become the de facto standard for GPU computation in deep learning and machine learning applications. TensorFlow, Torch, Theano, CNTK, CAFFE, and every other deep learning framework out there works out of the box with NVIDIA hardware via the CUDA stack, but not with AMD hardware, e.g., via the OpenCL stack. Which is a shame, because the entire NVIDIA hardware + software stack is closed. It would be great to see this new project succeed, and maybe even force NVIDIA to open source key or all components its stack down the road. To the team at AMD running this project: if you are reading this, step one is to get built-in support into all major deep learning and machine learning frameworks.
- robbies 11y agoI can only speculate on this aspect (from inside the industry), but it's been plain to see that AMD has been hemorrhaging engineers (though they still have plenty of talent). This relates to your request about getting built-in support: I'm not sure AMD has the manpower to do that work, and they might be hoping the OSS community helps them with that...
- ethbro 11y agoI'd be interested in what the ROI on more deeply embedding with OSS devs is vs employing someone to contribute. From what I've seen, for years the OSS GPU driver crowd's response to "opened" specifications / docs seems to have been "That's nice, but these aren't the docs we need."
- robbies 11y agoOh, they have the docs they need. That's essentially what is shared with console devs. The problem is that to get up and running is pretty Herculean with just docs. They need good sample implementations to get kickstarted.
- gravypod 11y agoThat is and will continue to be one of the biggest concerns for the GPU market for some time now. I assume that after a few years, factories will be buying computers, cameras, and GPUs instead of people for inspection. This will be a large market, and that's what NVIDIA understood when they started making ties with different companies. AMD has a lot of catch up to do, but in my opinion they can do it.
- rifung 11y agoSounds great but they don't mention anything about drivers? Does that mean we still won't get vendor supported open source drivers?
- wmf 11y agohttp://www.anandtech.com/show/9853/amd-gpuopen-linux-open-source http://www.anandtech.com/show/9853/amd-gpuopen-linux-open-so...
- gnarbarian 11y agoMarket leaders tend to push proprietary stacks (because they can). While underdogs push open stacks (because they must). If the open standard is better it can win. This is how nvidia gained the upper hand over 3dfx by pushing opengl and directx alongside ATI. They surged ahead and glide died along with 3dfx. Behold, history repeats itself. I'm hoping that Vulcan will be that new competitive standard moving forward. I don't have much hope for open hardware and open drivers from market leaders (who are too concerned with losing their edge to competitors) but I would be happy with an open API that leads in performance across vendors.
- revelation 11y agoI must be going stupid, show me the code?! Where is any of this? I find a bunch of press releases, but.. there is no code, anywhere. (Edit: for anyone else struggling, expand the arrow on the top left. Or go directly to e.g) http://gpuopen.com/professional-compute/ http://gpuopen.com/professional-compute/ (That said, a bunch of the repositories are just binary dumps. Like, this isn't what Git is for AMD.)
- amelius 11y agoCan we please stop calling it a GPU? These auxiliary processors are used for much more than graphics.
- JupiterMoon 11y agoCouldn't we just re-purpose the G in GPU to stand for "general" rather than "graphics"?
- gnarbarian 11y agoI think VPU (for vector) is the most descriptive.
- microcolonel 11y agoGPUs are not really vector processing units though.
- gnarbarian 11y agoMost graphics IS vector based math run through matrices. Same with physics. Every vertex is essentially a vector from the mathematical perspective. But you're right, that doesn't quite capture the massively parallel simple core arch that we see today.
- fithisux 11y agoThere should exists such devices and be open from day 1.
- fixermark 11y agoNope. In other news, we still call them "hard drives," even when nothing is driven.
- _yosefk 11y agoThey are used for other things, but * They're better at graphics than that other stuff, * Other auxiliary processors exist which beat GPUs on most kinds of that other stuff (though they aren't as accessible as GPUs), * Most importantly, what sells GPUs is first and foremost their performance on graphics workloads. A GPU with stellar OpenCL performance but sucky OpenGL performance will be outsold by a huge margin by a GPU with the reverse characteristics. So they're GPUs alright.
- cornchips 11y agoI keep hearing about this, seeing mentions and links to github, but I have to ask: where's the "meat"?
- ksec 11y agoMakes me wonder if AMD will open their Radeon IP for licenses. Even Nvidia has opened up, although no one has come forward to license it yet ( I think ) .
- KaiserPro 11y agoOr, just make better drivers for linux....