POV-Ray : Newsgroups : povray.binaries.images : POVEarth still far away... : Re: POVEarth still far away... Server Time: 24 Oct 2020 02:44:32 GMT
  Re: POVEarth still far away...  
From: Jörg "Yadgar" Bleimann
Date: 2 Aug 2020 21:53:31
Hi(gh)!

On 02.08.20 21:54, Bald Eagle wrote:

> I edited your file for (my) clarity, added some time stamps, and ran it.
> Near the end of your file you have a missing closing parentheses:
> 
> #write (ES  "  finish{ F_Earthslice }\n")
> #write (ES, "    }\n")   // <--------- missing closing )

Okay, that's the ticket! Thank you VERY much... that's a whole asteroid 
off my heart! What a stupid little mistake...

Probably the seemingly endless #write sequence led to memory overload...

> 
> Once I fixed that, it ran just "fine".
> It's slow as hell and uses a LOT of memory, which is likely your problem.  You
> probably run OUT of memory somewhere.

The original version by Melody was even much, much slower - generating a 
3601 by 3601 mesh took some cool 200 days! My version does it in two and 
a half hours...

> That 3rd nested loop is an absolute killer.
> You do a lot of the same calculations many MANY times.
> Pre-calculate equation terms before all of your conditional statements, and then
> you not only save time but also make the expressions much shorter and easily
> read.

I don't understand what you mean - the very formula by which the sums of 
the vector cross products are calculation depends on the position of the 
respective vertex, which are divided into nine different cases: lower 
left, lower right, upper left and upper right corners, lower, left, 
right and upper side, center. I cannot pre-calculate anything! At least 
not without the risk of messing up the code completely... never change a 
running system!

> 
> Don't tackle such large data sets until you have the basic code at least
> somewhat optimized.   Crop out a small portion of the original image as a test
> area, or use a larger step size to skip over some percentage of the data.
> 
> You're processing over a million tokens in theis scene with that image, so you
> likely just don't have the system resources to handle the array data that you're
> piling up.   If you can just use temporary variable that can get redeclared in
> the next step of the loop, you might be just fine.
> 

Before that parenthesis went lost, it worked fine... probably slower 
than necessary, but it worked!

See you in Khyberspace!

Yadgar


Post a reply to this message

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