docker-mtgo icon indicating copy to clipboard operation
docker-mtgo copied to clipboard

Game Hangs for a few seconds most actions

Open JeffHoogland opened this issue 5 years ago • 30 comments

Since the MTGO update last week on almost every game action the whole client locks up for a few moments.

Anyone else seeing this or just on my end?

JeffHoogland avatar Oct 10 '19 20:10 JeffHoogland

I just played a game and I didn't experienced any lag...

pauleve avatar Oct 13 '19 21:10 pauleve

Anything I can do to help debug? It is so bad on my system that I've gone back to using a VM for the time being.

JeffHoogland avatar Oct 13 '19 21:10 JeffHoogland

Have you updated the docker image recently? ./run-mtgo --update If yes, you can try with an older image, e.g., ./run-mtgo panard/mtgo:2019-08-18

pauleve avatar Oct 13 '19 21:10 pauleve

Any improvement with latest image? Have you changed anything regarding your docker setup? (check the Storage driver with docker info)

pauleve avatar Dec 10 '19 15:12 pauleve

Ended up going back to a VM :(

On Tue, Dec 10, 2019 at 9:54 AM Loïc Paulevé [email protected] wrote:

Any improvement with latest image? Have you changed anything regarding your docker setup? (check the Storage driver with docker info)

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/pauleve/docker-mtgo/issues/68?email_source=notifications&email_token=AAXTG4BGIHZ6LOZNELT3QEDQX63SPA5CNFSM4I7R4VP2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEGPXOWY#issuecomment-564098907, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAXTG4DU24JWYPB6YNRLJZDQX63SPANCNFSM4I7R4VPQ .

-- ~Jeff Hoogland http://jeffhoogland.com/ Twitch https://www.twitch.tv/jeffhoogland - Twitter https://twitter.com/jeffhoogland - GitHub https://github.com/jeffhoogland - YouTube https://www.youtube.com/jeffhoogland

JeffHoogland avatar Dec 10 '19 16:12 JeffHoogland

Experiencing the same issue with the latest image on Ubuntu 18.04. At least 5 seconds of lag on every action, making it almost impossible to win matches that go to game 3.

iwilliams avatar Dec 27 '19 04:12 iwilliams

Interesting... Can you paste the output of docker info?

pauleve avatar Dec 27 '19 13:12 pauleve

Client:
 Debug Mode: false

Server:
 Containers: 1
  Running: 0
  Paused: 0
  Stopped: 1
 Images: 4
 Server Version: 19.03.5
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: b34a5c8af56e510852c35414db4c1f4fa6172339
 runc version: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
 init version: fec3683
 Security Options:
  apparmor
  seccomp
   Profile: default
 Kernel Version: 4.15.0-72-generic
 Operating System: Ubuntu 18.04.3 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 15.56GiB
 Name: pillar-of-autumn
 ID: HE4E:VMEX:EVQC:LHAD:JLL2:6OST:PCFQ:AHMW:642M:4CUG:S7P6:YG52
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

WARNING: No swap limit support

iwilliams avatar Dec 27 '19 14:12 iwilliams

Thanks. Two directions :

  • try with an older docker image: ./run-mtgo panard/mtgo:2019-07-09
  • paste the output of ./run-mtgo --debug after some lagging actions

pauleve avatar Dec 27 '19 15:12 pauleve

./run-mtgo --debug output from one match on the latest image:

006a:fixme:wmp:WMPNetwork_get_downloadProgress stub: Returning download progress 100
006a:fixme:wmp:WMPNetwork_get_bufferingProgress stub: Returning buffering progress 100
006a:fixme:wmp:WMPNetwork_get_downloadProgress stub: Returning download progress 100
006a:fixme:wmp:WMPNetwork_get_bufferingProgress stub: Returning buffering progress 100
006a:fixme:wmp:WMPNetwork_get_downloadProgress stub: Returning download progress 100
006a:fixme:wmp:WMPNetwork_get_bufferingProgress stub: Returning buffering progress 100
006a:fixme:wmp:WMPNetwork_get_downloadProgress stub: Returning download progress 100
006a:fixme:wmp:WMPNetwork_get_bufferingProgress stub: Returning buffering progress 100
0051:fixme:wincodecs:FlipRotator_CopyPixels flipping x and rotating are not implemented
0051:fixme:wincodecs:FlipRotator_CopyPixels flipping x and rotating are not implemented
0051:fixme:wincodecs:FlipRotator_CopyPixels flipping x and rotating are not implemented
0051:fixme:wincodecs:FlipRotator_CopyPixels flipping x and rotating are not implemented
0051:fixme:wincodecs:FlipRotator_CopyPixels flipping x and rotating are not implemented
0051:fixme:wincodecs:FlipRotator_CopyPixels flipping x and rotating are not implemented
006a:fixme:wmp:WMPNetwork_get_downloadProgress stub: Returning download progress 100
006a:fixme:wmp:WMPNetwork_get_bufferingProgress stub: Returning buffering progress 100
01f6:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
01f6:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
01f6:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
01f6:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
01f6:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
01f6:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
01f6:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
00ea:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
00ea:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
00ea:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
00ea:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
00ea:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
00ea:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
00ea:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.
0051:fixme:ole:IiFTMUnknown_fnQueryInterface No interface for {00000144-0000-0000-c000-000000000046}.

I also played a match with the older image, on average lag was decreased from around 5 seconds to around 2.

iwilliams avatar Dec 27 '19 17:12 iwilliams

Do you have a multimonitor setup? If so, try with only one screen setup.. or with an even older image panard/mtgo:2019-06-06. In the worst case, you may try using wine directly, e.g.following https://it.toolbox.com/blogs/jeffhoogland/howto-install-mtgo-on-ubuntu-linux-010718 https://appdb.winehq.org/objectManager.php?sClass=version&iId=32007 or the instructions in the Dockerfile of this repository..

pauleve avatar Dec 27 '19 20:12 pauleve

Thanks for the suggestions and help. The older image seems to be working well enough for now... Not currently using an external display. Just thought I would report that the issue has been pretty bad for me as well.

Edit: Tried panard/mtgo:2019-06-06 and there's no lag at all!

iwilliams avatar Dec 27 '19 20:12 iwilliams

@JeffHoogland can you try ./run-mtgo panard/mtgo:2019-06-06 as well? If it works, I will probably revert the default image to it. Have you tried with wine directly? It could be a regression with the latest wine versions.

pauleve avatar Dec 28 '19 09:12 pauleve

Had the same issue. It seems like panard/mtgo:2019-06-06 works better for me too.

aastrand avatar Jan 04 '20 22:01 aastrand

Thanks for the feedback. I've reverted wine to 4.9 accordingly; doing ./run-mtgo --update should fetch a working image (and then you can simply call ./run-mtgo). Please let me know if it is not the case..

pauleve avatar Jan 04 '20 23:01 pauleve

I was running and having problems with:

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
panard/mtgo         latest              0acb272bb1db        6 days ago          1.32GB

Which is the same as current latest.

Just re-verified, 0acb272bb1db causes lag for me. Though I wouldn't say it's "mot actions" for me.

I re-ran 2019-06-06 now to re-verify and experienced lag, so maybe this is just intermittent and related to something else? A change in MTGO? Not a lot of samples to go off.

Sample log here: https://pastebin.com/JBSuTTzt

aastrand avatar Jan 05 '20 13:01 aastrand

@iwilliams can you try with ./run-mtgo --update as well?

The upcoming wine 5.0 includes many fixes, it could be another try as well if you still experiment lags:

./run-mtgo --update panard/mtgo:pr73

Finally, maybe some cleanup might help (docker system prune, and the --reset option to ./run-mtgo)... I'm not experiencing this bug, so its quite annoying..

pauleve avatar Jan 07 '20 22:01 pauleve

Ran both docker system prune and with the --reset option:

$ ./run-mtgo --reset
WARNING: You are about to delete /home/anders/.local/share/mtgo and wipe docker volume mtgo-data-anders
Press Enter to continue, CTRL+C to abort

removed '/home/anders/.local/share/mtgo/Xauthority'
removed directory '/home/anders/.local/share/mtgo'
docker volume rm mtgo-data-anders
mtgo-data-anders
docker volume create mtgo-data-anders
mtgo-data-anders
docker run --rm -v mtgo-data-anders:/home/wine/.wine/host panard/mtgo:latest true
docker run --privileged --rm -e DISPLAY -v mtgo-data-anders:/home/wine/.wine/host/ -v mtgo-data-anders:/home/wine/.wine/drive_c/users/ -v /tmp/.X11-unix:/tmp/.X11-unix:rw -v /home/anders/.local/share/mtgo/Xauthority:/home/wine/.Xauthority:ro --net=host --ipc=host -e TZ=/usr/share/zoneinfo/Europe/Stockholm --name mtgo_running panard/mtgo:latest mtgo

Can confirm that I still experienced lag with the above. (Note to others, --reset will unsurprisingly reset your settings)

aastrand avatar Jan 08 '20 12:01 aastrand

@pauleve Sorry, haven't had a chance to test yet, been busy after coming back from holiday. Will try to test soon.

iwilliams avatar Jan 09 '20 19:01 iwilliams

@pauleve I ran through a league after a ./run-mtgo --update and didn't have any problems.

iwilliams avatar Jan 14 '20 00:01 iwilliams

Thanks! If you have time to try with ./run-mtgo --update panard/mtgo:pr73 at some point, I would be interested in your feedback as well to check if the upcoming stable version of wine still shows the issue..

pauleve avatar Jan 14 '20 14:01 pauleve

panard/mtgo:pr73 still shows the issue for me .

aastrand avatar Jan 14 '20 17:01 aastrand

I switch the default image to wine 5.5 (./run-mtgo --update). If you still experiment a significant difference in performance, you can use

./run-mtgo panard/mtgo:2020-03-30

Let me know if it is still the case with the default image, and whenever the lag occurs during matches. From my experience, there are some lags at the start of MTGO, but then it gets quite smooth.

pauleve avatar Mar 31 '20 18:03 pauleve

Hi @pauleve I just want to hit you up and let you know I'm experienced intermittent, but consistent, lag with the current default image. Especially when drafting. I've done 4 cube drafts yesterday, each one had sections of time when the game hung for a significant amount of time, between 30 seconds to 3 minutes. There are a couple of moments when there's a killer exception, and the container crashes instantly.

I will try a few rounds with your suggestions here, to use a different image, and see if I experience similar issues.

Let me know if there is anything about my system, or debugging I can help with.

Cheers

kylesnowschwartz avatar Apr 10 '20 22:04 kylesnowschwartz

In case of exception, the debug trace can be useful. You can also append &>output.log to the command line to save the output to a file.

pauleve avatar Apr 11 '20 06:04 pauleve

At the moment I don't have much useful info for debugging, other than to chime in and add that I'm on an Arch Linux host, I am experiencing this lag/lock up intermittently as well (just ran the ./run-mtgo --update recently).

ahungry avatar Apr 30 '20 18:04 ahungry

Hmm, this is a problem in a VM as well - I think the client is downloading images as I try to play or something...

ahungry avatar May 01 '20 03:05 ahungry

For what it's worth, using ./run-mtgo panard/mtgo:2020-03-30 has greatly improved my lag (macOS 10.13.6). I do agree with ahungry: the only time I do notice substantial lag is when my opponent plays a card I haven't seen before, which doesn't have art and will lock the client up for 15-30 seconds.

aliaras avatar Aug 09 '20 11:08 aliaras

Do you have an nvidia graphics card? If so, #132 may be worth a try:

  1. install nvidia-container-toolkit, aka nvidia-docker2
    • on ubuntu follow step 3 of https://medium.com/@linhlinhle997/how-to-install-docker-and-nvidia-docker-2-0-on-ubuntu-18-04-da3eac6ec494;
    • for Arch, follow https://wiki.archlinux.org/title/Docker#Run_GPU_accelerated_Docker_containers_with_NVIDIA_GPUs;
    • other distributions are mentioned at https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/install-guide.htmlp
  2. update the run-mtgo script
wget -O run-mtgo https://raw.githubusercontent.com/pauleve/docker-mtgo/master/run-mtgo
chmod +x run-mtgo
  1. use ./run-mtgo -- --gpus all panard/mtgo

Let me know if helps or not...

pauleve avatar Oct 12 '21 21:10 pauleve

I do not, I have Intel onboard graphics (Macbook Air). Thanks though!

aliaras avatar Oct 12 '21 21:10 aliaras