View Issue Details

IDProjectCategoryLast Update
0024585AI War 2Crash/ExceptionMar 22, 2021 12:15 pm
ReporterSigma7 Assigned ToChris_McElligottPark  
Status resolvedResolutionfixed 
Product VersionBeta 2.761 Hacking Hotfix 
Fixed in VersionBeta 2.762 Performance Hotfix 
Summary0024585: Stutter problem
DescriptionIn 2.758 or 2.759, this save was working somewhat fine, with the only possible stutter when it does an autosave in the next minute (and it's only seems noticable if I accelerate the game and look for it).

In 2.671, this save will cause stutters, some of which are severe enough to cause "AI War 2 is not responding". The stutters seem to get worse over time, only getting better if you load the next autosave.

Additionally, the game takes a significant amount of time to quit.
TagsNo tags attached.

Activities

Sigma7

Mar 19, 2021 11:30 pm

reporter  

Autosave at 6h 9m 0s.zip (1,190,768 bytes)

Sigma7

Mar 19, 2021 11:33 pm

reporter   ~0060841

For reference, I'm keeping 50 autosaves, and doing them once per minute (might be overparanoid, but minimizes risk of loss.)

Metrekec

Mar 20, 2021 1:38 am

reporter   ~0060842

Getting massive FPS loss after putting down a bunch of turrets on a freshly made military station next to a 800 str superterminal hack force. Have never had performance issues with these "low" ship counts in the past. Performance is at 16% while paused after loading the save.
HeavyLag.save (594,457 bytes)
HeavyLag.savemet (125 bytes)

Metrekec

Mar 20, 2021 1:47 am

reporter   ~0060843

Forgot to mention this save was from a new game on 2.671.

ArnaudB

Mar 20, 2021 10:05 am

manager   ~0060845

I have the issue too, it happens while moving fleets and just playing the game in general, once you get a bit far into the game.

I am uncertain what is causing it.
Staggers.save (733,405 bytes)

alocritani

Mar 20, 2021 11:23 am

reporter   ~0060846

Me too, and I also received an exception:

3/20/2021 4:19:57 PM 2.761 SINGLEP ClearOrders error at debugStage 400, error: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
  at System.ThrowHelper.ThrowArgumentOutOfRangeException (System.ExceptionArgument argument, System.ExceptionResource resource) [0x00029] in <9577ac7a62ef43179789031239ba8798>:0
  at System.ThrowHelper.ThrowArgumentOutOfRangeException () [0x00000] in <9577ac7a62ef43179789031239ba8798>:0
  at Arcen.AIW2.Core.EntityOrderCollection.ClearOrders (Arcen.AIW2.Core.ClearBehavior ClearType, Arcen.AIW2.Core.ClearDecollisionOnParent DecollisionClear, Arcen.AIW2.Core.ClearSource CSource, System.String DebugReason) [0x00064] in <34c2541c461b4f42b10c15df4c62af3c>:0
27.zip (325,648 bytes)

BadgerBadger

Mar 21, 2021 1:55 pm

manager   ~0060850

Can confirm performance issues, my MP group jumped back to "Most Recent Stable Beta".

Also, is there a way we could re-organize the list of alphas/betas to put the stuff people want to use at the top? People had trouble finding the right ones

Zweihand

Mar 21, 2021 2:43 pm

reporter   ~0060853

Stutters seems to happen most severely during large battles, large turret and ship rebuilding times, and during large unloaded fleet movements.

I also second reorganizing the list of alphas and betas or offering a particular beta patch off of the Arcen website with a working CD key or something

Chris_McElligottPark

Mar 22, 2021 11:44 am

administrator   ~0060863

Starting with the easier one:

* Fixed an exception that could happen in ClearOrders() at debug stage 400.

Chris_McElligottPark

Mar 22, 2021 12:01 pm

administrator   ~0060864

@Metrekec. Using your provided save, I am getting 100% performance both paused and unpaused.

I am getting massive frame spikes of some sort, though, which is a very curious thing. Essentially scrolling around is incredibly rough, and then every few seconds there is a massively slow frame that causes a larger jolt.

I am playing with an i7-6700HQ CPU @ 2.60GH, and a GTX 1070. I'm going to do some looking into this from the angle of several of these saves, but I'm curious as to how my specs compare to yours.

Chris_McElligottPark

Mar 22, 2021 12:08 pm

administrator   ~0060865

Ooh! It looks like this is a disk-bound thing, in large part. There's infinite spam of this sort of thing in the Player.log, but NOT in our actual main log for some reason:

Mismatch on ClaimedByEntity_Internal when returning to the pool! NULL 16554:Pulsar Tank
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 35)

Mismatch on ClaimedByEntity_Internal when returning to the pool! NULL 16750:Dagger
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 35)

Mismatch on ClaimedByEntity_Internal when returning to the pool! NULL 16754:Concussion Corvette
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 35)

Mismatch on ClaimedByEntity_Internal when returning to the pool! NULL 16938:Pike Corvette
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 35)

Mismatch on ClaimedByEntity_Internal when returning to the pool! NULL 16941:Pike Corvette
(Filename: C:\buildslave\unity\build\Runtime/Export/Debug/Debug.bindings.h Line: 35)

Chris_McElligottPark

Mar 22, 2021 12:15 pm

administrator   ~0060866

Found it -- thanks! And sorry about the inconvenience!

* Fixed a bug from the last (non-hotfix) version that was causing the Player.log to be spammed with "Mismatch on ClaimedByEntity_Internal when returning to the pool!" errors.
** This was causing massive amounts of lag in all sorts of unexpected situations, and the main predictor of just how bad the lag was, was how busy your hard drive was and how long you had been playing (this would get exponentially worse over time).
** The root cause here was me moving when a variable was nulled-out in order to make cross-threading issues less likely. However, after that point it does a validity check and complains if there is a problem. This check is important, but it was always now failing against a now-null variable.
** The validity check now uses a local copy of what is nulled out, so spurious errors aren't thrown. Additionally, if it DOES have an error, it will now go to the main log and the display, so we don't get surprise hidden problems like this.

Issue History

Date Modified Username Field Change
Mar 19, 2021 11:30 pm Sigma7 New Issue
Mar 19, 2021 11:30 pm Sigma7 File Added: Autosave at 6h 9m 0s.zip
Mar 19, 2021 11:33 pm Sigma7 Description Updated
Mar 19, 2021 11:33 pm Sigma7 Note Added: 0060841
Mar 20, 2021 1:38 am Metrekec File Added: HeavyLag.save
Mar 20, 2021 1:38 am Metrekec File Added: HeavyLag.savemet
Mar 20, 2021 1:38 am Metrekec Note Added: 0060842
Mar 20, 2021 1:47 am Metrekec Note Added: 0060843
Mar 20, 2021 10:05 am ArnaudB File Added: Staggers.save
Mar 20, 2021 10:05 am ArnaudB Note Added: 0060845
Mar 20, 2021 11:23 am alocritani File Added: 27.zip
Mar 20, 2021 11:23 am alocritani Note Added: 0060846
Mar 20, 2021 1:05 pm BadgerBadger Assigned To => BadgerBadger
Mar 20, 2021 1:05 pm BadgerBadger Status new => assigned
Mar 20, 2021 1:05 pm BadgerBadger Assigned To BadgerBadger => Chris_McElligottPark
Mar 21, 2021 1:55 pm BadgerBadger Note Added: 0060850
Mar 21, 2021 2:43 pm Zweihand Note Added: 0060853
Mar 22, 2021 11:44 am Chris_McElligottPark Note Added: 0060863
Mar 22, 2021 12:01 pm Chris_McElligottPark Note Added: 0060864
Mar 22, 2021 12:08 pm Chris_McElligottPark Note Added: 0060865
Mar 22, 2021 12:15 pm Chris_McElligottPark Status assigned => resolved
Mar 22, 2021 12:15 pm Chris_McElligottPark Resolution open => fixed
Mar 22, 2021 12:15 pm Chris_McElligottPark Fixed in Version => Beta 2.762 Performance Hotfix
Mar 22, 2021 12:15 pm Chris_McElligottPark Note Added: 0060866