LunaUnitFrames

LunaUnitFrames

268k Downloads

In raid: lagged out down to 1FPS - game crash version 4.0

lvangh opened this issue · 38 comments

commented

When I entered AQ40 and people came online from being logged for buffs, the FPS kept dropping and dropping and by the time all 40 were logged in the game locked up and I had to alt-f4 it. Unfortunately I didn't record or stream.

commented

Having this issue again in Naxx in WotLK. It's not nearly as bad as I remember this initially being, but I'm getting micro stutters.
Been trying to figure out if it's an exact square or tracked spells combo that creates it, but no luck.
So I'll just give you what info I can.

Does it lag the entire interface?
Yes

Does it lag from the moment you log in?
No, and tbh mainly just inside the instance. Gets worse in combat.

What kind of/how many buffs/debuffs do you monitor on the raidframes?
14 different buffs/debuffs. Here's the list:

Raid AND Raid Pet:

  • Top Left (Own Buff/Debuff with Timer & Texture): Renew;Beacon of Light
  • Top (Own Buff/Debuff with Timer & Texture): Sacred Shield
  • Top Right (Buff/Debuff with Timer & Texture): Hand of Protection;Forbearance;Power Word: Shield;Weakened Soul
  • Bottom Left (Buff/Debuff with Timer & Texture): Chains of Kel'thuzad;Frost Blast;Detonate Mana;Jagged Knife;Icebolt;Flame Tsunami

ToT:

  • Top Right (Buff/Debuff with Timer & Texture): Bone Barrier

Pet:

  • Top Right (Buff/Debuff with Timer & Texture): Well Fed;Bone Barrier

Do you use other tags than the default ones?
No.

commented

Same here, lags in Naxx 25, I'm thinking to change to healbot :(

commented

Performance issues in wotlk are common. To see if this still a Luna problem feel free to change to something else and report back if that fixed it for you.

commented

For some people it may appear with fewer things to track in the squares while others have no problem at all. I will have to re-do the module while still not knowing what exact part of it caused the bad performance. In the meantime if you are having performance issues please remove all squares and use the following addon as replacement:

https://www.curseforge.com/wow/addons/buff-overlay

commented

I have been running cpu profiling for a few raids now and i have had a lag free experience so far. However i had to disable Details and NovaWorldBuffs since they consume a lot of cpu power aswell. I will look into further optimization anyway.

commented

I am still experiencing performance issues in long raids using the latest version. The lag mainly occurs on pulls and on AoE effects that applies debuffs. Also, the longer the raid is, the longer it takes to /reload or to log out. Raiding fora few hours will result in an log out or /reload time for over a minute, sometimes several minutes.

commented

I'm using 3.050 because 4.040 still causes terrible fps problems. With 3.050 everything works fine even after a 5 hour raid session.

commented

Please try 4060 there should be a lot less lag.

commented

4060 has made the stutter problem much better, but not 100% gone. Still it is usable for now. Thanks

commented

Similar thing happened to me but not as quickly. I noticed some FPS drops immediately especially when killing multiple mobs like AQ40 warrior packs. We did AQ40 and then BWL and the performance kept degrading over the raid. In BWL suppression room I was in single digit FPS and had to disable Luna and reload UI. After that everything worked fine.

The cause is not LUA errors because that's something I would have seen. The only hint for finding the issue is that hitting multiple mobs caused FPS drops and overall FPS kept getting worse over time. I was using 4.020 Beta.

commented

I have seen this happening aswell in a long raid session (AQ40 + BWL). However i can give no estimate for a fix as it will be difficult to track down. A workaraund for the moment is a reload of the UI.

commented

I encountered a similar problem in the last AQ40 too and suspected this addon. I'll do some very basic profiling of all functions and frames reachable from the LUF object in tomorrow's raid. Hopefully something obvious pops up.

commented

This also happened to me, 2-3 times. When i switched back to the old 3.0 version it stopped happening.

commented

I have seen this happening aswell in a long raid session (AQ40 + BWL). However i can give no estimate for a fix as it will be difficult to track down. A workaraund for the moment is a reload of the UI.

Think youll be able to find it? Pretty happy with the 4.0 changes but had to disable for my raid because i kept dropping from 140 fps to 5-10.

commented

Last Sunday I had it stuck at super low fps until reload after Viscidus. Today's BWL it only dropped to slideshow fps in fights involving a lot of incoming AoE damage, but it always went back to normal afterwards. We also did the shark thing in Azshara, and as soon as the shark did his AoE it would destroy my fps until everybody was full HP again. Firemaw was also unplayable, while the other 2 drakes ran with only minor stuttering.

Over a time of 272 sec I gathered following data in BWL, including some pulls in the suppression room where it was simply unplayable. Note that profiling every frame has massive overhead, which is why the fps is so low even on average! Times are all ms.

Time expired: 271639.77
Frames: 6269
Frametime Avg: 43.33
Used by addons: 21662.83, Avg per frame: 3.46, Max per frame: 160.74

Addon Total Avg Max Frame
LunaUnitFrames 12098.39 1.93 100.94
AtlasLootClassic 3963.36 0.63 6.53
WeakAuras 1580.67 0.25 3.72
Details 1355.4 0.22 87.71

I omitted all the other addons that had completely irrelevant CPU usage. Disabling LUF also improves fps a lot, so I guess it's safe to say there is a problem somewhere.

Function Time used Calls
LunaUnitFrames.frameIndex.raid4.1.tags.castBar.right.UpdateTag 3500.07 2439280
LunaUnitFrames.db.callbacks.events.OnProfileCopied.KEY:table: 00000274D9888EB0.oUF.TagsWithHeal.Methods.casttime 831.45 2439280
LunaUnitFrames.frameIndex.raid4.1.tags.healthBar.center.UpdateTag 328.82 92448
LunaUnitFrames.db.callbacks.events.OnProfileCopied.KEY:table: 00000274D9888EB0.oUF.TagsWithHeal.Methods.healerhealth 245.89 102017
LunaUnitFrames.db.callbacks.events.OnProfileCopied.KEY:table: 00000274D9888EB0.oUF.Tags.Methods.curpp 135.62 31414
LunaUnitFrames.db.callbacks.events.OnProfileCopied.KEY:table: 00000274D9888EB0.oUF.Tags.Methods.curhp 129.65 119028
LunaUnitFrames.db.callbacks.events.OnProfileCopied.KEY:table: 00000274D9888EB0.oUF.Tags.Methods.maxpp 113.85 30406
LunaUnitFrames.frameIndex.mainassisttarget.1.Range.Override 62.32 52749

These are the top CPU consuming functions found when traversing the LUF object. Functions that can't be reached that way won't show up here! The function name is simply the first place a function was found, KEY: means the key of a table was a table used to go deeper.

Edit: The update function used for the castbars consumes by far the most time. First glance at the code I don't really get how it's all connected, but 2.4 million times seems a lot, that's 389 times avg per frame, or nearly 900 every 0.1 sec, which seems to be the intended interval. Don't think that's the (only) problem causing insane fps losses for me though, guess that will be harder to find :/

Still, if there aren't even castbars active it maybe shouldn't update them 9000 times per second. And whatever the UpdateTag function in that case is also costs way more CPU time than the actual casttime function used to update the tag. I'll remove all tags on all disabled bars and frames and check if that makes any difference next raid.

commented

Definitely experiencing this as well. Went from AQ40 to BWL and FPS didn't quite drop down to 1 FPS, but I was getting some serious lag. Reload as mention did fix it, but happening in combat as a tank, a reload isn't the most ideal situation to be in. I was probably also missing some ability usage on GCD as a result.

commented

Yes, casttime (which is an onUpdate) & tags with healing take their toll on performance. However that does not explain the drop to 1 fps. Luna 3 used unthrottled onUpdate on ALL tags and you can see that its far worse than Luna 4. You can test the impact by unlocking and casting. Its also more the burst of code at the start / end of a cast. So the search continues.

commented

Just updated from 3.x version and got shocked with lagging in AV 40x40 battle. Reminded me good old times with slow computer and 512 mb of RAM onboard. Well it wasn't 1 FPS but rest of bg i was healing with standart blizzard UI.

PS
also buff timers on NPC/other players disappeared

commented

I tried finding the reason for it some more, but even with just healthbars for raidframes, no tags, no squares, no feature active, it causes single digit fps in some situations and overall stuttering most of the time in a raid. Disabling raidframes but keeping the addon active results in no (obvious and unexpected) fps drops anymore.

commented

I have identified the first issue that is causing bad performance. The change to address this is here: 1c0f63f

commented

Is this still an issue in the new TBC versions? I posted earlier about experiencing the issue here myself, but I haven't been using Luna due to this happening in raid - but I see the issue is still open. Are these performance issues still being tracked down and worked on

commented

You talk about it like someone is refusing to do some mundane work. The issue here is that no one understands what part of the squares causes the lag. And yes that includes me. But you are invited to contribute any time its open source after all :P

commented

I'm just inquiring if it's an issue still - I wasn't sure if this just was forgotten to be closed or if later updates took care of it, or if the issue is still prevalent is all

commented

@boktai1000 I use tons of squares with luna and there is no issue for 5 or 10 man content. There is a super slight frame drop during 25 man content, but not nearly as bad as 40 man in vanilla. I doubt you would notice unless you are looking for it.

commented

To make this better i need more information. With my current settings (which are somewhat default i experience no issues myself.

If someone could describe the problems a bit more in detail (running the latest version) it would be of great help. Or even upload their entire config file (from the WTF folder).

Here are also some guiding questions:

Does it lag the entire interface?
Does it lag from the moment you log in?
What kind of/how many buffs/debuffs do you monitor on the raidframes?
Do you use other tags than the default ones?

commented

Does it lag the entire interface?
Yes
Does it lag from the moment you log in?
Yes, but for me at least the lags only occur when mobs die and only in a raid environment. It is REALLY noticeable on a fight like KT phase 1 where mobs are dying every second its just a constant micro stutter whenever one of the skeletons dies.
What kind of/how many buffs/debuffs do you monitor on the raidframes?
I track my class buffs on the raid frames, as well as a square that tracks aggro and another square that tracks Chains of Kel'Thuzad;Righteous Fire;Icebolt;Frost Blast;Dominate Mind;Cause Insanity with timer and texture checked.
Do you use other tags than the default ones?
The only other tags I have on my raid frames is
[nameafk][br][combatcolor][missinghp] in the center

If you can get into a naxx raid and get to the KT fight that is where you will be able to see the micro stutter lags that happen when mobs die the best.

commented

@Lipovske have you tried deleting your LunaUnitFrames.lua file to test with a "fresh" install?

commented

@chrisblossom yes only way I have completely fixed it is by going back to version 3.x.x

commented

I have a Ryzen 5 3600. I will install the latest release again for the next naxx run I do on Saturday and record KT phase 1 so you can see.

commented

I have run a full Naxx with your settings. There were no issues with performance. May i ask what kind of processor you have?

commented

I'm starting to suspect that my performance issues is caused by an interaction between luna and some other addon, or possible another addon all together. Although I failed to solve the issue in earlier attempts to disable all non-vital while raiding, I must have missed some addon because two weeks ago I had almost no performance issues using only a minimal amount of addons (including Luna!). Last raid I enabled some more addons and got the performance issue again. Will update when I figure out which addon it is and if it really has anything to do with Luna.

commented

@Lipovske there isn't much to be gained from a video. I do believe you that you are having issues. You could list me alle the addons you have active and maybe upload your Luna setttings file from the WTF folder.

commented

Addons:
AtlasLoot Classic
Aux
Bagnon
Bartender4
ClassicAuraDurations
ClassicProfessionFilter
Details
ItemRack
Leatrix Plus
Luna Unit Frames
Nova World Buffs
OmniCC
Plater
Prat 3.0
Quality of Life: Classic Heals
Quartz
Spy
WeakAuras
WIM
Tukui
DBM

I have disabled All these addons except DBM, Weakauras, and bartender4 during a raid and still had the same issues.

LunaUnitFrames WTF.zip
I use the HEALS profile.

I am currently using version 3.x and have no issues with lag except when players join a raid but that doesn't bother me at all. Any version 4.x causes lag when mobs do their death animation. It got much better with the latest update you did to try and fix performance issues but is still there.

Once DMF week is over I will try running naxx with only Luna active and see if I get the same issue.

commented

For what it is worth, I mainly experience lag using luna in raids with complex square setups. In bgs I have quite a lot in the squares section for major ccs and cds, but when I applied those to my raid frames for naxx I'd lag immensely but when i removed them not so much.

commented

When I switched from 3 to 4 for the first time, I experienced 0 lag in Naxx. One week after I started lagging again and by now it is horrible, I am playing on 15fps during big pulls. I had the same issue in bwl and aq40. It seems like performance degrades over time and the faster your guild pulls the worse it is.
Since I also play a dps class (besides a healer) I will turn off squares this week and see if it is any improvement.

commented

Since I also play a dps class (besides a healer) I will turn off squares this week and see if it is any improvement.

I am quoting my other account here. I did multiple PTR practice runs and a speedrun with big pulls just earlier, testing out different stuff with luna. Turning every all squares off made lag go away completely @BirkenBoard and @Aviana

commented

Yes i can now confirm that i had some slight lag after putting up three squares with the same buffs/debuffs that Lipovske watches during my latest naxx raid. Now that i know that it is only squares and i can reproduce the issues i can work on adressing it.

commented

Whelp, glad I could help a bit, meant to post this information months ago, but doubted myself on if it was relevant or not since my use case is far more complex than everyone else I know who uses luna.