View Issue Details

IDProjectCategoryLast Update
0001126AI War 1 / ClassicCrash/ExceptionNov 18, 2010 7:38 pm
ReporterdumpsterKEEPER Assigned ToChris_McElligottPark  
Status resolvedResolutionfixed 
Product Version4.028 
Fixed in Version4.035 
Summary0001126: Game Crash
DescriptionI encountered a complete game crash under OSX today, while playing with the latest version. While playing the game locked up for a few seconds and then exited to the desktop. My system.log reported the following error:

AI War[11302]: AI War(11302,0x8e5c4000) malloc: *** mmap(size=33542144) failed (error code=12)\n*** error: can't allocate region\n*** set a breakpoint in malloc_error_break to debug

I've also attached the complete crash log as provided by OSX. There were no errors logged by AI War itself.
TagsNo tags attached.
Internal Weight

Activities

dumpsterKEEPER

Nov 5, 2010 4:25 pm

reporter  

Chris_McElligottPark

Nov 5, 2010 4:26 pm

administrator   ~0002775

Hmmm. Is there any way to do basically a memory test on OSX? This sort of thing almost makes me wonder if it's hitting some bad sector or something. So odd.

keith.lamothe

Nov 5, 2010 4:26 pm

administrator   ~0002776

Do you know what your machine's memory consumption looked like at the time, and how much AI War was using?

dumpsterKEEPER

Nov 5, 2010 4:34 pm

reporter  

aiwar-process-2.log (362,233 bytes)

dumpsterKEEPER

Nov 5, 2010 4:38 pm

reporter   ~0002777

As it just so happens, I wrote a quick shell script when tracking the pthread issue that dumps information about the AI War process while I'm playing. Every minute it does a complete lsof dump and a top log which should show all of the open files, plus general system information (yes, it is filtered by this specific PID, so you don't have to sort through everything on my system :))

I can look into memory/disk analysis as well, although I haven't run into any other issues on this machine. I think AI War is one of the more stressful things I use it for however. I can try to pursue that angle further and see what I can come up with.

keith.lamothe

Nov 5, 2010 4:46 pm

administrator   ~0002779

Wow, thanks for putting so much work into it :) But yea, periodic checks on the total-memory-being-held-by-the-application would be good. Judging by the error message it may have simply been out of memory, either physically or in the 32-bit address space.

dumpsterKEEPER

Nov 5, 2010 5:03 pm

reporter   ~0002781

Are you saying you're looking for something different than the log I attached? I can tweak it to log other data if necessary.

keith.lamothe

Nov 5, 2010 5:06 pm

administrator   ~0002782

I didn't get a look at the log until after I posted that. It looks like it has that info though I'm not clear on the meaning of the line:

"PhysMem: 328M wired, 455M active, 221M inactive, 1005M used, 19M free."

Is that saying that 19M is actually free for allocation but 221M is inactive and can be made free if necessary? Or that 19M is it?

dumpsterKEEPER

Nov 5, 2010 5:15 pm

reporter   ~0002783

My understanding is that inactive memory is memory that has been used and released, but is kept in case it's needed again. However, it can be made available to other applications as necessary. I don't have as much experience with memory usage under OSX as I do other operating systems, though.

dumpsterKEEPER

Nov 5, 2010 5:56 pm

reporter   ~0002784

I ran a full Memtest pass on the RAM and a verify pass on the HD, and both came up clean. There are more intrusive tests that can be done, but that at least rules out some of the obvious possible problems.

Chris_McElligottPark

Nov 8, 2010 9:34 am

administrator   ~0002916

Yeah, the memory model on OSX is super different from that on Windows. From the sound of it, there was a good amount available there, but it might have had problems due to allocation block size depending on what Mono was requesting. Shot in the dark there.

What's really odd is that this always happens around the same amount of time into the game. If it was based on how many sound effects and images had been loaded, you'd think it would vary a lot based on how many systems you viewed, if you had a lot of big battles, that sort of thing.

And, you'd think I'd be able to duplicate it on my Mac if it's a time-based thing, but no joy.

Would you mind testing with music completely disabled from the start and see what happens with that? Possibly also with sound completely disabled. That would at least help us know if that's the issue or what. It's very peculiar, it's not giving a lot of solid clues.

dumpsterKEEPER

Nov 8, 2010 5:31 pm

reporter   ~0002994

Today I played an eerily silent session of the same save game with no issues at all. With both music and sounds disabled, the game also ran noticeably better, which could have been part of the difference. I'll try enabling just one or the other and see if that might narrow it down any further.

keith.lamothe

Nov 8, 2010 5:33 pm

administrator   ~0002995

Thank you, that's certainly massively important info: for at least one person, it's definitely related to sound. Which probably means threads.

FYI, the .ogg music files are in the game directory, if you really want them playing having a playlist of those going in shuffle-loop is really not much different than what the game does. At least, to my knowledge :)

Chris_McElligottPark

Nov 8, 2010 5:43 pm

administrator   ~0002996

Quite so, Ketih.

And thanks, dumpsterKEEPER! That's hugely helpful info! I suspect the issue would be sound-related rather than music-related, but I'll be curious to see what seems to be the case as you look at it.

Also, the new 4.030 version includes some extra debugging info in the logs if it does run into the psched error before crashing.

Vampyre

Nov 9, 2010 3:32 am

reporter   ~0003040

Last edited: Nov 9, 2010 3:37 am

Hi all,

I just tried to continue the game I had started in the tutorial, with the music disabled, and the sound on. I started the game at 92 minutes left from end of trial, and it crashed back at 27 minutes left... A little bit more than 1 hour. My guess would be that the sounds are involved in this crash... (forgot to add that I had updated with the latest betas). Here is the only error found in the related text files ErrorsReportedByEngine.txt with that latest betas.


ErrorsReportedByEngine-----------------------------------
11/09/2010 09:26:47 (4.030)
-----------------------------------Error-----------------------------------Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 15, inProgressWWWs: 3, GC.GetTotalMemory: 190,050,304, LoadedTextureWWWs: 841 [0], LoadedMusicWWWs: 1 [0], LoadedWebServiceWWWs: 0 [0], LoadedMusicWWWs: 3,282 [0], LoadedMusicWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
GameSound:LoadForPlay()
GameSound:Play()
GameSoundGroup:Play(SoundType)
Game:PlaySound(String, SoundType)
ForegroundObject:FireAtObject(ForegroundObject, Int32, FInt, FInt)
ForegroundObject:TryAttack()
Game:RunOneCycleOfSimulation()
Game:RunNextCycle(Boolean)
Game:RunFrame()
MainCameraLogic:FixedUpdate()


No entry for today in the UnhandledErrors.txt

Chris_McElligottPark

Nov 9, 2010 9:16 am

administrator   ~0003059

Very interesting! I'm not surprised, I figured it was the sounds. There's nothing particularly unexpected in what you were posting, though, unfortunately. Hopefully further testing will reveal more.

Vampyre

Nov 9, 2010 10:09 am

reporter   ~0003066

Tomorrow, I'll try to start the opposite test. Music but no sound, and see what happens... I'm not very sure about what I say, but as it seems to come after a period of more or less 1 hour, could that be something to do with allocation of sounds in the memory ?

What does this line means ? LoadedMusicWWWs: 3,282 [0]

Is it 3,282 sounds loaded in memory ? If I look at other numbers, it seems quite high... Maybe something there is badly allocated after a period of time ? Don't know, just guessing...

Chris_McElligottPark

Nov 9, 2010 10:16 am

administrator   ~0003067

It is 3282 sounds loaded into memory, as you say (it's mislabeled), but each sound is only very temporarily allocated and then dropped. With images, those are permanently loaded, but with music and sounds those are only temporary before they drop themselves (they play, then end, then dispose).

The other thing, audioObjects: 15, shows how many sounds can be active at any one given time, based on what is allocated for them. I suppose I could try halving that and see what happens, but given that the inProgressWWWs: 3, that means that there are only 3 different files being streamed off the disk at the present time.

I may have to go a completely different route with the sound effects, we'll see.

dumpsterKEEPER

Nov 9, 2010 3:35 pm

reporter   ~0003086

While playing today under 4.030, the game locked up with the pthread error after only a half-hour or so. This time around I was playing with only sounds enabled and no music. I did notice that today I was doing a lot more attacking than normal, which makes me wonder if this is some sort of cumulative effect over time. Here are the two errors reported in ErrorReportedByEngine.txt:

11/09/2010 12:25:29 (4.030)
-----------------------------------
ErrorsReportedByEngine-----------------------------------
11/09/2010 12:25:29 (4.030)
-----------------------------------Error-----------------------------------Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 15, inProgressWWWs: 3, GC.GetTotalMemory: 296,300,544, LoadedTextureWWWs: 978 [0], LoadedMusicWWWs: 0 [0], LoadedWebServiceWWWs: 0 [0], LoadedMusicWWWs: 3,075 [0], LoadedMusicWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
GameSound:LoadForPlay()
GameSound:Play()
GameSoundGroup:Play(SoundType)
Game:PlaySound(String, SoundType)
ForegroundObject:FireAtObject(ForegroundObject, Int32, FInt, FInt)
ForegroundObject:TryAttack()
Game:RunOneCycleOfSimulation()
Game:RunNextCycle(Boolean)
Game:RunFrame()
MainCameraLogic:FixedUpdate()



11/09/2010 12:25:39 (4.030)
-----------------------------------
ErrorsReportedByEngine-----------------------------------
11/09/2010 12:25:39 (4.030)
-----------------------------------Exception-----------------------------------Log String: ExecutionEngineException: Couldn't create thread
Stack Trace: (wrapper delegate-begin-invoke) System.Threading.WaitCallback:begin_invoke_IAsyncResult__this___object_AsyncCallback_object (object,System.AsyncCallback,object)
System.Threading.ThreadPool.QueueUserWorkItem (System.Threading.WaitCallback callBack, System.Object state)
Ionic.Zlib.ParallelDeflateOutputStream.Write (System.Byte[] buffer, Int32 offset, Int32 count)
Ionic.Zlib.CrcCalculatorStream.Write (System.Byte[] buffer, Int32 offset, Int32 count)
Ionic.Zip.ZipEntry._WriteEntryData (System.IO.Stream s)
Ionic.Zip.ZipEntry._EmitOne (System.IO.Stream outstream)
Ionic.Zip.ZipEntry.Write (System.IO.Stream s)

keith.lamothe

Nov 9, 2010 3:41 pm

administrator   ~0003087

I didn't realize Ionic spawned threads. Or am I misreading that, Chris?

keith.lamothe

Nov 9, 2010 3:44 pm

administrator   ~0003088

Hmm, Chris, could the timing (almost always happening in the middle of some big battle) be related to the NextTurnData crossing the "is this small enough that I can skip compression" threshold?

Chris_McElligottPark

Nov 9, 2010 3:53 pm

administrator   ~0003089

Whoa! That is hugely significant, yes. I also didn't know that Ionic was spawning threads for this -- that's terrible, that needs to stop. Given that Tidalis never had this sort of problem, that could be what it is related to: Ionic is not something we used in Tidalis.

It could be that there are orphan threads being spawned when decompression fails for some reason, for example. I will have to look at this Ionic stuff a lot closer and see what I can pare down with that. This is the hugest clue we've had in a while, and totally in an unexpected area of the code -- very exciting!

I wish there was a way to get a report of all the threads in a process through C# itself, but I'm not aware of one and google didn't turn up much. I figured there would be something in the Threading namespace or as part of Reflection, but I didn't see anything. Do you know of anything like that, Keith?

keith.lamothe

Nov 9, 2010 4:01 pm

administrator   ~0003090

Well, there's something like this:

using System;
using System.Diagnostics;

class MainClass
{
   public static void Main()
   {
      Process[] allProcs = Process.GetProcesses();

      foreach(Process proc in allProcs)
      {
         ProcessThreadCollection myThreads = proc.Threads;
         Console.WriteLine("process: {0}, id: {1}", proc.ProcessName, proc.Id);

         foreach(ProcessThread pt in myThreads)
         {
            Console.WriteLine(" thread: {0}", pt.Id);
            Console.WriteLine(" started: {0}", pt.StartTime.ToString());
            Console.WriteLine(" CPU time: {0}", pt.TotalProcessorTime);
            Console.WriteLine(" priority: {0}", pt.BasePriority);
            Console.WriteLine(" thread state: {0}", pt.ThreadState.ToString());
         }
      }
   }
}

keith.lamothe

Nov 9, 2010 4:04 pm

administrator   ~0003091

For testing purposes, what do you think of having an Advanced-tab option for disabling compression of turn data (basically having it always use the small-enough-to-not-compress branch)? Or is there other compression happening on a frequent basis?

Or do you think this was happening during compression in the auto-save process?

Chris_McElligottPark

Nov 9, 2010 4:09 pm

administrator   ~0003092

Oh, interesting on that. Of course, when I've tried to do Process.GetProcess by name on OSX in the past, it has given me... ahem... an access denied issue. So there may be some porting issues in mono on that platform with regard to process stuff. Part of why I'd given that a wide berth I guess, I was hoping for something in AppDomain or similar. I'll see if I can get that to work, though.

On that exception... hmm, that may actually be an issue with the savegame-style zipping rather than anything else. Hmmmmmm.

Vampyre

Nov 9, 2010 4:15 pm

reporter   ~0003093

It is indeed a possibility that it's somewhere a link with the savegame... Every save game it made automatically is always exactly 5 minutes playtime before the previous crash. As my savegame is set on 5, it could be linked. And I can also point out what dumpster said earlier, there is always a big battle occuring when it crashes...

I was about to start a crash test this night : start the tutorial campaign, set only my defenses, and go to sleep. If it is linked with the number of battles, it should take very much longer before the crash. As it freezes totally the mac, I could see the playtime when it crashed... Do you think it could help doing this test ?

Chris_McElligottPark

Nov 9, 2010 4:19 pm

administrator   ~0003094

Sure, that could be very helpful -- but it's not required, I've got enough to go on for the moment now that hopefully you can retest on the next patch and have more success. Man I know we'd all like to put this one to bed!

Also, that's very fascinating that it always seems to be when there's an autosave during a big battle. I'll definitely have to look at the save logic, then, and see what I can do with that. Simply moving that to something like GZip compression instead of full Zip compression might let us bypass this completely, as I'm pretty positive that isn't spawning any worker threads.

keith.lamothe

Nov 9, 2010 4:22 pm

administrator   ~0003095

Yea, that was exactly my thought: use a different compression :)

keith.lamothe

Nov 9, 2010 4:22 pm

administrator   ~0003096

Of course, we had to change during the port due to all kinds of problems with SharpZLib, but you're thinking Ionic has a compression that doesn't involve thread-spawns?

Chris_McElligottPark

Nov 9, 2010 4:32 pm

administrator   ~0003097

Well, the way that Zip works in Ionic is really different from the others -- you have to build this meta-structure, which then gets saved to a stream, etc. With the others its more of a stream-processing process. The error message above is from ZipEntry, which is one of those meta-structure things in the zip handling code.

I believe the Ionic code is open source, so if that's the case I intend to take a peek at the source code just to be sure on the GZip side of things.

That would let us do NEW savegames as GZip compressed, while older ones are still of course being uncompressed using Zip compression, which isn't as destructive anyhow. Assuming that we can get similar compression levels, that would definitely be desirable in this case I think.

If not, and if the Ionic library is open source, worst case is I could rewrite it not to use thread spawns -- that shouldn't be too hard. If it's NOT open source... and Gzip does still seem to spawn new threads... we'll cross that bridge when we get to it. ;)

keith.lamothe

Nov 9, 2010 4:34 pm

administrator   ~0003098

Yea, if necessary we can just include a whole other zip library to do compression and decompression of new stuff, and keep Ionic in there to decompress the old stuff. But we'll see :)

Chris_McElligottPark

Nov 9, 2010 4:45 pm

administrator   ~0003099

Well, sure. But I wasn't saying we needed to do anything with another zip library, that seems highly unlikely -- but indeed possible, if it comes to that in the end.

resistor

Nov 9, 2010 7:29 pm

reporter   ~0003102

Ionic does indeed use worker threads to perform compression of large inputs. From the documentation for the Ionic.Zip.ZipFile.ParallelDeflateThreshold member:

"DotNetZip will use multiple threads to compress any ZipEntry, if the entry is larger than the given size. Zero means "always use parallel deflate", while -1 means "never use parallel deflate". The default value for this property is 512k. Aside from the special values of 0 and 1, the minimum value is 65536."

Chris_McElligottPark

Nov 9, 2010 8:45 pm

administrator   ~0003113

Okay, wow! That's incredibly helpful to know. I'm going to experiment with what the file save time and size difference is with GZip instead of Zip, and if that's not looking favorable I'll go with that turned off. Awesome find, thanks so much!

Chris_McElligottPark

Nov 9, 2010 8:57 pm

administrator   ~0003116

For the next version, somewhat amusingly:

* GZip compression is now used instead of Zip compression for savegames. This has the advantages of: 1) resulting in significantly smaller save files, especially for large savegames -- as much as 30% savings at the upper end; 2) resulting in the correspondingly smaller full sync network requirements for multiplayer; 3) hopefully solving the "pthread_getschedparam" issue on OSX, which seems to quite likely have been related to unintentionally-multithreaded zip processing in the autosave process.

Man, fingers crossed with this one! :)

keith.lamothe

Nov 9, 2010 8:58 pm

administrator   ~0003117

Sweet! :)

Chris_McElligottPark

Nov 9, 2010 9:01 pm

administrator   ~0003119

Indeed. :)

And I put the ParallelDeflateThreshold in as -1, but the zip methods are now commented out. So if we ever do go back to the zip methods, at least that will be in there now. :)

keith.lamothe

Nov 9, 2010 9:02 pm

administrator   ~0003120

So that parallel stuff doesn't apply to GZip? Are you certain it isn't spawning threads?

Chris_McElligottPark

Nov 9, 2010 9:05 pm

administrator   ~0003121

Not 100% sure, but it doesn't say anything about that, searching the docs says nothing about that, and the methods for saving are WILDLY different for GZip compared to Zip. It doesn't even use objects, it's just a stream object, etc.

Chris_McElligottPark

Nov 9, 2010 9:08 pm

administrator   ~0003122

Oh, and incidentally, the GZip one is pretty battle-tested in the program. It uses the GZip compression a minimum of 4x per second, and probably way more than that. The Zip compression, on the other hand, was only used at every time the game was saved, so usually only every 10 minutes.

In fact, with the issue happening every 30 minutes for Vampyre instead of every 60 minutes like normal, that makes perfect sense since his autosave was set to 5 minutes instead of the normal 10.

The fact that this would happen during big battles the most is quite possibly simply a confluence of events, with a lot of sound files in use causing the error from this to surface at that time due to it pushing it over the threshold of threads. That's my sincere hope, anyway.

Vampyre

Nov 10, 2010 7:26 am

reporter   ~0003158

Thanks for your support and very quick response time ! Even if I'm not one of your client (yet), you checked and spent some times trying to find a solution... That's really what makes the difference between Indies, and Majors. Anyway, thanks a lot !

Back to business now, I've downloaded the latest patch released today, unfortunately, due to electricity problems in the area, I have no more time to check a new game now... I will do the check with all sounds and music on, and I'll keep you posted about the result of my tomorrow game...

resistor

Nov 10, 2010 11:46 am

reporter   ~0003183

Unfortunately, I can report that I was still getting pthread_getschedparam() errors last night after installing 4.031.

keith.lamothe

Nov 10, 2010 11:49 am

administrator   ~0003185

Can you post the related log info?

Also:

1) Was it close to autosave-time?
2) Was sound enabled?
3) Was music enable?
4) Was there a big battle going? With lots of sounds?
5) How long into the session did it crash?
6) What's your autosave interval?

resistor

Nov 10, 2010 11:52 am

reporter   ~0003187

Unfortunately, I saved-and-quite as soon as I got the error message, so it didn't actually crash, and doesn't seem to have produced logs.

1) I didn't actually notice.
2) Yes
3) Yes
4) Mostly, but I think there was at least one that wasn't.
5) It happened four times in an approximately 2 hour play session.
6) 10 minutes

I'll try to keep more detailed records of my session tonight.

resistor

Nov 10, 2010 11:53 am

reporter   ~0003188

Another possibly interesting fact: I left the game open and paused for about two hours, and nothing happened. However, once I came back and resumed, it went back to crashing right on schedule.

Chris_McElligottPark

Nov 10, 2010 11:54 am

administrator   ~0003189

Hmmmm...

keith.lamothe

Nov 10, 2010 11:56 am

administrator   ~0003190

Thanks for the info :)

dumpsterKEEPER

Nov 10, 2010 5:06 pm

reporter   ~0003197

I can confirm that I am still getting crashes with 4.031 as well. Here are the two salient log entries:

11/10/2010 12:36:19 (4.031)
-----------------------------------
ErrorsReportedByEngine-----------------------------------
11/10/2010 12:36:18 (4.031)
-----------------------------------Error-----------------------------------Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 15, inProgressWWWs: 0, GC.GetTotalMemory: 228,405,248, LoadedTextureWWWs: 1,099 [0], LoadedMusicWWWs: 0 [0], LoadedWebServiceWWWs: 0 [0], LoadedSoundWWWs: 2,908 [0], LoadedUpdateWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
GameSound:LoadForPlay()
GameSound:Play()
GameSoundGroup:Play(SoundType)
Game:PlaySound(String, SoundType)
ForegroundObject:FireAtObject(ForegroundObject, Int32, FInt, FInt)
ForegroundObject:TryAttack()
Game:RunOneCycleOfSimulation()
Game:RunNextCycle(Boolean)
Game:RunFrame()
MainCameraLogic:FixedUpdate()



11/10/2010 13:17:25 (4.031)
-----------------------------------
ErrorsReportedByEngine-----------------------------------
11/10/2010 13:17:24 (4.031)
-----------------------------------Error-----------------------------------Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 15, inProgressWWWs: 5, GC.GetTotalMemory: 267,972,608, LoadedTextureWWWs: 1,246 [0], LoadedMusicWWWs: 0 [0], LoadedWebServiceWWWs: 0 [0], LoadedSoundWWWs: 2,686 [0], LoadedUpdateWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
GameSound:LoadForPlay()
GameSound:Play()
GameSoundGroup:Play(SoundType)
Game:PlaySound(String, SoundType)
ForegroundObject:FireAtObject(ForegroundObject, Int32, FInt, FInt)
ForegroundObject:TryAttack()
Game:RunOneCycleOfSimulation()
Game:RunNextCycle(Boolean)
Game:RunFrame()
MainCameraLogic:FixedUpdate()

Similar behavior as before, with only sounds enabled. Interestingly, it seems to be crashing every half-hour or so for me now, instead of hourly. The only settings I've changed are disabling music and enabling the option to not overwrite autosaves.

keith.lamothe

Nov 10, 2010 5:16 pm

administrator   ~0003199

Hmm, interesting on the change from the no-overwrite-autosave thing. Perhaps it's never fully letting go of the file handle and/or compression thread (if there is a compression thread)?

Chris_McElligottPark

Nov 10, 2010 6:01 pm

administrator   ~0003203

Hmm -- can you confirm if it goes back up to the hour if you make it overwrite autosaves again? Too many things are changing at once, we're at risk of making bad decisions there based on muddy data. That's certainly intriguing, though.

Vampyre

Nov 10, 2010 6:07 pm

reporter   ~0003204

Ok, I'll run this night the crash test I had in mind. That is starting with the latest update, making a new game tutorial, just build the defenses on the homeplanet, and let go over the night... I'll see in the morning if it crashed or not. The setup for this test will be as usual (overwrite auto-save every 5 minutes), no music, only sounds. The purpose of this test is to check whether the activity of the player has something to do with the crash (the more things you do, the more often it will crash). In the morning, I'll run the same crash test as before. If the game didn't crashed during the night, I'll play the game further on... I'll keep you updated on the results of the tests.

Chris_McElligottPark

Nov 10, 2010 6:21 pm

administrator   ~0003205

Awesome, I really appreciate it!

resistor

Nov 11, 2010 1:48 am

reporter   ~0003219

Not very helpful, but I found this on the Unity Support fora:

http://forum.unity3d.com/threads/61328-WWW-in-Editor-causes-Hard-Lock

Vampyre

Nov 11, 2010 2:38 am

reporter   ~0003220

Ok guys, I ran the test this night, and I must say I have unexpected results.

So I started a new game (tutorial campaign), set the defenses, and a group of 385 ships, and 10 engineers. Save was every 5 minutes in automatic overwriting. Music disable, and sound on. When I woke up this morning the game did not crashed... That's already a big surprise...

7h51 minutes game, with no crash. The AI had raised from 10 to 25. I noticed though that the game was laggy by then. When I pressed the tab key, I could see the scanning line going down in a not fluid manner. After 3 minutes I took over (I had created a colony ship, ten scouts, and they went through the gates), I had the time to select 205 of my ships with 1 engineer, and didn't had the time to send them through Fixio. That's something like 2 minutes time.

There is the second big surprise : the game didn't froze as usual, but exited to desktop, with an error from the game. Here is the debug screen received after the crash to desktop.


Process: AI War [183]
Path: /Applications/AIWar/AIWar.app/Contents/MacOS/AI War
Identifier: unity.Arcen Games, LLC.AI War
Version: Unity Player version 3.0.0f5 (3.0.0f5)
Code Type: X86 (Native)
Parent Process: launchd [82]

Date/Time: 2010-11-11 08:24:59.193 +0100
OS Version: Mac OS X 10.6.4 (10F569)
Report Version: 6

Interval Since Last Report: 131588 sec
Crashes Since Last Report: 11
Per-App Interval Since Last Report: 48677 sec
Per-App Crashes Since Last Report: 1
Anonymous UUID: A41587A5-664D-4EA2-BC3D-6B63123F282F

Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Application Specific Information:
abort() called

Thread 0 Crashed: Dispatch queue: com.apple.main-thread
0 libSystem.B.dylib 0x97d76ef6 __kill + 10
1 libSystem.B.dylib 0x97d76ee8 kill$UNIX2003 + 32
2 libSystem.B.dylib 0x97e0962d raise + 26
3 libSystem.B.dylib 0x97e1f6e4 abort + 93
4 libmono.0.dylib 0x00c0d926 mono_handle_native_sigsegv + 327
5 libSystem.B.dylib 0x97d7c1fb _sigtramp + 43
6 ??? 0xffffffff 0 + 4294967295
7 libSystem.B.dylib 0x97e0962d raise + 26
8 libSystem.B.dylib 0x97e1f6e4 abort + 93
9 libstdc++.6.dylib 0x91566fda __gnu_cxx::__verbose_terminate_handler() + 433
10 libstdc++.6.dylib 0x9156517a __cxxabiv1::__terminate(void (*)()) + 10
11 libstdc++.6.dylib 0x915651ba __cxxabiv1::__unexpected(void (*)()) + 0
12 libstdc++.6.dylib 0x915652b8 __gxx_exception_cleanup(_Unwind_Reason_Code, _Unwind_Exception*) + 0
13 libstdc++.6.dylib 0x91565658 operator new(unsigned long) + 101
14 unity.Arcen Games, LLC.AI War 0x001a185d DataStructures::List<RakNet::RakString::SharedString*>::List() + 1620977
15 unity.Arcen Games, LLC.AI War 0x003f6fe3 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4068215
16 unity.Arcen Games, LLC.AI War 0x003f7694 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4069928
17 unity.Arcen Games, LLC.AI War 0x003fbb69 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4087549
18 unity.Arcen Games, LLC.AI War 0x003fedea DataStructures::List<RakNet::RakString::SharedString*>::List() + 4100478
19 unity.Arcen Games, LLC.AI War 0x004017b6 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4111178
20 unity.Arcen Games, LLC.AI War 0x003f974b DataStructures::List<RakNet::RakString::SharedString*>::List() + 4078303
21 ??? 0x18caeb5b 0 + 415951707
22 ??? 0x18caeb0d 0 + 415951629
23 ??? 0x18cae923 0 + 415951139
24 ??? 0x18cae71b 0 + 415950619
25 ??? 0x18cae67a 0 + 415950458
26 ??? 0x18cdb1a6 0 + 416133542
27 ??? 0x4c9ffb86 0 + 1285553030
28 ??? 0x18cda1ca 0 + 416129482
29 ??? 0x18c34e56 0 + 415452758
30 ??? 0x18cadcea 0 + 415948010
31 ??? 0x18caa402 0 + 415933442
32 ??? 0x18caa50e 0 + 415933710
33 libmono.0.dylib 0x00b8ecec mono_jit_runtime_invoke + 1149
34 libmono.0.dylib 0x00cd4110 mono_runtime_invoke + 133
35 unity.Arcen Games, LLC.AI War 0x002a6794 DataStructures::List<RakNet::RakString::SharedString*>::List() + 2689832
36 unity.Arcen Games, LLC.AI War 0x0027d827 DataStructures::List<RakNet::RakString::SharedString*>::List() + 2522043
37 unity.Arcen Games, LLC.AI War 0x0027ee8f DataStructures::List<RakNet::RakString::SharedString*>::List() + 2527779
38 unity.Arcen Games, LLC.AI War 0x003716ad DataStructures::List<RakNet::RakString::SharedString*>::List() + 3521089
39 unity.Arcen Games, LLC.AI War 0x00371bff DataStructures::List<RakNet::RakString::SharedString*>::List() + 3522451
40 unity.Arcen Games, LLC.AI War 0x002621bb DataStructures::List<RakNet::RakString::SharedString*>::List() + 2409807
41 unity.Arcen Games, LLC.AI War 0x0034a2f2 DataStructures::List<RakNet::RakString::SharedString*>::List() + 3360390
42 com.apple.Foundation 0x91f889f5 __NSFireTimer + 282
43 com.apple.CoreFoundation 0x935ea70b __CFRunLoopRun + 8059
44 com.apple.CoreFoundation 0x935e8094 CFRunLoopRunSpecific + 452
45 com.apple.CoreFoundation 0x935e7ec1 CFRunLoopRunInMode + 97
46 com.apple.HIToolbox 0x91c33f9c RunCurrentEventLoopInMode + 392
47 com.apple.HIToolbox 0x91c33d51 ReceiveNextEventCommon + 354
48 com.apple.HIToolbox 0x91c33bd6 BlockUntilNextEventMatchingListInMode + 81
49 com.apple.AppKit 0x947f0a89 _DPSNextEvent + 847
50 com.apple.AppKit 0x947f02ca -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 156
51 com.apple.AppKit 0x947b255b -[NSApplication run] + 821
52 com.apple.AppKit 0x947aa5ed NSApplicationMain + 574
53 unity.Arcen Games, LLC.AI War 0x0034b632 DataStructures::List<RakNet::RakString::SharedString*>::List() + 3365318
54 unity.Arcen Games, LLC.AI War 0x000165da DataStructures::List<RakNet::RakString::SharedString*>::List() + 2414
55 unity.Arcen Games, LLC.AI War 0x00016501 DataStructures::List<RakNet::RakString::SharedString*>::List() + 2197

Thread 1: Dispatch queue: com.apple.libdispatch-manager
0 libSystem.B.dylib 0x97d3c942 kevent + 10
1 libSystem.B.dylib 0x97d3d05c _dispatch_mgr_invoke + 215
2 libSystem.B.dylib 0x97d3c519 _dispatch_queue_invoke + 163
3 libSystem.B.dylib 0x97d3c2be _dispatch_worker_thread2 + 240
4 libSystem.B.dylib 0x97d3bd41 _pthread_wqthread + 390
5 libSystem.B.dylib 0x97d3bb86 start_wqthread + 30

Thread 2:
0 libSystem.B.dylib 0x97d44066 __semwait_signal + 10
1 libSystem.B.dylib 0x97d6fc64 nanosleep$UNIX2003 + 188
2 libmono.0.dylib 0x00d214d1 collection_thread + 56
3 libSystem.B.dylib 0x97d4381d _pthread_start + 345
4 libSystem.B.dylib 0x97d436a2 thread_start + 34

Thread 3:
0 libSystem.B.dylib 0x97d16136 semaphore_wait_trap + 10
1 libmono.0.dylib 0x00d43d90 mono_sem_wait + 24
2 libmono.0.dylib 0x00c81b6d finalizer_thread + 155
3 libmono.0.dylib 0x00d0bb3d start_wrapper + 514
4 libmono.0.dylib 0x00d3b195 thread_start_routine + 277
5 libmono.0.dylib 0x00d60150 GC_start_routine + 100
6 libSystem.B.dylib 0x97d4381d _pthread_start + 345
7 libSystem.B.dylib 0x97d436a2 thread_start + 34

Thread 4:
0 libSystem.B.dylib 0x97d160fa mach_msg_trap + 10
1 libSystem.B.dylib 0x97d16867 mach_msg + 68
2 com.apple.CoreFoundation 0x935e8faf __CFRunLoopRun + 2079
3 com.apple.CoreFoundation 0x935e8094 CFRunLoopRunSpecific + 452
4 com.apple.CoreFoundation 0x935edfd4 CFRunLoopRun + 84
5 unity.Arcen Games, LLC.AI War 0x0031f7bd DataStructures::List<RakNet::RakString::SharedString*>::List() + 3185489
6 unity.Arcen Games, LLC.AI War 0x00414da8 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4190524
7 libSystem.B.dylib 0x97d4381d _pthread_start + 345
8 libSystem.B.dylib 0x97d436a2 thread_start + 34

Thread 5:
0 libSystem.B.dylib 0x97d1614e semaphore_timedwait_trap + 10
1 ...ple.CoreServices.CarbonCore 0x9626215e MPWaitOnSemaphore + 125
2 unity.Arcen Games, LLC.AI War 0x004125a2 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4180278
3 unity.Arcen Games, LLC.AI War 0x00412630 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4180420
4 unity.Arcen Games, LLC.AI War 0x00411df1 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4178309
5 unity.Arcen Games, LLC.AI War 0x00411f30 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4178628
6 unity.Arcen Games, LLC.AI War 0x00414da8 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4190524
7 libSystem.B.dylib 0x97d4381d _pthread_start + 345
8 libSystem.B.dylib 0x97d436a2 thread_start + 34

Thread 6:
0 libSystem.B.dylib 0x97d1615a semaphore_timedwait_signal_trap + 10
1 libSystem.B.dylib 0x97d43ca5 _pthread_cond_wait + 1066
2 libSystem.B.dylib 0x97d72848 pthread_cond_timedwait_relative_np + 47
3 com.apple.audio.CoreAudio 0x921d5805 CAGuard::WaitFor(unsigned long long) + 219
4 com.apple.audio.CoreAudio 0x921d8837 CAGuard::WaitUntil(unsigned long long) + 289
5 com.apple.audio.CoreAudio 0x921d6134 HP_IOThread::WorkLoop() + 1892
6 com.apple.audio.CoreAudio 0x921d59cb HP_IOThread::ThreadEntry(HP_IOThread*) + 17
7 com.apple.audio.CoreAudio 0x921d58e2 CAPThread::Entry(CAPThread*) + 140
8 libSystem.B.dylib 0x97d4381d _pthread_start + 345
9 libSystem.B.dylib 0x97d436a2 thread_start + 34

Thread 7:
0 libSystem.B.dylib 0x97d1620e mach_wait_until + 10
1 libSystem.B.dylib 0x97d9d5a9 nanosleep + 345
2 libSystem.B.dylib 0x97d9d44a usleep + 61
3 unity.Arcen Games, LLC.AI War 0x0077262d PxcPoolMallocData::PxcPoolMallocData() + 674915
4 unity.Arcen Games, LLC.AI War 0x007901d2 PxcPoolMallocData::PxcPoolMallocData() + 796680
5 libSystem.B.dylib 0x97d4381d _pthread_start + 345
6 libSystem.B.dylib 0x97d436a2 thread_start + 34

Thread 8:
0 libSystem.B.dylib 0x97d1620e mach_wait_until + 10
1 libSystem.B.dylib 0x97d9d5a9 nanosleep + 345
2 unity.Arcen Games, LLC.AI War 0x0041508f DataStructures::List<RakNet::RakString::SharedString*>::List() + 4191267
3 unity.Arcen Games, LLC.AI War 0x0040bca9 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4153405
4 unity.Arcen Games, LLC.AI War 0x0040bcd1 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4153445
5 unity.Arcen Games, LLC.AI War 0x00414da8 DataStructures::List<RakNet::RakString::SharedString*>::List() + 4190524
6 libSystem.B.dylib 0x97d4381d _pthread_start + 345
7 libSystem.B.dylib 0x97d436a2 thread_start + 34

Thread 9:
0 libSystem.B.dylib 0x97d8c22e sem_wait + 10
1 unity.Arcen Games, LLC.AI War 0x007729ee PxcPoolMallocData::PxcPoolMallocData() + 675876
2 unity.Arcen Games, LLC.AI War 0x00790199 PxcPoolMallocData::PxcPoolMallocData() + 796623
3 libSystem.B.dylib 0x97d4381d _pthread_start + 345
4 libSystem.B.dylib 0x97d436a2 thread_start + 34

Thread 10:
0 libSystem.B.dylib 0x97d44066 __semwait_signal + 10
1 libSystem.B.dylib 0x97d6fc64 nanosleep$UNIX2003 + 188
2 libmono.0.dylib 0x00d3a998 SleepEx + 196
3 libmono.0.dylib 0x00d09ed3 ves_icall_System_Threading_Thread_Sleep_internal + 77
4 ??? 0x3c556d1f 0 + 1012231455
5 ??? 0x3c556c9f 0 + 1012231327
6 ??? 0x4c9d0c90 0 + 1285360784
7 ??? 0x01f97ce1 0 + 33127649
8 libmono.0.dylib 0x00b8ecec mono_jit_runtime_invoke + 1149
9 libmono.0.dylib 0x00cd4110 mono_runtime_invoke + 133
10 libmono.0.dylib 0x00cd4713 mono_runtime_delegate_invoke + 126
11 libmono.0.dylib 0x00d0bba0 start_wrapper + 613
12 libmono.0.dylib 0x00d3b195 thread_start_routine + 277
13 libmono.0.dylib 0x00d60150 GC_start_routine + 100
14 libSystem.B.dylib 0x97d4381d _pthread_start + 345
15 libSystem.B.dylib 0x97d436a2 thread_start + 34

Thread 11:
0 libSystem.B.dylib 0x97d3b9d2 __workq_kernreturn + 10
1 libSystem.B.dylib 0x97d3bf68 _pthread_wqthread + 941
2 libSystem.B.dylib 0x97d3bb86 start_wqthread + 30

Thread 0 crashed with X86 Thread State (32-bit):
  eax: 0x00000000 ebx: 0x97e1f693 ecx: 0xbfffd07c edx: 0x97d76ef6
  edi: 0xa0b0ab30 esi: 0xa0b0ab30 ebp: 0xbfffd098 esp: 0xbfffd07c
   ss: 0x0000001f efl: 0x00000282 eip: 0x97d76ef6 cs: 0x00000007
   ds: 0x0000001f es: 0x0000001f fs: 0x00000000 gs: 0x00000037
  cr2: 0x3438b000

Binary Images:
    0x1000 - 0x8b4fe7 +unity.Arcen Games, LLC.AI War Unity Player version 3.0.0f5 (3.0.0f5) <D3D5E058-354A-FFF0-6C87-A21B23D0AA50> /Applications/AIWar/AIWar.app/Contents/MacOS/AI War
  0xa54000 - 0xa7afff libssl.0.9.7.dylib 0.9.7 (compatibility 0.9.7) <32607000-7573-6D51-ABC3-420B4A0D6629> /usr/lib/libssl.0.9.7.dylib
  0xa89000 - 0xb3efe7 libcrypto.0.9.7.dylib 0.9.7 (compatibility 0.9.7) <0B69B1F5-3440-B0BF-957F-E0ADD49F13CB> /usr/lib/libcrypto.0.9.7.dylib
  0xb84000 - 0xe15fe7 +libmono.0.dylib ??? (???) <C3794429-2B50-8107-E0E4-B43E2489EE32> /Applications/AIWar/AIWar.app/Contents/Frameworks/MonoEmbedRuntime/osx/libmono.0.dylib
 0x57a0000 - 0x57c3fe7 GLRendererFloat ??? (???) <D71788AA-645A-02CF-201F-E44F073F98D7> /System/Library/Frameworks/OpenGL.framework/Resources/GLRendererFloat.bundle/GLRendererFloat
0x173cc000 - 0x17543fe7 GLEngine ??? (???) <0FC1F7CA-5C84-A7F6-105B-169383B50A94> /System/Library/Frameworks/OpenGL.framework/Resources/GLEngine.bundle/GLEngine
0x17575000 - 0x1794cfef com.apple.ATIRadeonX2000GLDriver 1.6.18 (6.1.8) <C34DC956-F048-0119-209F-B68C3769FF67> /System/Library/Extensions/ATIRadeonX2000GLDriver.bundle/Contents/MacOS/ATIRadeonX2000GLDriver
0x17a8d000 - 0x17a9aff7 com.apple.iokit.IOHIDLib 1.6.4 (1.6.4) <67AA406F-0224-4E2D-16D4-22F2DD45FFD1> /System/Library/Extensions/IOHIDFamily.kext/Contents/PlugIns/IOHIDLib.plugin/Contents/MacOS/IOHIDLib
0x17ad9000 - 0x17addff3 com.apple.audio.AudioIPCPlugIn 1.1.2 (1.1.2) <5570694E-039D-7970-6083-1C8A7B7C937B> /System/Library/Extensions/AudioIPCDriver.kext/Contents/Resources/AudioIPCPlugIn.bundle/Contents/MacOS/AudioIPCPlugIn
0x17ae2000 - 0x17ae8ffb com.apple.audio.AppleHDAHALPlugIn 1.8.7 (1.8.7f1) <0FE8B697-6D19-69C6-FA94-E18064ACFAEC> /System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAHALPlugIn.bundle/Contents/MacOS/AppleHDAHALPlugIn
0x70000000 - 0x700caffb com.apple.audio.units.Components 1.6.1 (1.6.1) <AEC44B68-A209-4093-36B0-7B740361249B> /System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio
0x8fe00000 - 0x8fe4162b dyld 132.1 (???) <A4F6ADCC-6448-37B4-ED6C-ABB2CD06F448> /usr/lib/dyld
0x90064000 - 0x900a6ff7 libvDSP.dylib 268.0.1 (compatibility 1.0.0) <29E5ABCF-6D8A-0CE0-B480-C7D240FF8575> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib
0x900ce000 - 0x90160fe3 com.apple.print.framework.PrintCore 6.2 (312.5) <5B9EAAE8-7803-E0B3-9E5B-E9E2CCC8BA0E> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore
0x90189000 - 0x901c4feb libFontRegistry.dylib ??? (???) <A102F61F-25D5-001A-20C3-56304C585072> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib
0x901cc000 - 0x9024aff7 com.apple.Bluetooth 2.3.3 (2.3.3f8) <3F64979D-F8C2-36EB-DBCE-D7ED0D18083A> /System/Library/Frameworks/IOBluetooth.framework/Versions/A/IOBluetooth
0x9024b000 - 0x9028fff3 com.apple.coreui 2 (114) <29F8F1A4-1C96-6A0F-4CC2-9B85CF83209F> /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI
0x90473000 - 0x904bcfe7 libTIFF.dylib ??? (???) <9CFF48CC-4852-4D06-17AC-3C947C824159> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib
0x9061e000 - 0x90639ff7 libPng.dylib ??? (???) <36A3D75E-5178-4358-7F02-444E276D61AD> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib
0x9063a000 - 0x906f0ffb libFontParser.dylib ??? (???) <067DC1A2-764B-41EA-B07E-4205472749B7> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib
0x907fc000 - 0x90808ff7 libkxld.dylib ??? (???) <322A4B52-8305-3081-6B74-813C3A87A56D> /usr/lib/system/libkxld.dylib
0x90809000 - 0x908d3fef com.apple.CoreServices.OSServices 357 (357) <CF9530AD-F581-B831-09B6-16D9F9283BFA> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices
0x908d4000 - 0x9091aff7 libauto.dylib ??? (???) <85670A64-3B67-8162-D441-D8E0BE15CA94> /usr/lib/libauto.dylib
0x90950000 - 0x90a51fe7 libxml2.2.dylib 10.3.0 (compatibility 10.0.0) <B4C5CD68-405D-0F1B-59CA-5193D463D0EF> /usr/lib/libxml2.2.dylib
0x90af4000 - 0x90b2cff7 libcups.2.dylib 2.8.0 (compatibility 2.0.0) <76C02F5C-98FD-BD64-B5FB-C698FB76EA25> /usr/lib/libcups.2.dylib
0x90b2d000 - 0x90b32ff7 com.apple.OpenDirectory 10.6 (10.6) <92582807-E8F3-3DD9-EB42-4195CFB754A1> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory
0x90b88000 - 0x90b88ff7 com.apple.Accelerate 1.6 (Accelerate 1.6) <3891A689-4F38-FACD-38B2-4BF937DE30CF> /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate
0x90b89000 - 0x90fbeff7 libLAPACK.dylib 219.0.0 (compatibility 1.0.0) <5E2D2283-57DE-9A49-1DB0-CD027FEFA6C2> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib
0x9151a000 - 0x9151aff7 com.apple.ApplicationServices 38 (38) <8012B504-3D83-BFBB-DA65-065E061CFE03> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices
0x9151b000 - 0x91585fe7 libstdc++.6.dylib 7.9.0 (compatibility 7.0.0) <411D87F4-B7E1-44EB-F201-F8B4F9227213> /usr/lib/libstdc++.6.dylib
0x91586000 - 0x91591ff7 libCSync.A.dylib 543.50.0 (compatibility 64.0.0) <4FA0CE4A-BDE5-0E3D-37F0-03B41F0C2637> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCSync.A.dylib
0x91592000 - 0x915b4fef com.apple.DirectoryService.Framework 3.6 (621.4) <B88E98EF-7F17-F988-62A4-3DEC0832B3B7> /System/Library/Frameworks/DirectoryService.framework/Versions/A/DirectoryService
0x915b5000 - 0x915f8ff7 libGLU.dylib ??? (???) <2093A1FB-67BD-39E0-CDE5-A97A77BDDBCE> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib
0x915f9000 - 0x91694ff7 com.apple.ApplicationServices.ATS 275.11.1 (???) <5FF65EC7-F512-530A-7771-3DE240EE6E43> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS
0x91695000 - 0x916d8ff7 com.apple.NavigationServices 3.5.4 (182) <753B8906-06C0-3AE0-3D6A-8FF5AC18ED12> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/NavigationServices.framework/Versions/A/NavigationServices
0x91823000 - 0x91917ff7 libiconv.2.dylib 7.0.0 (compatibility 7.0.0) <9EC28185-D26F-533F-90C4-FBAA13A15947> /usr/lib/libiconv.2.dylib
0x91918000 - 0x91a46fe7 com.apple.CoreData 102.1 (251) <E6A457F0-A0A3-32CD-6C69-6286E7C0F063> /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData
0x91bff000 - 0x91f23fef com.apple.HIToolbox 1.6.3 (???) <0A5F56E2-9AF3-728D-70AE-429522AEAD8A> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox
0x91f44000 - 0x921b4ffb com.apple.Foundation 6.6.3 (751.29) <E77D3906-99F4-FEF4-FBB0-86FB3C94073E> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation
0x921b5000 - 0x92230fe7 com.apple.audio.CoreAudio 3.2.2 (3.2.2) <51D0E2DC-B15F-AF6C-70D8-026DDAD4E2A5> /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio
0x92231000 - 0x92262ff7 libGLImage.dylib ??? (???) <9340012D-595A-6243-9C97-7D30D76D9D9E> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib
0x92263000 - 0x92340ff7 com.apple.vImage 4.0 (4.0) <64597E4B-F144-DBB3-F428-0EC3D9A1219E> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage
0x923ac000 - 0x923baff7 com.apple.opengl 1.6.9 (1.6.9) <4F06C166-00CF-5ACF-77E3-5A960A5E8AD3> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL
0x923bb000 - 0x923c4ff7 com.apple.DiskArbitration 2.3 (2.3) <E9C40767-DA6A-6CCB-8B00-2D5706753000> /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration
0x923db000 - 0x923fbfe7 libresolv.9.dylib 41.0.0 (compatibility 1.0.0) <751955F3-21FB-A03A-4E92-1F3D4EFB8C5B> /usr/lib/libresolv.9.dylib
0x9265a000 - 0x9265bff7 com.apple.audio.units.AudioUnit 1.6.3 (1.6.3) <959DFFAE-A06B-7FF6-B713-B2076893EBBD> /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit
0x92691000 - 0x926d2ff7 libRIP.A.dylib 543.50.0 (compatibility 64.0.0) <8BAE1FC1-A478-F151-17C7-2D5DE470AC4F> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib
0x92742000 - 0x92939feb com.apple.JavaScriptCore 6533.18 (6533.18.1) <EE3897A8-E1C0-DE28-A631-4B0C32DF737B> /System/Library/Frameworks/JavaScriptCore.framework/Versions/A/JavaScriptCore
0x92ed7000 - 0x92edbff7 libGFXShared.dylib ??? (???) <2D32BDBF-C941-93FD-E233-F03D28DB9E94> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib
0x92edc000 - 0x93244ff7 com.apple.QuartzCore 1.6.2 (227.22) <4288F0D2-0C87-F054-C372-8764B44DE024> /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore
0x932ef000 - 0x932ffff7 libsasl2.2.dylib 3.15.0 (compatibility 3.0.0) <C8744EA3-0AB7-CD03-E639-C4F2B910BE5D> /usr/lib/libsasl2.2.dylib
0x93300000 - 0x9330afe7 com.apple.audio.SoundManager 3.9.3 (3.9.3) <5F494955-7290-2D91-DA94-44B590191771> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound
0x93572000 - 0x93586ffb com.apple.speech.synthesis.framework 3.10.35 (3.10.35) <0DBE17D5-17A2-8A0E-8572-5A78408B41C9> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis
0x935ab000 - 0x935abff7 com.apple.Carbon 150 (152) <9252D5F2-462D-2C15-80F3-109644D6F704> /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon
0x935ac000 - 0x93726fe3 com.apple.CoreFoundation 6.6.3 (550.29) <00373783-3744-F47D-2191-BEEA658F0C3D> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
0x93727000 - 0x93836fe7 com.apple.WebKit 6533.18 (6533.18.1) <157D0DD9-F3CE-4339-858B-B0EFFAA3B008> /System/Library/Frameworks/WebKit.framework/Versions/A/WebKit
0x93837000 - 0x938e5ff3 com.apple.ink.framework 1.3.3 (107) <57B54F6F-CE35-D546-C7EC-DBC5FDC79938> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink
0x93a34000 - 0x9447fff7 com.apple.WebCore 6533.18 (6533.18.1) <B96BFDB8-3D11-E220-1148-206D8A176352> /System/Library/Frameworks/WebKit.framework/Versions/A/Frameworks/WebCore.framework/Versions/A/WebCore
0x947a8000 - 0x95088ff7 com.apple.AppKit 6.6.6 (1038.29) <6F28C335-6DC2-AE0E-B79A-F256DBD0BB45> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit
0x95089000 - 0x950d6feb com.apple.DirectoryService.PasswordServerFramework 6.0 (6.0) <52906E26-3D22-6F37-8C90-E50BBCDEA5D0> /System/Library/PrivateFrameworks/PasswordServer.framework/Versions/A/PasswordServer
0x951a9000 - 0x951bdfe7 libbsm.0.dylib ??? (???) <821E415B-6C42-D359-78FF-E892792F8C52> /usr/lib/libbsm.0.dylib
0x951be000 - 0x9523efeb com.apple.SearchKit 1.3.0 (1.3.0) <2F5DE102-A203-7905-7D12-FCBCF17BAEF8> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit
0x96209000 - 0x96529feb com.apple.CoreServices.CarbonCore 861.13 (861.13) <52803668-3669-36BD-57DD-078FBA835081> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore
0x9652d000 - 0x96545ff7 com.apple.CFOpenDirectory 10.6 (10.6) <1537FB4F-C112-5D12-1E5D-3B1002A4038F> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory
0x96546000 - 0x9655bfff com.apple.ImageCapture 6.0 (6.0) <0E86F45E-E656-9015-7AD4-A2C5F8D8A2FA> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture
0x9655c000 - 0x96972ff7 libBLAS.dylib 219.0.0 (compatibility 1.0.0) <C4FB303A-DB4D-F9E8-181C-129585E59603> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib
0x96973000 - 0x96994fe7 com.apple.opencl 12.1 (12.1) <DA2AC3FA-ED11-2D10-21E9-7BDF4778B228> /System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL
0x96995000 - 0x969bdff7 libxslt.1.dylib 3.24.0 (compatibility 3.0.0) <769EF4B2-C1AD-73D5-AAAD-1564DAEA77AF> /usr/lib/libxslt.1.dylib
0x96b9a000 - 0x96b9aff7 liblangid.dylib ??? (???) <B99607FC-5646-32C8-2C16-AFB5EA9097C2> /usr/lib/liblangid.dylib
0x96bbd000 - 0x96d77fe3 com.apple.ImageIO.framework 3.0.3 (3.0.3) <A93A514B-C1BF-21D0-FB03-CB775DE4FFAA> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/ImageIO
0x96d78000 - 0x96d79ff7 com.apple.TrustEvaluationAgent 1.1 (1) <FEB55E8C-38A4-CFE9-A737-945F39761B4C> /System/Library/PrivateFrameworks/TrustEvaluationAgent.framework/Versions/A/TrustEvaluationAgent
0x96d82000 - 0x96d8cffb com.apple.speech.recognition.framework 3.11.1 (3.11.1) <EC0E69C8-A121-70E8-43CF-E6FC4C7779EC> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition
0x96f59000 - 0x96f8cff7 com.apple.AE 496.4 (496.4) <7F34EC47-8429-3077-8158-54F5EA908C66> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE
0x96f8d000 - 0x96f8dff7 com.apple.vecLib 3.6 (vecLib 3.6) <FF4DC8B6-0AB0-DEE8-ADA8-7B57645A1F36> /System/Library/Frameworks/vecLib.framework/Versions/A/vecLib
0x96f8e000 - 0x96f91ff7 libCGXType.A.dylib 543.50.0 (compatibility 64.0.0) <3B49AED9-0DBA-9D21-F9AC-8784363AD762> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCGXType.A.dylib
0x96f92000 - 0x96faefe3 com.apple.openscripting 1.3.1 (???) <DA16DE48-59F4-C94B-EBE3-7FAF772211A2> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting
0x96faf000 - 0x96fafff7 com.apple.Accelerate.vecLib 3.6 (vecLib 3.6) <ABF97DA4-3BDF-6FFD-6239-B023CA1F7974> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib
0x96fb0000 - 0x97048fe7 edu.mit.Kerberos 6.5.10 (6.5.10) <8B83AFF3-C074-E47C-4BD0-4546EED0D1BC> /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos
0x970c1000 - 0x97122fe7 com.apple.CoreText 3.1.0 (???) <1372DABE-F183-DD03-03C2-64B2464A4FD5> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreText.framework/Versions/A/CoreText
0x9716a000 - 0x971a7ff7 com.apple.SystemConfiguration 1.10.2 (1.10.2) <398BB007-41FD-1A30-26D8-CB86ED5E467E> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration
0x971df000 - 0x9723aff7 com.apple.framework.IOKit 2.0 (???) <A013B850-6ECB-594A-CBD6-DB156B11871B> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit
0x9723b000 - 0x9723bff7 com.apple.CoreServices 44 (44) <AC35D112-5FB9-9C8C-6189-5F5945072375> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices
0x9723c000 - 0x97280fe7 com.apple.Metadata 10.6.3 (507.10) <630494FA-3BB3-EDD3-E10B-8DAAF4831E26> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata
0x97281000 - 0x97283ff7 com.apple.securityhi 4.0 (36638) <38D36D4D-C798-6ACE-5FA8-5C001993AD6B> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI
0x972c6000 - 0x97317ff7 com.apple.HIServices 1.8.0 (???) <10C85B88-C6AF-91DB-2546-34661BA35AC5> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices
0x9734d000 - 0x97353fff com.apple.CommonPanels 1.2.4 (91) <2438AF5D-067B-B9FD-1248-2C9987F360BA> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels
0x97354000 - 0x97357ffb com.apple.help 1.3.1 (41) <EF92C648-2085-C085-8EA7-A1AF37AE94F4> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help
0x97358000 - 0x9744aff7 libcrypto.0.9.8.dylib 0.9.8 (compatibility 0.9.8) <D2C86308-F998-C83D-F49B-CD484D4EFE6A> /usr/lib/libcrypto.0.9.8.dylib
0x974c0000 - 0x974cdff7 com.apple.NetFS 3.2.1 (3.2.1) <A6443845-5815-2429-7649-C51A4B5E7DF9> /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS
0x974dc000 - 0x97502fff com.apple.DictionaryServices 1.1.1 (1.1.1) <02709230-9B37-C743-6E27-3FCFD18211F8> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices
0x97503000 - 0x97572ff7 libvMisc.dylib 268.0.1 (compatibility 1.0.0) <706684C7-AFA0-B036-274A-D02F8961DED5> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib
0x97624000 - 0x976fffe7 com.apple.DesktopServices 1.5.7 (1.5.7) <A69072AD-C47E-A00D-4A69-6E46A7FB2119> /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv
0x97700000 - 0x97703fe7 libmathCommon.A.dylib 315.0.0 (compatibility 1.0.0) <1622A54F-1A98-2CBE-B6A4-2122981A500E> /usr/lib/system/libmathCommon.A.dylib
0x97705000 - 0x977adffb com.apple.QD 3.35 (???) <B80B64BC-958B-DA9E-50F9-D7E8333CC5A2> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD
0x97839000 - 0x97858ff7 com.apple.CoreVideo 1.6.1 (45.5) <EA39D59C-018E-E6EE-6323-809CDA61E3CE> /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo
0x97859000 - 0x97867fe7 libz.1.dylib 1.2.3 (compatibility 1.0.0) <3CE8AA79-F077-F1B0-A039-9103A4A02E92> /usr/lib/libz.1.dylib
0x97868000 - 0x97918ff3 com.apple.ColorSync 4.6.3 (4.6.3) <AA1076EA-7665-3005-A837-B661260DBE54> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync
0x97919000 - 0x97cc7fe3 com.apple.RawCamera.bundle 3.3.0 (533) <05A38D21-8556-434C-8BAA-850A6EC99B37> /System/Library/CoreServices/RawCamera.bundle/Contents/MacOS/RawCamera
0x97d01000 - 0x97d0cff7 libGL.dylib ??? (???) <B87E0676-F5EF-8DA3-6DEE-13C43B3832A7> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib
0x97d0d000 - 0x97d14ff7 com.apple.agl 3.0.12 (AGL-3.0.12) <6877F0D8-0DCF-CB98-5304-913667FF50FA> /System/Library/Frameworks/AGL.framework/Versions/A/AGL
0x97d15000 - 0x97ebbfeb libSystem.B.dylib 125.2.0 (compatibility 1.0.0) <3441F338-2218-6D36-3F95-3A16FBF6713D> /usr/lib/libSystem.B.dylib
0x97f6d000 - 0x97f9eff3 libTrueTypeScaler.dylib ??? (???) <7601D717-236D-8F4E-91F5-E69BB2920478> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libTrueTypeScaler.dylib
0x97f9f000 - 0x9804cfe7 libobjc.A.dylib 227.0.0 (compatibility 1.0.0) <DF8E4CFA-3719-3415-0BF1-E8C5E561C3B1> /usr/lib/libobjc.A.dylib
0x9808e000 - 0x9809fff7 com.apple.LangAnalysis 1.6.6 (1.6.6) <97511CC7-FE23-5AC3-2EE2-B5479FAEB316> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis
0x980a0000 - 0x980a4ff7 IOSurface ??? (???) <66E11D8E-CF4B-EFD0-37F9-20177C647021> /System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface
0x9810b000 - 0x981a8fe3 com.apple.LaunchServices 362.1 (362.1) <885D8567-9E40-0105-20BC-42C7FF657583> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
0x982a5000 - 0x982c9ff7 libJPEG.dylib ??? (???) <5CE96981-6B2A-D15B-4A17-E7BD329095B6> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib
0x982ca000 - 0x9832effb com.apple.htmlrendering 72 (1.1.4) <4D451A35-FAB6-1288-71F6-F24A4B6E2371> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HTMLRendering.framework/Versions/A/HTMLRendering
0x98475000 - 0x98475ff7 com.apple.Cocoa 6.6 (???) <EA27B428-5904-B00B-397A-185588698BCC> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
0x98476000 - 0x984f8ffb SecurityFoundation ??? (???) <3670AE8B-06DA-C447-EB14-79423DB9C474> /System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation
0x984f9000 - 0x9867bfe7 libicucore.A.dylib 40.0.0 (compatibility 1.0.0) <2314BD12-0821-75BB-F3BC-98D324CFD30A> /usr/lib/libicucore.A.dylib
0x9867c000 - 0x988e0fef com.apple.security 6.1.1 (37594) <3F68A006-6B30-85D5-1A75-8D748F72A6D5> /System/Library/Frameworks/Security.framework/Versions/A/Security
0x98b18000 - 0x98bc1ff7 com.apple.CFNetwork 454.9.8 (454.9.8) <DB2A5C33-E833-1B3A-4DE0-5FF172B2048B> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
0x98bed000 - 0x98ca6fe7 libsqlite3.dylib 9.6.0 (compatibility 9.0.0) <16CEF8E8-8C9A-94CD-EF5D-05477844C005> /usr/lib/libsqlite3.dylib
0x98d58000 - 0x98e84fff com.apple.audio.toolbox.AudioToolbox 1.6.3 (1.6.3) <F0D7256E-0914-8E77-E37B-9720430422AB> /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox
0x98e85000 - 0x99674557 com.apple.CoreGraphics 1.545.0 (???) <DCED8E1A-7504-C31A-B6EF-98BFF1A61060> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics
0x99675000 - 0x99679ff7 libGIF.dylib ??? (???) <3ECD4D2C-40FE-E9A0-A2D2-E36D1C00D3A8> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib
0x9970e000 - 0x9975eff7 com.apple.framework.familycontrols 2.0.1 (2010) <B9762E20-543D-13B9-F6BF-E8585F04CA01> /System/Library/PrivateFrameworks/FamilyControls.framework/Versions/A/FamilyControls
0x997d0000 - 0x997e2ff7 com.apple.MultitouchSupport.framework 204.13 (204.13) <F91A4E32-01AA-49DB-2205-3DBE1FEFFC43> /System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport
0x99824000 - 0x99827ff7 libCoreVMClient.dylib ??? (???) <CA0BA8DC-0159-A808-A300-750358A6970C> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib
0x99832000 - 0x99834ff7 libRadiance.dylib ??? (???) <AB06F616-E3EA-5966-029A-8AA44BBE5B28> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib
0x99835000 - 0x9983cff3 com.apple.print.framework.Print 6.1 (237.1) <97AB70B6-C653-212F-CFD3-E3816D0F5C22> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print
0x9983d000 - 0x99949ff7 libGLProgrammability.dylib ??? (???) <1B315838-F477-5416-7504-67EC3433AD4A> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLProgrammability.dylib
0xffff0000 - 0xffff1fff libSystem.B.dylib ??? (???) <3441F338-2218-6D36-3F95-3A16FBF6713D> /usr/lib/libSystem.B.dylib

Model: iMac10,1, BootROM IM101.00CC.B00, 2 processors, Intel Core 2 Duo, 3.06 GHz, 4 GB, SMC 1.53f13
Graphics: ATI Radeon HD 4670, ATI Radeon HD 4670, PCIe, 256 MB
Memory Module: global_name
AirPort: spairport_wireless_card_type_airport_extreme (0x168C, 0x8F), Atheros 9280: 2.1.9.8.1
Bluetooth: Version 2.3.3f8, 2 service, 19 devices, 1 incoming serial ports
Network Service: AirPort, AirPort, en1
Serial ATA Device: ST31000528ASQ, 931,51 GB
Serial ATA Device: OPTIARC DVD RW AD-5680H
USB Device: Keyboard Hub, 0x05ac (Apple Inc.), 0x1006, 0x24300000
USB Device: Apple Keyboard, 0x05ac (Apple Inc.), 0x0221, 0x24320000
USB Device: Built-in iSight, 0x05ac (Apple Inc.), 0x8502, 0x24400000
USB Device: StoreJet Transcend, 0x152d (JMicron Technology Corp.), 0x2329, 0x26400000
USB Device: Internal Memory Card Reader, 0x05ac (Apple Inc.), 0x8403, 0x26500000
USB Device: IR Receiver, 0x05ac (Apple Inc.), 0x8242, 0x04500000
USB Device: BRCM2046 Hub, 0x0a5c (Broadcom Corp.), 0x4500, 0x06100000
USB Device: Bluetooth USB Host Controller, 0x05ac (Apple Inc.), 0x8215, 0x06110000

For the crashlogs, no single entry has been written. Nothing in UnhandledErrors, or in ErrorsReportedByEngine.

My guess here is that it's definitely linked to what the player do. The more action, the more often it will crash. I cannot link a big battle here with the crash (maybe the AI attacked the drones I just had sent, but it wasn't for sure a big battle going on on my side). The fact that the game was very laggy (and it's for sure not when I start a new game), maybe it's related with something (probably sound) which is not properly dealocated, causing the memory to overflow somewhere. Shame I can't write a script to write down the memory use in the mac every minutes, or the CPU charge, but if someone does know how to make that in Applescript, I would like it having run on my machine during the test...

Hope this helps a little bit forward,

resistor

Nov 11, 2010 2:42 am

reporter   ~0003221

That's almost certainly an out of memory error, since it's crashing within operator new. Would explain the lagginess too.

resistor

Nov 11, 2010 2:44 am

reporter   ~0003222

For what it's worth, I'm currently in the process of play session with the game running under a debugger. I'll post any useful information I get out of it. If that doesn't pan out, I'll try the same under Instruments later tonight or tomorrow to try to track down the memory leak.

resistor

Nov 11, 2010 3:07 am

reporter   ~0003225

Well, I managed to get it to crash under gdb, but it wasn't terribly informative. All I got out of it was that it was a null pointer dereference. Here's the error and backtrace of the crashing thread. Unfortunately, it looks like Mono's JIT has at least partially borked the backtrace.

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000000
0x1b0950fd in ?? ()

#0 0x1b0950fd in ?? ()
0000001 0x17deb4f3 in gleDrawArraysOrElements_ExecCore ()
0000002 0x17d74ce3 in glDrawElements_Exec ()
0000003 0x980c7050 in glDrawElements ()
0000004 0x003bba53 in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000005 0x000b4069 in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000006 0x000b4164 in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000007 0x003fb34a in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000008 0x0040125f in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000009 0x00401798 in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000010 0x003f974b in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000011 0x1ad038c3 in ?? ()
0000012 0x1ad03875 in ?? ()
0000013 0x35bbf1a9 in ?? ()
0000014 0x35bbf03c in ?? ()
0000015 0x35bbf3e9 in ?? ()
0000016 0x35bbf362 in ?? ()
0000017 0x1ad02f85 in ?? ()
0000018 0x1ad02d34 in ?? ()
0000019 0x1acf9e7f in ?? ()
0000020 0x06ce5ce1 in ?? ()
0000021 0x00b8ecec in mono_jit_runtime_invoke ()
0000022 0x00cd4110 in mono_runtime_invoke ()
0000023 0x0027d775 in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000024 0x0027ee8f in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000025 0x003716ad in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000026 0x00371bff in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000027 0x002621bb in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000028 0x0034a2f2 in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000029 0x9334ba3d in __NSFireTimer ()
0000030 0x99690adb in __CFRunLoopRun ()
0000031 0x9968e464 in CFRunLoopRunSpecific ()
0000032 0x9968e291 in CFRunLoopRunInMode ()
0000033 0x95ed2f9c in RunCurrentEventLoopInMode ()
0000034 0x95ed2d51 in ReceiveNextEventCommon ()
0000035 0x95ed2bd6 in BlockUntilNextEventMatchingListInMode ()
0000036 0x935c378d in _DPSNextEvent ()
0000037 0x935c2fce in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] ()
0000038 0x93585247 in -[NSApplication run] ()
0000039 0x9357d2d9 in NSApplicationMain ()
0000040 0x0034b632 in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000041 0x000165da in DataStructures::List<RakNet::RakString::SharedString*>::List ()
0000042 0x00016501 in DataStructures::List<RakNet::RakString::SharedString*>::List ()

ciaran

Nov 11, 2010 6:20 am

reporter   ~0003227

Should all saves be being compressed? I also experienced the pthread message last night after updating to the latest beta, but all my save files are plaintext.

Vampyre

Nov 12, 2010 12:24 pm

reporter   ~0003283

Deleted notes as I ran the same test with another game that doesn't crash, and the results were by far more crazy... I deleted as I'm not sure anymore about the leaks... :s sorry about that... :s I want to play the game :'(

ciaran

Nov 12, 2010 12:41 pm

reporter   ~0003286

I just had a peek in my ErrorsReportedByEngine.txt log and noticed that a couple of the errors have a different stack trace. It looks like texture loading rather than sound loading like the rest, so maybe it’s not audio-specific after all.

Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 16, inProgressWWWs: 8, GC.GetTotalMemory: 251,219,968, LoadedTextureWWWs: 1,032 [0], LoadedMusicWWWs: 9 [0], LoadedWebServiceWWWs: 0 [0], LoadedSoundWWWs: 2,533 [0], LoadedUpdateWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
<LoadTextureFromFileAsyncInner>c__Iterator3:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
GameImage:StartLoading()
Game:UpdateStreaming()
MainCameraLogic:Update()

Chris_McElligottPark

Nov 12, 2010 12:54 pm

administrator   ~0003287

All save files should be compressed, but not the entire file is compressed -- just the ForegroundObjects section at the end.

The error here might not be audio-specific, but I strongly suspect it is. When it runs out of memory, though, then other things like the images can fail to load, which is I think what is being seen here.

I do have XCode, so if you want to post something I can load up in that, that would be great. I'm not very familiar with that, though, so if you have a note on where to load it in, that would be helpful -- I'm more of a Visual Studio guy, generally.

I don't think it's a memory leak specifically, but I think it is a resource leak of some sort -- file handles, or something. No one has yet tested with sound effects completely disabled, though -- can someone do so and see if you still get the error? Right now all the tests have been with sound effects on, which at this stage doesn't tell a whole lot since when this error occurs, it's causing downstream errors all over the place (like with textures, etc).

dumpsterKEEPER

Nov 12, 2010 1:01 pm

reporter   ~0003288

I do have a note earlier in this thread where I played for over an hour with both sounds and music disabled and had no problems. Once I enabled just sound effects (not music) I began having problems again.

Chris_McElligottPark

Nov 12, 2010 1:05 pm

administrator   ~0003289

Yes, that was appreciated, but it was quite a while back and an hour is unfortunately not that conclusive -- it's unclear if that would just delay the problem, or if that's actually circumventing it completely. Normally I would run that sort of test myself, but frustratingly my Mac never seems to exhibit the issue even in multiple 3+ hour tests, so I'm kind of at a loss as to what the trigger is thus far.

The recent notes about lack of player activity causing the problem not to appear are also interesting, though in the past a different player noted that if they just let it sit there with ships in FRD mode, it crashed in half an hour for them same as if they did something. So right now I just have all this conflicting data, and no way to personally duplicate any of it, is the problem. And I've been through the code again and again and don't see an issue -- and the problem doesn't appear on the windows side, which makes a generalized memory leak extremely unlikely. It's something with how OSX handles access to files or threads, I'm pretty sure.

ciaran

Nov 12, 2010 1:25 pm

reporter   ~0003291

It might be worth noting that OS X 10.6.5 just came out, which addresses "stability and performance of graphics applications and games".

dumpsterKEEPER

Nov 12, 2010 1:28 pm

reporter   ~0003292

Sure, that makes sense, I just wanted to make sure you'd seen it. My problem is that I typically play on my work's MacBook over my lunch break so I can't go much longer than an hour. I can try to explain to my boss why I need to play all afternoon for work-related "research," but I suspicion it will fall on deaf ears.

I can run the game again with no sound though, just to see how it fares. The last few days it's been crashing twice pretty regularly each session. Is there any way you can create an instrumented exe that logs all kinds of extra data that might help pinpoint what's happening? It does seem to be getting to that point where we're reporting all kinds of data on the off chance that it's related to the problem.

Chris_McElligottPark

Nov 12, 2010 2:22 pm

administrator   ~0003293

Very interesting, ciaran - that sounds moderately promising, at least.

dumpsterKEEPER, I wasn't really asking you specifically to go for longer than an hour. But we have a lot of people here who seem interested in playing for much longer than they are currently able to at one go -- reporting having to stop and restart the game 4+ times for one play session. If those folks would simply turn off the sound for the duration of their normal play session, that would tell me loads without any extra onus on anyone.

The current exe is about as instrumented as it can be, unfortunately. Most of the debugging stuff we could do would be in the Unity editor only, it's not like working with a native application.

What has been CLEARLY demonstrated by all the data from you guys so far with the instrumentation:

1. General memory use, in terms of the heap used by the garbage collector in Mono, is absolutely normal at the time the first errors are logged. If memory usage spikes it must be after that is logged, or else (more likely) outside of managed code. Which would fit with it being some sort of sound allocation, etc, issue.

2. In terms of what our code has direct handles to, there are definitely far fewer open sounds than should cause an issue. And far fewer image files than should be hitting the OS file handle limit (which was mainly a windows thing in the unity editor, anyway). So if it's stuff hanging open, it must be based on either some streams/threads not closing properly when we think they did, either in the managed code or in Unity itself.

3. It's definitely related to threading, whether or not it is related to file handles or not. All the various errors tell us at this stage is that at some point the machine wants to start a new thread, but cannot do so because it's out of room for threads. In some of the cases, the reason actually seems to be due to lack of available memory, but I don't think that's actually accurate.

So we have covered a lot of ground, and eliminated a lot of possibilities, but what I can't yet figure is where these extra threads are coming from -- and why they don't show up in the Inspector.

Actually, based on the code for looking at threads that Keith posted above, I can make it so that this is a bit more instrumented in the sense of seeing if these are threads Mono is aware of. If NOT, then it's something at the Unity level that's either a bug in unity (unlikely, or someone else would have reported it by now), or some unmanaged asset that isn't being cleaned up for some mysterious reason despite all our work hunting for such things.

It could also be something in the IO classes of Mono, as we've discovered some places where there are frustrating divergences between windows and osx. File.Exists sometimes reports true on osx when really there is not a file there, for example. So something like that could be bypassing an error check and leading to a hung filestream, but we haven't found any smoking guns for that yet.

Vampyre

Nov 12, 2010 2:49 pm

reporter   ~0003296

Last edited: Nov 12, 2010 2:51 pm

Ok guys, I hope to make a little step forward... I just played two hours, in the very same configuration but with no sound and no music. I played truly heavily, like a frenetic guy wanting to win the game in the 5 next minutes. Mass construction (30 engineers on 1 place), for quick building and a lot of attacking. I gained two systems, lost them, and regained them again... So it was fun, very heavy against what I'm used to play, and... it didn't crashed at all, no lag could be seen.

Next step for tomorrow, I'll play again the same kind of game, but now with music on and sound off. Like that, we will have a full tour of all sound configuration.

Let me simplify what is done for the moment :
- music and sound : crash
- no music and sound : crash
- no music and no sound : no crash
- music and no sound : to be determined.

I also have no error reported for this session.

Hope this helps a bit...

Oh, and before I forget, ciaran is right, and my mac is up to date. It happened under OS X 10.6.4 and it has the same issues under 10.6.5. I don't think that's something with OS X (though it might be possible and there, there is no issue but to wait for apple)

Chris_McElligottPark

Nov 12, 2010 2:55 pm

administrator   ~0003297

Okay -- really sweet news there! Very glad to hear about that, thanks for all the added info!

Vampyre

Nov 12, 2010 3:03 pm

reporter   ~0003298

Huh, just got an idea. Would it be possible to know what soundcard you have in your mac ? Could it be hardware related ? Some incompatibility between Unity and some cards ?

Ok, just looked at the soundcard and it is integrated high definition audio intel on my side. No other info in the sys info tool... Thought it would be more descriptive. I also add my video card : hd4870 on my side. I had the idea that if you can't find anything in your code, and it is only with some people it could also be hardware related.

dumpsterKEEPER

Nov 12, 2010 4:24 pm

reporter   ~0003304

I'm fairly confident that the issue isn't related to game saving, at least not directly. During part of my game today I disabled autosaves and intentionally didn't save the game, and it crashed as normal after about 30 minutes. This was with sounds enabled and music disabled.

I also modified my shell script to record process threads using 'ps -M' and that didn't reveal anything particularly enlightening (assuming ps is able to enumerate _all_ threads a particular process is using). The thread count hovered between 9 and 12 the entire session, which seems about like what I'd expect. ps doesn't provide a lot of information about the threads though, so it's really not much more than a count.

Chris_McElligottPark

Nov 12, 2010 4:28 pm

administrator   ~0003305

Okay -- that is SUPER useful. I bet it's related to file handles remaining open or something, then. I will once again look at that.

Vampyre, I don't have my Mac right handy, but I'll check out my sound card driver if this doesn't fix it.

Chris_McElligottPark

Nov 12, 2010 6:53 pm

administrator   ~0003317

For the next one (4.032):

* In yet another attempt to find that sound-related resource issue on OSX, the sound system has been hugely restructured to be more bulletproof and to hopefully remove any possibility that Arcen's code is dropping any clip references that were keeping files open.

resistor

Nov 13, 2010 3:57 am

reporter   ~0003335

I did some more trials this evening:

- 4.032 didn't change anything.
- OS X 10.6.5 didn't change anything.
- Sound disable, music enabled did not crash in >3 hours of play time!!!

Vampyre

Nov 13, 2010 5:16 am

reporter   ~0003336

Last edited: Nov 13, 2010 8:00 am

Thanks for testing this resistor.

I guess it is pretty safe to assume that :

- music and sound : crash
- no music and sound : crash
- no music and no sound : no crash
- music and no sound : no crash.

Definitely something with the sound ? When I come home (I'm at work here), I'll be doing a full test, music and sound with the latest patch.

Edit : I've also done a very special test yesterday evening. I don't know if it might help anyway, but as it was also using Unity3D, I've played Tidalis, with sound and music, and see if it was also a problem. I didn't encountered any crash at all, even though I played more than 3 hours, replaying the same levels again and again... What I can imagine with this test is that this problem is not in Tidalis. As it uses the Unity Engine as well, I'm not sure it is hardware related as I thought before. Now, I don't know how the sound is coded in Tidalis, and thus cannot bring a link-to-effect in that case. All this brought is that UnityEngine seems clean for the sound.

For what I've checked, it could be either the code, or the files themselves (maybe a stupid thing like a permission, which doesn't exist in windows... and could explain why it doesn't bring any crash in windows. Even better, it could be that on your mac, the permissions are right, and therefore lead to no crash... I'll have a check at the sound files and see if I can see a difference in some files for the permissions) (sorry here, was thinking at the same time).

So it could be the code, the files (whether missing, or with bad permissions). But this is only my point of view... Does it sounds logic somehow ? (I'll still playtest this afternoon, and check every sound file for permissions...) Keep you posted guys.

Edit again : Just found this on another developper forum who develops all its game for the mac. I find it interesting to investigate :

Step 1: Repair file permissions: File permission problems can arise when Mac OS X is updated. This can cause our games not to launch or to unexpectedly quit when certain game features are accessed. Please use the steps below to repair file permission settings on the hard drive you have installed our games on. Also, if you are receiving an "Unrecoverable Error" or any other crash message when logging into a character or game, this can be caused by a file permission issue, particularly when there are multiple User accounts.

Chris_McElligottPark

Nov 13, 2010 8:00 am

administrator   ~0003342

Hmmm...

Very good points there. One thing to note with tidalis isthat it is on unity 2.6 at the moment, not yet unity 3.0 (or now 3.1). So it could be something related to 3.0 of unity, or a code thing (though originally the code was identical), or it could be a file issue as you noted. Very curious.

Vampyre

Nov 13, 2010 8:51 am

reporter   ~0003344

Last edited: Nov 13, 2010 8:58 am

Ok, back home ! I have checked the permissions with the terminal on the following directories : AIWar/RuntimeData/Sounds and also Voices inside that folder. All permissions seems alright on those folders (999 to do it short).

Trying now to repair the permissions on the disk, and launching the testrun now.

Edit : I've checked the permissions on my hard drive. There were a hell of permissions problems there, involving different libraries. It could be related. Fixing them right now, and after that, I check back the game with sound and music... As usual, I keep you updated !

Chris_McElligottPark

Nov 13, 2010 9:26 am

administrator   ~0003346

Thanks for the updates on it! :)

Vampyre

Nov 13, 2010 10:18 am

reporter   ~0003351

Well, So, I just finished my small try... Unfortunately, I must say it's still crashing... Let me explain.

I basically tried the same kind of game as yesterday, quite agressive, with lots of ships. I had of course updated to the latest version. This time, same setup as the other times : save time of 5 minutes, sound on, music on. The only different thing here was the permissions on the files.

I did paid attention this time with the music and sounds, and the music clearly continued to play after it had crashed (froze to be more precise). It wasn't in the end of a song for me this time. So I think we can scrap music out of the problem here.

But what happened and I was like huh ? what ? wtf ? It's the time when it crashed. 1 hour 4 minutes and... yes 59 seconds, the game froze. I'm saving every 5 minutes, so for me the calculation is easy to do. It was time to save when it froze...

I have also noted every 5 minutes a small freeze (like less than 1 second), probably the time necessary to save the game. It was not disturbing, but as I paid good attention to everything there, I noticed it. That's probably normal, but I write it here, if it can lead to the solution.

Second point, I just had a big battle, which I lost, and I was about to get my colony ship back in the system when it froze. I wasn't in a gigantic battle at the time it froze. Maybe 2 or 3 minutes before, yes I was, but it was finished at the moment of the freeze.

I don't know if what I'm reporting is of any value to you, but anyway, if it can give at least a hint, that could be ok...

Let me now check my logs :

One entry in ErrorsReportedByEngine :

11/13/2010 16:06:27 (4.032)
-----------------------------------
ErrorsReportedByEngine-----------------------------------
11/13/2010 16:06:27 (4.032)
-----------------------------------Error-----------------------------------Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 16, inProgressWWWs: 1, GC.GetTotalMemory: 210,513,920, LoadedTextureWWWs: 748 [0], LoadedMusicWWWs: 16 [0], LoadedWebServiceWWWs: 0 [0], LoadedSoundWWWs: 3,288 [0], LoadedUpdateWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
GameSoundObject:LoadForPlay(String, Single)
GameSound:Play()
GameSoundGroup:Play(SoundType)
Game:PlaySound(String, SoundType)
GameButton:DoTypeClicked(Boolean, Boolean)
GameButtonWindow:HandleButtonClick(IBoundedSelfRenderer, Boolean)
ArcenButtonSetSelfRender:Render(Rect, Vector2, Vector3)
AbstractArcenWindow:WindowFunctionCall(Int32)
UnityEngine.GUI:BeginWindows(Event, Int32, IDList, Int32)

Vampyre

Nov 13, 2010 11:21 am

reporter   ~0003354

After having read the documentation about getschedparam, it seems that this is an event used in mutitasking. There is the setschedparam, and the getschedparam. Does the save system use this kind of parameter (which sounds logic to me : setschedparam for when I apply the automatic save, and the getschedparam wakes up when the timer reaches zero).

If so, I'm thinking about something that could trigger this. Maybe at the exact time it should save, a sound might occur at the very same time, leading to an error while getting two getschedparam at the exact same time ? Just wondering here...

Chris_McElligottPark

Nov 13, 2010 8:46 pm

administrator   ~0003409

For 4.033:


* System.IO.File.AppendAllText is no longer used, in favor of a wrappered System.IO.StreamWriter. It is apparently possibly the case that the AppendAllText does not close properly, or uses a secondary thread, in Mono on OSX. That's not 100% certain, but as a matter of safety at this stage we're trying to eliminate extra held handles that might exist.

* A wildly different sort of sound playback system has been put in place. It's now using PlayOneShot off a single audiosource, for those keeping score. The hope is, once again, to fix the OSX psched issue with either this change or the File.AppendAllText change.

Vampyre

Nov 14, 2010 7:51 am

reporter   ~0003432

Hi all,

I didn't forgot to test this new release... It's already downloaded and installed. Unfortunately... I'm still at work at the moment... So I cannot do any kind of test. I'm off in about 1 hour from now, and should be home 20 minutes later. I'll start testing by then.

Chris_McElligottPark

Nov 14, 2010 7:52 am

administrator   ~0003434

No worries, please don't feel presure about it! I really appreciate all that you've been doing to help track this down, but you shouldn't feel it is an obligation. ;)

Vampyre

Nov 14, 2010 11:39 am

reporter   ~0003443

YOUHOU ! Vettel is F1 World Champion ! I had bet that before the start of the season with some friends... Now they owe me... Cool day !

Anyway, let me first answer your previous thread... Don't worry, I don't feel any pressure on this testings... I like your game... I can't play correctly on my mac... I want it to be solved... And most of all, I always said Indies developper were the reason why to buy indie games... And your reactivity, as well as how you pay attention to every one, only this merit respect... I always buy directly my games from indies (introversion knows about it, and a bunch of other indies who got me as client)... So, if I go indie, it's mainly because of this kind of problem... With a AAA company, it doesn't work ? Why care ? We have 99 % people for who it is not a problem... Why to care ? With indies, they sherish any client, or potential client. I've worked in the sales, and I know that 1 happy client will bring 2 more clients. 1 angry client will take away 10 angry clients. I know how hard this is, and I know it's how you finally can eat. So if I have a problem with an indie game, I know that someone will at least listen, and guide me... That's why I love and support indie...

And I'm a hardcore gamer... so... I definitely don't think this is an obligation to play... If I don't play between 4 to 6 hours a day, I'm not happy...

Furthermore, that's the least I can do... Seeing how much energy you put into this crash, it's only respect on my part than to test it for you... In here, I have the more pleasant task... You debug, I play... Isn't it wonderful ?

Ok, back to business now... I just played for 2 hours and 30 minutes... Same conditions as yesterday, only that the new patch had been applied... Unfortunately...

I'M JOKING !!! IT DIDN'T CRASHED ! AT ALL ! CHAMPAGNE !!!! (I wish I could, if only you were not that far away from me). Kudos for you there ! I think you just put the finger on the mac os x problem !!!

But... I encountered though a strange problem... After 1h30 minutes (more or less, maybe 1 or two minutes less), the music stopped, and the sounds as well... No more sound or music at all... But it worked for at least 1h30, and after 2h30 I was still playing ! That's a BIG step forward !!! Congratulations on this !

Chris_McElligottPark

Nov 14, 2010 1:31 pm

administrator   ~0003447

Yahoo! Sounds like we are getting much closer on this, to where it's at least not causing a crash or lockup. Next task would be to fix the failing to load thing, but hopefully that will be simpler at least. Having it run so much longer, and not crash when the music/sound cuts out, is at least a huge step forward, as you say! Awesome. :)

resistor

Nov 14, 2010 2:29 pm

reporter   ~0003455

Unfortunately, I didn't have the same results as Vampyre. While the pthread_getschedparam crashes seemed a little less frequent, I still experienced them, and I also experienced one hard lock in which the pthread_getschedparam warning didn't appear beforehand.

resistor

Nov 14, 2010 3:01 pm

reporter   ~0003456

Here's the error log from last night:


-----------------------------------Error-----------------------------------Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 1, inProgressWWWs: 2, GC.GetTotalMemory: 271,810,560, LoadedTextureWWWs: 864 [0], LoadedMusicWWWs: 8 [0], LoadedWebServiceWWWs: 0 [0], LoadedSoundWWWs: 2,951 [0], LoadedUpdateWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
<LoadTextureFromFileAsyncInner>c__Iterator3:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
GameImage:StartLoading()
Game:UpdateStreaming()
MainCameraLogic:Update()

Vampyre

Nov 14, 2010 4:51 pm

reporter   ~0003467

Just got a flash of an idea... Could you try doing a test ? Music and sound on, autosave off ?

Vampyre

Nov 14, 2010 5:05 pm

reporter   ~0003469

I hadn't checked my logs, but after resistor report, I checked my logs... And there is indeed an error reported. Here it is :

11/14/2010 17:21:30 (4.033)
-----------------------------------
ErrorsReportedByEngine-----------------------------------
11/14/2010 17:21:30 (4.033)
-----------------------------------Error-----------------------------------Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 1, inProgressWWWs: 1, GC.GetTotalMemory: 227,123,200, LoadedTextureWWWs: 772 [0], LoadedMusicWWWs: 21 [0], LoadedWebServiceWWWs: 0 [0], LoadedSoundWWWs: 3,287 [0], LoadedUpdateWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
GameSoundObject:LoadForPlay(String, Single)
GameSound:Play()
GameSoundGroup:Play(SoundType)
Game:PlaySound(String, SoundType)
GameCommand:HandleSetMoveDestinationFormationMoveAndArcMoveCommands(String[], ArcenPoint, Int32, Int32, Int32, Boolean, Int32, Int32, Int32, Boolean)
GameCommand:HandleSetMoveDestinationCommand()
GameCommand:Execute()
Game:RunOneCycleOfSimulation()
Game:RunNextCycle(Boolean)
Game:RunFrame()
MainCameraLogic:FixedUpdate()

Vampyre

Nov 15, 2010 5:00 am

reporter   ~0003510

I just retried a game this morning, to have another check, and this time, I got a message into the console (on the right hand side of the screen, where the tutorial is written. It was something like : "Sound and music disabled due to psched. Save your game, and restart asap." Or something like that.

Here is the log :

11/15/2010 10:56:45 (4.033)
-----------------------------------
ErrorsReportedByEngine-----------------------------------
11/15/2010 10:56:45 (4.033)
-----------------------------------Error-----------------------------------Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 1, inProgressWWWs: 5, GC.GetTotalMemory: 213,749,760, LoadedTextureWWWs: 769 [0], LoadedMusicWWWs: 17 [0], LoadedWebServiceWWWs: 0 [0], LoadedSoundWWWs: 3,253 [0], LoadedUpdateWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
GameSoundObject:LoadForPlay(String, Single)
GameSound:Play()
GameSoundGroup:Play(SoundType)
Game:PlaySound(String, SoundType)
ForegroundObject:Explode()
OtherObject:KillTargetFromShotHit(ForegroundObject, Int32, ForegroundObject, Boolean)
OtherObject:DoShotHit()
Game:RunOneCycleOfSimulation()
Game:RunNextCycle(Boolean)
Game:RunFrame()
MainCameraLogic:FixedUpdate()

But this didn't lead to crash on my side. Just sound and music off. It happened after 1h10 minute play time.

Chris_McElligottPark

Nov 15, 2010 3:31 pm

administrator   ~0003633

Vampyre, how long has you been playing when those errors happened?

Thanks for the notes, though, resistor.

In for the next version:

* Yet more changes have been made to sound (and, actually, this time also music) playback to hopefully further reduce the psched issue on OSX. Additionally, this should fix the nonresponsiveness and cutting-off-too-early issues with sound effects on windows in the last version.

Vampyre

Nov 15, 2010 4:04 pm

reporter   ~0003645

For the first error, I got the error after around 1h30. The second one was after only 1h10.

Chris_McElligottPark

Nov 15, 2010 4:10 pm

administrator   ~0003646

Hmmm.

Vampyre

Nov 16, 2010 3:22 am

reporter   ~0003695

Just tested the last version... And the result is not really the one you wanted to read... :s The game froze after 1h12m27 seconds. This time, I read the warning that the sound had been disabled due to psched thread. Yesterday, it was both music and sound, but here it was sound only... But then 23 seconds after that, I hit escape key to save, and it led to crash (freeze to be precise)...

Here are the logs :


11/16/2010 09:17:08 (4.034)
-----------------------------------
ErrorsReportedByEngine-----------------------------------
11/16/2010 09:17:07 (4.034)
-----------------------------------Error-----------------------------------Log String: pthread_getschedparam(thread, &policy, &param) (audioObjects: 1, inProgressWWWs: 4, GC.GetTotalMemory: 212,410,368, LoadedTextureWWWs: 801 [0], LoadedMusicWWWs: 17 [0], LoadedWebServiceWWWs: 0 [0], LoadedSoundWWWs: 3,242 [0], LoadedUpdateWWWs: 2 [0])
Stack Trace: UnityEngine.WWW:.ctor(String)
<LoadForPlayAsyncInner>c__Iterator5:MoveNext()
UnityEngine.MonoBehaviour:StartCoroutine(IEnumerator)
GameSoundObject:Play(String, Single)
GameSound:Play()
GameSoundGroup:Play(SoundType)
Game:PlaySound(String, SoundType)
ForegroundObject:FireAtObject(ForegroundObject, Int32, FInt, FInt)
ForegroundObject:TryAttack()
Game:RunOneCycleOfSimulation()
Game:RunNextCycle(Boolean)
Game:RunFrame()
MainCameraLogic:FixedUpdate()

Nothing in the other log, and I had to alt-cmd-escape to leave the game.

Chris_McElligottPark

Nov 16, 2010 10:17 pm

administrator   ~0003777

Sigh. For 4.035:

* Yet... another... wildly different sound subsystem method in an attempt to get rid of the psched issue on osx. I'll be really surprised if this one doesn't work, and it also has the side benefit of having to do fewer calls to the disk. It possibly has a drawback of limiting how many sound effect files can be used by the game (to around 200), but AI War is presently under that number, anyway.

Vampyre

Nov 17, 2010 3:36 am

reporter   ~0003792

Well well well... Do you know how I could call this new build ? On my side, I can call it a win ! 2h30 minutes, and no single crash, no music off, no sound off, nothing... Just plain normal ! On my side, I could say you got it !

Before jumping "Youhou!", I'll just wait for confirmation on resistor's and dumpster's side, but here, it's all ok !

Chris_McElligottPark

Nov 17, 2010 9:43 am

administrator   ~0003808

Excellent. :)

By the way, were you playing with the steam version (where you can pull up the steam interface if you like)? I want to make sure this still works there, but I'll be shocked if this release doesn't also work for the others. The change is pretty drastic, to where it basically holds sound effects in memory after loading them once, rather than streaming them off disk every time. I wanted to do this in the past, but because of how that causes a limitation on how many sound effects can be used.

keith.lamothe

Nov 17, 2010 9:44 am

administrator   ~0003809

Wow! Not breaking out the party hats yet, but certainly sounding promising (no pun intended) ;D

Vampyre

Nov 17, 2010 4:08 pm

reporter   ~0003844

Last edited: Nov 17, 2010 4:10 pm

Sorry, fast answer, but still at work...

@x4000 --> no, i'm not playing the steam version. When it is about indie games, I'm always more tempted from buying directly from the indie company itself rather than via steam. Steam, I suppose, takes its commission, and you earn less. So, no, the version I have is not the steam one.

Oh, and btw, forgot to add that I even didn't noticed any sound missing during my actions. For me it was a very nice surprise. Now that I hope this is fixed, you can expect one more sale in the next following days ;-)

Chris_McElligottPark

Nov 17, 2010 4:09 pm

administrator   ~0003846

No worries, and thanks for the added info.

keith.lamothe

Nov 17, 2010 4:22 pm

administrator   ~0003847

We do appreciate the support :)

If you happen to have Steam, you can actually use your serial key to activate the game there and get access to all the steamworks, etc features if you like those. Valve has been very accommodating about honoring keys bought from other sources.

Vampyre

Nov 17, 2010 6:10 pm

reporter   ~0003850

Yeap, I got steam for the mac, but I never buy indies games there... Big studios can afford a commission on the transaction. But for indies, I know 1 cent is 1 cent. So, just for that, I never buy anything from Steam if it's indie... I rather buy it directly from the site... But I'll try validating the keys the games I already have in steam, so I have backup reload ^^. I never thought of doing it ;-)

As soon as I have the game from you, I'll do that also ;)

dumpsterKEEPER

Nov 18, 2010 7:34 pm

reporter   ~0003920

I was able to get back to playing today and encountered no problems. I played for a little over an hour with sounds enabled and no crashes or errors. The only difference from before is that I'm on a new campaign (I finished the old one) so the battles weren't quite as large as what I was experiencing before, but I'm not sure that would affect it anyway.

I'll certainly update this thread if I run into problems again, but it's looking good so far!

Chris_McElligottPark

Nov 18, 2010 7:38 pm

administrator   ~0003922

Sounds good!

The nature of the change in 4.035 was such that it really didn't seem likely this would be a problem, so now that I have confirmation from two of you I'm going to optimistically mark this as closed. ;)

If anyone else has problems, we can either reopen this or start a new one (this has gotten so long, anyway).

Issue History

Date Modified Username Field Change
Nov 5, 2010 4:25 pm dumpsterKEEPER New Issue
Nov 5, 2010 4:25 pm dumpsterKEEPER File Added: AI War_2010-11-05-131013.crash
Nov 5, 2010 4:26 pm Chris_McElligottPark Note Added: 0002775
Nov 5, 2010 4:26 pm keith.lamothe Note Added: 0002776
Nov 5, 2010 4:34 pm dumpsterKEEPER File Added: aiwar-process-2.log
Nov 5, 2010 4:38 pm dumpsterKEEPER Note Added: 0002777
Nov 5, 2010 4:46 pm keith.lamothe Note Added: 0002779
Nov 5, 2010 5:03 pm dumpsterKEEPER Note Added: 0002781
Nov 5, 2010 5:06 pm keith.lamothe Note Added: 0002782
Nov 5, 2010 5:15 pm dumpsterKEEPER Note Added: 0002783
Nov 5, 2010 5:56 pm dumpsterKEEPER Note Added: 0002784
Nov 8, 2010 9:34 am Chris_McElligottPark Note Added: 0002916
Nov 8, 2010 9:34 am Chris_McElligottPark Assigned To => Chris_McElligottPark
Nov 8, 2010 9:34 am Chris_McElligottPark Status new => feedback
Nov 8, 2010 5:31 pm dumpsterKEEPER Note Added: 0002994
Nov 8, 2010 5:31 pm dumpsterKEEPER Status feedback => assigned
Nov 8, 2010 5:33 pm keith.lamothe Note Added: 0002995
Nov 8, 2010 5:43 pm Chris_McElligottPark Note Added: 0002996
Nov 9, 2010 3:32 am Vampyre Note Added: 0003040
Nov 9, 2010 3:37 am Vampyre Note Edited: 0003040
Nov 9, 2010 9:16 am Chris_McElligottPark Note Added: 0003059
Nov 9, 2010 10:09 am Vampyre Note Added: 0003066
Nov 9, 2010 10:16 am Chris_McElligottPark Note Added: 0003067
Nov 9, 2010 3:35 pm dumpsterKEEPER Note Added: 0003086
Nov 9, 2010 3:41 pm keith.lamothe Note Added: 0003087
Nov 9, 2010 3:44 pm keith.lamothe Note Added: 0003088
Nov 9, 2010 3:53 pm Chris_McElligottPark Note Added: 0003089
Nov 9, 2010 4:01 pm keith.lamothe Note Added: 0003090
Nov 9, 2010 4:04 pm keith.lamothe Note Added: 0003091
Nov 9, 2010 4:09 pm Chris_McElligottPark Note Added: 0003092
Nov 9, 2010 4:15 pm Vampyre Note Added: 0003093
Nov 9, 2010 4:19 pm Chris_McElligottPark Note Added: 0003094
Nov 9, 2010 4:22 pm keith.lamothe Note Added: 0003095
Nov 9, 2010 4:22 pm keith.lamothe Note Added: 0003096
Nov 9, 2010 4:32 pm Chris_McElligottPark Note Added: 0003097
Nov 9, 2010 4:34 pm keith.lamothe Note Added: 0003098
Nov 9, 2010 4:45 pm Chris_McElligottPark Note Added: 0003099
Nov 9, 2010 7:29 pm resistor Note Added: 0003102
Nov 9, 2010 8:45 pm Chris_McElligottPark Note Added: 0003113
Nov 9, 2010 8:57 pm Chris_McElligottPark Note Added: 0003116
Nov 9, 2010 8:58 pm keith.lamothe Note Added: 0003117
Nov 9, 2010 9:01 pm Chris_McElligottPark Note Added: 0003119
Nov 9, 2010 9:02 pm keith.lamothe Note Added: 0003120
Nov 9, 2010 9:05 pm Chris_McElligottPark Note Added: 0003121
Nov 9, 2010 9:08 pm Chris_McElligottPark Note Added: 0003122
Nov 10, 2010 7:26 am Vampyre Note Added: 0003158
Nov 10, 2010 11:46 am resistor Note Added: 0003183
Nov 10, 2010 11:49 am keith.lamothe Note Added: 0003185
Nov 10, 2010 11:52 am resistor Note Added: 0003187
Nov 10, 2010 11:53 am resistor Note Added: 0003188
Nov 10, 2010 11:54 am Chris_McElligottPark Note Added: 0003189
Nov 10, 2010 11:56 am keith.lamothe Note Added: 0003190
Nov 10, 2010 5:06 pm dumpsterKEEPER Note Added: 0003197
Nov 10, 2010 5:16 pm keith.lamothe Note Added: 0003199
Nov 10, 2010 6:01 pm Chris_McElligottPark Note Added: 0003203
Nov 10, 2010 6:07 pm Vampyre Note Added: 0003204
Nov 10, 2010 6:21 pm Chris_McElligottPark Note Added: 0003205
Nov 11, 2010 1:48 am resistor Note Added: 0003219
Nov 11, 2010 2:38 am Vampyre Note Added: 0003220
Nov 11, 2010 2:42 am resistor Note Added: 0003221
Nov 11, 2010 2:44 am resistor Note Added: 0003222
Nov 11, 2010 3:07 am resistor Note Added: 0003225
Nov 11, 2010 6:20 am ciaran Note Added: 0003227
Nov 12, 2010 12:24 pm Vampyre Note Added: 0003283
Nov 12, 2010 12:41 pm ciaran Note Added: 0003286
Nov 12, 2010 12:54 pm Chris_McElligottPark Note Added: 0003287
Nov 12, 2010 1:01 pm dumpsterKEEPER Note Added: 0003288
Nov 12, 2010 1:05 pm Chris_McElligottPark Note Added: 0003289
Nov 12, 2010 1:25 pm ciaran Note Added: 0003291
Nov 12, 2010 1:28 pm dumpsterKEEPER Note Added: 0003292
Nov 12, 2010 2:22 pm Chris_McElligottPark Note Added: 0003293
Nov 12, 2010 2:49 pm Vampyre Note Added: 0003296
Nov 12, 2010 2:51 pm Vampyre Note Edited: 0003296
Nov 12, 2010 2:55 pm Chris_McElligottPark Note Added: 0003297
Nov 12, 2010 3:03 pm Vampyre Note Added: 0003298
Nov 12, 2010 4:24 pm dumpsterKEEPER Note Added: 0003304
Nov 12, 2010 4:28 pm Chris_McElligottPark Note Added: 0003305
Nov 12, 2010 6:53 pm Chris_McElligottPark Note Added: 0003317
Nov 13, 2010 3:57 am resistor Note Added: 0003335
Nov 13, 2010 5:16 am Vampyre Note Added: 0003336
Nov 13, 2010 7:01 am Vampyre Note Edited: 0003336
Nov 13, 2010 8:00 am Vampyre Note Edited: 0003336
Nov 13, 2010 8:00 am Chris_McElligottPark Note Added: 0003342
Nov 13, 2010 8:51 am Vampyre Note Added: 0003344
Nov 13, 2010 8:58 am Vampyre Note Edited: 0003344
Nov 13, 2010 9:26 am Chris_McElligottPark Note Added: 0003346
Nov 13, 2010 10:18 am Vampyre Note Added: 0003351
Nov 13, 2010 11:21 am Vampyre Note Added: 0003354
Nov 13, 2010 8:46 pm Chris_McElligottPark Note Added: 0003409
Nov 14, 2010 7:51 am Vampyre Note Added: 0003432
Nov 14, 2010 7:52 am Chris_McElligottPark Note Added: 0003434
Nov 14, 2010 11:39 am Vampyre Note Added: 0003443
Nov 14, 2010 1:31 pm Chris_McElligottPark Note Added: 0003447
Nov 14, 2010 2:29 pm resistor Note Added: 0003455
Nov 14, 2010 3:01 pm resistor Note Added: 0003456
Nov 14, 2010 4:51 pm Vampyre Note Added: 0003467
Nov 14, 2010 5:05 pm Vampyre Note Added: 0003469
Nov 15, 2010 5:00 am Vampyre Note Added: 0003510
Nov 15, 2010 3:31 pm Chris_McElligottPark Note Added: 0003633
Nov 15, 2010 4:04 pm Vampyre Note Added: 0003645
Nov 15, 2010 4:10 pm Chris_McElligottPark Note Added: 0003646
Nov 16, 2010 3:22 am Vampyre Note Added: 0003695
Nov 16, 2010 10:17 pm Chris_McElligottPark Note Added: 0003777
Nov 17, 2010 3:36 am Vampyre Note Added: 0003792
Nov 17, 2010 9:43 am Chris_McElligottPark Note Added: 0003808
Nov 17, 2010 9:43 am Chris_McElligottPark Status assigned => feedback
Nov 17, 2010 9:44 am keith.lamothe Note Added: 0003809
Nov 17, 2010 4:08 pm Vampyre Note Added: 0003844
Nov 17, 2010 4:09 pm Chris_McElligottPark Note Added: 0003846
Nov 17, 2010 4:10 pm Vampyre Note Edited: 0003844
Nov 17, 2010 4:22 pm keith.lamothe Note Added: 0003847
Nov 17, 2010 6:10 pm Vampyre Note Added: 0003850
Nov 18, 2010 7:34 pm dumpsterKEEPER Note Added: 0003920
Nov 18, 2010 7:34 pm dumpsterKEEPER Status feedback => assigned
Nov 18, 2010 7:38 pm Chris_McElligottPark Note Added: 0003922
Nov 18, 2010 7:38 pm Chris_McElligottPark Status assigned => resolved
Nov 18, 2010 7:38 pm Chris_McElligottPark Fixed in Version => 4.035
Nov 18, 2010 7:38 pm Chris_McElligottPark Resolution open => fixed
Apr 14, 2014 9:27 am Chris_McElligottPark Category Bug - Crash or Exception => Crash/Exception