Thread Tools Display Modes
09/07/24, 04:45 PM   #1
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
LUA memory issue

Hey, like halfyear ago i notcied that when i farm mobs in public dungeon my LUA memory usage grows unendingly, usually i have about 450mb used, and i have like hunded addons. One time it reached 2 GBs (was farming for hours), well problem is not that it takes much, problem is that game start lagging. My FPS goes from stable 60 to 10 overtime, and mobs stop rendering correctly like i approach the spot use skill, already see the damage numbers but not the mobs, also other textures get scuffed. Reloading UI resets LUA memory to normal, or a relog. Its super annoying, it grows like 10mb per minute and only happening when i farm mobs in public dungeon, in blackrose prison exp runs everything is smooth for some reason.
So id like to ask you, whats happening? Is it some certain addon that works in a wrong way? Or its just how its should be? Would like to hear any advices in general or how to find that bad addon. I tried disabling massive ones like interface etc but it didnt help, general LUA memory usage goes low but it still grows.
  Reply With Quote
09/08/24, 01:16 PM   #2
Anthonysc
AddOn Author - Click to view addons
Join Date: Jan 2022
Posts: 16
Get Addon Selector, Turn off all your addons (except, you know, libaddonmenu and addon selector).
Does it still happen? Addon problem
Does it not still happen? Not an addon problem (it's going to be an addon problem).

From there, try turning back on and off chunks of addons until you find the one that's causing the problem.
  Reply With Quote
09/08/24, 05:11 PM   #3
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
Well its been a lot of tests.

It appeared to be ExoYs ProcSet Timer, it was the only one that was giving persistant uneding increase.
Disabled it, and started running again. Over 20 min LUA mem went from 540m to 626m, so its still growing. When i sell bag to cat, like 150 items, it went from 626m to 655m. Thing is it never goes down, only keep stacking and grow further, i have no idea at this point

Last edited by atharti : 09/08/24 at 05:58 PM.
  Reply With Quote
09/09/24, 02:45 AM   #4
ExoY
 
ExoY's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2020
Posts: 95
Ok, just to double check. The problem arrives when you have therassian equipped and constantly farm mobs?

I will try to reproduce this problem.

(The part with only in public dungeons is weird though. Do you leave combat during your farm or are you constantly in combat?.... This wouldnbe the only difference from an addon point of view between the pb and brp.)

Also, which method do you use to determine the lua usage?
  Reply With Quote
09/09/24, 07:16 AM   #5
Baertram
Super Moderator
 
Baertram's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 5,190
That's normal that lua memory usage goes up and will not reset by default.
You need to reload the UI to reset it some time.

Doing a /reloadui every like 30 mins or at least 1h is a good way to make all run smooth (depening on your addons loaded, what you do (dungeons or farming a lot of mobsso many combat happens / and depending on your CPU speed, RAM available etc.)
  Reply With Quote
09/09/24, 08:07 AM   #6
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
Originally Posted by ExoY View Post
Ok, just to double check. The problem arrives when you have therassian equipped and constantly farm mobs?

I will try to reproduce this problem.

(The part with only in public dungeons is weird though. Do you leave combat during your farm or are you constantly in combat?.... This wouldnbe the only difference from an addon point of view between the pb and brp.)

Also, which method do you use to determine the lua usage?
Hey, i have Info Panel addon, it dispays it in real time.
I havent checked with othersets, because i have this issue only during my PD farm where i got stranglers on.
I do leave combat yes.
  Reply With Quote
09/09/24, 08:17 AM   #7
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
Originally Posted by Baertram View Post
That's normal that lua memory usage goes up and will not reset by default.
You need to reload the UI to reset it some time.

Doing a /reloadui every like 30 mins or at least 1h is a good way to make all run smooth (depening on your addons loaded, what you do (dungeons or farming a lot of mobsso many combat happens / and depending on your CPU speed, RAM available etc.)
Hey,

Im trying to say that its not happening in dungeons, trials, or overworld, its always the same circumstances, and it was not happening before to me in this place.
I also tried to use addon Shissu LUA Memory, it have an option to wipe empty variables from LUA Memory on desired timer, it was doing pretty well and was wiping majority of that, but it still always was in an increase, like wipes 300mb but gains 305 and always going further.

Also during my tests, i was disabling 50% of addons slowly to get to the point when its happening and when its not, and was running about 10 minutes each time to see if the LUA mem usage will grow or no. With some groups there was no increase at all, with some it was extending by 20mb but never going further, and only with Exoy Proc Set Timer on (all rest were off at the end of the test) LUA mem was keep stacking unendingly.
But as i mentioned before, even after disabling it and making final test with all other addons on LUA mem was going crazy again, and i have no idea whats happening because i tested for a good time every group of addons.
  Reply With Quote
09/09/24, 08:25 AM   #8
ExoY
 
ExoY's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2020
Posts: 95
Could it be a librarian the Proc Set Timer depends on?

Cuz I can see, where some places in the code could end up creating an increasingly large table.

But nothing in the addon, that I can think of at the moment, differes between the location.
  Reply With Quote
09/09/24, 10:03 AM   #9
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
Originally Posted by ExoY View Post
Could it be a librarian the Proc Set Timer depends on?

Cuz I can see, where some places in the code could end up creating an increasingly large table.

But nothing in the addon, that I can think of at the moment, differes between the location.
My first test was to run just with libraries enabled, they were taking about 300mb but never moved an inch further over 10 mins. Im not sure how it works, but yeah if they stay idle without any addons operating with them that might be a case too.

Im sorry for pulling you into this and blaming your addon here. You make great ones It just was the only outcome i came up with after 4h tests. Even tho at the end, when i enabled everything and just disabled yours, LUA mem still was going up, so i think you might be right about libraries. But i just cant get the point of why i havent seen that behavior while testing my addons as small groups and disabling them slowly.
  Reply With Quote
09/09/24, 10:16 AM   #10
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
If there would be an addon that will inspect the lua memory and show what actually making the pressure like which addon or library, that would be helpfull i guess, but im not sure if there is one out like that.
Like a detailed report in real time. Since Info panel can read total amount, might be possible to see exactly what takes what.

Last edited by atharti : 09/09/24 at 10:55 AM.
  Reply With Quote
09/09/24, 11:38 AM   #11
Baertram
Super Moderator
 
Baertram's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 5,190
Nope, we cannot see that afaik.
  Reply With Quote
09/09/24, 11:38 AM   #12
ExoY
 
ExoY's Avatar
AddOn Author - Click to view addons
Join Date: Feb 2020
Posts: 95
Originally Posted by atharti View Post
My first test was to run just with libraries enabled, they were taking about 300mb but never moved an inch further over 10 mins. Im not sure how it works, but yeah if they stay idle without any addons operating with them that might be a case too.

Im sorry for pulling you into this and blaming your addon here. You make great ones It just was the only outcome i came up with after 4h tests. Even tho at the end, when i enabled everything and just disabled yours, LUA mem still was going up, so i think you might be right about libraries. But i just cant get the point of why i havent seen that behavior while testing my addons as small groups and disabling them slowly.
No worries

Regardless of mine is causing the problem or not, it is a good reminder to check if all tables get purged correctly when not used anymore 👍
  Reply With Quote
09/09/24, 01:07 PM   #13
sirinsidiator
 
sirinsidiator's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 1,602
Memory usage does not indicate whether an addon has an impact on your fps. An addon could use 20GB of memory and do nothing with it, resulting in no impact on fps. The more important metric is execution time, which you can record and show with ESOProfiler.

When the fps has dropped to less than half, start the profiler for ~5-10 seconds while doing nothing (assuming the fps are reduced in menus too), then stop it and export the data. The UI will reload and you'll have to copy the ESOProfiler.lua file immediately from your saved vars folder to somewhere else as it will be emptied out after a while to prevent it from having an impact on load times. Later you can upload it so we can take a look at what the issue is.
  Reply With Quote
09/09/24, 05:25 PM   #14
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
Originally Posted by sirinsidiator View Post
Memory usage does not indicate whether an addon has an impact on your fps. An addon could use 20GB of memory and do nothing with it, resulting in no impact on fps. The more important metric is execution time, which you can record and show with ESOProfiler.

When the fps has dropped to less than half, start the profiler for ~5-10 seconds while doing nothing (assuming the fps are reduced in menus too), then stop it and export the data. The UI will reload and you'll have to copy the ESOProfiler.lua file immediately from your saved vars folder to somewhere else as it will be emptied out after a while to prevent it from having an impact on load times. Later you can upload it so we can take a look at what the issue is.
Thanks, il try to push it to the lag point and post the thing here.
  Reply With Quote
09/09/24, 07:43 PM   #15
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
Originally Posted by sirinsidiator View Post
Memory usage does not indicate whether an addon has an impact on your fps. An addon could use 20GB of memory and do nothing with it, resulting in no impact on fps. The more important metric is execution time, which you can record and show with ESOProfiler.

When the fps has dropped to less than half, start the profiler for ~5-10 seconds while doing nothing (assuming the fps are reduced in menus too), then stop it and export the data. The UI will reload and you'll have to copy the ESOProfiler.lua file immediately from your saved vars folder to somewhere else as it will be emptied out after a while to prevent it from having an impact on load times. Later you can upload it so we can take a look at what the issue is.
Originally Posted by ExoY View Post
No worries

Regardless of mine is causing the problem or not, it is a good reminder to check if all tables get purged correctly when not used anymore ��
Originally Posted by Baertram View Post
Nope, we cannot see that afaik.
Okay. I made it to unplayeable state again. It took 1 hour 20 minutes of non-stop grind to get there. Crazy fps drops to below 30 down from stable 60. LUA mem was up to 2000mb from 320m, and performance was getting worse and worse as LUA usage was growing, thats why i was thinking about that before.

Including ESO Profiler Export file here for your entertainment, hopefully you will figure out something from it.

File is too big, cant upload to forums attachments sorry. Giving google drive link.
https://drive.google.com/file/d/1scH...usp=drive_link

Last edited by atharti : 09/09/24 at 10:45 PM.
  Reply With Quote
09/10/24, 04:54 AM   #16
sirinsidiator
 
sirinsidiator's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 1,602
Looking at the file, it's really ExoYsProcSetTimer that is causing the fps drop. More specifically it looks like the activeTimerList does not get cleaned up properly (or rather the only code where entries are removed is commented out ) and as a result EPT.OnTimerUpdate takes almost 100ms to run.
  Reply With Quote
09/10/24, 08:19 AM   #17
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
Originally Posted by sirinsidiator View Post
Looking at the file, it's really ExoYsProcSetTimer that is causing the fps drop. More specifically it looks like the activeTimerList does not get cleaned up properly (or rather the only code where entries are removed is commented out ) and as a result EPT.OnTimerUpdate takes almost 100ms to run.
Oh, after i stopped Profiler it showed up a list ingame window, and ExoYs was on first place there with some big numbers. Im glad you managed to confim something, thank you. But is it just this one, and nothing else? There was lots of entries
  Reply With Quote
09/10/24, 09:01 AM   #18
sirinsidiator
 
sirinsidiator's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 1,602
Pretty much yes. You can't even see what other addons are doing when you look at the timeline:

Each of these big blocks is a frame where EPT takes too long. The tiny lines you can see between some of these blocks are what it should usually look like.
  Reply With Quote
09/10/24, 09:51 AM   #19
atharti
 
atharti's Avatar
Join Date: Apr 2023
Posts: 15
Originally Posted by sirinsidiator View Post
Pretty much yes. You can't even see what other addons are doing when you look at the timeline:

Each of these big blocks is a frame where EPT takes too long. The tiny lines you can see between some of these blocks are what it should usually look like.
Thank you.
Is it something ExoY could fix?
  Reply With Quote
09/10/24, 11:52 AM   #20
Baertram
Super Moderator
 
Baertram's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 5,190
More specifically it looks like the activeTimerList does not get cleaned up properly (or rather the only code where entries are removed is commented out )
As "commented out" would mean the code is already there, but not used, it sounds like it would be possible
  Reply With Quote

ESOUI » AddOns » AddOn Help/Support » LUA memory issue

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off