memory problems on CVS

Report bugs, bug fixes and workarounds here.
Topic author
rra
Posts: 171
Joined: 17.07.2004
With us: 20 years 4 months
Location: The Netherlands

memory problems on CVS

Post #1by rra » 23.09.2006, 11:03

Starting Celestia , selecting Earth with Blue Marble VT I notice a very big
memory increase,
so much that my performance dropped to 1 or 2 frames per second.
Celestia (CVS 20 sept'06) then uses something like 1.2 GB causing
memory swapping to harddisk.

When do the same thing with the official 1.4.1 version , including ofcourse the BNMG VT's , I see a memory consumption of about 300 MB,
which doesn't cause any diskswapping , resulting in smooth display of the Earth.

Ren?©

Fightspit
Posts: 510
Joined: 15.05.2005
With us: 19 years 6 months

Post #2by Fightspit » 23.09.2006, 12:29

I know the BMNG VT tiles are in PNG which provide the best quality of the tiles but decrease a lot of fps probably. I hesitate to do a the BMNG in DDS version but I don't know if DXT5 (with specific compresion ?) get the same result than PNG. What do you think ?
Motherboard: Intel D975XBX2
Processor: Intel Core2 E6700 @ 3Ghz
Ram: Corsair 2 x 1GB DDR2 PC6400
Video Card: Nvidia GeForce 8800 GTX 768MB GDDR3 384 bits PCI-Express 16x
HDD: Western Digital Raptor 150GB 10000 rpm
OS: Windows Vista Business 32 bits

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 2 months
Location: NY, USA

Post #3by selden » 23.09.2006, 12:35

Ren?©.

Can you provide more details of what you did?

You have to be careful to do exactly the same operations and not include any other Addons when comparing different versions of Celestia.

When I compare the two versions, I see almost exactly the same amount of memory being used for the BlueMarble AltSurface that I'm using.

To compare them, I did the following:

empty the Celestia v1.4.1 final Addons directory of all addons.
move into it the BlueMarble addon
Start Celestia v1.4.1 and let it goto Earth
Select the appropriate Render Path
Select the BlueMarble AltSurface
Select the appropriate resolution
Select the appropriate Render/View Options
exit from Celestia v1.4.1

Start Celestia v1.4.1 and let it GoTo Earth
Observe memory usage (130.0 MB)

move the Addons directory to the extras directory of Celestia v1.5

Start Celestia v1.5 and let it GoTo Earth
Observe memory usage (131.8 MB)

Did you go to a particular low altitude viewpoint? If so, you have to be careful to use a CEL URL to start Celesta and take you there. Otherwise the time of day will be different and your trajectory will be different and you'll pass over different parts of the Earth on your way to that viewpoint, loading different amounts of the VT.
Selden

Topic author
rra
Posts: 171
Joined: 17.07.2004
With us: 20 years 4 months
Location: The Netherlands

Post #4by rra » 23.09.2006, 13:03

Ok , it tested ii again:
before I removed all other extra items on both 141 and CVS (build 22-9),
I used the same BMNG VT's (they are all PNG files) for 141 and CVS.
For both the render path is 2.0 .

Before I start Celestia I have a mem. usage of about 300 MB ,
then I start 141, (using default start.cel) ,
The system loads the earth, displays (Real time) it from 32000 km.
I select alternate textures.
Then I goto earth (press G once, it moves to about 64 km distance).
No problem with 141 , Celstia uses another 300 MB.

When I do the same thing (use the same start-cel , same render-path) ,
with CVS viewing the Earth from 32000 uses also 300 MB , display is smooth.
But when zooming in (select G once) trouble begins , as stated before ,
It starts displaying the VT at an amount of 1.7GB !!

There are NO error's loading the VT's .


Ren?©

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 2 months
Location: NY, USA

Post #5by selden » 23.09.2006, 13:27

I'm using a DDS version of BlueMarble, so it uses much less memory than the PNG version, but it is clear that v1.5 is doing something different.

When I follow your procedure, Celestia v1.5 grows to about 170-200MB on my system (it varies somewhat from one run to another)

v1.4.1 grows to about 131MB with almost no variation in size.

Also I note that v1.5's approach is much "rougher" -- it's obviously loading more tiles than v1.4.1 does. I can hear the disk doing many more accesses.

Does your version of BM include a specularity texture? The specularity code is quite different in v1.5. However, with the specularity texture commented out, v1.4.1 grows to 130.4MB, and 1.5 grows to about 175MB, so that's probably not it...

p.s. Sorry: I can't spend any more time trying to isolate the difference. Other things to do...
Selden

Topic author
rra
Posts: 171
Joined: 17.07.2004
With us: 20 years 4 months
Location: The Netherlands

Post #6by rra » 23.09.2006, 13:52

No , the BMNG files are without specular textures

p.s. Sorry: I can't spend any more time trying to isolate the difference. Other things to do...


No probem Selden, I just hope someone can reproduce the problem I have;
that way it is easier to track down the problem ,
in the mean time I stay off the BMNG VT's .


Ren?©

chris
Site Admin
Posts: 4211
Joined: 28.01.2002
With us: 22 years 9 months
Location: Seattle, Washington, USA

Post #7by chris » 23.09.2006, 15:47

It's possible that the new depth sorting code is setting the near and far planes of the view frustum differently and causing more tiles to get loaded. The frustum used to determine tile visibility needs to be different than the frustum used for rendering.

Thanks for the detailed bug report, else I may have overlooked this.

--Chris

Topic author
rra
Posts: 171
Joined: 17.07.2004
With us: 20 years 4 months
Location: The Netherlands

Post #8by rra » 24.09.2006, 10:28

Chris ,
although I don't understand the frustum thing, I can confirm that the CVS version loads much more VT's into memory than the 141 version does.
To proof this I had a program named "filemon" running, filtering all reads
from "tx*.png" files.

I saved the filemon-log-files of both Celestia versions to proof my point.
I you are interested I can mail them to you.


Ren?©


EDIT: forgot to mention: in both cases I stopped the time right after loading the beginning, so Celestia shouldn't have to load a lot of textures


Return to “Bugs”