Logo by Maya - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Visit us on facebook
 
*
Welcome, Guest. Please login or register. March 29, 2024, 03:23:22 PM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: [1]   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: Multi-GPU Rendering  (Read 1312 times)
0 Members and 1 Guest are viewing this topic.
Patryk Kizny
Global Moderator
Fractal Fertilizer
******
Posts: 372



kizny
WWW
« on: March 20, 2016, 03:25:34 PM »

Dear all,

Some time ago I wasn't able to run Fragmentarium under Win7x64 on 2x R9280x.
No matter what I did, the second GPU never contributed. I thought it's because of shitty AMD Drivers and finally gave up.

Today I'm getting against the same issue again and wanted to raise it and see what can be done here.
I currently have 3 NVidia GPUs in my machine, 2 of them running in SLI. Unfortunately, only one machine is ever used.

Can you have a look into the code and see what would need to be done to:
1) Be able to choose what GPUs Fragmentarium is running (at least to allow for multi instance rendering)
2) Be able to use all (if possible)

Help greatly appreciated.
Logged

Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
hobold
Fractal Bachius
*
Posts: 573


« Reply #1 on: March 20, 2016, 04:55:12 PM »

As far as I know neither CUDA nor OpenCL can automatically distribute work among several distinct coprocessors. That is left to the programmer. This is not a driver issue. It is a feature/limitation of the programming model that all data transfers between coprocessors are explicit and actively triggered. This is a consequence of the coprocessors being only loosely coupled.

There is some effort towards better integration of GPUs (both with the CPUs and with other GPUs), but we're not there yet. Progress is rather slow, unfortunately, because Intel, AMD, and Nvidia have somewhat conflicting interests.


It may be possible to run several instances of a given GPU accelerated program, with each instance using a different GPU. That would probably require trickery specific to each OS and each GPU driver - my knowledge doesn't reach that far.
Logged
quaz0r
Fractal Molossus
**
Posts: 652



« Reply #2 on: March 20, 2016, 07:06:58 PM »

yeah, it is possible for a programmer to make this happen, but i dont think ive even seen a single program that tries to support this.  i am doing this in my own mandelbrot program on linux, being able to run on multiple opencl devices concurrently.  one thing i have learned on linux at least to help make this happen is to use something like this  http://forge.imag.fr/projects/ocl-icd/  which helps to properly expose multiple opencl devices at once.  do you guys know if there is a similar thing for windows?  at some point i was going to look into making my program run on windows but i dont know how these things work (if at all) on windows.
Logged
lycium
Fractal Supremo
*****
Posts: 1158



WWW
« Reply #3 on: March 20, 2016, 08:18:48 PM »

Maybe you should have taken up my offer for a custom multi-GPU capable OpenCL rendering engine, while I was curious to visit you at Martin's wink For all the money spent on those GPUs, you could... fine, I'll stop  tongue stuck out

Good news is, doing multi GPU rendering with OpenCL is trivial; I'm sure someone here will do it eventually.
Logged

3dickulus
Global Moderator
Fractal Senior
******
Posts: 1558



WWW
« Reply #4 on: March 20, 2016, 09:17:06 PM »

some info regarding this...
http://us.download.nvidia.com/XFree86/Linux-x86/173.14.12/README/chapter-25.html

I am looking at this, I think it will be possible for the off-screen rendering when creating "tiled" images...

but hobolds idea, "run several instances... with each instance using a different GPU" might be easier using the script engine or manually specifying a range of frames.

much of the stuff I've seen has been for main display rendering, so with 2 displays setup properly with 2 GPUs it might be as easy as running 2 instances and dragging one over to the other display  huh?
Logged

Resistance is fertile...
You will be illuminated!

                            #B^] https://en.wikibooks.org/wiki/Fractals/fragmentarium
Patryk Kizny
Global Moderator
Fractal Fertilizer
******
Posts: 372



kizny
WWW
« Reply #5 on: March 21, 2016, 10:30:49 AM »

@3dickulus - that would be certainly awesome to have this implemented for tile based rendering.
For previews I understand it would be more difficult.
And in the meantime I'll check the path with separate instances on separate monitors on separate GPUs.
Logged

Visual Artist, Director & Cinematographer specialized in emerging imaging techniques.
Pages: [1]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
A bug in raystep multi Mandelbulb 3d DarkBeam 1 995 Last post February 15, 2011, 09:55:58 PM
by Jesse
Multi IFS fractal Images Showcase (Rate My Fractal) Zelcious 1 1271 Last post May 29, 2011, 04:56:46 AM
by lycium
Unexpected need for Multi-precision General Discussion element90 0 1198 Last post June 07, 2013, 09:57:50 AM
by element90
Mandelbulb Multi Mandelbulber Gallery Buddhi 0 667 Last post February 26, 2016, 06:23:36 PM
by Buddhi
Multi windowing Mandelbulber cochedelaferte 2 1051 Last post April 25, 2016, 12:47:57 AM
by cochedelaferte

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.545 seconds with 28 queries. (Pretty URLs adds 0.008s, 2q)