<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title><![CDATA[Implement support for OpenCL API]]></title>
    <link>http://brainstorm.ubuntu.com/item/16362/</link>
    <description><![CDATA[Now that <a href="http://www.khronos.org/opencl/">OpenCL 1.0</a> is <a href="http://www.khronos.org/registry/cl/specs/opencl-1.0.29.pdf">final</a>, prioritising support would not only inspire developers to use linux, but also prove that we have the development toolkits, guts and motivation to compete against <a href="http://www.apple.com/macosx/snowleopard/">OSX Snow Leopard</a> and <a href="http://www.microsoft.com/windows/windows-7/">Windows 7</a>. If we don't support it rapidly, we will only fall further behind OSX, especially since it will give their developers extra time to utilise it properly (we shouldn't be waiting until its already popular). The faster we get this implemented, the quicker developers can use it, and the faster Ubuntu will be! <br /><br />For those who don't know, OpenCL is a royalty-free standard for developers to program general purpose highly parallelised applications over GPU and CPU (combining their power even). Its more advanced then <a href="http://www.nvidia.com/object/cuda_what_is.html">CUDA</a> in that it combines CPU and GPU power and is accessible outside of Nvidia's video cards. <br /><br />In summary, OpenCL is expected to become very popular with developers and users, and will make everything damned fast (especially considering we are already seeing <a href="http://game.amd.com/us-en/unlock_radeonhd4870x2.aspx?p=3">video cards with 1600 processing threads</a>, and <a href ="http://en.wikipedia.org/wiki/Nehalem_(microarchitecture)">Intel CPU's with 16 virtual CPU's</a> will be out Q3 2009). If every program used OpenCL, processing power will seem almost infinite to end users.<br /><br />Activision, Blizzard, AMD, Apple, ARM, Broadcom, Electronic Arts, IBM, Intel, Nokia, NVIDIA, Apple and Samsung are all on board. All major gaming companies, CPU and GPU manufacturers are on board.  So yes, it will be a slaughter without support... ATI is dropping "close to metal", and as Nvidia will support OpenCL, CUDA will probably be depreciated slowly too (at the moment they are recommending CUDA only as a higher-level development platform).<br />
<br />


<b>[511 votes] Solution #1: Auto-generated solution of idea #16362</b>
<br />

<br />
<br />



]]></description>

    <language>en-us</language>
    <pubDate>Tue, 09 Dec 2008 12:11:09 +0000</pubDate>
    <lastBuildDate>Fri, 23 Oct 2009 08:07:55 +0000</lastBuildDate>
    <generator>QAPoll module</generator>
    <guid isPermaLink="true">http://brainstorm.ubuntu.com/idea/16362/</guid>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[Maybe to put this into perspective of why this is so critical.. <br /><br />For less then $5000 total (including 3x ATI Radeon 4870 X2's), you will have 4800 processing threads. Whilst the threads on the GPU aren't as fast, some scientific algorithms and programs (especially ones that don't need perfect accuracy and do a lot of computation per result), will probably easily use them quite efficiently. <br /><br />This is less then $1 per processor thread. For only $10000, you have 10000 threads. Super computer on a desk, or a cluster of super computers, pick your choice. But people are already starting to realise this, and are starting to set up such clusters already (as they are very efficient energy-wise, MUCH cheaper, more maintainable, and good enough for many situations). <br /><br />And believe me.. If we don't make OpenCL available, Apple would be happy to sell video rendering studio's $30000 worth of gear to replace their old skool clusters, and they will be forced to use OSX for the time being. ]]></description>
  <pubDate>Tue, 09 Dec 2008 12:56:21 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[Also, btw, medical people, design studio's and researchers love such setups. Some used to have to wait days to get a result, that with OpenCL, they could get in a few minutes with the right setup.<br /><br />Finally, we could even possibly work together with companies like <a href="http://www.cray.com/Home.aspx">Cray Supercomputer</a>. And that would REALLY push up our profile (especially if our libraries were well integrated with OpenCL).<br /><br />]]></description>
  <pubDate>Tue, 09 Dec 2008 13:01:00 +0000</pubDate>
</item>
        <item>
  <title>Comment from urandom</title>
  <description><![CDATA[This idea should be promoted with full strength.]]></description>
  <pubDate>Tue, 09 Dec 2008 13:08:30 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[I agree urandom.. In fact, it will be a slaughter when Leopard comes out if we don't. I've seen design studio's with hundreds of Mac Pro's they use for rendering and such. This will get OSX computers into every workplace that does any computing.  ]]></description>
  <pubDate>Tue, 09 Dec 2008 13:37:05 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[I mean Apple will corner the design market AT LEAST with this. Scientific market likely too... ]]></description>
  <pubDate>Tue, 09 Dec 2008 13:38:39 +0000</pubDate>
</item>
        <item>
  <title>Comment from changturkey</title>
  <description><![CDATA[Big +1]]></description>
  <pubDate>Tue, 09 Dec 2008 14:08:48 +0000</pubDate>
</item>
        <item>
  <title>Comment from urandom</title>
  <description><![CDATA[It would be a good idea to put OpenCL integration for the release immediately after Jaunty, since Jaunty is most likely too far into the development stage at this time.]]></description>
  <pubDate>Tue, 09 Dec 2008 14:10:31 +0000</pubDate>
</item>
        <item>
  <title>Comment from ilya@eeepc</title>
  <description><![CDATA[wow CUDA in linux would be AWESOME! No doubt it has to be 9.04. On some tasks it gives 1000% increase of speed! no overstatement. ]]></description>
  <pubDate>Tue, 09 Dec 2008 14:18:52 +0000</pubDate>
</item>
        <item>
  <title>Comment from loneowais</title>
  <description><![CDATA[Must +1]]></description>
  <pubDate>Tue, 09 Dec 2008 14:20:03 +0000</pubDate>
</item>
        <item>
  <title>Comment from Eldmannen</title>
  <description><![CDATA["If every program used OpenCL, processing power will seem almost infinite to end users."<br />Every program can not use OpenGL, it is not suited for all kinds of things. It is mostly suited for stuff like algorithms. Video encoding/decoding, encryption/decryption, etc.]]></description>
  <pubDate>Tue, 09 Dec 2008 16:01:16 +0000</pubDate>
</item>
        <item>
  <title>Comment from Craig73</title>
  <description><![CDATA[Where I can see the advantage of this processing power is supporting more natural interactions... a computer that can look at the webcam and know if you are around (change your IM status, sound profiles, power profiles), better voice recognition/voice generation, better compression/encryption algorithms for video/voice communications.<br />]]></description>
  <pubDate>Tue, 09 Dec 2008 18:31:08 +0000</pubDate>
</item>
        <item>
  <title>Comment from cousteau</title>
  <description><![CDATA[I like all these GPGPU things. +1<br />Would this work for every GPU, or only those OpenCL-enabled? (my Nvidia isn't CUDA enabled, for example)]]></description>
  <pubDate>Tue, 09 Dec 2008 19:02:20 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[@ilya@eeepc <br />CUDA kind of sucks because its Nvidia only, and runs only on Windows and Linux. Furthermore, I don't think it uses the CPU too. This means if you program a CUDA program, if the computer doesn't have an Nvidia card, it possibly wont run at all! Whereas, with OpenCL, everyone has a CPU, so developers can rely on OpenCL exclusively (without needing multiple code-paths). <br /><br />@Eldmannen. Thats true, HOWEVER, many intensive operations are repetitive algorithms that can be. Stuff like Folding@home is already being accelerated on GPU's, and there are many other projects being done so as well. Also, for imprecise algorithms, many can be modified slightly to run on GPU too. The GPU would probably be a good place to accelerate 3D audio playback too (same principles)<br /><br />When it comes down to it, when speaking to the OSX development community, they are REALLY excited about OpenCL, and so you know when the developers are excited, its going to be massive!<br /><br /><br />@Cousteau: Not sure at this point. You'd need the CPU to have its own code, but I'd imagine that there would be a way to also have a wrapper, to change OpenCL -> OpenGL shaders when the driver doesn't support OpenCL directly (however, obviously drivers must support OpenGL shading). A wrapper probably would have a small slowdown though (so wouldn't be nearly as efficient).  <br /><br />Also, it must be noted that OpenCL can't work on every card (which is what I think you are getting at). Unfortunately, I don't know enough about the expected implementation to know what cards it would work on. But the video cards it would work on would probably need to be mostly newish, and possibly only the stream processing cards will work with the GPU aspect of OpenCL. ]]></description>
  <pubDate>Tue, 09 Dec 2008 22:58:55 +0000</pubDate>
</item>
        <item>
  <title>Comment from rouge568</title>
  <description><![CDATA[@urandom<br />In no way is it too late to get this into jaunty if we work quickly - the developer's summit is on the 11th of December.<br />I fully support integrating this into Ubuntu ASAP.<br />+1]]></description>
  <pubDate>Wed, 10 Dec 2008 00:09:11 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[Activision, Blizzard, AMD, Apple, ARM, Broadcom, Electronic Arts, IBM, Intel, Nokia, NVIDIA, and Samsung are all on board. <br /><br />Gaming, all the major graphics cards, and the major CPU manufacturers.. All links of the puzzle... ]]></description>
  <pubDate>Wed, 10 Dec 2008 01:56:46 +0000</pubDate>
</item>
        <item>
  <title>Comment from tadasv</title>
  <description><![CDATA[I've been working with CUDA for a while, but OpenCL will totally revolutionize world of computing. Are there some specific people working on OpenCL toolkit for linux?]]></description>
  <pubDate>Wed, 10 Dec 2008 03:01:28 +0000</pubDate>
</item>
        <item>
  <title>Comment from neon</title>
  <description><![CDATA[YES. huge +1.]]></description>
  <pubDate>Wed, 10 Dec 2008 04:28:41 +0000</pubDate>
</item>
        <item>
  <title>Comment from comradekingu</title>
  <description><![CDATA[Agreed]]></description>
  <pubDate>Wed, 10 Dec 2008 05:59:37 +0000</pubDate>
</item>
        <item>
  <title>Comment from ilya@eeepc</title>
  <description><![CDATA[AndrewLuecke none of your words argue that CUDA not awesome) <br />if nV associates for you with windoze, proprietarity and imperialistic invaders, for me it's only a piece of hardware, probably best in its own kind. and OpenCL is _Open_ CL, and this is good. And as i know CUDA implementation doesnt deny ability to run process on main CPU only.]]></description>
  <pubDate>Wed, 10 Dec 2008 08:55:12 +0000</pubDate>
</item>
        <item>
  <title>Comment from ilya@eeepc</title>
  <description><![CDATA[sorry i realized that i mistaken CUDA as part of OpenCL, BUT its still open, right? when is where something wrong with it?]]></description>
  <pubDate>Wed, 10 Dec 2008 09:03:17 +0000</pubDate>
</item>
        <item>
  <title>Comment from ubby</title>
  <description><![CDATA[It was conceived by Apple Inc. (which holds trade mark rights), and established as standard by Khronos Group in cooperation with others, and is based on C99.<br />OpenCL is scheduled to be introduced in Mac OS 10.6 ('Snow Leopard').<br /><br />http://en.wikipedia.org/wiki/OpenCL]]></description>
  <pubDate>Wed, 10 Dec 2008 10:34:23 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[@ilya@eeepc. Cuda isn't part of OpenCL actually, its a proprietary standard Nvidia cooked up before OpenCL existed. However, as Nvidia controls it entirely, of course ATI don't want to touch it. As CUDA is Nvidia only though, it was difficult for developers to use.. However.. <br /><br />OpenCL is as free as OpenGL. The same group handles both standards. <br /><br />Khronos are the guys who handle Opengl, and now they handle OpenCL. We know they can be trusted.. And so do other manufacturers. <br /><br />Even better, its CPU/GPU. And game developers will most likely start integrating it into their game engines ASAP!]]></description>
  <pubDate>Wed, 10 Dec 2008 11:47:21 +0000</pubDate>
</item>
        <item>
  <title>Comment from enubuntu</title>
  <description><![CDATA[+1]]></description>
  <pubDate>Wed, 10 Dec 2008 11:50:08 +0000</pubDate>
</item>
        <item>
  <title>Comment from vs8</title>
  <description><![CDATA[I like this!!!!! Please do it Ubuntu!!!!!]]></description>
  <pubDate>Wed, 10 Dec 2008 11:52:00 +0000</pubDate>
</item>
        <item>
  <title>Comment from ubby</title>
  <description><![CDATA[+1]]></description>
  <pubDate>Wed, 10 Dec 2008 12:01:49 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[And wtf.. I just noticed that the tags have a purpose now :D they are somewhat useful. Congratulations..]]></description>
  <pubDate>Wed, 10 Dec 2008 12:13:51 +0000</pubDate>
</item>
        <item>
  <title>Comment from ilya@eeepc</title>
  <description><![CDATA[AndrewLuecke, yeah i got it CUDA is sucks)) ]]></description>
  <pubDate>Wed, 10 Dec 2008 13:20:24 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[Well.. CUDA isn't bad.. Apparently its higher level then OpenCL still (which coders like).. But yeah.. <br /><br />Since we cant rely on it (especially as there is no CPU fallback or ATI support) though, and its less efficient then OpenCL (no CPU support) I guess the sux is the only way of describing it. <br /><br />Nvidia should be congratulated though for CUDA, as it REALLY helped kick off programming general computations on a GPU. ]]></description>
  <pubDate>Wed, 10 Dec 2008 13:28:15 +0000</pubDate>
</item>
        <item>
  <title>Comment from MiKom</title>
  <description><![CDATA[It's not entirely up to Ubuntu to support OpenCL. Nividia stated that their implemetation of OpenCL will be done on top of CUDA i.e. OpenCL will be translated to CUDA code or directly to internal nvidia gpgpu language (ptx). Canonical/Ubuntu should however help in development of the tools for open video drivers (xf86-video-ati/radeonhd/nouveau/intel) like OpenCL compiler (gcc wrapper probably) and video driver APIs and internals.]]></description>
  <pubDate>Fri, 12 Dec 2008 15:53:08 +0000</pubDate>
</item>
        <item>
  <title>Comment from braaivleis</title>
  <description><![CDATA[I see that there will be a fee for conformance tests so that the OpenCL trademark can be used, for a particular implementation. Read this on khronos's site (page 4 of the slides)<br /><br />Will this be a problem?]]></description>
  <pubDate>Fri, 12 Dec 2008 16:31:04 +0000</pubDate>
</item>
        <item>
  <title>Comment from Craig73</title>
  <description><![CDATA[Is it a licensing fee or royalties... the former is less bad for FOSS.]]></description>
  <pubDate>Fri, 12 Dec 2008 18:01:53 +0000</pubDate>
</item>
        <item>
  <title>Comment from braaivleis</title>
  <description><![CDATA[Sort of conformance test licensing.<br /><br />Quotation from site:<br /><br />"OpenCL implementations must pass conformance tests to use trademark. -Khronos will license tests for nominal fee to any interested company." <br /><br />Don't think its a big issue, not buying the tests means one can't officially use the OpenCL trademark.<br /><br />]]></description>
  <pubDate>Fri, 12 Dec 2008 18:48:08 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[@MiKom<br /><br />Even so though with Nvidia, we don't know if Nvidia's implementation will add support for CPU too. And people can have different GPU's running with OpenCL (a hybrid of ATI/Nvidia). <br /><br />We need to ensure we have a OpenCL framework in place so that Nvidia and such just drop their kernels into place. We must support it properly this time. And yes, Canonical don't need to support this, but either does anyone else in linux either. Someone should take charge though and get it going. <br /><br /><br />@braaivleis. Its probably the same situation as OpenGL I'd imagine (they just call it Mesa), but we all know its really OpenGL.]]></description>
  <pubDate>Sat, 13 Dec 2008 02:58:04 +0000</pubDate>
</item>
        <item>
  <title>Comment from acidicX</title>
  <description><![CDATA[Nvidia already stated that they will support OpenCL. This makes sense because they only sell GPUs, so its one target user group more for them.<br /><br />Any support of CPUs will be up to a sort of 'dispatcher' program. There is no kind of automatic CPU support in OpenCL. But neither can NV prevent it..<br /><br />I would love to see OpenCL support in jaunty, but it's no priority for me...<br /><br />@ AndrewLuecke: man, are you scared by apple or what ;-)<br />They only got 10% market share and it didn't change over the years..]]></description>
  <pubDate>Sat, 13 Dec 2008 17:53:04 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[AcidicX, I used to work for an Applecentre. But times have changed.. The Apple of today is 10x aggressive and they changed to intel 3 years ago (well, realistically, the change is maybe 2 years, because thats when they started making decent intel equipment). You're no longer dealing with the same company really. It used to be that the computers were an afterthought (they only sold because people were interested in the ipods), however, now-days, people are coming in just for the computers. <br /><br />And no, not scared. For me its about competition. I don't mind prodding all sides (Microsoft, Apple and linux), to increase competition and make things as good as possible. If you picture a tree, this is essentially part of its trunk, and openCL seriously opens up a whole new set of technologies, programs, and branches (its a base technology which makes it MUCH more important that small tweaks of nautilus and suck)<br /><br />And the CPU support I believe is done via kernels (you have different kernels for GPU's, and CPU's). I might be wrong, but provided you have a OpenCL CPU kernel in place, it is automatic when using OpenCL. <br /><br />Either way, if you want to be able to mix as many GPU's as you want in your computer, we can't rely on nvidia or ATI for the libraries. We need to do it independently and just get them to code their individual OpenCL processing kernel's for it. ]]></description>
  <pubDate>Sat, 13 Dec 2008 23:47:38 +0000</pubDate>
</item>
        <item>
  <title>Comment from crazyivan</title>
  <description><![CDATA[Big +1 for this. <br /><br />Now NVidia and ATI have committed to OpenCL, there's no real concerns holding back Ubuntu devs from implementing it.<br /><br />Obviously it has uses in scientific applications (e.g. PyMOL - especially in raytracing), but I wonder what OpenCL can do to speed up everyday applications - say, web browsing, office work, multimedia, email. Any ideas?]]></description>
  <pubDate>Mon, 15 Dec 2008 18:28:41 +0000</pubDate>
</item>
        <item>
  <title>Comment from markpmitchell</title>
  <description><![CDATA[CodeSourcery would certainly be interested in working on an OpenCL implementation in GCC.]]></description>
  <pubDate>Fri, 19 Dec 2008 21:13:19 +0000</pubDate>
</item>
        <item>
  <title>Comment from dbx</title>
  <description><![CDATA[As an old fart, who bought the Amiga 500  for its game<br />potential and 3D rendering, I have to agree - OpenCL<br />sounds like a wedge in the marketing world for more <br />acceptance of Linux. ]]></description>
  <pubDate>Wed, 24 Dec 2008 15:20:38 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[@CrazyIvan. For Multimedia, codecs and such could be reimplemented using OpenCL to accellerate them (instead of using stuff like Purevideo), for web browsing I'm sure changes to jpg decoders and such could possibly benefit and accellerate rendering. Not sure about email though.<br /><br />Multimedia is where it really matters though, and that would benefit. ]]></description>
  <pubDate>Thu, 25 Dec 2008 00:13:04 +0000</pubDate>
</item>
        <item>
  <title>Comment from loneowais</title>
  <description><![CDATA[Do we have any official word on this??]]></description>
  <pubDate>Mon, 05 Jan 2009 10:45:14 +0000</pubDate>
</item>
        <item>
  <title>Comment from mbaszczewski</title>
  <description><![CDATA[This should be priority. AndrewLuecke (first comment) say all about this...<br /><br />Ubuntu developers: help us :)]]></description>
  <pubDate>Tue, 06 Jan 2009 16:32:50 +0000</pubDate>
</item>
        <item>
  <title>Comment from mirnazim</title>
  <description><![CDATA[+ + + + + + 1]]></description>
  <pubDate>Fri, 09 Jan 2009 16:18:38 +0000</pubDate>
</item>
        <item>
  <title>Comment from crazyivan</title>
  <description><![CDATA[@AndrewLuecke<br /><br />Multimedia would indeed be where most users see the most gain. The smooth playback of h.264 1080p content, which right now is just a pipe dream unless you lay down serious cash for high-end GPUs that support xvmc/xvba properly, or pay for the proprietary codecs like Purevideo HD and CoreAVC, could with OpenCL become a reality for everyone. A Free, Open Source reality ;)<br /><br />As regards email, users often send photos and videos to each other which a modified jpg / png / etc decoder could accelerate. Not sure how much of a benefit there would be though.<br /><br />For PyMOL, which is a molecular visualisation program, it would be cool if you could run all the time in raytrace mode. Right now you have to arrange the molecule exactly how you want in the low-quality preview mode, then raytrace that scene. But with OpenCL I can envisage a situation where you're manipulating a raytraced molecule all the time, in real time, which would look so much nicer and more precisely rendered. Perhaps not on today's hardware, but in the near future there should be GPUs capable of it. Especially when running on our favourite, highly efficient penguin.]]></description>
  <pubDate>Fri, 09 Jan 2009 21:07:03 +0000</pubDate>
</item>
        <item>
  <title>Comment from slashdotaccount</title>
  <description><![CDATA[If possible Ubuntu should expand Gallium3d to support the OpenCL interface. And then graphics driver using gallium3d should be made make use of it. That the way to go imo. Thanks.]]></description>
  <pubDate>Wed, 28 Jan 2009 12:59:09 +0000</pubDate>
</item>
        <item>
  <title>Comment from linhares</title>
  <description><![CDATA[this is a must.  We will be seen as years behind when apple comes flashing with their implementation and whatever tricks they'd have to show for.  Microsoft, as always, is playing catch up in its clumsy manner:<br /><br />http://www.electronista.com/articles/08/07/23/directx.11.with.gpgpu.tech/<br /><br />+1.  Want linux on the desktop? This one is a must, folks.]]></description>
  <pubDate>Fri, 20 Mar 2009 01:10:57 +0000</pubDate>
</item>
        <item>
  <title>Comment from AndrewLuecke</title>
  <description><![CDATA[Just an update. Apparently Nvidia and ATI will support this on windows.. ]]></description>
  <pubDate>Fri, 20 Mar 2009 05:36:38 +0000</pubDate>
</item>
      </channel>
</rss>
