 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
I'm not sure this is a new idea, but here it is:
Someone could make a piece of software which would allow users to render an
image or animation on someone else's computer (I mean over the internet)
running the same piece of software. The software could be somewhat similar
to popular file sharing stuff, basicly sending a (PoV) source file to the
other machine and receiving the final image.
Uses:
People could leave their computers on and connected when they leave for work
etc (I think today more and more people have some sort of non dial-up
connection). Artists could focus on creativity more, not having to wait so
long for a render to finish. (For example, having several renders going on
on different distant computers.)
Artists could make use of a much faster PC in many cases.
If we could get these individual programs to work simultaniously on an image
(render small portions), with a joint effort we could render extremely
compute-intensive images or animations quite easily and quickly.
Supercomputers could kiss our... :)
I am not a programmer, but I don't think this idea was impossible to
implement. For example I myself have created a CGI based web page, on which
visitors could modify the source of a POV file, and could have a look at the
resulting image in their browsers, rendered on my machine. The page is not
up right now...
Time to sleep now though. I understand that this may not be entirely
on-topic, sorry.
Cheers,
Gergely
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Fri, 21 Dec 2001 03:15:53 +0100, "Gergely Vandor" <ger### [at] vandor datanet hu>
wrote:
> I'm not sure this is a new idea, but here it is:
>
> Someone could make a piece of software which would allow users to render an
> image or animation on someone else's computer (I mean over the internet)
> running the same piece of software.
Be sure it isn't new idea. :-)
ABX
--
#declare _=function(a,b,x){((a^2)+(b^2))^.5-x}#default {pigment{color rgb 1}}
union{plane{y,-3}plane{-x,-3}finish{reflection 1 ambient 0}}isosurface{ //ABX
function{_(x-2,y,1)&_((x+y)*.7,z,.1)&_((x+y+2)*.7,z,.1)&_(x/2+y*.8+1.5,z,.1)}
contained_by{box{<0,-3,-.1>,<3,0,.1>}}translate z*15finish{ambient 1}}//POV35
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> > I'm not sure this is a new idea, but here it is:
> >
> > Someone could make a piece of software which would allow users to render
an
> > image or animation on someone else's computer (I mean over the internet)
> > running the same piece of software.
>
> Be sure it isn't new idea. :-)
>
Is there a program which does just this? Would it be possible for me to
start a render on your machine (and possibly several others) right now for
example?
Or is such a thing currently being developed?
Cheers,
Gergely
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Fri, 21 Dec 2001 13:28:22 +0100, "Gergely Vandor" <ger### [at] vandor datanet hu>
wrote:
> Is there a program which does just this? Would it be possible for me to
> start a render on your machine (and possibly several others) right now for
> example?
check render farms at http://www.povray.org/cgi-bin/htsearch?words=farm
and http://www.imp.org
ABX
--
#declare _=function(a,b,x){((a^2)+(b^2))^.5-x}#default {pigment{color rgb 1}}
union{plane{y,-3}plane{-x,-3}finish{reflection 1 ambient 0}}isosurface{ //ABX
function{_(x-2,y,1)&_((x+y)*.7,z,.1)&_((x+y+2)*.7,z,.1)&_(x/2+y*.8+1.5,z,.1)}
contained_by{box{<0,-3,-.1>,<3,0,.1>}}translate z*15finish{ambient 1}}//POV35
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
You should be aware of security issues. Automatically running povray with a
pov-file sent by someone can be a dangerous thing (because pov-files can have
I/O commands).
--
#macro M(A,N,D,L)plane{-z,-9pigment{mandel L*9translate N color_map{[0rgb x]
[1rgb 9]}scale<D,D*3D>*1e3}rotate y*A*8}#end M(-3<1.206434.28623>70,7)M(
-1<.7438.1795>1,20)M(1<.77595.13699>30,20)M(3<.75923.07145>80,99)// - Warp -
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Gergely Vandor
Subject: Re: idea: util for "sharing" CPU power
Date: 21 Dec 2001 08:58:47
Message: <3c234017@news.povray.org>
|
|
 |
|  |
|  |
|
 |
"Warp" <war### [at] tag povray org> wrote in message
news:3c233237@news.povray.org...
> You should be aware of security issues. Automatically running povray
with a
> pov-file sent by someone can be a dangerous thing (because pov-files can
have
> I/O commands).
>
> --
It should be pretty easy to scan a pov text file for dangerous I/O commands.
Blocking all pov files with any I/O commands is even easier. I believe this
is (almost) a non-issue.
Gergely
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Gergely Vandor
Subject: Re: idea: util for "sharing" CPU power
Date: 21 Dec 2001 09:14:16
Message: <3c2343b8@news.povray.org>
|
|
 |
|  |
|  |
|
 |
"W³odzimierz ABX Skiba" <abx### [at] babilon org> wrote in message
news:8hb62uki8ocuv3f2o0enleajon7ukgkvh5@4ax.com...
> On Fri, 21 Dec 2001 13:28:22 +0100, "Gergely Vandor"
<ger### [at] vandor datanet hu>
> wrote:
> > Is there a program which does just this? Would it be possible for me to
> > start a render on your machine (and possibly several others) right now
for
> > example?
>
> check render farms at http://www.povray.org/cgi-bin/htsearch?words=farm
> and http://www.imp.org
>
As much as I understand, none of these do what I would like to.
IMP seems interesting, but it seems it is focused on the purpose of creating
this movie, and the actual thing is not downloadable yet.
It would be especially great if several computers could work on a single
image simultaneously (and not in a private network, but on the internet).
This would be beneficial with extremely compute-intensive images. And I'd
like to have the simplicity of Napster for example. Like pressing GO, and
getting the render done much quicker than you could on your own machine.
Cheers,
Gergely
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Gergely Vandor <ger### [at] vandor datanet hu> wrote:
: It should be pretty easy to scan a pov text file for dangerous I/O commands.
Except that it is probably possible to obfuscate commands so that a program
will not recognize them.
--
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}// - Warp -
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Warp" <war### [at] tag povray org> wrote in message
news:3c2351fb@news.povray.org...
> Gergely Vandor <ger### [at] vandor datanet hu> wrote:
> : It should be pretty easy to scan a pov text file for dangerous I/O
commands.
>
> Except that it is probably possible to obfuscate commands so that a
program
> will not recognize them.
>
To the extenct that it is not even evident that there are I/O commands in
the pov file?
This is getting a bit theoretical, but I believe it would be an acceptable
limitation for my "imagined" program to refuse any pov file with I/O
commands...
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On Fri, 21 Dec 2001 16:36:05 +0100, "Gergely Vandor" <ger### [at] vandor datanet hu>
wrote:
> This is getting a bit theoretical, but I believe it would be an acceptable
> limitation for my "imagined" program to refuse any pov file with I/O
> commands...
I/O scripts are very usefull. Imagine tree-macro. Put it in animation. Do you
want 10 minutes per frame for parsing of tree generation for every client? Or do
you want send over internet megabytes of this tree for every client? Or do you
want send short script over internet and allow clients apps to generate/write it
once ?
ABX
--
#declare _=function(a,b,x){((a^2)+(b^2))^.5-x}#default {pigment{color rgb 1}}
union{plane{y,-3}plane{-x,-3}finish{reflection 1 ambient 0}}isosurface{ //ABX
function{_(x-2,y,1)&_((x+y)*.7,z,.1)&_((x+y+2)*.7,z,.1)&_(x/2+y*.8+1.5,z,.1)}
contained_by{box{<0,-3,-.1>,<3,0,.1>}}translate z*15finish{ambient 1}}//POV35
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"W³odzimierz ABX Skiba" <abx### [at] babilon org> wrote in message
news:3rl62uodn1uloq3k54orn97jh6b45bihoo@4ax.com...
> On Fri, 21 Dec 2001 16:36:05 +0100, "Gergely Vandor"
<ger### [at] vandor datanet hu>
> wrote:
> > This is getting a bit theoretical, but I believe it would be an
acceptable
> > limitation for my "imagined" program to refuse any pov file with I/O
> > commands...
>
> I/O scripts are very usefull. Imagine tree-macro. Put it in animation. Do
you
> want 10 minutes per frame for parsing of tree generation for every client?
Or do
> you want send over internet megabytes of this tree for every client? Or do
you
> want send short script over internet and allow clients apps to
generate/write it
> once ?
>
Ok. I have to admit this IS an issue :)
File I/O should not be ruled out, but should be strictly controlled to avoid
bad things...
I accept any feature requests, but please be aware that there is only a very
slim chance that the software will ever come to existence. :)
Cheers,
Gergely
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> Gergely Vandor <ger### [at] vandor datanet hu> wrote:
> : It should be pretty easy to scan a pov text file for dangerous I/O commands.
>
> Except that it is probably possible to obfuscate commands so that a program
> will not recognize them.
?? The I/O restrictions in POV-Ray 3.5 should suffice. Just allow
read/write in a single given directory, and you have full functionality
without a risk.
Fabien.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> Except that it is probably possible to obfuscate commands so
> that a program will not recognize them.
Which is why you restrict access to specific directories a la
morpheus. Just make it not eat all your memory like morpheus :P
--
Tim Cook
http://personal.lig.bellsouth.net/lig/z/9/z993126
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GFA dpu- s: a?-- C++(++++) U P? L E--- W++(+++)>$
N++ o? K- w(+) O? M-(--) V? PS+(+++) PE(--) Y(--)
PGP-(--) t* 5++>+++++ X+ R* tv+ b++(+++) DI
D++(---) G(++) e*>++ h+ !r--- !y--
------END GEEK CODE BLOCK------
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Actually if you could have a trusted network shared along with simple
io blocking I think it would be 'fairly safe' just use something like
a trusted key system or a central server that passes out trusted files
to be shared and auto combines them I know this is more talk then
programming (oh how I miss my linux side and gcc or I would be getting
out the faq's and such to see if I could help but alas cygwin is just
not my cup of tea under nt :(
being on an old clunker and I run setiservice but I think this would
be a great idea, could run it background low priority on the windows
system actually as I think about this and I know its not a new idea
its a dream of every povray user I think to have a power rendering
farm for those dream job's. but the more I think about it trusted
server's to pass out slices of work and or at least links/port's to
slices of work etc would be sweet. heck I leave my old crate on 24/7
honestly because scared to death one of the old HD's is gonna fail on
on cold start and would gladly donate my cycles to worthy projects.
great to see the discussion going though, only good things can come
from free exchange.
Rob
>On Fri, 21 Dec 2001 14:58:42 +0100, "Gergely Vandor" <ger### [at] vandor datanet hu> wrote:
>"Warp" <war### [at] tag povray org> wrote in message
>news:3c233237@news.povray.org...
>> You should be aware of security issues. Automatically running povray
>with a
>> pov-file sent by someone can be a dangerous thing (because pov-files can
>have
>> I/O commands).
>>
>> --
>
>It should be pretty easy to scan a pov text file for dangerous I/O commands.
>Blocking all pov files with any I/O commands is even easier. I believe this
>is (almost) a non-issue.
>
>Gergely
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Hi Gergely,
> Is there a program which does just this? Would it be possible for me to
> start a render on your machine (and possibly several others) right now for
> example?
>
> Or is such a thing currently being developed?
Have a look at:
http://sourceforge.net/projects/pvmpov/
Greetings
Thies Heidecke
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
I'd like to have such a program. Maybe it wouldn't even have to be
restricted to share power for Povray. But how will you split a Pov rendering
into pieces? The wise people say you can't use multiple CPU's in one
computer, so how will you do it over the Internet?
And there has to be done a lot for security as already said. Especially if
it's a broad application that allows other programs than Povray.
Hugo
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> IMP seems interesting, but it seems it is focused on the purpose of
creating
> this movie, and the actual thing is not downloadable yet.
>
Only for members right now. Once the bugs are worked out both the server
and client will be released to the public.
Tom
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Gergely Vandor
Subject: Re: idea: util for "sharing" CPU power
Date: 27 Dec 2001 08:18:51
Message: <3c2b1fbb@news.povray.org>
|
|
 |
|  |
|  |
|
 |
"Hugo" <hua### [at] post3 tele dk> wrote in message
news:3c28f2b2@news.povray.org...
> I'd like to have such a program. Maybe it wouldn't even have to be
> restricted to share power for Povray. But how will you split a Pov
rendering
> into pieces? The wise people say you can't use multiple CPU's in one
> computer, so how will you do it over the Internet?
Povray is able to render only a specified region of an image. It should be
fairly easy to combine these regions to the whole image. Although as I'm
writing this I'm becoming a bit uncertain since AA, radiosity, and photons
(and maybe some other features too) can be problematic.
>
> And there has to be done a lot for security as already said. Especially if
> it's a broad application that allows other programs than Povray.
If we're talking about povray, the only real risk is file IO, which can be
restricted to a single dir.
Cheers
Gergely
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Wasn't it Gergely Vandor who wrote:
>Povray is able to render only a specified region of an image. It should be
>fairly easy to combine these regions to the whole image. Although as I'm
>writing this I'm becoming a bit uncertain since AA, radiosity, and photons
>(and maybe some other features too) can be problematic.
AA is not a problem. The pixels just outside the specified region are
calculated and used for the AA calculations, but are not output.
For radiosity, what you probably need to do is arrange for a radiosity
savefile to be created once for the whole scene. The partial renderers
would then all load the same save file.
I can't see that photons would be a problem at all. Photons interact
quite happily with objects that are outside the frame, so they should
work just as well with objects that are inside the frame but outside the
selected region.
--
Mike Williams
Gentleman of Leisure
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Gergely Vandor
Subject: Re: idea: util for "sharing" CPU power
Date: 27 Dec 2001 14:14:38
Message: <3c2b731e@news.povray.org>
|
|
 |
|  |
|  |
|
 |
"Mike Williams" <mik### [at] nospam please> wrote in message
news:Md7### [at] econym demon co uk...
> Wasn't it Gergely Vandor who wrote:
>
> >Povray is able to render only a specified region of an image. It should
be
> >fairly easy to combine these regions to the whole image. Although as I'm
> >writing this I'm becoming a bit uncertain since AA, radiosity, and
photons
> >(and maybe some other features too) can be problematic.
>
> AA is not a problem. The pixels just outside the specified region are
> calculated and used for the AA calculations, but are not output.
>
> For radiosity, what you probably need to do is arrange for a radiosity
> savefile to be created once for the whole scene. The partial renderers
> would then all load the same save file.
>
> I can't see that photons would be a problem at all. Photons interact
> quite happily with objects that are outside the frame, so they should
> work just as well with objects that are inside the frame but outside the
> selected region.
Nice then, thanks for the info. :)
Knowing this I believe that what I was thinking of is far from impossible.
If there's demand for such a program, and there is no similar program in
development right now (maybe the IMP project will give birth to the right
thing), we could start to recruit programmers for the job :)
And if we are talking about IMP, can anyone give details about the software
they are making? How it will work, to what extent it is capable of doing
what I was thinking of (or what other pov users would expect).
I find their website confusing.
---
Cheers
Gergely
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
As a fun project, I'm also working on sharing out POVRay rendering over
a TCP/IP network (such as the Internet). Project doc is up at
http://www.newerawd.co.uk/parpov
James Jackson.
Gergely Vandor wrote:
> "Hugo" <hua### [at] post3 tele dk> wrote in message
> news:3c28f2b2@news.povray.org...
>
>>I'd like to have such a program. Maybe it wouldn't even have to be
>>restricted to share power for Povray. But how will you split a Pov
>>
> rendering
>
>>into pieces? The wise people say you can't use multiple CPU's in one
>>computer, so how will you do it over the Internet?
>>
>
> Povray is able to render only a specified region of an image. It should be
> fairly easy to combine these regions to the whole image. Although as I'm
> writing this I'm becoming a bit uncertain since AA, radiosity, and photons
> (and maybe some other features too) can be problematic.
>
>
>>And there has to be done a lot for security as already said. Especially if
>>it's a broad application that allows other programs than Povray.
>>
>
> If we're talking about povray, the only real risk is file IO, which can be
> restricted to a single dir.
>
> Cheers
>
> Gergely
>
>
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
2nd reply - sorry :)
This sounds like it'a gonna turn into a very professionl job - my system
is very much an amateur job. I'm starting simple (ie only able to
specify render resolution, whether AA is turned on or off). When the
system is coded, I then intend to add further options (handling of
animation rendering, radiosity etcetc).
I make no claims to be an expert programmer (For a start I'm 17, still
at school, and never had any formal C++ training :) and I'm sure the way
I go about some things is a little arse-about-face, but It's good fun!
I welcome comment on my project document - anything is helpful.
Also, I have a little problem with calling POVRay. To calculate values
for the load sharing, I am performing timed test renders of each row in
a (scaled width) x 100 version of the scene. If I call POVRay with +SR1
+ER1, the whole image gets rendered. However, if I use a value greater
than 1, such as +SR6 +ER6, I only get that row (as required). What is
going on in the +SR1 case?
I'm using the latest 3.1 POVRay MSDOS binaries.
Cheers,
James Jackson.
Gergely Vandor wrote:
> "Mike Williams" <mik### [at] nospam please> wrote in message
> news:Md7### [at] econym demon co uk...
>
>>Wasn't it Gergely Vandor who wrote:
>>
>>
>>>Povray is able to render only a specified region of an image. It should
>>>
> be
>
>>>fairly easy to combine these regions to the whole image. Although as I'm
>>>writing this I'm becoming a bit uncertain since AA, radiosity, and
>>>
> photons
>
>>>(and maybe some other features too) can be problematic.
>>>
>>AA is not a problem. The pixels just outside the specified region are
>>calculated and used for the AA calculations, but are not output.
>>
>>For radiosity, what you probably need to do is arrange for a radiosity
>>savefile to be created once for the whole scene. The partial renderers
>>would then all load the same save file.
>>
>>I can't see that photons would be a problem at all. Photons interact
>>quite happily with objects that are outside the frame, so they should
>>work just as well with objects that are inside the frame but outside the
>>selected region.
>>
>
> Nice then, thanks for the info. :)
>
> Knowing this I believe that what I was thinking of is far from impossible.
> If there's demand for such a program, and there is no similar program in
> development right now (maybe the IMP project will give birth to the right
> thing), we could start to recruit programmers for the job :)
>
> And if we are talking about IMP, can anyone give details about the software
> they are making? How it will work, to what extent it is capable of doing
> what I was thinking of (or what other pov users would expect).
> I find their website confusing.
>
> ---
> Cheers
> Gergely
>
>
>
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Chris Colefax
Subject: Re: idea: util for "sharing" CPU power
Date: 27 Dec 2001 19:41:57
Message: <3c2bbfd5@news.povray.org>
|
|
 |
|  |
|  |
|
 |
James Jackson <jam### [at] jamesjackson info> wrote:
[snip]
> Also, I have a little problem with calling POVRay. To calculate values
> for the load sharing, I am performing timed test renders of each row in
> a (scaled width) x 100 version of the scene. If I call POVRay with +SR1
> +ER1, the whole image gets rendered. However, if I use a value greater
> than 1, such as +SR6 +ER6, I only get that row (as required). What is
> going on in the +SR1 case?
(as per reply in comp.graphics.rendering.raytracing) - try using +ER1.1
(+ER1 seems to be interpreted as 100%, so the entire image gets rendered).
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Thanks very much - works a treat!
Chris Colefax wrote:
> James Jackson <jam### [at] jamesjackson info> wrote:
> [snip]
>
>>Also, I have a little problem with calling POVRay. To calculate values
>>for the load sharing, I am performing timed test renders of each row in
>>a (scaled width) x 100 version of the scene. If I call POVRay with +SR1
>>+ER1, the whole image gets rendered. However, if I use a value greater
>>than 1, such as +SR6 +ER6, I only get that row (as required). What is
>>going on in the +SR1 case?
>>
>
> (as per reply in comp.graphics.rendering.raytracing) - try using +ER1.1
> (+ER1 seems to be interpreted as 100%, so the entire image gets rendered).
>
>
>
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Chris Colefax <chr### [at] tag povray org> wrote:
: +ER1 seems to be interpreted as 100%
Could this be a place for a bug report?
--
#macro N(D)#if(D>99)cylinder{M()#local D=div(D,104);M().5,2pigment{rgb M()}}
N(D)#end#end#macro M()<mod(D,13)-6mod(div(D,13)8)-3,10>#end blob{
N(11117333955)N(4254934330)N(3900569407)N(7382340)N(3358)N(970)}// - Warp -
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Chris Colefax
Subject: Re: idea: util for "sharing" CPU power
Date: 29 Dec 2001 19:38:48
Message: <3c2e6218@news.povray.org>
|
|
 |
|  |
|  |
|
 |
I <chr### [at] tag povray org> wrote:
> : +ER1 seems to be interpreted as 100%
Warp <war### [at] tag povray org> wrote:
> Could this be a place for a bug report?
The documentation explicitly states that row/column values <= 1 will be
interpreted as a percentage of the image, so the behaviour is correct from
that point of view. This does mean, though, that you can't render the first
line only without resorting to hacks like specifying +ER1.1 or +ER0.
However, the behaviour of rendering the entire image when +SR1 +ER1 is
specified is probably buggy - by the documentation, this should render the
last row of the image, or possibly the first, but not all.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |