<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Simon&#039;s Graphics Blog &#187; GPGPU</title>
	<atom:link href="http://www.sjbrown.co.uk/category/gpgpu/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sjbrown.co.uk</link>
	<description>Work log for ideas and hobby projects.</description>
	<lastBuildDate>Fri, 13 May 2011 09:48:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>Hybrid Bidirectional Path Tracing</title>
		<link>http://www.sjbrown.co.uk/2011/03/21/hybrid-bidirectional-path-tracing/</link>
		<comments>http://www.sjbrown.co.uk/2011/03/21/hybrid-bidirectional-path-tracing/#comments</comments>
		<pubDate>Mon, 21 Mar 2011 20:14:07 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Global Illumination]]></category>
		<category><![CDATA[GPGPU]]></category>
		<category><![CDATA[Rendering]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=649</guid>
		<description><![CDATA[I&#8217;d like to share my results from converting a CPU-only bidirectional path tracer into a CPU/GPU hybrid (CPU used for shading and sampling, GPU used for ray intersections). These results are a bit old&#8230; I posted them a while ago as a thread on ompf. I found out later that this thread had been cited [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2011/03/21/hybrid-bidirectional-path-tracing/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Now You&#8217;re Lighting With Portals</title>
		<link>http://www.sjbrown.co.uk/2011/01/31/now-youre-lighting-with-portals/</link>
		<comments>http://www.sjbrown.co.uk/2011/01/31/now-youre-lighting-with-portals/#comments</comments>
		<pubDate>Mon, 31 Jan 2011 21:55:52 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Global Illumination]]></category>
		<category><![CDATA[GPGPU]]></category>
		<category><![CDATA[Rendering]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=618</guid>
		<description><![CDATA[I hate dome lights. You always waste a ton of rays that are occluded by geometry, and the situation gets even worse when lighting indoor scenes with exterior dome lights! So why not help your renderer out and place portals that, when hit, teleport to the dome light. Then instead of sampling the whole skydome, [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2011/01/31/now-youre-lighting-with-portals/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Two-Way Path Tracing</title>
		<link>http://www.sjbrown.co.uk/2011/01/03/two-way-path-tracing/</link>
		<comments>http://www.sjbrown.co.uk/2011/01/03/two-way-path-tracing/#comments</comments>
		<pubDate>Mon, 03 Jan 2011 13:17:29 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Global Illumination]]></category>
		<category><![CDATA[GPGPU]]></category>
		<category><![CDATA[Rendering]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=460</guid>
		<description><![CDATA[This post is about a path tracing technique that sits between unidirectional path tracing and bidirectional path tracing. For want of a better name, let&#8217;s call this two-way path tracing. It&#8217;s defined as follows: Trace eye rays, handle light source intersections and sample light sources explicitly Trace light rays, handle sensor intersections and sample sensors [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2011/01/03/two-way-path-tracing/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Adventures in CUDA Path Tracing: Part 2</title>
		<link>http://www.sjbrown.co.uk/2010/10/24/adventures-in-cuda-path-tracing-part-2/</link>
		<comments>http://www.sjbrown.co.uk/2010/10/24/adventures-in-cuda-path-tracing-part-2/#comments</comments>
		<pubDate>Sun, 24 Oct 2010 17:21:09 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Global Illumination]]></category>
		<category><![CDATA[GPGPU]]></category>
		<category><![CDATA[Rendering]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=467</guid>
		<description><![CDATA[This is really just teaser post for my next update.  I&#8217;ve not done much on traversal yet (hence the world of spheres), but I&#8217;ve made some progress on shading.  Here&#8217;s a screenshot of a pure CUDA renderer left for 20 seconds or so to get a nice smooth result: This scene contains a few BSDFs: [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2010/10/24/adventures-in-cuda-path-tracing-part-2/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>CUDA Tips</title>
		<link>http://www.sjbrown.co.uk/2010/10/24/cuda-tips/</link>
		<comments>http://www.sjbrown.co.uk/2010/10/24/cuda-tips/#comments</comments>
		<pubDate>Sun, 24 Oct 2010 13:20:20 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[GPGPU]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=394</guid>
		<description><![CDATA[I&#8217;ve been doing a bit more GPU programming recently, here are some things I found when writing CUDA programs. This all refers to the CUDA compiler in the recent 3.2RC, and based on my experiences with GTX 275 hardware. In particular this advice may need to be tweaked for Fermi architecture GPUs, since I have [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2010/10/24/cuda-tips/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Optix</title>
		<link>http://www.sjbrown.co.uk/2010/08/11/using-optix/</link>
		<comments>http://www.sjbrown.co.uk/2010/08/11/using-optix/#comments</comments>
		<pubDate>Wed, 11 Aug 2010 11:41:11 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Global Illumination]]></category>
		<category><![CDATA[GPGPU]]></category>
		<category><![CDATA[Rendering]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=381</guid>
		<description><![CDATA[Optix version 2.0 was released recently, so I gave it a go by plugging it into an existing multi-core path tracer. This path tracer can submit tens of thousands of ray queries as a batch so should be a good match for Optix and the GPU. I liked: Ease of use. Wow this thing makes [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2010/08/11/using-optix/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>CUDA Mersenne Twister</title>
		<link>http://www.sjbrown.co.uk/2009/12/13/cuda-mersenne-twister/</link>
		<comments>http://www.sjbrown.co.uk/2009/12/13/cuda-mersenne-twister/#comments</comments>
		<pubDate>Sun, 13 Dec 2009 22:09:57 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Global Illumination]]></category>
		<category><![CDATA[GPGPU]]></category>
		<category><![CDATA[Rendering]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=319</guid>
		<description><![CDATA[I needed a random number generator for a CUDA project, and had relatively few requirements: It must have a small shared memory footprint It must be suitable for Monte Carlo methods (i.e. have long period and minimal correlation) It must allow warps to execute independently when generating random numbers There seem to be two main [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2009/12/13/cuda-mersenne-twister/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Adventures in CUDA Path Tracing: Part 1</title>
		<link>http://www.sjbrown.co.uk/2009/08/15/cuda-path-tracing/</link>
		<comments>http://www.sjbrown.co.uk/2009/08/15/cuda-path-tracing/#comments</comments>
		<pubDate>Sat, 15 Aug 2009 13:55:43 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[CUDA]]></category>
		<category><![CDATA[Global Illumination]]></category>
		<category><![CDATA[GPGPU]]></category>
		<category><![CDATA[Rendering]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=295</guid>
		<description><![CDATA[I thought I&#8217;d have a go at implementing some path tracing in CUDA. Let&#8217;s start simple: a classical path tracer with explicit direct lighting. Lots of hacks: No BVH yet, every ray tests the 30 triangles of the Cornell Box Every surface is lambertian (so cosine weighted hemisphere sampling for spawning rays) Hardcoded for a [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2009/08/15/cuda-path-tracing/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Convergence</title>
		<link>http://www.sjbrown.co.uk/2009/08/06/convergence/</link>
		<comments>http://www.sjbrown.co.uk/2009/08/06/convergence/#comments</comments>
		<pubDate>Thu, 06 Aug 2009 16:18:48 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[GPGPU]]></category>
		<category><![CDATA[Random]]></category>
		<category><![CDATA[Rendering]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=288</guid>
		<description><![CDATA[I&#8217;m extremely excited about the results of Understanding the Efficiency of Ray Traversal on GPUs, and the related work by NVIDIA on ray traversal. In a programming way of course. There&#8217;s this interesting paradigm shift from a strongly geometric grid model to one where we have persistent threads running small kernels (or actually large kernels due [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2009/08/06/convergence/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenCL on the CPU</title>
		<link>http://www.sjbrown.co.uk/2009/01/16/opencl-on-the-cpu/</link>
		<comments>http://www.sjbrown.co.uk/2009/01/16/opencl-on-the-cpu/#comments</comments>
		<pubDate>Fri, 16 Jan 2009 12:50:55 +0000</pubDate>
		<dc:creator>Simon Brown</dc:creator>
				<category><![CDATA[GPGPU]]></category>

		<guid isPermaLink="false">http://www.sjbrown.co.uk/?p=258</guid>
		<description><![CDATA[So the old news is that the OpenCL specification has been done in record time and endorsed by all the major GPU manufacturers. This is many kinds of awesome, but I&#8217;m wondering if any particular vendor is going to concentrate on a CL_DEVICE_TYPE_CPU implementation. I think a CPU implementation of OpenCL is important for two [...]]]></description>
		<wfw:commentRss>http://www.sjbrown.co.uk/2009/01/16/opencl-on-the-cpu/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
<!-- This Quick Cache file was built for (  www.sjbrown.co.uk/category/gpgpu/feed/ ) in 0.28417 seconds, on Feb 5th, 2012 at 9:00 am UTC. -->
<!-- This Quick Cache file will automatically expire ( and be re-built automatically ) on Feb 5th, 2012 at 10:00 am UTC -->
