Virtual memory exhausted

News and discussion of the PC port of Oolite.

Moderators: winston, another_commander

overmage
Deadly
Deadly
Posts: 128
Joined: Mon Mar 23, 2009 6:55 pm

Virtual memory exhausted

Post by overmage »

Omg...

Virtual memory exhausted

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

O_O

do i have too many addons? the memory load really shows whenever i witchjump to a new system. When in-system, there is relatively little lag. 40 fps on a Radeon 9200, not too shabby. It's just the jumps that mess my rig badly.
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6682
Joined: Wed Feb 28, 2007 7:54 am

Post by another_commander »

- Oolite version?
- System specs?
- Latest.log after the memory exhaustion?
- If above is not available, list of OXPs being used?
- Is it reproducible? If yes, how?
- Has it been noticed without any OXPs present?

Phew, that will be all for now.
Screet
---- E L I T E ----
---- E L I T E ----
Posts: 1883
Joined: Wed Dec 10, 2008 3:02 am
Location: Bremen, Germany

Re: Virtual memory exhausted

Post by Screet »

overmage wrote:
do i have too many addons? the memory load really shows whenever i witchjump to a new system. When in-system, there is relatively little lag. 40 fps on a Radeon 9200, not too shabby. It's just the jumps that mess my rig badly.
That's the reason why I don't use system redux and sometimes (when on a mission which causes memory stress) remove OSE (the successor to realistic shipyards). Whenever you jump, the new system is being populated, and I do remember some report that the cache for ships is not always working as intended. There was some issue with the flashers of the consitution ships, if I'm not totally wrong, causing those ships to use far too much memory.

However, Oolite can drop back to a very small size when a jump is made into a system that's not too full.

Screet
overmage
Deadly
Deadly
Posts: 128
Joined: Mon Mar 23, 2009 6:55 pm

Post by overmage »

- Oolite version?
1.72.2
- System specs?
Shit, shit, and shit. Radeon 9200 (not even SE), 1 gig DDR-2 RAM, 2.4 GHz single-core processor.
- Latest.log after the memory exhaustion?
whoops, forgot to keep this one. if i get the crash again, ill upload it.
- If above is not available, list of OXPs being used?
"AddOns/a-wing.oxp", "AddOns/aegidian-special.oxp", "AddOns/AMS 1.00.oxp", AddOns/Anarchies2.1.oxp, AddOns/Assassins.oxp, "AddOns/AsteroidStorm 3.5.oxp", "AddOns/b-wing.oxp", "AddOns/behemoth 2.5.oxp", "AddOns/BehemothSpacewar 1.2.1.oxp", AddOns/black_baron.oxp, AddOns/BountyScanner.oxp, AddOns/boyracers.oxp, AddOns/buoyRepair1.02.1.oxp, AddOns/caduceus.oxp, AddOns/Cargo_wrecks_teaser.oxp, AddOns/cobra3njx.oxp, AddOns/Commies.oxp, AddOns/custsounds.oxp, AddOns/DeepspaceHud.oxp, "AddOns/DeepSpacePirates 1.0.oxp", AddOns/deposed1.3.3.oxp, "AddOns/Dictators v1.3.oxp", AddOns/Diso.oxp, "AddOns/Dredgers 2.2oxp.oxp", "AddOns/Drones 1.01.oxp", "AddOns/Energy Equipment 1.04.oxp", "AddOns/Executive Spaceways v2.2.oxp", AddOns/Famous_Planets_v1.1.oxp, "AddOns/Feudal States v0.1 WIP.oxp", "AddOns/FP Liners 1.00.oxp", "AddOns/Freaky Thargoids 3.oxp", AddOns/fsr.oxp, "AddOns/Fuel Station 1.11.oxp", "AddOns/Fuel Tank v2.2.oxp", AddOns/FuelCollectorV0.06.oxp, AddOns/Galactic_Navy.oxp, AddOns/genship.oxp, AddOns/globestations.oxp, AddOns/glow_alloy.oxp, AddOns/glow_alloy_mod.oxp, AddOns/griff_cobra3_no_normalmap.oxp, AddOns/griff_krait.oxp, AddOns/Griff_rocket_engine_level_lights.oxp, AddOns/Griff_shaded_cargopod.oxp, AddOns/griff_spacebar.oxp, AddOns/griff_trade_outpost.oxp, AddOns/GrittyCoriolis.oxp, AddOns/gwxstations.oxp, AddOns/hammer.oxp, AddOns/Herald.oxp, AddOns/hOopyCasino.oxp, AddOns/Hotrods.oxp, AddOns/illicit_unlock_FIX1.56.oxp, AddOns/impcourier2.oxp, AddOns/Interceptor.oxp, AddOns/interstellar_help.oxp, "AddOns/ionics-1.2.1.oxp", AddOns/isisinterstellar.oxp, AddOns/ixianships.oxp, AddOns/lambda.oxp, AddOns/lane_legal.oxp, AddOns/Lave.oxp, AddOns/localhero_1_05.oxp, AddOns/longway.oxp, "AddOns/lovecats 1.1.oxp", AddOns/marett_vol1.oxp, AddOns/Merlin.oxp, "AddOns/military Fiasco 2.4.1.oxp", AddOns/milmissile.oxp, "AddOns/Missile Analyser 1.1.1.oxp", "AddOns/Missiles and Bombs v2.1.oxp", AddOns/Missionaries.oxp, AddOns/monument.oxp, AddOns/murgh_Xships.oxp, AddOns/NavyStarships.oxp, AddOns/neolite.oxp, AddOns/nuke.oxp, AddOns/nuvipers.oxp, "AddOns/Oo-Haul.oxp", AddOns/Ore_processor.oxp, AddOns/OXPConfig1.06.oxp, AddOns/PAGroove_Stations_v1.2.1.oxp, AddOns/piratetraps.oxp, "AddOns/PlanetFall 1.12.oxp", "AddOns/PlanetFall Link - Black Monks 1.0.oxp", "AddOns/PlanetFall Link - hOopy Casino 1.0.oxp", "AddOns/PlanetFall Mission - Oo-Haul 1.0.0.oxp", "AddOns/Planetfall Mission - Taxi 1.0.1.oxp", "AddOns/Pods 1.02.oxp", "AddOns/Pods-UPS 1.01.oxp", AddOns/Probe_1.02.oxp, AddOns/PTI.oxp, AddOns/RandomHits275.oxp, "AddOns/RepairBots 1.00.oxp", "AddOns/Ring Racer 1.01.oxp", AddOns/ringpod.oxp, AddOns/Rock_Hermit_Locator1.3.oxp, "AddOns/Saleza v2.oxp", AddOns/santa.oxp, "AddOns/SecondWave 1.1.oxp", AddOns/sell_equipment.oxp, "AddOns/Shady Billboards.oxp", AddOns/spyhunter.oxp, "AddOns/Status_Quo_Q-bomb.oxp", "AddOns/supercobra 1.3.oxp", AddOns/System_Redux.oxp, AddOns/taranis.oxp, "AddOns/Target Reticle 1.0.1.oxp", AddOns/Taxi_Galactica.oxp, AddOns/tgy_dev.oxp, AddOns/thargoidcarrier.oxp, "AddOns/thargoid_wars 4.3.oxp", "AddOns/Thorgorn_Threat 1.2.oxp", AddOns/tianve.oxp, AddOns/TIE.oxp, AddOns/tiger.oxp, AddOns/tori.oxp, AddOns/total_patrol.oxp, "AddOns/Traffic Control 1.01.oxp", AddOns/transhab.oxp, "AddOns/Transports 2.49.oxp", "AddOns/Trident Down v1.1.oxp", AddOns/tugs.oxp, "AddOns/UPS-courier v1.5.0.oxp", AddOns/Vector1.1.oxp, "AddOns/Welcome Mat 1.05.oxp", AddOns/wolfwoods_variants.oxp, "AddOns/X-Wing.oxp", "AddOns/y-wing.oxp", AddOns/YOUR_AD_HERE.oxp, AddOns/YOUR_AD_HERE_set_A.oxp, AddOns/YOUR_AD_HERE_set_B.oxp, AddOns/YOUR_AD_HERE_set_C.oxp, AddOns/YOUR_AD_HERE_set_D.oxp, AddOns/YOUR_AD_HERE_set_E.oxp, AddOns/YOUR_AD_HERE_set_F.oxp, AddOns/Zzzz_Realistic_Shipyards_V3.02b.oxp)
- Is it reproducible? If yes, how?
Yes. I just have to keep jumping between systems. For most of the jumps my memory skirts dangerously low. I'm guessing if I have the ill fortune to jump into a system that Oolite decided to populate with lots of objects, then it would stop skirting and start exceeding :cry:
- Has it been noticed without any OXPs present?
Nope. My best guess is that I've too many objects ;P
User avatar
Kaks
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 3009
Joined: Mon Jan 21, 2008 11:41 pm
Location: The Big Smoke

Post by Kaks »

Wow! That's a lot of OXPs! Have you got all of them?

Realistic Shipyards on its own is known to need quite a lot of memory, all of them together is almost like dicing with death! Paring them down a bit will definitely help!

Quite a few of those are galaxy specific ( like lovecats - and their readme should tell you which one is wich ), so they're dead weight if you're in a different galaxy. Also the illicit unlock is to allow most ships to be bought at the shipyard, and RS does more or less the same, apart from a lot of other things...
Hey, free OXPs: farsun v1.05 & tty v0.5! :0)
overmage
Deadly
Deadly
Posts: 128
Joined: Mon Mar 23, 2009 6:55 pm

Post by overmage »

yeah, i've dumped RS for now. :P and some mission related ones. load times seem to be reduced... for now. of course, stupid me somehow managed to also get my savefile corrupt in the bargain, and now i've to delete it and start over. =( luckily i've only been playing it for 3 days!
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

Hello overmage,

don't forget to take out Localhero_1_05.oxp. This version does not work in v1.72.x. And for OXPConfig1.06.oxp there is a bug with the selectiveLoad-feature (already fixed in v1.07), so simply disable this feature. There are other oxps with later versions available (e.g.UPS-courierv1.5.3), but as long as the WIKI is readonly you'll have to search the related topics in the Expansion Pack forum.
Screet
---- E L I T E ----
---- E L I T E ----
Posts: 1883
Joined: Wed Dec 10, 2008 3:02 am
Location: Bremen, Germany

Post by Screet »

overmage wrote:
yeah, i've dumped RS for now. :P and some mission related ones. load times seem to be reduced... for now. of course, stupid me somehow managed to also get my savefile corrupt in the bargain, and now i've to delete it and start over. =( luckily i've only been playing it for 3 days!
I would guess that you were flying an oxp ship and removed that oxp. That does not result in a corrupted savefile, but one that is unusable until you reinstall that ships oxp or edit your savefiles ship info to some available ship. You can notice that problem by the questionmark displayed as "ship".

The good way to solve it (if you want to remove that ships oxp) is to reinstall that oxp, sell your ship and switch to a ship that will be available after cleaning up your addon folder, save and then remove that ships oxp.

Screet
overmage
Deadly
Deadly
Posts: 128
Joined: Mon Mar 23, 2009 6:55 pm

Post by overmage »

ooh thanks, know any other OXPs i have that are out of date? :O

the savefile simple doesn't show up, think it's not being recognized as a valid list :(
User avatar
Svengali
Commander
Commander
Posts: 2370
Joined: Sat Oct 20, 2007 2:52 pm

Post by Svengali »

overmage wrote:
ooh thanks, know any other OXPs i have that are out of date? :O
Hard to say. A lot of oxps don't use the version number in their (folder-)names.

<Reminder>And I'd bet that most oxps with spaces in it's name are not tested with the verifier :-)</Reminder>
User avatar
Lestradae
---- E L I T E ----
---- E L I T E ----
Posts: 3095
Joined: Tue Apr 17, 2007 10:30 pm
Location: Vienna, Austria

..

Post by Lestradae »

I am still unconvinced that there isn't another stacking memory leak under Vista and 1.72.2.

I have observed, time and again, the following scenario unfold:

Game runs smoothly in-system after launch, no lag, no stutters.

I make the first hyperjump.

It takes a long time - around half a minute or such. First 15 seconds frozen screen until the jumptunnel appears, then second 15 seconds until new system shows/unfreezes.

Game runs smoothly again in-system after witchjump, no lag, no stutters.

I do a second hyperjump.

It takes a very long time - around 40, 50 seconds or somesuch. First 25 seconds frozen screen until the jumptunnel appears, then second 25 seconds until new system shows/unfreezes.

Notice a pattern there? Guess what: Game runs smoothly again in-system after witchjump, no lag, no stutters.

Hyperjump three.

It takes a minute. Game looks as if crashing. Screen goes black for half a minute. Then, again jumptunnel. Then second half minute+ until new system shows/unfreezes.

Game runs smoothly in-system after witchjump, no lag, no stutters.

Start noticing a pattern? I get particularly adventurous and dare a fourth or fifth witchjump, the game crashes to desktop unceremoniously. The Log file shows nothing particularly unusual.

If I land on a station each time after jumping once or thrice, exit the game, reload it and continue play no crash happens, ever, and the game is smooth except at the jumps.

I run the game with X oxps in. I upgraded to 4 GB RAM recently. If that was an oxp problem or just a "too many" problem, so why doesn't this happen when I exit and restart the game? Why is there no slightest stutter ingame except if I witchjump?

I can only guess, but it looks to me as if the game would stack memory at each witchjump that stays "used up" for nothing. That would fit the pattern.

Just reporting. Perhaps it has to do with Vista. But I have observed this very phenomenon on and off with different versions of Oolite - some seemed to have that pattern, some not (in some testversions, the game never crashed on me).

:?

L
Screet
---- E L I T E ----
---- E L I T E ----
Posts: 1883
Joined: Wed Dec 10, 2008 3:02 am
Location: Bremen, Germany

Re: ..

Post by Screet »

Lestradae wrote:
Just reporting. Perhaps it has to do with Vista. But I have observed this very phenomenon on and off with different versions of Oolite - some seemed to have that pattern, some not (in some testversions, the game never crashed on me).
Your whole report is what I see with RS or OSE in. Also the game did crash in the past when I had this in and did try to see all models instead of loading a commander...

I did see the memory demand drop after jumping in the past...maybe something is freed, but not everything. Furthermore, with Vista the memory load of Oolite is higher than with XP!

However, aside from this, I got the impression that RS/OSE do make this problem visible by providing so many different ships. With each jump, theres a whole new set, and surely many ships which were not visible in the previous system.

My guess is that there is a model-cache which does grow and grow, but not release it's memory when the system begins to swap or runs out of memory. Maybe after each witchspace jump, after populating the system, there should be (and currently is not) a cache cleanup that removes all models which are not currently in use.

Screet
another_commander
Quite Grand Sub-Admiral
Quite Grand Sub-Admiral
Posts: 6682
Joined: Wed Feb 28, 2007 7:54 am

Post by another_commander »

It would be relatively easy to watch what happens with memory usage. Lestradae, please launch Task Manager and select to view the Performance tab, where the memory usage is visible. Try launching Oolite in a window and repeating what you described above. Keep both Oolite and TM open so that you can see what happens. If there is a memory leak, you should be seeing a ladder pattern in the memory usage window. Task Manager is not the most reliable memory watcher, but you should see it immediately if something goes wrong. I have not seen memory leaks in the latest versions, except in the demo screen, where each ship coming up increases the game's memory footprint. Even with this, though, as soon as the actual game starts, usage drops to normal levels. But then again I am not using RS, so I am not stretching the system to extreme conditions.

It would be interesting to see what results you get.
Screet
---- E L I T E ----
---- E L I T E ----
Posts: 1883
Joined: Wed Dec 10, 2008 3:02 am
Location: Bremen, Germany

Post by Screet »

another_commander wrote:
It would be interesting to see what results you get.
I've done that in the past.

With each jump into a busy system, the memory load goes massively up. There are also drops in memory usage with less busy systems, but overall, Oolite does accumulate more and more memory.

Without RS/OSE the memory drops down much further after jumping.

Therefore, I really expect that it's the many different ships that come with these oxps which cause oolite to cache more and more models and not to free the memory from cache when these models are not used anymore. However, I would have to dive into the source to verify that guess.

Screet
User avatar
Lestradae
---- E L I T E ----
---- E L I T E ----
Posts: 3095
Joined: Tue Apr 17, 2007 10:30 pm
Location: Vienna, Austria

...

Post by Lestradae »

Hi A_C,
another_commander wrote:
... Lestradae, please launch Task Manager and select to view the Performance tab, where the memory usage is visible. Try launching Oolite in a window and repeating what you described above. Keep both Oolite and TM open so that you can see what happens. If there is a memory leak, you should be seeing a ladder pattern in the memory usage window. ...
... did that and can confirm Screet's observation: The ladder pattern is there.

Furthermore, since I upgraded from 2 to 4GB RAM last saturday, suddenly there is something in my log when the game crashes to desktop, i.e.:
[script.javaScript.warning.206]: ----- JavaScript warning: Ship.shipDisplayName is deprecated, use Ship.displayName instead.
[script.javaScript.warning.206]: ----- JavaScript warning: Ship.shipDisplayName is deprecated, use Ship.displayName instead.
[general.error.allocationFailure]: Failed to allocate space (4194304 bytes) for texture AddOns/Anarchies2.1.oxp/Textures/anarchies-salvager-inside.png
[general.error.allocationFailure]: Failed to allocate space (4194304 bytes) for texture AddOns/Anarchies2.1.oxp/Textures/anarchies-salvager-crane.png
[general.error.allocationFailure]: Failed to allocate space (4194304 bytes) for texture AddOns/Anarchies2.1.oxp/Textures/anarchies-salvager-cutter.png
Note that the last lines do not seem to have anything to do with Anarchies as such - sometimes other textures from other oxps or the game itself appear as "general.error.allocationFailure". Last time, it was the System Redux textures ...

There are two common denominators in those last log error lines in those cases though:

1) It's either complaining about "Ship.shipDisplayName" deprecation, or about something akin to "Ship.DockedStation" or somesuch and

2) Then three to five "general.error.allocationFailure" textures show up, but don't seem to have anything to do with the oxps they are coming from.

As I said, for my amateurish eyes this looks as if the game would keep useless data after a witchjump and not clean up after itself on PC systems or at least Vista, until it gets too much and there is simply no more place to allocate further stuff.

So a bug-fix might somehow really clear the cage after each jump or so?

Hope that helps tracking this down (and I hope it gets tracked down, as neither playing nor oxp-creating is a lot of fun as long as the game crashes on me every third jump).

:(

L

EDIT, PS: Another crash of the same sort, but this time crash on docking with the main station. The two worlds on the last two witchjumps did not show planetary textures of System Resdux. The log reads:
[script.javaScript.warning.206]: ----- JavaScript warning: Ship.shipDisplayName is deprecated, use Ship.displayName instead.
[script.javaScript.warning.206]: ----- JavaScript warning: Ship.shipDisplayName is deprecated, use Ship.displayName instead.
[script.javaScript.warning.206]: ----- JavaScript warning: Ship.shipDisplayName is deprecated, use Ship.displayName instead.
[script.javaScript.warning.206]: ----- JavaScript warning: Ship.shipDisplayName is deprecated, use Ship.displayName instead.
[DeepSpacePirate]: Added 3 pirates out of a possible 5 Killcounter: 11
[script.javaScript.warning.206]: ----- JavaScript warning: Ship.shipDisplayName is deprecated, use Ship.displayName instead.
[script.javaScript.warning.206]: ----- JavaScript warning: Ship.shipDisplayName is deprecated, use Ship.displayName instead.
[dataCache.willWrite]: About to write data cache.
Post Reply