POV-Ray : Newsgroups : povray.pov4.discussion.general : GPU usage Server Time
31 Oct 2024 19:08:45 EDT (-0400)
  GPU usage (Message 7 to 16 of 26)  
<<< Previous 6 Messages Goto Latest 10 Messages Next 10 Messages >>>
From: Chambers
Subject: Re: GPU usage
Date: 7 Jan 2009 03:50:49
Message: <5412C33CFC874C64AD0AFF80C11C2654@HomePC>
(Sorry it took me so long to respond, our internet connection was down
for a while).

While the OpenCL spec is very exciting for the GPGPU effort, it will not
help renderers such as POV-Ray.  Ultimately, they still come down to a
SIMD design: specify one instruction (or one set of instructions), and
run it on multiple sets of data.

In practice, this means that anything with a high degree of branching
(ie POV-Ray) won't benefit nearly as much.

Of course, the new GPUs are more capable than ever, and they do offer
double precision floating point, so it may at one point be possible for
limited aspects of the renderer.  However, bear in mind that even
something as inherently SIMD as video encoding, using a high end GPU
from NVidia (the GeForce 260) was actually *slower* than a stock Core 2
Duo from Intel (1).  Something with as much branching as POV-Ray will
perform even worse.

So, there's new hope for the future, but it's still a *distant* future.

(1)
http://xtreview.com/addcomment-id-6872-view-CUDA-video-performance-using
-TMPGEnc-4.0-Xpress.html

...Ben Chambers
www.pacificwebguy.com

The plural of anecdote is not data  --Elbows


Post a reply to this message

From: Saul Luizaga
Subject: Re: GPU usage
Date: 3 Mar 2009 02:29:04
Message: <49acdc40$1@news.povray.org>
For what I have read about it, GPUs are great for geometry and some 
other graphic related calculations, because they have more sophisticated 
  hardwired, say trigonometric, functions that the FPU simply doesn't 
have, this leads me to ask the experienced programmers here if how huge 
would be to make a rough "previewer", real-time if possibile, for 
POV-Ray? Correct me if I'm wrong but at some point that effort has to be 
easy because the GPU have this scene elements analog to POV-Ray's 
(lightning, primitives, colors, phong, diffuse, etc.), why is so hard to 
use resemblance in features to POV-Ray's favor? I know... is only 32-bit 
precision, is not 100% compatible, POV-Rays is Hyper-complex and 
wealthy-rich in features but, somehow can't the to GPU along with the 
FPU & CPU can't get to cut a deal that can give u an estimate of what 
you'll receive if the scene is rendered?

  I really whish I could answer this myself...maybe a como of GPU 
features can give some of the most complex POV-Ray's features? maybe a 
rough rough preview, something that can "guess"(fast calculations with 
GPU+FPU+CPU) to get just an estimation of the final colors and effects 
on the objects, and mainly this could be used to preview the modeled 
geometry of solids and surfaces and the lighting on the scene, rather 
than actually have a correct colored accurate scene, don't you think?

Another suggestion, what about this:
a small floating window (maybe 512*384 or 384*288) with the title "rough 
preview" that makes the GPU+FPU+CPU preview of the scene as ral-time as 
possible "while you type" or when you have finished a valid line, this 
could be configurable, but I think would be great as a default.

This ideas is so incompatible with reality? I hope not, you tell me :)

Regards.


Post a reply to this message

From: Saul Luizaga
Subject: Re: GPU usage
Date: 3 Mar 2009 02:44:19
Message: <49acdfd3@news.povray.org>
In the spirit of co-processing (GPU+FPU+CPU) I would like to suggest 
that if isn't too much of a trouble, would be great if POV-Ray could 
have a GPU+CPU(CPU included) Identifier (GPU-Z, CPU-Z,etc) to use 
available processing hardware resources to render, *of course* GPU 
helping whenever it can keep with POV-Ray's quality specs and/or "rough 
preview". Makes sense?


Post a reply to this message

From: clipka
Subject: Re: GPU usage
Date: 3 Mar 2009 07:25:00
Message: <web.49ad2031dc9638abbdc576310@news.povray.org>
Saul Luizaga <sau### [at] netscapenet> wrote:
(<GPU preview>)

Interesting idea. Would be a lot of work to implement though, I guess.

> Another suggestion, what about this:
> a small floating window (maybe 512*384 or 384*288) with the title "rough
> preview" that makes the GPU+FPU+CPU preview of the scene as ral-time as
> possible "while you type" or when you have finished a valid line, this
> could be configurable, but I think would be great as a default.

Great idea, but what if your scene file takes 15 minutes to (re-)parse because
of heavy macro usage? And what if you are working on SDL code designed to write
to files (radiosity samples, photons, or just plain #write output)? I wouldn't
want POV to just start running *such* SDL code while it isn't "ready to rock"
yet.

(Or what if all the changes you want to do is just a few #defines that govern
whether your SDL file *does* #write or instead #read some stuff, in order to
switch from #write to #read mode... don't even want to think about it. Argh!)

No, I think the idea is intriguing, but prohibitive due to the power of POV's
SDL language.


Post a reply to this message

From: clipka
Subject: Re: GPU usage
Date: 3 Mar 2009 07:35:01
Message: <web.49ad231cdc9638abbdc576310@news.povray.org>
Saul Luizaga <sau### [at] netscapenet> wrote:
> In the spirit of co-processing (GPU+FPU+CPU) I would like to suggest
> that if isn't too much of a trouble, would be great if POV-Ray could
> have a GPU+CPU(CPU included) Identifier (GPU-Z, CPU-Z,etc) to use
> available processing hardware resources to render, *of course* GPU
> helping whenever it can keep with POV-Ray's quality specs and/or "rough
> preview". Makes sense?

If we're talking about using GPU to support regular render, then I guess this is
a no-go: Modifying POV to this effect *would* be too much of a trouble, that's a
definite.

It might be possible to add a dedicated "preview module" though, which could
then make use of different GPU hardware... anyone volunteer for this task?

(Just as a side note, I don't have much hope that there will actually be too
many people screaming "me!" right now; I also think that at the time being,
development effort is better invested in other areas.)


Post a reply to this message

From: Saul Luizaga
Subject: Re: GPU usage
Date: 3 Mar 2009 15:02:14
Message: <49ad8cc6$1@news.povray.org>
I see what you mean and yes, there will be times where such preview 
window could not be displayed and would be great to have a way to 
indicate to the window that ignore certain if not all the code, 
activating or deactivating the window with a hot-key and another hot-key 
  for the preview.

As I say the preview would be only for certain aspects of POV-Ray that 
can be quickly if not real-time previewed, of course if the parsing 
would take time "preview as you type" would be a no-go.

I propose this humble solution: have the preview Window to open a copy 
of the source code window but not for editing but for selecting the 
parts of the code that will be preview IF they don't take too long to 
parse, with an easy paragraph/structure selection with small bookmarks 
of paragraphs/structure "bookmarks" like Acrobat Reader displays when a 
.pdf has bookmarks. Also would be good that the preview starts when you 
open you .pov (if configured this way), and to make open-up preview, the 
would simply add elements to that preview as you create them and select 
them for preview, eliminating the need to re-preview the scene.

Regards.


Post a reply to this message

From: Chambers
Subject: Re: GPU usage
Date: 3 Mar 2009 21:31:04
Message: <49ade7e8$1@news.povray.org>
The problem is that GPUs, in their current form, are great for 
processing triangles but not much else.

POV-Ray, on the other hand, uses a wide variety of geometric primitives.

There *was* a version floating around that did a tessellated preview 
using OpenGL.  While functional, it never really caught on (AFAIK, the 
prevailing method of a quick preview is to #declare several identifiers 
specifying quality levels at the head of your main .pov file).

-- 
...Chambers
www.pacificwebguy.com


Post a reply to this message

From: Saul Luizaga
Subject: Re: GPU usage
Date: 4 Mar 2009 11:43:59
Message: <49aeafcf@news.povray.org>
Chambers wrote:
> The problem is that GPUs, in their current form, are great for 
> processing triangles but not much else.

I have to desagree, Ihave seen examples on some web pages how the GPU 
beat the crap out of a CPU (FPU included) on certain calculations, I was 
reading about "GPUs as a powerful co-processor" or something like that. 
Those calculations were prety complex for 3D geometry solving and other 
stuff I don't recall well, was like a year or so ago.

As someone mentioned there is a version of Human Proteome Folding - 
Phase 2 for GPU processing, alsmost none CPU/FPU usage.


> POV-Ray, on the other hand, uses a wide variety of geometric primitives.

The preview would be as i wrote on another post on this thread a rough 
rough "preview" and not a mini/fast rendering,  if not all POV-Ray 
features can be "previewed" then only what it can, *and* a on the status 
mini-window saying what was previewed and what not, in short, I think 
the preview has to be a "glance window".

> There *was* a version floating around that did a tessellated preview 
> using OpenGL.  While functional, it never really caught on (AFAIK, the 
> prevailing method of a quick preview is to #declare several identifiers 
> specifying quality levels at the head of your main .pov file).
> 

A begining...


Post a reply to this message

From: Warp
Subject: Re: GPU usage
Date: 4 Mar 2009 12:18:32
Message: <49aeb7e8@news.povray.org>
Saul Luizaga <sau### [at] netscapenet> wrote:
> Chambers wrote:
> > The problem is that GPUs, in their current form, are great for 
> > processing triangles but not much else.

> I have to desagree, Ihave seen examples on some web pages how the GPU 
> beat the crap out of a CPU (FPU included) on certain calculations, I was 
> reading about "GPUs as a powerful co-processor" or something like that. 
> Those calculations were prety complex for 3D geometry solving and other 
> stuff I don't recall well, was like a year or so ago.

  The GPU can only be used to your advantage if you can give it a big
bunch of calculations to perform, let it crunch the numbers for several
seconds (or minutes) and then retrieve the results.

  However, generally speaking, a raytracer like POV-Ray cannot do that.
You could delegate some calculations to the GPU, but the amount of
calculations the GPU could do before the results would have to be retrieved
by POV-Ray would be way too small. Transferring data between the CPU and
the GPU has so much overhead that it overwhelms any advantage the GPU might
have over the CPU if the data has to be transferred continuously.

  If you could put the entire scene into the GPU and implement eg. the
ray-object intersection routines completely on GPU, that would be of
great help in the raytracing process (because POV-Ray could make the GPU
calculate a whole bunch of intersections at a time and then retrieve them
all in one single data burst). However, you would have to basically
replicate most of the POV-Ray code code as GPU code, with support for
all possible primitives and optimizations (such as bounding box hierarchies),
and that's just not possible.

-- 
                                                          - Warp


Post a reply to this message

From: clipka
Subject: Re: GPU usage
Date: 4 Mar 2009 12:35:00
Message: <web.49aebab2dc9638abbdc576310@news.povray.org>
Warp <war### [at] tagpovrayorg> wrote:
> However, you would have to basically
> replicate most of the POV-Ray code code as GPU code, with support for
> all possible primitives and optimizations (such as bounding box hierarchies),
> and that's just not possible.

Well, let's be wise and say "not feasible" instead... I'm always reluctant to
call something impossible unless it's plain proven fact.


Post a reply to this message

<<< Previous 6 Messages Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.