ALL THE THINGS

ALL THE THINGS

31M Downloads

FPS Hangs after Database Rescan

Raven7576 opened this issue ยท 31 comments

commented

hey there,

I come with a really weird bug that im sure you'll not be able to find but I swear that every time I perform a collection refresh (Shift + Click Icon) the game does this micro stutter afterward. Its the same sort of micro stutter you'd find if you were to hover over your addon usage from the Game Menu icon, like a heart beat stutter as it keeps "scanning" usage.

Do you have any clue what I'm trying to describe? lol

commented

This is expected and pretty much unavoidable as far as I know. ATT is just a huge addon, it takes time to refresh all of your collection. It's the same reason why loading screens take longer with ATT enabled.

I don't think there are plans to smooth over collection refresh over multiple game frames to reduce stutter (if it's not done already) but I'll summon @ImUnicke just in case he has something to say.

commented

This is expected and pretty much unavoidable as far as I know. ATT is just a huge addon, it takes time to refresh all of your collection. It's the same reason why loading screens take longer with ATT enabled.

I don't think there are plans to smooth over collection refresh over multiple game frames to reduce stutter (if it's not done already) but I'll summon @ImUnicke just in case he has something to say.

I hear ya, I just to make sure to emphasize that its after the scan is completed, and not during. I know (and expect) the collection to chug a little while it all builds. Its just weird that it has this micro stutter after that doesnt really go away until I restart the game

commented

Ah, you mean not just one micro freeze, I see. Yeah, that sounds weird.

commented

With Unique mode especially, there's a bit of extra 'stutter' which tends to happen immediately following a forced refresh.
I'm not entirely sure what is the exact cause of that, but it definitely only persists (in my experience) for a couple seconds at most.

Would be interesting to verify that it is indeed ATT causing the permanent micro-stutter afterwards. If you could use the addon AddonUsage to verify that, it would be nice to know.

Also, you can type /etrace in game to see events that are being sent to the game client from the server. If ATT is handling anything constantly, it should be causing the server to send information, so potentially things would be getting spammed in that window.

commented

Glad to hear it's a lot better :)

Memory is never going to be constant. To calculate things, the addon needs to grab more space to store the data, but then after calculations are done, that space is no longer needed. So it's then up to the game Client itself to decide when to remove/reallocate that memory. So it will show 'in use' by ATT for some time afterwards, but eventually will get cleaned up as the Client sees fit. There are in-game commands to 'force' the game to go and clean up any memory in that current state, but it's highly suggested to just 'let the Client do what it needs to' for memory management.

commented

@Razertongue There have been improvements to various performance aspects of ATT since your initial post... do you still experience these symptoms on the latest version 2.4.5 ?

commented

@Razertongue There have been improvements to various performance aspects of ATT since your initial post... do you still experience these symptoms on the latest version 2.4.5 ?

I think things are fine? Slow downs still occur but Im sure theyre related to how you mentioned they should as I use Unique Mode and I only care about my main.

I did notice that after a database rebuild (from the new version) my items in my bag would slow the game as they were moused over but this eventually evens out. I noticed ATT using 450mb of memory and then subsiding down to 350mb when this all evens out.

I trust you guys are doing what you can, I know the sheer volume of information being accessed is going to do this. As for continuous FPS and performance drop, cant say Ive noticed much. I wish I knew more about coding to understand how you guys are fixing stuff but any uneducated person could be like "JUST MAKE IT WORK BETTER!", its all fascinating to me never the less lol

commented

Do you use any other Bag addons or tooltip modifying-addons?
Do the tooltips have noticeable stutter when they are on ATT windows instead of Bag icons as well?

commented

A few actually... The amalgamation of addons I have running is surprisingly stable all things considered so I wouldnt even fill this as "An ATT issue" anymore.

Addons that I use that write on tooltips are AAT, Altoholic, Combuctor (Classic Bagnon), SmexyMats, and Auctionator... All being slightly reformatted using TipTac.

In fact, after replying to this post, I havent had a single slowdown using AAT (beyond that database rebuild and maybe 5-10 mins afterward)

commented

Hmmm, yea I have a bunch as well and sometimes when testing ATT changes, I think "Oh no what have I done it's so laggy" and I use the "AddonUsage" addon to check all addon CPU/Memory. Then dragging my mouse over Items in my bag I usually find that ATT causes about 1-5% of the total CPU used while building tooltips while other addons take up vastly more. So you could always test around with that if you wanted to try and narrow down or verify any suspicions :)

commented

I mean, let me make this clear that I've never personally experienced these symptoms as you describe. So I would definitely say it is abnormal.
When I shift-click on ATT with the Main list open (or with Ad-Hoc updates disabled) my game will completely freeze (0 FPS) for approx. 4-7 seconds depending on current settings. The FPS will then immediately return to stable (60+) without any hitches or stuttering or random spikes.
Can you post your settings tab of what settings you have enabled/etc. ? Are you able to provide a list of other addons you have enabled along with ATT when this scenario happens? Or does this stutter/hitching happen with ATT completely by itself?

commented

Want chime in: I have the same issues started maybe few weeks ago IIRC.

For me the scenario is as follows:
(1) new ATT drops
(2) I log in to my main (hunter in Arden)
(3) After the load, FPS drop to 0
(4) I see message in chat that ATT has finished updating
(5) FPS still at 0
(6) Task manager reports over 10GB used by WOW (was steadily increasing since logged in from about 5GB)
(7) Kill wow in task manager or wow just closes at 10-12GB mark

But when I get my alt that's in Org (same addons) (5) gives me slow downs for ~30secs after that FPS drop to half the normal and stay at that until I reload or logout/in again, but memory stays level.

Shift-update on any chars works like a charm (few seconds freeze).

Hope that helps - I have ton of addons enabled, but it's the same set on every char. Yes, I have Unique selected in ATT options. and I have Ryzen 5, 32GB ram.

EDIT: This is only happening when there's new ATT version, I didn't notice it any other time.

commented

The best way I found to get rid of the drop FPS to 0 (ZERO) issue and sometimes even game crashes after an ATT update is to disable ALL Addons but ATT...log in..let ATT refresh the collection...then enable all Addons again. I use BetterAddonList which makes easy to load my Addons profile and reload the game after ATT get refreshed but yeah. it's insane that happens when you have a High End RIG with 32 GB Ram but at least this trick helps me a lot.

commented

These situations really make me think that something else is interacting with ATT in an unexpected way. When you login with just ATT and everything is fine, but logging in with other addons as well and the game basically freezes... very strange. If you ever manage to figure out the specific addon interaction that causes it, it would be great to know so it can possibly be remedied in ATT if possible.

commented

These situations really make me think that something else is interacting with ATT in an unexpected way. When you login with just ATT and everything is fine, but logging in with other addons as well and the game basically freezes... very strange. If you ever manage to figure out the specific addon interaction that causes it, it would be great to know so it can possibly be remedied in ATT if possible.

Honestly, Ive gotten use to what to expect

-New Patch drops
-FPS Drops to 1 for about 1 min
-Memory used for the addon bloats to about 490mb after the scan, frame rate goes to "normal" but dives and hitches when youre looking at stuff in your inventory.
-Later on, after a reload or a game restart, addon doesnt go past 340mb in memory usage.

Im playing the game on an i7-8600k and 32 GB of Ram, GTX 1070 SC GPU.

I started this thinking all of this was abnormal or bugged but it just seems like its how youve changed the addon to working. The whole slowdown after the rescan feels a little unpolished but if there something going on in the background that needs happen for it all to run proper, than that works too I guess.

commented

Hey there, So I did as you asked and disabled every addon and observed the same perceived "issue".

I turned back on Titanpanel (it has a little more details dropped down of system performances) and recorded a video for you.

https://youtu.be/JlJ6iPc4OME

I will say, I didn't realize that a /reload after the collection rebuild will get everything back in order, but it seems that a frame rate lag persists without doing it.

Also note: It seems like Galtharial and I are having slightly different issues, Ive never had to task manager kill my game for things to get better.

commented

Hey there, So I did as you asked and disabled every addon and observed the same perceived "issue".

I turned back on Titanpanel (it has a little more details dropped down of system performances) and recorded a video for you.

https://youtu.be/JlJ6iPc4OME

I will say, I didn't realize that a /reload after the collection rebuild will get everything back in order, but it seems that a frame rate lag persists without doing it.

Also note: It seems like Galtharial and I are having slightly different issues, Ive never had to task manager kill my game for things to get better.

also, note the 338mb memory taken up at first, and then 500+mb memory taken up consistently until a /reload is performed.

commented

Thanks for the video, that is definitely bizarre from my experience. I've been revising some of the logic concerning appearance collection and especially for Unique mode to attempt to get better performance where I can manage. Overall it feels roughly the same still for me, ~2sec delay for Unique refresh then normal, but Completionist is near instant now. Unique unfortunately just has a TON of extra logic to figure out "well you don't have this source, but maybe you should have credit for this source based on the same appearances and their restrictions..." for literally every source that your account does not specifically have credit for owning.

I will have to perform the same exact tests as you with all addons disabled and see if I get the weird tooltip lag as well sometime.

If you are able to/want to test out the latest Git version of ATT, feel free to see if there are any improvements (so far) for this condition on your side and let me know.

commented

Ok thanks for the further info. I will attempt to replicate some form of this issue myself hopefully so I can attempt to make any sort of fix....

commented

By 'finished updating' you mean you see this message?
image
The only other logic ATT does on loading into the game after that message displays, is a check of the current map so as to refresh the minilist for the proper map.
Do you have this setting enabled when the issue occurs?
image
If so, then possibly there's something in the minilist logic that could be having a weird problem. Not sure yet...

commented

By 'finished updating' you mean you see this message? image The only other logic ATT does on loading into the game after that message displays, is a check of the current map so as to refresh the minilist for the proper map. Do you have this setting enabled when the issue occurs? image If so, then possibly there's something in the minilist logic that could be having a weird problem. Not sure yet...

In my case which is EXACTLY what was described by vforge I do see see the "ALL THE THINGS Done Refreshing" and I have Automatically Open the Mini List Unchecked since forever

Even after seeing the message "ALL THE THINGS Done Refreshing" the FPS stays at 0 and I have to either Kill WoW in Task Manager or wait for the crash which happens eventually.

As I side note I always had FPS drops when ATT was updated but I never had any crashes or had to kill WOW. This started happening with the last 3-4 updates made things insane.

Like I said before what helps is

commented

Ok an initial review of the logic that processes during a new version refresh/forced refresh yielded some improvements for both Unique and Completionist modes. Unique does still require a LOT of extra processing, which I will take a look at as well after pushing these changes to Git.

I caused ATT to think that every reload is a 'new version' and perform the same refresh logic. Here's what I see now (with a bit of debug info) on reloading with Unique mode:
image
4 seconds from start to finish. I get no weird framerate issues after it is complete either.
Then, performing a manual force refresh (Shift-Click) looks like this in chat:
image
2 seconds, with no weird framerate stutter or lag afterwards. The improved time is likely due to the game caching API requests during the game session or something of that nature I would guess.

As a side note, check out the difference in Completionist mode:
image
And force-refresh:
image

commented

Ok I've noticed that there is an additional frame stutter after force refreshing in only Unique mode (for whatever reason) but it's so marginal I wasn't 100% sure it was happening when just standing still testing.
I popped open /etrace in game and did a force refresh with Unique mode. And each time I get spammed after the Refresh is done with this event:
image

But ATT does literally nothing with this event, so it must be another addon (or the default WoW UI) grabbing those events and trying to deal with them in some way... I'll try to find if I have an addon which is handling this event, but it doesn't seem so:
image

Hmmmm....

commented

I'll reference the commits that modified the related logic here.
[ffd4b99]
[b7a1aa9]
[4449d00]
[c71770e]

As of this point, I've gotten the Unique force refresh down under a second (on my machine) with much reduced memory usage as well during the refresh. I'll leave this issue open until either of you (@Razertongue / @Galthariel ) can confirm any improvement to the loading/refresh process on your end after the next full ATT release (probably next Sunday).

commented
commented

We release alpha versions on Friday so you will be able to try it earlier. Or I can push a new alpha now if you wish. Alpha versions can be easily installed through addon managers.

commented

@Molkree and @ImUnicke, I actually have no clue how to use the files from github. I thought I could use the url in WoWUp but it seems to just want to install 2.4.7. If you wanna push an alpha I can mess with it today and let you know? or if you wanna explain what I need to do to install the changes on my side using the github?

commented

@Razertongue, I have pushed new alpha, if you use WoWUp it should be available from CurseForge (or Wago if it has it).
It's called SL-2.4.7-32-ge0e1029.

commented

@Razertongue, I have pushed new alpha, if you use WoWUp it should be available from CurseForge (or Wago if it has it). It's called SL-2.4.7-32-ge0e1029.

I'll reference the commits that modified the related logic here. [ffd4b99] [b7a1aa9] [4449d00] [c71770e]

As of this point, I've gotten the Unique force refresh down under a second (on my machine) with much reduced memory usage as well during the refresh. I'll leave this issue open until either of you (@Razertongue / @Galthariel ) can confirm any improvement to the loading/refresh process on your end after the next full ATT release (probably next Sunday).

๐Ÿ‘๐Ÿ‘๐Ÿ‘๐Ÿ‘ Things work a helluvalot better on my end now. No slow downs on inventory items after a fresh rescan. Thanks for the hard work!

My only outro question, what makes the memory usage fluctuate so much? Like why could it be actively jumping up to 430mb and dip back down to 380mb? I assume these are large leaps but I know where only talking about Mb's and not Gigs of data lol. Things are super smooth now but I see usage still isnt a solid, predicable number at all times. ( A deal with it issue im sure xD)

commented

Going to close this since there's been no negative feedback concerning the lag post-new versions :) Hopefully things have all been addressed and improved as desired :)

commented

This same issue is happening again on version AllTheThings-SL-2.7.9 which was just released. Had to come back to AllTheThings-SL-2.7.8