L3DT users' community
Large 3D terrain generator

L3DT Performance

Any and all chit-chat regarding L3DT.

L3DT Performance

Postby Hypnotron » Tue May 09, 2006 2:35 am

Generating these very large maps is a multi day affair on my old Pentium 4 2.5Ghz with 1.5GB RAM.

I bought this cpu in in Oct 2002... 3.5 years old. Time to upgrade? Anyone make huge mosaic maps in l3dt and know if modern cpu's can significantly cut down on the time to process these maps.

And frankly, i'm not even interested in cutting down the tmes by half... id like to have a machine that could cut the times down to 1/4 of what it currently takes. But I know there arent any 10GHz(or rated 10Ghz) machines out there even after nearly 4 years!

What about multip cpu + multicore? Can l3dt do operations in parallel (and the types of operations it does seem very conduscive to parallelization).

-Mike
Hypnotron
Contributing member
 
Posts: 42
Joined: Thu Apr 20, 2006 3:09 pm

Postby Aaron » Tue May 09, 2006 4:17 am

Hi Mike,

L3DT doesn't currently take advantage of multi-core systems, but I will do more on this in future releases. I think I can 'fairly easily' parallelise the perlin, attributes map, normals map, and texture map algorithms. However, the design/inflate, fractal, water-mapping, and shadow-casting algorithms can't be readily decoupled, so they may remain single-threaded ops. There is an additional complication in ensuring safe disk-paging for multi-threaded operations, which will require some extra work in the base classes.

Cheers,
Aaron.
User avatar
Aaron
Site Admin
 
Posts: 3696
Joined: Sun Nov 20, 2005 2:41 pm
Location: Melbourne, Australia

Postby Kiraya » Tue May 09, 2006 11:39 am

aaron wrote:Hi Mike,

L3DT doesn't currently take advantage of multi-core systems, but I will do more on this in future releases. I think I can 'fairly easily' parallelise the perlin, attributes map, normals map, and texture map algorithms. However, the design/inflate, fractal, water-mapping, and shadow-casting algorithms can't be readily decoupled, so they may remain single-threaded ops. There is an additional complication in ensuring safe disk-paging for multi-threaded operations, which will require some extra work in the base classes.

Cheers,
Aaron.


take a look at openmp. it can save you a lot of work.
Kiraya
New member
 
Posts: 9
Joined: Tue Nov 22, 2005 4:13 pm

Postby Aaron » Tue May 09, 2006 11:45 am

Hi Kiraya,

Thanks for the suggestion. OpenMP looks interesting.

Cheers,
Aaron.
User avatar
Aaron
Site Admin
 
Posts: 3696
Joined: Sun Nov 20, 2005 2:41 pm
Location: Melbourne, Australia

Postby trollfiddler » Tue May 09, 2006 7:44 pm

3.2Ghz dual core machine with 2Gb of memory takes me 6 minutes to go through a 32 x 32 map using all the defaults. I've also got dual 7800GTX cards using SLI, so I don't know if the on-screen rendering of progress is speeded up any by that.

Anyway, it's faster than several days :-)

The majority of time is spent in the water table section, which is frustrating, as most of my maps have very little water.
trollfiddler
Luminary
 
Posts: 66
Joined: Tue May 02, 2006 1:53 pm
Location: Mayo, Ireland

Postby Aaron » Tue May 09, 2006 11:58 pm

Hello,

On my AMD XP2600+ (2.1GHz) it takes ~7.5 minutes to make a 32x32 map (2048x2048 HF) with all the defaults. This is only 25% longer than trollfiddler's, so it looks like dual-core doesn't help much.

However, I think Hypnotron is talking about really big maps, like 64k x 64k or greater. In these cases, several-day-long calculations are de rigueur.

trollfiddler wrote:I've also got dual 7800GTX cards using SLI, so I don't know if the on-screen rendering of progress is speeded up any by that.


Very nice, but that shouldn't make much difference in L3DT.

Cheers,
Aaron.
User avatar
Aaron
Site Admin
 
Posts: 3696
Joined: Sun Nov 20, 2005 2:41 pm
Location: Melbourne, Australia


Return to General discussion

Who is online

Users browsing this forum: No registered users and 21 guests