55 ms·
This is a great time to remind everyone that AMD does not have this restriction for their Radeon graphics cards. Also, AMD has always been very supportive of th
by electic 9y ago
This is a great time to remind everyone that AMD does not have this restriction for their Radeon graphics cards. Also, AMD has always been very supportive of the community and they've always respected their customers.
After decades of being the principled underdog, hopefully everyone can rally around them and make sure their open source projects work well with AMD products and contribute to their new open source initiatives.
- LeifCarrotson 9y agoThat would have been hard to write out and genuinely support a couple years ago, when NVidia ruled the top-of the line as well as the best value-for-money most of the way down the chain. It was a hefty hit to your framerate or your wallet to support AMD. But these days AMD is a serious contender at all levels! If the performance or value isn't actually in AMD's favor, it's near enough to be undetectable outside of a benchmark, and very easy to support the good guys.
- chrisseaton 9y ago> very easy to support the good guys But AMD doesn’t run CUDA? Is it very easy to switch a stack relying on CUDA to OpenCL? I don’t think so.
- zdw 9y agoAMD's ROCm suite has a tool for converting CUDA to C++ code: https://github.com/ROCm-Developer-Tools/HIP https://github.com/ROCm-Developer-Tools/HIP How well it works is likely codebase and application dependent.
- frozenport 9y agoHere was my experience. Everything in ocl ended up slower, with 30%+ longer (walltimes) on nvidia hardware. Also some problems with floating point precision. Real problem was there was no business case to switch because we could always make customers eat the cost of taking nvidia gpus. The added code complexity was not worth it - we originally did it as NRE for a big client who wanted OEM capabilities to our IP.
- katastic 9y agoOpenCL is slower than CUDA, but it's not the end of the world.
- mangix 9y agogot a reference?
- unfamiliar 9y agoThat is simply not true.
- biafra 9y agoPlease be more specific. What is not true? That it is slower or that this is not the end of the world?
- katastic 9y agoWow, people are butthurt. It's a wildly known fact in the industry. A simple google search for benchmarks or a PDF like this would have satisfied them. But they didn't want the truth they wanted to be butthurt. https://arxiv.org/ftp/arxiv/papers/1005/1005.2581.pdf https://arxiv.org/ftp/arxiv/papers/1005/1005.2581.pdf In basically every chart and graph, OpenCL is slower. OpenCL has a higher level of abstraction, so it's got a higher penalty for it. But, you get cross-platform support. nVidia doesn't optimize for OpenCL either because they don't want you to use it over their own competing framework. But 'dats cool, keep downvoting, guys. Sources aren't real if you can downvote 'em enough. God, I love Hacker News.
- grzm 9y agoWould you kindly raise the level of discourse here? You have useful information, so thanks for sharing it. But please leave the swipes and complaints about downvotes and HN members out of it. It worsens discussion and is against the guidelines. You’ll likely receive downvoted for that, more than anything else.
- 9y ago
- mrmondo 9y agoI’ve been using OpenCL for some neutral net image optimisation recently, I’ve actually found it very efficient (citation obviously needed), I personally welcome the competition of AMD and it does seem like Nvidia is digging its own grave (not that I think it’ll die).
- wyldfire 9y agoI don't think it's that hard, but it depends maybe a bit on how long your codebase has evolved through CUDA.
- nl 9y agoThere are zero DL frameworks that support AMD cards as a primary target. Most have some kind of branch or patchset with OpenCL support. The problem is that they aren't great. If you need any new layers there is no support. There is nothing like CuDNN so you don't get the high speed convolutional kernels. It's great to blame developers for supporting NVidia, but the thing is NVidia are great to work with. They dedicate large teams to deep learning support (not like the 2 or 3 part time Devs AMD does), and they publish good research and tutorials. AMD does nothing like this.
- tgtweak 9y agoAmd had always had first class support for openCL, cuda is Nvidia proprietary and although Nvidia "supports" OpenCL, it's quite bad. Issue #22 on tensorflow is regarding openCL support. AMD has done some interesting work on HCC (a more proper gpgpu compiler approach with llvm base) and that is showing promise. See here: https://instinct.radeon.com/wp-content/uploads/sites/4/2017/11/1-848x700.jpg https://instinct.radeon.com/wp-content/uploads/sites/4/2017/... Additionally, they support cuda decompiling to HIP which is an intermediary that can be built to target Nvidia (via nvcc) or amd (via HCC). Nvidia has built a lot of tooling for DL, such as cudnn, and the new Tesla cards have dedicated silicon for tensor calculation. Amd does have a cudnn equivalent called MlOpen. They have also ported caffe via HIP and it works well. Work is being done by amd right now to torch, mxnet and tensorflow to add support for amd hardware with minimal burden to the maintainers of these projects. You can read about some of the DL toolkits available here: https://instinct.radeon.com/en/6-deep-learning-projects-amd-radeon-instinct/ https://instinct.radeon.com/en/6-deep-learning-projects-amd-... I think it's particularly bad form on behalf of everyone in the DL framework and library world to cator only to Nvidia and cuda, and that they very much walked into this shake down with open arms. The original comment is correct in that contributing support for OpenCL (which works on mobile too) will alleviate this to a fair degree. It's one of those things where the more momentum is behind it, the more device manufactures will focus on ensuring their opencl compiler is building properly optimized kernels for their hardware. Start contributing to OpenCL or adding hip support to existing projects and we'll see some viable alternatives pop up from not only AMD, but players like Qualcomm and Samsung.
- niyazpk 9y agoFor most Deep Learning developers, using AMD is out of question until DL frameworks like TensorFlow start natively supporting them. I am not really sure if/when this is going to happen. AMD needs to really step up their game.
- kmicklas 9y agoWhy is it on AMD to support TensorFlow? Pretty sure it is on the machine learning people to use the standard APIs like OpenCL or Vulkan etc instead of CUDA...
- b4lancesh33t 9y agoAs with many things: it depends on who wants it more. In this case, I think AMD probably cares more.
- rdlecler1 9y agoThe’re not running a non-profit. It’s on them to respond to the market.
- Nullabillity 9y agoGoes the other way around too. This whole debacle demonstrates how dumb it is to base your product on a proprietary API with just one vendor.
- Analemma_ 9y agoNobody wanted to do this, but the lousy state of OpenCL compared to CUDA left them no choice. It really is so far ahead that OpenCL was never an option. It’s on AMD to fix that, since NVIDIA certainly won’t.
- binaryzeitgeist 9y agoHere you go: https://github.com/tensorflow/tensorflow/issues/22 https://github.com/tensorflow/tensorflow/issues/22
- gigatexal 9y agoThat’s all fine and great but CUDA. It’s a huge moat and enterprises will likely just fit the bill and pass on the costs.
- tensor 9y agoApparently tensorflow is quite close to supporting opencl, and now that nvidia put a 10x multiple on their cards for ML use you can be sure that there will be an army of people making sure that opencl becomes the standard.
- andars 9y agoJust curious, what cards are you comparing when referring to the 10x multiple?
- agibsonccc 9y agoJust going to say, just because tensorflow supports it won't mean much. The ecosystem as a whole is still largely cuda. This includes the database tech(kinetica,mapd), the resource managers (mesos/yarn), not to mention HPC. There's also just not much incentive for people to move to AMD here. There's a reason NVIDIA gives out these graphics cards like candy to academia. It's because they want to make their margins in data center while keeping the broader developer community locked in to cuda. People on HN make broad and sweeping comments about "if you open it they will come and everything will be magically better". It's a lot more complicated than that. The market incentives just aren't quite there yet. Could it happen one day? Yes. Will it happen today? No. It's going to take a lot more than this for other vendors to start supporting AMD. What I will say: There will be competition and the space is heating up. AMD is one player. Now let me put my commercial hat on here: What would it take for me as a deep learning vendor to support/care about AMD? 1. Show me the money. I need a clear revenue stream. AMD has some hope here. Customers don't care about which gpu they use as long as it fulfills a use case they care about. 2. Code: Show me something that's actually a robust. A 1 off fork of any deep learning framework (see the random 1 off caffe forks that aren't actually caffe by nvidia, intel,amd) 3. Share the burden. Put the code out there and support the broader community. Actually maintain and follow up with the latest innovations (hint: this is hard. throwing code over the wall once doesn't mean anything) 4. Amazon will be key here. Google cloud (look google is great but they aren't the leading cloud player by a long shot and likely won't be anytime soon) - get them on board with some AMD cards. 5. (Disclaimer I know the founders) - make opencl not suck. https://vertex.ai/ https://vertex.ai/ is an interesting player in this space. So look, I won't say it's impossible. Let's just not ignore the actual commercial market forces that are also at play here.
- cgb223 9y agoAs a holder of AMD stock, I completely agree
- dis-sys 9y agois this a serious reply? do you know how bad is AMD's OpenCL support? how bad was the attitude? have a look, people had to make a petition to ask AMD to fix their craps. https://www.phoronix.com/forums/forum/linux-graphics-x-org-drivers/open-source-amd-linux/37060-petition-to-amd-gpu-drivers-opencl https://www.phoronix.com/forums/forum/linux-graphics-x-org-d...
- sd8dgf8ds8g8dsg 9y agoHow would a open www.change.org petition be any indicator of the current state of things? Or even indication of the 2013 state of things? For christ's sake, anyone can start a petition about anything. Obviously the petitioner is also clueless, or else how could they write "We feel that Radeon hardware is vastly superior to competition", when their hardware in 2013 was nowhere near NVIDIA. (See the review the petition links to for an example...). You sir are a typical phoronix reader. Uninformed, biased and thick.
- gsich 9y agoIt doesn't seem to be enforcable anyway, what is the point of this change?
- ezoe 9y agoWe already have software licences which grant you a copyright usage only when certain conditions are met like: 1. restrict its software to be deployed at one physical or virtual computer. 2. Similar to one but restrict it to be deployed the specific vendor hardware. 3. Non-commercial usage only 4. Commercial usage allowed but only for small company less than 50 employees, buy more expensive license for that. What's the difference? If those ridiculously existing consumer-unfriendly licenses are valid, I think NVIDIA's stupid no-data-center-deployment-except-for-blockchain-processing license is also valid.
- gsich 9y agoWho says that those are valid too?
- TaylorAlexander 9y agoSadly I did find that with the latest gen $130 card (cant remember the model) there is no driver support in Debian stable, or the driver was broken (I can’t recall which). I have to run Debian unstable to use my card, which unfortunately has a broken ZFS driver... I read that AMD cards were friendly to Linux, so after removing my NVIDIA card for stability reasons, I switched to AMD only to have other issues. I’m still looking for an easy Debian compatible graphics card so I can do CAD (Onshape - OpenGL). The AMD card works now, but I don’t know what to do next time around.
- O_H_E 9y agoYes AMD have open-source version of their drivers for linux, so they are generally more stable/friendly than Nvidia.
- TaylorAlexander 9y agoI was using the open source drivers, but the version in Debian stretch does not support my card. I had to go to buster to get it working after tracing a long list of forum posts of people having trouble with this card.
- frik 9y ago> AMD does not have this restriction But AMD/ATI cards are heavily bought by crypto miners, so it's almost impossible to buy one, even at an insanely high prize. And NVidia cards are compatible with all games made between 2000 and 2017. AMD driver were very bad several years ago. So if you are playing GoG games or older games occasionally there is only NVidia. Yes, both NVidia with their spyware-driver and now this shit, and AMD driver sucks. For CPUs everyone suggests now AMD which are now better than the crippled Intel CPUs with their plastic pads inside the CPU so that a new Intel CPU will last only about 3 years.
- loser777 9y agoShameless plug for the tvm project: http://tvmlang.org/2017/10/30/Bringing-AMDGPUs-to-TVM-Stack-and-NNVM-Compiler-with-ROCm.html http://tvmlang.org/2017/10/30/Bringing-AMDGPUs-to-TVM-Stack-... which is an effort towards broad (many vendors) hardware support and optimization for deep learning.
- suresk 9y agotvm was the first thing I thought of when I heard about this. If you're involved in the tvm project - are you aware of any major deep learning libraries working on utilizing it? I'd imagine MXNet would be the first one to try it, but I haven't seen anything.
- Tharkun 9y agoI can't speak for AMD's support towards the Radeon/OpenCL community, but their GPU and CPU support towards the Linux community has been less than stellar. And while slightly off topic, their CPUs contain just as much Evil as Intel's CPUs (PSP/ME). I wouldn't be so quick to call them a "principled" underdog.