[Bf-committers] Proposal: Blender OpenCL compositor
Jeroen Bakker
j.bakker at atmind.nl
Sat Jan 15 08:04:30 CET 2011
Hi!
There are 2 scenarios of to implement GPU-based compositing. In the
early days you did this via OpenGL and the final picture was influenced
a lot on the specific hardware you ran it on (What OpenGL feature is
implemented and how). Nowadays this is still an issue with OpenGL, but
the cracks are smaller. The second scenario is to use something like
Cuda, Steam or OpenCL. These are compute libraries and will ensure that
all calculations are done in the same manner among devices. Also
universities and other parties in our industry use it for this. Farms
are already being migrated to OpenCL farms. As they are cheaper in
hardware costs.
BTW. renderfarm.fi should be capable of running OpenCL as this is
proposal is implemented!
OpenCL has some limitations. We testdrive the approach by only using
OpenCL for these nodes. But due to graphical memory boundaries it was
only possible to use resolutions up to 4k on a 1Gb card and the code
that needed to be done is not easilly maintainble. The OpenCL code was
visible in the node itself and IMO you shouldn't need a core blender
developer to create a node. In the future I see that we will get
multiscoptic video and higher resolutions and complexer nodes (an
accurate 3d blur in stead of the vector blur) and node systems
(framenumber based switch: calculate this via vector blur in the begin
of the scene and calculate this via 3d blur later in the scene).
To solve these limitation you need something as tile based compositing
and a memory manager for OpenCL and the node internals should be
restructures. Without these you will not be able to get a production
stable OpenCL.
The Compositor has technical 3 parts. The nodes editor, the nodes
themselves and the Execution engine. The tiled based node system
influences the execution engine for 90%, the nodes needs to be
restructured internally, and the nodes editor should only be influenced
for a tiny part.
As a result of this proposal the redesign of the compositor editor and
implementing other nodes will become much easier. Also the OpenCL
components can be used to add OpenCL to other area's in Blender (like
the renderer or simulations).
Jeroen
On 01/15/2011 01:02 AM, Mike Pan wrote:
> > From a user's perspective, it seems a few node (blur, defocus, vector blur)
> is responsible for over 90% of the node-compositing time in a real
> production, accelerating these will probably have a far larger impact/effort
> ratio than overhauling the entire framework.
>
> also, sorry about the LinkedIn spam earlier today.
>
> -mike pan
>
>
> On Fri, Jan 14, 2011 at 11:27 AM, Roger Wickes From IPhone<
> rogerwickes at yahoo.com> wrote:
>
>> And next gen cpus are incorporating the arch from what i read
>>
>> Sent from my iPhone
>>
>> On Jan 14, 2011, at 8:17 AM, Xavier Thomas<xavier.thomas.1980 at gmail.com>
>> wrote:
>>
>>> Beside, OpenCL does not specially mean GPU. OpenCL can be executed by CPU
>>> and even be accelerated by multiple CPU/Cores
>>>
>>> 2011/1/14 Knapp<magick.crow at gmail.com>
>>>
>>>>> While some of the GPU based stuff nowadays looks very spectacular, I
>>>>> personally still feel hesitant - I don't think CPUs (and especially
>>>>> multiprocessing) should be left by the wayside. Not only due to the
>>>>> increasing prevalence of multicore systems nowadays, but also for
>>>>> render farms, which are very largely CPU based.
>>>>>
>>>>> cheers
>>>>>
>>>>> Matt
>>>> Yes, but for how long will that remain true??
>>>>
>> http://www.tomshardware.com/news/nvda-china-super-computer-gpu,11545.html
>>>> Douglas E Knapp
>>>>
>>>> Creative Commons Film Group, Helping people make open source movies
>>>> with open source software!
>>>> http://douglas.bespin.org/CommonsFilmGroup/phpBB3/index.php
>>>>
>>>> Massage in Gelsenkirchen-Buer:
>>>> http://douglas.bespin.org/tcm/ztab1.htm
>>>> Please link to me and trade links with me!
>>>>
>>>> Open Source Sci-Fi mmoRPG Game project.
>>>> http://sf-journey-creations.wikispot.org/Front_Page
>>>> http://code.google.com/p/perspectiveproject/
>>>> _______________________________________________
>>>> Bf-committers mailing list
>>>> Bf-committers at blender.org
>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>
>>> _______________________________________________
>>> Bf-committers mailing list
>>> Bf-committers at blender.org
>>> http://lists.blender.org/mailman/listinfo/bf-committers
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
>>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
--
Met vriendelijke groet,
Jeroen Bakker
*At Mind BV
*
Telefoon: 06 50 611 262
E-mail: j.bakker at atmind.nl <mailto:j.bakker at atmind.nl>
More information about the Bf-committers
mailing list