Matrix Games Forums

Forums  Register  Login  Photo Gallery  Member List  Search  Calendars  FAQ 

My Profile  Inbox  Address Book  My Subscription  My Forums  Log Out

Crash report: Cannot Save Out of memory exception on 64bit os with 32gb ram

 
View related threads: (in this forum | in all forums)

Logged in as: Guest
Users viewing this topic: none
  Printable Version
All Forums >> [New Releases from Matrix Games] >> Distant Worlds 1 Series >> Tech Support >> Crash report: Cannot Save Out of memory exception on 64bit os with 32gb ram Page: [1]
Login
Message << Older Topic   Newer Topic >>
Crash report: Cannot Save Out of memory exception on 64... - 5/28/2014 4:33:27 PM   
warzer

 

Posts: 43
Joined: 5/28/2014
Status: offline
This occurred during an autosave interval. I would say i am mid to late game on a 10x10 700 game. it does seem to soft crash often but this is the first where it couldn't save. DXdiag attached

from taskmgr it shows memory usage only at 1469420k or about 1.5gb it shows it running as a 32bit operation. Is there a 64bit available or a way to allow the game to use more resources?
Version 1950 from steam. I am new and this is my first game.

---------------------------
Cannot save game
---------------------------
Distant Worlds could not save this game.

Error:

System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.

at System.Runtime.Serialization.ObjectToIdCache.Rehash()

at System.Runtime.Serialization.ObjectToIdCache.GetId(Object obj, Boolean& newId)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.OnHandleReference(XmlWriterDelegator xmlWriter, Object obj, Boolean canContainCyclicReference)

at WriteContractToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )

at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at WriteArrayOfContractToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract )

at System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at WriteArrayOfContractToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )

at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeAndVerifyType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, Boolean verifyKnownType, RuntimeTypeHandle declaredTypeHandle, Type declaredType)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithXsiType(XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle objectTypeHandle, Type objectType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle, Type declaredType)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteSerializationInfo(XmlWriterDelegator xmlWriter, Type objType, SerializationInfo serInfo)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteISerializable(XmlWriterDelegator xmlWriter, ISerializable obj)

at WriteOrderToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )

at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at WriteArrayOfOrderToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract )

at System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at WriteArrayOfOrderToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )

at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at WriteArrayOfArrayOfOrderToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , CollectionDataContract )

at System.Runtime.Serialization.CollectionDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at WriteArrayOfArrayOfOrderToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )

at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at WriteArrayOfOrderToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )

at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at WriteGalaxyToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )

at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.WriteDataContractValue(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.SerializeWithoutXsiType(DataContract dataContract, XmlWriterDelegator xmlWriter, Object obj, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContextComplex.InternalSerialize(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at System.Runtime.Serialization.XmlObjectSerializerWriteContext.InternalSerializeReference(XmlWriterDelegator xmlWriter, Object obj, Boolean isDeclaredType, Boolean writeXsiType, Int32 declaredTypeID, RuntimeTypeHandle declaredTypeHandle)

at WriteGameToXml(XmlWriterDelegator , Object , XmlObjectSerializerWriteContext , ClassDataContract )

at System.Runtime.Serialization.ClassDataContract.WriteXmlValue(XmlWriterDelegator xmlWriter, Object obj, XmlObjectSerializerWriteContext context)

at System.Runtime.Serialization.NetDataContractSerializer.InternalWriteObjectContent(XmlWriterDelegator writer, Object graph, DataContract contract, Hashtable surrogateDataContracts)

at System.Runtime.Serialization.NetDataContractSerializer.InternalWriteObjectContent(XmlWriterDelegator writer, Object graph)

at System.Runtime.Serialization.XmlObjectSerializer.WriteObjectContentHandleExceptions(XmlWriterDelegator writer, Object graph)

at System.Runtime.Serialization.NetDataContractSerializer.WriteObjectContent(XmlDictionaryWriter writer, Object graph)

at DistantWorlds.CompactSerializer.vfVQlgU6ThO8IqQBVkhM(Object , Object , Object )

at DistantWorlds.CompactSerializer.WriteObjectContent(XmlDictionaryWriter writer, Object graph)

at DistantWorlds.CompactSerializer.vfVQlgU6ThO8IqQBVkhM(Object , Object , Object )

at DistantWorlds.CompactSerializer.WriteObject(XmlDictionaryWriter writer, Object graph)

at DistantWorlds.Main.Sv8ff3FG9WG5A37c1QO(Object , Object , Object )

at DistantWorlds.Main.dukaPKvtZd(Stream , String )

at DistantWorlds.Main.EqBaHCDwuE(Object )

Working Set: 1685393408 bytes
---------------------------
OK
---------------------------


Attachment (1)

< Message edited by warzer -- 5/28/2014 5:35:30 PM >
Post #: 1
RE: Crash report: Cannot Save Out of memory exception o... - 5/28/2014 4:42:22 PM   
zakblood


Posts: 22687
Joined: 10/4/2012
Status: offline
try this and retry, it has helped others, but saying that they had the 32bit version of windows, i use windows 8.1 64bit and it works flawlessly so far tbh

http://www.matrixgames.com/forums/tm.asp?m=3373770

to answer your other questions,

Is there a 64bit available or a way to allow the game to use more resources?

no to the first bit, well i couldn't find the 64bit exe, so guess its 32bit only, unless they bring out a patch, but tbh it would need to be a big one as it would involve almost a rewrite unless it was coded that way from the start, and if so it would have shipped with it.

you don't need more resources either, games works fine in the spec, the recommended one that is in the file, 4gb of ram is max for a 32bit program,

a short explanation may be needed here,

Is a 32-bit program running on a 64-bit OS able to use more than 4GB of memory if available?

Short answer is: yes. Longer answer is depends. There is a hardware support for page re-mapping, which basically gives your program a window of a few pages into a larger area of memory. This window is however, should be managed by the program itself and will not get support from memory manager. There are examples of programs doing that like SQL on Windows. However, in general it is a bad idea and the program should either limit itself for 4GB or move to 64bits.

Normally you're limited to a 2GB address space, in which all your allocations and their overhead, fragmentation, etc., must fit along with memory-mapped files (which includes your program and the DLLs it uses). This effectively limits you to 1.5GB.

With special configuration, e.g. /3GB, you can make more than 2GB available to applications, but by doing so you rob the kernel of space, costing you file caching, handle capacity, etc..

On Win32, you can use more with PAE support, but it's not transparent, you have to manage it yourself.

in other words, use the switch for 3gb, then you won't or shouldn't get the errors, no matter how much ram you have installed, simple :)

or move to windows 8.1 which use better memory mapping support for more ram, saying that windows 7 isn't that bad tbh in that area either, but 8 is better.

adding the switch is one way, running it as win xp sp3 is another in compat mode, and see if it helps any, always as admin mind you so you get better memory management etc etc

< Message edited by zakblood -- 5/28/2014 6:10:28 PM >

(in reply to warzer)
Post #: 2
RE: Crash report: Cannot Save Out of memory exception o... - 5/28/2014 5:58:45 PM   
Erik Rutins

 

Posts: 37503
Joined: 3/28/2000
From: Vermont, USA
Status: offline
Hi Warzer,

A 64-bit OS with 4GB+ of RAM should not normally have issues. Could you upload the latest save file that did save for us per the instructions here?

http://www.matrixgames.com/forums/tm.asp?m=2415085

Are you running with any mods enabled?

_____________________________

Erik Rutins
CEO, Matrix Games LLC




For official support, please use our Help Desk: http://www.matrixgames.com/helpdesk/

Freedom is not Free.

(in reply to zakblood)
Post #: 3
RE: Crash report: Cannot Save Out of memory exception o... - 5/28/2014 6:04:35 PM   
warzer

 

Posts: 43
Joined: 5/28/2014
Status: offline
So... I read that thread previous and it doesn't seem to apply if already running a 64bit os. i have 20gb of free ram when this occurred and the game itself wasn't even using the 2gb it could be using as a 32bit app.

As far as i understand it the 3gb switch is for 32bit os's since i am running 64bit this does not help.

so the only suggestion is to move to window 8.1? I do not see this fixing the issue plus i HATE windows 8. maybe i will go to win9.

Any other suggestions or maybe command line launch options?

(in reply to zakblood)
Post #: 4
RE: Crash report: Cannot Save Out of memory exception o... - 5/28/2014 6:07:11 PM   
Erik Rutins

 

Posts: 37503
Joined: 3/28/2000
From: Vermont, USA
Status: offline
Hi Warzer,

Please see my post above, a save file would be very helpful so that we can see what's going on in your game. There should be no need to change operating systems.

Regards,

- Erik


_____________________________

Erik Rutins
CEO, Matrix Games LLC




For official support, please use our Help Desk: http://www.matrixgames.com/helpdesk/

Freedom is not Free.

(in reply to warzer)
Post #: 5
RE: Crash report: Cannot Save Out of memory exception o... - 5/28/2014 6:50:49 PM   
warzer

 

Posts: 43
Joined: 5/28/2014
Status: offline
Thanks for you assistance. I have uploaded file Warzer_GameCrashing_Ocasionally.zip

These crashes are various during game play, this save is the save after the crash where it failed to save previously and i had to reload an older one. After reloading the older one I tried to repeat some of the movement and changes I had previously then it auto saved successfully. This is what I am sending you. it also includes a dmp file it created when i tried to load the crashed autosave. Sorry to save the corrupt auto save was overwritten already.

< Message edited by warzer -- 5/28/2014 8:17:59 PM >

(in reply to Erik Rutins)
Post #: 6
RE: Crash report: Cannot Save Out of memory exception o... - 5/29/2014 1:33:06 AM   
GVind

 

Posts: 69
Joined: 5/28/2014
Status: offline
I got out of memory crashes only then save/load a lot with 700 star galaxy, looks like memory leak then saving\reloading. Got corrupted save then game semi-crashed while saving. In Windows Task manager game never exceeds 4 Gb memory on Windows 7 64-bit.

(in reply to warzer)
Post #: 7
RE: Crash report: Cannot Save Out of memory exception o... - 1/27/2016 6:34:52 PM   
mali85

 

Posts: 2
Joined: 1/27/2016
Status: offline
was looking for this information, thank you guys!

(in reply to GVind)
Post #: 8
RE: Crash report: Cannot Save Out of memory exception o... - 1/27/2016 6:55:09 PM   
zakblood


Posts: 22687
Joined: 10/4/2012
Status: offline
no problem, hope it helps, if not open a new post and we can try for you

(in reply to mali85)
Post #: 9
Page:   [1]
All Forums >> [New Releases from Matrix Games] >> Distant Worlds 1 Series >> Tech Support >> Crash report: Cannot Save Out of memory exception on 64bit os with 32gb ram Page: [1]
Jump to:





New Messages No New Messages
Hot Topic w/ New Messages Hot Topic w/o New Messages
Locked w/ New Messages Locked w/o New Messages
 Post New Thread
 Reply to Message
 Post New Poll
 Submit Vote
 Delete My Own Post
 Delete My Own Thread
 Rate Posts


Forum Software © ASPPlayground.NET Advanced Edition 2.4.5 ANSI

0.734