<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: OpenCL - the compute intermediate language</title>
	<atom:link href="http://www.palgorithm.co.uk/2011/02/opencl-the-compute-intermediate-language/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.palgorithm.co.uk/2011/02/opencl-the-compute-intermediate-language/</link>
	<description>Discussion of algorithms for games, graphics and general engineering</description>
	<lastBuildDate>Sun, 19 May 2013 02:25:01 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Eddie Edwards</title>
		<link>http://www.palgorithm.co.uk/2011/02/opencl-the-compute-intermediate-language/comment-page-1/#comment-7588</link>
		<dc:creator>Eddie Edwards</dc:creator>
		<pubDate>Sat, 12 Feb 2011 13:44:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.palgorithm.co.uk/?p=209#comment-7588</guid>
		<description>PTX rocks (just researched it! Thanks for the link!)

But it solves a very specific problem, given it&#039;s programming model, which is essentially mapping Cg (+ pointers) to a single SIMD way ... similar to what Larrabee&#039;s shader compiler does in 16-way SIMD. But as-is it would not be suitable for writing the Larrabee renderer. It covers maybe half of the Larrabee ISA.

Still it goes a long way!</description>
		<content:encoded><![CDATA[<p>PTX rocks (just researched it! Thanks for the link!)</p>
<p>But it solves a very specific problem, given it's programming model, which is essentially mapping Cg (+ pointers) to a single SIMD way ... similar to what Larrabee's shader compiler does in 16-way SIMD. But as-is it would not be suitable for writing the Larrabee renderer. It covers maybe half of the Larrabee ISA.</p>
<p>Still it goes a long way!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eddie Edwards</title>
		<link>http://www.palgorithm.co.uk/2011/02/opencl-the-compute-intermediate-language/comment-page-1/#comment-7587</link>
		<dc:creator>Eddie Edwards</dc:creator>
		<pubDate>Sat, 12 Feb 2011 12:27:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.palgorithm.co.uk/?p=209#comment-7587</guid>
		<description>Hey Sam,

Something like LLVM would be cool, but I don&#039;t see the necessity. Making a compiler output OpenCL or CUDA or Cg/HLSL is simple enough, just as the first C++ compilers output C. Then each vendor can implement those languages how they like.

I&#039;m sure LLVM will grow to support such use-cases. If the industry settles on PTX then LLVM may get simpler and smaller, but nothing fundamental will become possible that wasn&#039;t before. PTX is nice to have, that&#039;s all.

The focus should not be on the specifics here, but on the more general problems: how can I easily refactor code so that it runs on a different mix of coprocessors? When my console has 4 scalar cores with 4-way SIMD plus 32 cores of Larrabee plus a 2048-unit GPU, how can I retarget code when I find I need to change my occupancy profile?

The problem is the huge differences in architecture - exemplified by the fact that RenderTris(vertex[], index[], shader()) is implemented in hardware on a GPU but software on Larrabee. PTX covers the shader() part, but implementations of RenderTris, plus the API calls to actually trigger the call, are completely different and must be selected per architecture. It&#039;s there that PTX may break down as it may lack access to non-generic features per architecture (e.g. SPU channel registers or special Larrabee opcodes).

Still, food for thought!</description>
		<content:encoded><![CDATA[<p>Hey Sam,</p>
<p>Something like LLVM would be cool, but I don't see the necessity. Making a compiler output OpenCL or CUDA or Cg/HLSL is simple enough, just as the first C++ compilers output C. Then each vendor can implement those languages how they like.</p>
<p>I'm sure LLVM will grow to support such use-cases. If the industry settles on PTX then LLVM may get simpler and smaller, but nothing fundamental will become possible that wasn't before. PTX is nice to have, that's all.</p>
<p>The focus should not be on the specifics here, but on the more general problems: how can I easily refactor code so that it runs on a different mix of coprocessors? When my console has 4 scalar cores with 4-way SIMD plus 32 cores of Larrabee plus a 2048-unit GPU, how can I retarget code when I find I need to change my occupancy profile?</p>
<p>The problem is the huge differences in architecture - exemplified by the fact that RenderTris(vertex[], index[], shader()) is implemented in hardware on a GPU but software on Larrabee. PTX covers the shader() part, but implementations of RenderTris, plus the API calls to actually trigger the call, are completely different and must be selected per architecture. It's there that PTX may break down as it may lack access to non-generic features per architecture (e.g. SPU channel registers or special Larrabee opcodes).</p>
<p>Still, food for thought!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Vincent Hindriksen</title>
		<link>http://www.palgorithm.co.uk/2011/02/opencl-the-compute-intermediate-language/comment-page-1/#comment-7565</link>
		<dc:creator>Vincent Hindriksen</dc:creator>
		<pubDate>Fri, 11 Feb 2011 10:27:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.palgorithm.co.uk/?p=209#comment-7565</guid>
		<description>In two blog-articles of April and July last year, named &quot;Does GPGPU have a bright future?&quot; and &quot;The rise of the GPGPU-compilers&quot;, I spoke about the same. OpenCL is to low-level and therefore is going to be the hidden power of software, maintained in specialised libraries.

OpenCL has the most potential to be the hidden layer between software and compute-device, but it&#039;s not about innovation but about money.</description>
		<content:encoded><![CDATA[<p>In two blog-articles of April and July last year, named "Does GPGPU have a bright future?" and "The rise of the GPGPU-compilers", I spoke about the same. OpenCL is to low-level and therefore is going to be the hidden power of software, maintained in specialised libraries.</p>
<p>OpenCL has the most potential to be the hidden layer between software and compute-device, but it's not about innovation but about money.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->