POV-Ray : Newsgroups : povray.general : How to render faster? Server Time
15 Nov 2024 09:22:05 EST (-0500)
  How to render faster? (Message 1 to 10 of 17)  
Goto Latest 10 Messages Next 7 Messages >>>
From: armands
Subject: How to render faster?
Date: 9 Oct 2004 22:30:00
Message: <web.41689e5939249baca3f068ef0@news.povray.org>
Hello. Is any way to put my radeon 9800 pro to render the scene in povray?
Some script or else?
Thank you.


Post a reply to this message

From: Slime
Subject: Re: How to render faster?
Date: 9 Oct 2004 23:07:49
Message: <4168a785$1@news.povray.org>
> Hello. Is any way to put my radeon 9800 pro to render the scene in povray?
> Some script or else?

No, POV-Ray implements the ray-tracing algorithm which is not used by video
cards.

http://tag.povray.org/povQandT/miscQandT.html#3dcard

 - Slime
 [ http://www.slimeland.com/ ]


Post a reply to this message

From: Alain
Subject: Re: How to render faster?
Date: 10 Oct 2004 11:54:28
Message: <41695b34$1@news.povray.org>
armands nous apporta ses lumieres ainsi en ce 2004-10-09 22:28... :

>Hello. Is any way to put my radeon 9800 pro to render the scene in povray?
>Some script or else?
>Thank you.
>
>
>  
>
Your video card won't make any difference. Even using an old Hercules 8 
colours ISA CGA card, from the 286 or earlier era, won't change the 
rendering performences!
(if you manage to use such an old card)

Alain


Post a reply to this message

From: scott
Subject: Re: How to render faster?
Date: 12 Oct 2004 06:26:04
Message: <416bb13c$1@news.povray.org>
Slime wrote:
>> Hello. Is any way to put my radeon 9800 pro to render the scene in
>> povray? Some script or else?
>
> No, POV-Ray implements the ray-tracing algorithm which is not used by
> video cards.
>
> http://tag.povray.org/povQandT/miscQandT.html#3dcard


3D cards do actually have some things which are useful to ray-tracing, like
all the geometry transformation operations, and the ability to run the same
code many times on different data very efficiently.  In fact I believe some
people have already written ray tracers for 3D cards with pixel shader
support.

Maybe in the future there will be a way for POV to take advantage of some of
these operations.


Post a reply to this message

From: Le Forgeron
Subject: Re: How to render faster?
Date: 13 Oct 2004 02:46:28
Message: <Xns95815942AC903jgrimbertmeandmyself@203.29.75.35>


> Slime wrote:
>>> Hello. Is any way to put my radeon 9800 pro to render the scene in
>>> povray? Some script or else?
>>
>> No, POV-Ray implements the ray-tracing algorithm which is not used by
>> video cards.
>>
>> http://tag.povray.org/povQandT/miscQandT.html#3dcard
> 
> 
> 3D cards do actually have some things which are useful to ray-tracing,
> like all the geometry transformation operations, and the ability to
> run the same code many times on different data very efficiently.  In
> fact I believe some people have already written ray tracers for 3D
> cards with pixel shader support.
> 
> Maybe in the future there will be a way for POV to take advantage of
> some of these operations.

Unless PoV turn into a stupid triangle-renderer, as well as becoming non-
portable and very hardware aware, do not count on it (and it would at 
best be a very marginal gain (not even warranted)).

Now, if you could increase your understanding of 
http://tag.povray.org/povQandT/miscQandT.html#3dcard , I think I would be 
happier :-)



-- 




l'habillement, les chaussures que le maquillage et les accessoires.


Post a reply to this message

From: scott
Subject: Re: How to render faster?
Date: 13 Oct 2004 05:30:04
Message: <416cf59c@news.povray.org>
Le Forgeron wrote:

>
>> Slime wrote:
>>>> Hello. Is any way to put my radeon 9800 pro to render the scene in
>>>> povray? Some script or else?
>>>
>>> No, POV-Ray implements the ray-tracing algorithm which is not used
>>> by video cards.
>>>
>>> http://tag.povray.org/povQandT/miscQandT.html#3dcard
>>
>>
>> 3D cards do actually have some things which are useful to
>> ray-tracing, like all the geometry transformation operations, and
>> the ability to run the same code many times on different data very
>> efficiently.  In fact I believe some people have already written ray
>> tracers for 3D cards with pixel shader support.
>>
>> Maybe in the future there will be a way for POV to take advantage of
>> some of these operations.
>
> Unless PoV turn into a stupid triangle-renderer, as well as becoming
> non- portable and very hardware aware, do not count on it (and it
> would at best be a very marginal gain (not even warranted)).

http://moe.jrq.ch/?iC=pjs&iP=psrt

Is a good example.

> Now, if you could increase your understanding of
> http://tag.povray.org/povQandT/miscQandT.html#3dcard , I think I
> would be happier :-)

I think I would be happier if you could increase your understanding of how
pixel shaders work on the latest 3D cards :-)

I haven't looked at the code in detail, but the basic idea is that you give
the "data" to the pixel shader pipeline in the form of textures.  The pixel
shader in the GPU can then perform the usual ray-object intersection code,
and give the output in the form of a texture.  The main CPU then reads this
texture and uses it to construct the final image.

The pixel shader GPU has been designed in hardware to run the same code on
lots of data very quickly, this is ideal for raytracing calculations.  And
it isn't impossible to use it for raytracing calculations.  In the future as
GPUs allow longer pixel shader programs to run, doing more and more complex
ray tracing will become possible.

Google for "pixel shader raytracer", I'm sure you'll come up with something.
IIRC it was either NVidia or ATI that have a raytracer as one of the demos
in their pixel shader development kit.


Post a reply to this message

From: Tom Melly
Subject: Re: How to render faster?
Date: 13 Oct 2004 09:26:46
Message: <416d2d16$1@news.povray.org>
"scott" <sco### [at] spamcom> wrote in message news:416cf59c@news.povray.org...

> > Now, if you could increase your understanding of
> > http://tag.povray.org/povQandT/miscQandT.html#3dcard , I think I
> > would be happier :-)
>
> I think I would be happier if you could increase your understanding of how
> pixel shaders work on the latest 3D cards :-)
>

... but this misses the point. Irrespective of whether modern 3d card
acceleration options are compatible with raytracing or not, povray is
unlikely to support them if it requires custom code.

On the other hand, if the 3d card automatically took over the calculation
from the main CPU when appropriate....

That said, given what I understand of POV and 3d cards, unless 3d cards were
suitable for involvement in *any* intensive CPU activity, then I fail to see
why they would be of use.

Povray, after all, is about creating a file from a series of calculations -
the display of the image is not part of povray's job.


Post a reply to this message

From: scott
Subject: Re: How to render faster?
Date: 13 Oct 2004 13:05:57
Message: <416d6075$1@news.povray.org>
Tom Melly wrote:
> "scott" <sco### [at] spamcom> wrote in message
> news:416cf59c@news.povray.org...
>
>>> Now, if you could increase your understanding of
>>> http://tag.povray.org/povQandT/miscQandT.html#3dcard , I think I
>>> would be happier :-)
>>
>> I think I would be happier if you could increase your understanding
>> of how pixel shaders work on the latest 3D cards :-)
>>
>
> ... but this misses the point. Irrespective of whether modern 3d card
> acceleration options are compatible with raytracing or not, povray is
> unlikely to support them if it requires custom code.
>
> On the other hand, if the 3d card automatically took over the
> calculation from the main CPU when appropriate....

The way you write code for a pixel/vertex shader is so different from that
of a normal CPU, I think that would be almost impossible.

> That said, given what I understand of POV and 3d cards, unless 3d
> cards were suitable for involvement in *any* intensive CPU activity,
> then I fail to see why they would be of use.

Well, if you write a ray-object intersection algorithm that runs on the GPU,
that would certainly help a lot.  Of course POV-ray would need to be
modified (and this will not likely happen, but it could be a patch, or
another raytracer entirely).  GPUs are *very* fast at doing the same code in
parallel.  So POV could give the GPU a batch of rays to calculate
intersections with, the GPU can go away and do this and return the result
when it's done.  During this time the CPU can also be doing the same (and
working out the pixels from the last GPU result).  It would certainly speed
things up, look at that link where they guy was getting 30fps from his
simple raytracer and then was getting 1200fps when it was running with the
GPU helping.

Don't forget that GPUs can run pixel shaders at stupid speeds, of the order
of millions of texels/second, that's *far* faster than any code could run on
a normal CPU.

> Povray, after all, is about creating a file from a series of
> calculations - the display of the image is not part of povray's job.

True, and the job of a pixel shader in a GPU is to run code and output a
chunk of data.  Normally that chunk of data is then displayed on the screen,
but it doesn't have to be!


Post a reply to this message

From: Christopher James Huff
Subject: Re: How to render faster?
Date: 16 Oct 2004 14:07:13
Message: <cjameshuff-AC4DBE.14065416102004@news.povray.org>
In article <416d6075$1@news.povray.org>, "scott" <sco### [at] spamcom> 
wrote:

> Well, if you write a ray-object intersection algorithm that runs on the GPU,
> that would certainly help a lot.  Of course POV-ray would need to be
> modified (and this will not likely happen, but it could be a patch, or
> another raytracer entirely).  GPUs are *very* fast at doing the same code in
> parallel.  So POV could give the GPU a batch of rays to calculate
> intersections with, the GPU can go away and do this and return the result
> when it's done.  During this time the CPU can also be doing the same (and
> working out the pixels from the last GPU result).  It would certainly speed
> things up, look at that link where they guy was getting 30fps from his
> simple raytracer and then was getting 1200fps when it was running with the
> GPU helping.

It's still not very useful to POV-Ray. It'd spend too much time copying 
data to and from the card, and pulling data off the card is generally 
not a fast operation...they're optimized for displaying triangles and 
crunching numbers local to the card. What these demos are do is 
basically hard code a simple, small raytracer and scene designed around 
the abilities of the card into the pixel shader. It's fast because it 
all fits on the card and it doesn't do anything that needs to move stuff 
between the card and the main system. In addition, precision limitations 
will be a huge problem...POV uses double precision for most 
calculations, and it needs them. From what I've seen, GPUs use half 
precision...good enough for a demo, but not enough for general 
raytracing.

It's a neat trick, but it's just not general enough to handle what 
POV-Ray needs to do. You might be able to make use of it with a more 
limited raytracer (maybe a scientific visualization app, for example), 
but it's of no help to POV-Ray.

-- 
Christopher James Huff <cja### [at] earthlinknet>
http://home.earthlink.net/~cjameshuff/
POV-Ray TAG: <chr### [at] tagpovrayorg>
http://tag.povray.org/


Post a reply to this message

From: scott
Subject: Re: How to render faster?
Date: 18 Oct 2004 04:45:42
Message: <417382b6$1@news.povray.org>
Christopher James Huff wrote:
> In article <416d6075$1@news.povray.org>, "scott" <sco### [at] spamcom>
> wrote:
>
>> Well, if you write a ray-object intersection algorithm that runs on
>> the GPU, that would certainly help a lot.  Of course POV-ray would
>> need to be modified (and this will not likely happen, but it could
>> be a patch, or another raytracer entirely).  GPUs are *very* fast at
>> doing the same code in parallel.  So POV could give the GPU a batch
>> of rays to calculate intersections with, the GPU can go away and do
>> this and return the result when it's done.  During this time the CPU
>> can also be doing the same (and working out the pixels from the last
>> GPU result).  It would certainly speed things up, look at that link
>> where they guy was getting 30fps from his simple raytracer and then
>> was getting 1200fps when it was running with the GPU helping.
>
> It's still not very useful to POV-Ray. It'd spend too much time
> copying data to and from the card, and pulling data off the card is
> generally not a fast operation...they're optimized for displaying
> triangles and crunching numbers local to the card. What these demos
> are do is basically hard code a simple, small raytracer and scene
> designed around the abilities of the card into the pixel shader. It's
> fast because it all fits on the card and it doesn't do anything that
> needs to move stuff between the card and the main system. In
> addition, precision limitations will be a huge problem...POV uses
> double precision for most calculations, and it needs them. From what
> I've seen, GPUs use half precision...good enough for a demo, but not
> enough for general raytracing.
>
> It's a neat trick, but it's just not general enough to handle what
> POV-Ray needs to do. You might be able to make use of it with a more
> limited raytracer (maybe a scientific visualization app, for example),
> but it's of no help to POV-Ray.

Oh yes, I realise this.  Just worth keeping an eye on in the future, I'm
sure the GPUs are going to get more and more complex.


Post a reply to this message

Goto Latest 10 Messages Next 7 Messages >>>

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