ATI released OpenCL SDK with hardware support

Discussions related to GPU Acceleration in LuxRender

Moderators: Dade, jromang, tomb, coordinators

Re: ATI released OpenCL SDK with hardware support

Postby Dade » Tue Jan 19, 2010 4:26 pm

livuxman wrote:I would like to contribute what I've tried so far (1.1Beta2).
The first thing I did was add the libOpencl and libnvcompiler of drivers 190.29 (changing references from 190.29 to 190.53 for make it work) to the 190.53 drivers.
My card is a GTX260 with 216 shaders and my processor is a Core2Quad Q9300 at 3Ghz (64bit linux kernel and compiz)

I used the command smallluxGPU 0 4 0 1 0 1280 720 scenes/luxball.scn
The speed with 190.53 is around 4500K rays/s after 25 seconds (beginning with about 7000K)
With the driver version 195.30 the result is much lower, about 2000K


Very interesting, as expected, NVIDIA OpenCL driver had space for improvements, the good new is they are working on it and solving some issue. I have to check what driver version I have on my old PC with the 240GT. Are the 190.53 the one for CUDA 3.0beta1 ?

livuxman wrote: The main problem I have with 190.53 is that sometimes with smalluxGPU 1.1Beta2, the system freezes totally having to reboot. With 1.1Beta1 never happened.


Have you noticed if it happens only in "high bandwidth" mode ? Because the buffer are probably a bit too large and can easy put on "the knees" the PC. It shouldn't happen and it is clearly a driver bug but I have noticed that if I pass too much work to the GPU, it freezes the system for some time and it can also required a reset.

@SATtva: I'm going to support nothing else but triangle meshes in the very first version. It means no support for sphere, cylinder, cone, etc. or any other primitive different from triangles (so including microfacet displacement). Object instances and motion blur will also not supported.

Indeed, the support for other primitives will come after the very first version. At the moment I see the support for object instances as most useful thing to add after triangle meshes support.
User avatar
Dade
Developer
 
Posts: 8363
Joined: Sat Apr 19, 2008 6:04 pm
Location: Italy

Re: ATI released OpenCL SDK with hardware support

Postby Eros » Tue Jan 19, 2010 8:07 pm

I have a small question regarding the high and low latency. Is there something going wrong with the number of rays/second calculation? I just messed around making some stupid looking surface with many triangles to see how it changed things.

While the number of samples per second is improved by a minimal amount, the number of rays/second for 2000ms latency is almost 2x that of the 100ms... this looks a little bit weird (though it might be absolutely fine too, and not at all critical)

Sorry for the screenshot spam also, but they probably show it better than anything... the actual picture quality between the two isn't very much to be honest, its hard to say which one looks better.
Attachments
small3.png
100ms with stats
small2.png
2000ms with stats
small1.png
2000ms
User avatar
Eros
 
Posts: 418
Joined: Wed Jul 22, 2009 8:37 am

Re: ATI released OpenCL SDK with hardware support

Postby mitchde » Wed Jan 20, 2010 1:25 am

Can you (9400M) also post the values using GPU only (means 0 for Threads and 0 for CPU usage) ?
In both screenshoots before we see GPU usage of only 20-50%, because 2 Threads "helping" the GPU in K/sec .
In GPU only mode (0 0 0 1 ....) you will see only one line with the stat values.
mitchde
 
Posts: 256
Joined: Fri Dec 25, 2009 2:13 am

Re: ATI released OpenCL SDK with hardware support

Postby Dade » Wed Jan 20, 2010 3:27 am

Eros wrote:I have a small question regarding the high and low latency. Is there something going wrong with the number of rays/second calculation? I just messed around making some stupid looking surface with many triangles to see how it changed things.

While the number of samples per second is improved by a minimal amount, the number of rays/second for 2000ms latency is almost 2x that of the 100ms... this looks a little bit weird (though it might be absolutely fine too, and not at all critical)


My be there is something wrong but changing the frequency of screen refresh has a quite huge impact on CPU load. Screen refresh does include a tonemapping step and indeed it is a quite heavy process. Doing this process 10 times per sec instead that once every 2 seconds as an high impact on performances. Note that loading too much the CPU has a direct impact on GPU performances too because the GPU doesn't receive enough work to do.

Try to redo the same test without native threads and the difference should be quite smaller (i.e. you will have a free core to dedicate to the activity of refreshing the screen).
User avatar
Dade
Developer
 
Posts: 8363
Joined: Sat Apr 19, 2008 6:04 pm
Location: Italy

Re: ATI released OpenCL SDK with hardware support

Postby livuxman » Wed Jan 20, 2010 4:48 am

Hi Dade

190.53 are the latest certified drivers (December 16, 2009) and do not include OpenCL support (I've added it from 190.29)
195.30 is the latest beta drivers available (December 23, 2009), includes OpenCL support with a much lower performance in my case.

CUDA3 beta comes with 195.17 drivers and I have not tried it.

The freeze occur in either high bandwidth and low latency , may be an interaction with compiz.


edited: I have tested 195.17 and the performance is the same as 190.53. Looks like a problem with 195.30, glxgears was slower also. For now I have had no freeze with 195.17
livuxman
 
Posts: 84
Joined: Tue Jan 19, 2010 3:03 pm
Location: Spain

Re: ATI released OpenCL SDK with hardware support

Postby Eros » Wed Jan 20, 2010 12:29 pm

I had another look at it with the above suggestions.

with 2000ms refresh, i found that the first test i did, the screen never refreshed... ran it for 10mins then gave up.
-Second try i got this
[Device::GeForce 9400M] RayIntersection ERROR: clEnqueueReadBuffer(-36)
After about 30 seconds, again the screen didnt refresh at all

Then on the next try when things appeared to be working... kind of... (it did something odd where it left a black bar across the middle but refreshed above it fine.) It achieved 55k samples/s and 125k rays/s The only real difference was the laptop being plugged in and not.

Once ran again everything appeared fine, with identical performance as above.

with 100ms refresh it goes as 38k samples/s and 83k rays/s

So still gives a good improvement of about 50% on this clunker. Only issue is that system responsiveness takes a huge hit
User avatar
Eros
 
Posts: 418
Joined: Wed Jul 22, 2009 8:37 am

Re: ATI released OpenCL SDK with hardware support

Postby Chiaroscuro » Thu Jan 21, 2010 11:21 am

Hi David, I was looking at the OpenCL work being done on Bullet Physics and stumbled upon your SmallptGPU. Nice work! Very exciting stuff.

For fun I stripped out the GUI and profiling, and had it render until a specified number of passes were done then write out the image for batch rendering. Here’s the result:

OpenCL path tracing renderer testing, animation (and Bullet Physics)
http://www.youtube.com/watch?v=33rU1axSKhQ

Attached is a quick test image I just made with SmallLuxGPU-v1.1beta2 (11K tris). Also attached is the scene file if anyone is interested.

Thank You.
(my YouTube channel)
Attachments
focl08.jpg
Bullet Physics test render with SmallLuxGPU-v1.1beta2
SmallLuxGPU_bulletphysics_scene.zip
SmallLuxGPU v1.1 BulletPhysics test scene file
(175.91 KiB) Downloaded 96 times
Chiaroscuro
Developer
 
Posts: 858
Joined: Thu Jan 21, 2010 10:46 am

Re: ATI released OpenCL SDK with hardware support

Postby SATtva » Thu Jan 21, 2010 11:32 am

Wow, this is really impressive! Cool video. :)
Linux builds packager
聞くのは一時の恥、聞かぬのは一生の恥
User avatar
SATtva
Developer
 
Posts: 7163
Joined: Tue Apr 07, 2009 12:19 pm
Location: from Siberia with love

Re: ATI released OpenCL SDK with hardware support

Postby Dade » Thu Jan 21, 2010 12:03 pm

Chiaroscuro wrote:Hi David, I was looking at the OpenCL work being done on Bullet Physics and stumbled upon your SmallptGPU. Nice work! Very exciting stuff.

For fun I stripped out the GUI and profiling, and had it render until a specified number of passes were done then write out the image for batch rendering. Here’s the result:

OpenCL path tracing renderer testing, animation (and Bullet Physics)
http://www.youtube.com/watch?v=33rU1axSKhQ

Attached is a quick test image I just made with SmallLuxGPU-v1.1beta2 (11K tris). Also attached is the scene file if anyone is interested.

Thank You.
(my YouTube channel)


Awesome work Chiaroscuro :o :D :o

Like you write: "The OpenCL fun appears to be just beginning!". You may be interested to hear we have planned to write the part of Luxrender dedicated to OpenCL acceleration as an open source component reusable for other projects: http://www.luxrender.net/wiki/index.php?title=LuxRays

I understand your problems with the static accelerator of SmallLuxGPU. But, if there is interest, I can look a bit into the problem. It wasn't thought for that kind of applications at the beginning but I love what I have seen in your video and I would like to experience it in real time :D
User avatar
Dade
Developer
 
Posts: 8363
Joined: Sat Apr 19, 2008 6:04 pm
Location: Italy

Re: ATI released OpenCL SDK with hardware support

Postby mitchde » Thu Jan 21, 2010 1:24 pm

This scene files (bullet*) crashs smallluxGPU-v1.1beta2_OSX_64bit OS X version
Reading scene: private-scenes/bulletphysiks.scn
terminate called after throwing an instance of 'std::ios_base::failure'
what(): basic_ios::clear
Abort trap
mitch:smallluxGPU-v1.1beta2_OSX_64bit ami$


All done by this .py (shell?) or uses ATI Bullet which is sure not available for OS X (Linux?)
mitchde
 
Posts: 256
Joined: Fri Dec 25, 2009 2:13 am

PreviousNext

Return to GPU Acceleration

Who is online

Users browsing this forum: No registered users and 1 guest