Grid

278 - frame lockups

What version of Grid are you using?
r1278 currently, but tried alot of versions

What version (and language) of WoW are you using?
3.3 en

What were you doing when the problem occured?
anything

What happened?  What did you expect to happen instead?
It was a ticket about frame locks before but was closed because you couldnt reproduce it. It happens on every group change (someone is changing zone, joining or leaving group). It's very hard to play in large groups (IoC, AV), even in 25 man raids it is annoying.

Do you have an error log of what happened?
no

Please provide any additional information below.
The reason i'm posting this ticked again is that i found something new. It happens only when i use an opengl engine (wow.exe -opengl). May be the grid is using something to update the frame which is buggy in opengl implementation. Although Grid2 is not affected, it's working smooth, but not really usable for me.

Name Description Size MD5
small_patch.zip without logic changes 9.9 KiB ca9e90f34d4e...
User When Change
Phanx Oct 13, 2010 at 12:32 UTC Changed status from Accepted to Fixed
triamazikamno Oct 13, 2010 at 11:45 UTC

Deleted attachment grid_lockups_patch_v7b.zip: obsolete

triamazikamno Sep 29, 2010 at 10:10 UTC

Deleted attachment grid_lockups_patch_v7a.zip: obsolete

triamazikamno Sep 29, 2010 at 10:09 UTC

Deleted attachment grid_lockups_patch_v7.zip: broken

triamazikamno Sep 29, 2010 at 10:09 UTC

Deleted attachment grid_lockups_patch_v6.zip: broken

triamazikamno Sep 22, 2010 at 16:22 UTC

Added attachment small_patch.zip

triamazikamno Sep 20, 2010 at 03:19 UTC

Added attachment grid_lockups_patch_v7b.zip

triamazikamno Sep 17, 2010 at 22:02 UTC

Added attachment grid_lockups_patch_v7a.zip

triamazikamno Sep 16, 2010 at 10:43 UTC

Added attachment grid_lockups_patch_v7.zip

triamazikamno Sep 11, 2010 at 08:28 UTC

Deleted attachment grid_lockups_patch_v5.zip: broken

triamazikamno Sep 11, 2010 at 08:04 UTC

Added attachment grid_lockups_patch_v6.zip

triamazikamno Sep 11, 2010 at 08:04 UTC

Deleted attachment grip_lockups_patch_v6.zip: typo

triamazikamno Sep 11, 2010 at 08:03 UTC

Added attachment grip_lockups_patch_v6.zip

triamazikamno Sep 11, 2010 at 07:54 UTC

Deleted attachment grid_lockups_patch_v4.zip: broken

triamazikamno Sep 07, 2010 at 12:52 UTC

Deleted attachment grid_lockups_patch_v3.zip: broken

triamazikamno Sep 07, 2010 at 12:39 UTC

Added attachment grid_lockups_patch_v5.zip

triamazikamno Sep 07, 2010 at 04:38 UTC Changed description:
+ plain$What version of Grid are you using?
+ r1278 currently, but tried alot of versions
+
+ What version (and language) of WoW are you using?
+ 3.3 en
+
+ What were you doing when the problem occured?
+ anything
+
+ What happened?  What did you expect to happen instead?
+ It was a ticket about frame locks before but was closed because you couldnt reproduce it. It happens on every group change (someone is changing zone, joining or leaving group). It's very hard to play in large groups (IoC, AV), even in 25 man raids it is annoying.
+
+ Do you have an error log of what happened?
+ no
+
+ Please provide any additional information below.
+ The reason i'm posting this ticked again is that i found something new. It happens only when i use an opengl engine (wow.exe -opengl). May be the grid is using something to update the frame which is buggy in opengl implementation. Although Grid2 is not affected, it's working smooth, but not really usable for me.
triamazikamno Sep 07, 2010 at 04:38 UTC

Added attachment grid_lockups_patch_v4.zip

triamazikamno Sep 07, 2010 at 04:38 UTC

Deleted attachment grid_lockups_patch_v4.zip: typo

triamazikamno Sep 07, 2010 at 04:25 UTC

Added attachment grid_lockups_patch_v4.zip

triamazikamno Sep 06, 2010 at 17:58 UTC

Added attachment grid_lockups_patch_v3.zip

triamazikamno Sep 06, 2010 at 17:58 UTC

Deleted attachment grid_lockups_patch_v2.zip: broken

triamazikamno Sep 06, 2010 at 17:57 UTC

Deleted attachment grid_lockups_patch.zip: broken

triamazikamno Sep 05, 2010 at 08:01 UTC

Added attachment grid_lockups_patch_v2.zip

triamazikamno Sep 05, 2010 at 08:01 UTC

Deleted attachment grip_lockups_patch_v2.zip: typo

triamazikamno Sep 05, 2010 at 07:59 UTC

Added attachment grip_lockups_patch_v2.zip

Phanx Sep 01, 2010 at 04:47 UTC Changed status from Replied to Accepted
triamazikamno Aug 23, 2010 at 16:17 UTC

Added attachment grid_lockups_patch.zip

FallenLegionEU Aug 09, 2010 at 18:27 UTC Changed status from Waiting to Replied
Phanx Aug 08, 2010 at 23:14 UTC Changed status from Replied to Waiting
triamazikamno Feb 06, 2010 at 00:02 UTC Changed status from Waiting to Replied
Phanx Feb 05, 2010 at 23:10 UTC Changed status from Replied to Waiting
triamazikamno Feb 05, 2010 at 00:41 UTC Changed status from Waiting to Replied
Phanx Feb 05, 2010 at 00:11 UTC Changed status from Replied to Waiting
triamazikamno Feb 03, 2010 at 07:35 UTC Changed status from Waiting to Replied
Phanx Feb 02, 2010 at 23:40 UTC Changed assigned to from Pastamancer to Phanx
Phanx Feb 02, 2010 at 23:40 UTC Changed status from New to Waiting
triamazikamno Jan 30, 2010 at 20:30 UTC Create

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of triamazikamno triamazikamno Aug 23, 2010 at 16:15 UTC - 0 likes

    Ok then, spent several hours on understanding of the code of Grid and Grid2 and found the reason on lockups. And SOLVED the problem. Attaching the patch and patched files for r1310. Try it and tell me if you got any side effects. There is the direct link if I won't handle the attach system here :)

    As i wrote earlier, it was an invocation of SecureButton_GetModifiedUnit who freezes everything. I did go deeper and downloaded FrameXML sources. Got at the point that the real reason of freezes is IsShiftKeyDown(), IsControlKeyDown() and IsAltKeyDown(). They are locking up interface for 3-4 milliseconds on my machine (i'm using 'wine' emulator to launch wow under *nix and i think it is something in it, but anyway...). It is ok if it is called a few times in a second, but... I found that Grid is calling UpdateFrameUnits for about 140 times for every change in the roster(for the group of 8 ppl. more ppl - more calls). That means 400-600 ms of interface lockup! Imagine the IoC or AV at the beginning, when there are 10+ ppl joining/leaving at the same time. So I decided to try to optimise this logic and get rid of updating all of the frames for thousands times in a second. I rewrote the OnAttributeChanged function to only update the affected unit and removed UpdateFrameUnits from OnShow event. And now it's working perfectly, I did enjoiy IoC for the first time today!

  • Avatar of triamazikamno triamazikamno Aug 23, 2010 at 08:24 UTC - 0 likes

    To Ceca: I don't use auto frame size. I did even try a clean Grid (wo/ config) without any other addon enabled. It is a 100% reproducable problem on my machine.

    I'm a programmer, but not that good in Lisp and not familiar with WoW API, but i can try to track the problem down. The only thing I want is to get some way of simulating joins/leaving/vehicle mounting/filling the group, etc. Is it possible? It is really slowing down the process if I have to: make the change, reload ui, queue for IoC/AV, wait 5-30(or even an hour) min.

  • Avatar of ceca ceca Aug 21, 2010 at 05:15 UTC - 0 likes

    i had the same problems with frameissues. (wintergrasp, isle, alterac) now i updated grid auto frame size and the fps stutter is gone.

  • Avatar of Phanx Phanx Aug 11, 2010 at 01:09 UTC - 0 likes

    Unfortunately it doesn't help much; as with the other things people have suggested for reproducing the issue, it's something that's I've done many many times in the course of normally playing the game and raiding over the last 4 years, and I've simply never experienced any kind of freeze, pause, or FPS lag spike on any machine I've used when joining a group, leaving a group, moving someone from one raid subgroup to another, having someone join a group, having someone leave a group, playing in DirectX mode (which I usually do) or in OpenGL mode (which I did for a while when my video card died and I had to fall back on my motherboard's onboard GPU), solo, in 5-man groups, in PvE raids of all sizes from 10- to 40-man, in battlegrounds of all sizes, in Wintergrasp, or in 40-man PvP city raids, with and without other addons, with and without other programs running in the background, in windowed mode, in maximized windowed mode, in fullscreen mode, or pretty much any other combination of addon settings, game settings, software configurations, and/or hardware configurations I am able to test.

    At this point, unless you have programming knowledge and can offer some educated thoughts on what specific code paths may be the cause of the problem, there's not really any use in continuing to post the same things over and over.

  • Avatar of FallenLegionEU FallenLegionEU Aug 10, 2010 at 13:05 UTC - 0 likes

    I dont seem to notice it at all with just 5 people and the fps spike seems to increase the more people in the raid (altho there is no difference between 25 and 40 people , the spike seems shorter between 10 and 25.)

    I can force it by simply moving someone from 1 group to another.

    Hope this helps.

    Last edited Aug 10, 2010 by FallenLegionEU
  • Avatar of Phanx Phanx Aug 10, 2010 at 02:08 UTC - 0 likes

    Alright, I'll have to see if I can think of anything else to try. There's not much else I can remove without breaking functionality...

  • Avatar of Notechaser Notechaser Aug 09, 2010 at 23:53 UTC - 0 likes

    Updated Grid to 1.30300.1308 then copied in the attached GridFrame.lua, no difference in response. Units appeared to be updating correctly with same freezing on join/part raid and enter/exit vehicle. Verified only one range check active (>40 yrd). Assuming that I use the DirectX engine as well based on note.

  • Avatar of FallenLegionEU FallenLegionEU Aug 09, 2010 at 18:27 UTC - 0 likes

    Edit after further testing it seems to have had no impact so far.

    Last edited Aug 09, 2010 by FallenLegionEU
  • Avatar of Phanx Phanx Aug 08, 2010 at 03:03 UTC - 0 likes

    For those of you experiencing the issue, please replace the GridFrame.lua file in your Grid folder with the one attached to this comment. Reload your UI, and tell me if you (a) experience any new problems such as units not updating correctly, or (b) still experience the freezing problem.

  • Avatar of Phanx Phanx Aug 08, 2010 at 02:32 UTC - 0 likes

    Alright, I finally have a clear stretch of time, so I'll be looking into this over the next few days.

    Just a question for those of you experiencing this issue: Do you have more than one range check enabled in the status menu? If yes, is the problem resolved if you disable all but one range check?

    Also, TomajRT - are you using the OpenGL engine, or the standard DirectX engine? (If you don't know, and you're running on Windows, then you're almost certainly using DirectX.)

Facts

Last updated
Mar 30, 2012
Reported
Jan 30, 2010
Status
Fixed - Developer made requested changes. QA should verify.
Type
Defect - A shortcoming, fault, or imperfection
Priority
Medium - Normal priority.
Votes
5

Reported by

Possible assignees