Screen Painting Issue

Strange screen painting behavior just started last week after months of use. See the attachment. Unfortunately making the app unusable. This occurs in both the VASL module and the Paths To Glory module.

Thanks for any help!

-Larry

Model: Alienware
OS: Windows 10 Home v1909
CPU: Intel Core i7-8750H CPU @ 2.20 GHz
Memory: 32 GB
Video: NVIDIA GeForce GTX 1060
VASSAL: 3.2.17
Java: 1.8.0_251
Module: VASL 6.5.0; Paths to Glory 9.6

First 10 from the log:
2020-06-19 12:58:41,979 [0-main] INFO VASSAL.launch.StartUp - Starting
2020-06-19 12:58:41,981 [0-main] INFO VASSAL.launch.StartUp - OS Windows 10 10.0
2020-06-19 12:58:41,981 [0-main] INFO VASSAL.launch.StartUp - Java version 1.8.0_251
2020-06-19 12:58:41,981 [0-main] INFO VASSAL.launch.StartUp - VASSAL version 3.2.17
2020-06-19 12:58:42,250 [0-AWT-EventQueue-0] INFO VASSAL.launch.ModuleManager - Manager
2020-06-19 12:59:23,516 [0-SwingWorker-pool-30543430-thread-2] INFO VASSAL.launch.AbstractLaunchAction - Loading module file D:\VASSAL\VASL\vasl-6.5.0.vmod
2020-06-19 12:59:24,706 [0-SwingWorker-pool-30543430-thread-2] INFO VASSAL.launch.TilingHandler - No images to tile.
2020-06-19 12:59:24,708 [0-SwingWorker-pool-30543430-thread-2] INFO VASSAL.launch.AbstractLaunchAction - Loading module VASL
2020-06-19 12:59:24,813 [0-SwingWorker-pool-30543430-thread-2] INFO VASSAL.tools.io.ProcessLauncher - launching C:\Program Files (x86)\Java\jre1.8.0_251\bin\java -Xms256M -Xmx512M -DVASSAL.id=1 -DVASSAL.port=55946 -Duser.home=C:\Users\larry -Duser.dir=C:\Program Files\VASSAL-3.2.17 -cp lib\Vengine.jar VASSAL.launch.Player --load – D:\VASSAL\VASL\vasl-6.5.0.vmod
2020-06-19 12:59:25,359 [1-main] INFO VASSAL.launch.StartUp - Starting

Thus spake larryisensee:

Strange screen painting behavior just started last week after months of
use. See the attachment. Unfortunately making the app unusable. This
occurs in both the VASL module and the Paths To Glory module.

Thanks for any help!

-Larry

Model: Alienware
OS: Windows 10 Home v1909
CPU: Intel Core i7-8750H CPU @ 2.20 GHz
Memory: 32 GB
Video: NVIDIA GeForce GTX 1060
VASSAL: 3.2.17
Java: 1.8.0_251
Module: VASL 6.5.0; Paths to Glory 9.6

Did something change on your system last week? (E.g., did you upgrade
Java? Did you upgrade drivers? Some other wupdate to Windows?)

The painting bug you’re experiencing crosses over component boundaries.
We don’t control painting ourselves at that level. What you’re seeing
is something going wrong outside of VASSAL.

I’d suggest you try VASSAL 3.3.0, which is bundled with a much newer
version of Java than the one you’re using, but there hasn’t been a
VASL release compatible with 3.3.0 yet. (The VASL devs are working
on that presently.)


J.

@uckelman – no system updates that I’m aware of.

If it helps at all, the problem only manifests when connected with another person on the server. Offline use has no problem.

Also, I uninstalled Java and VASSAL, and reinstalled both as well as downloaded a fresh copy of the module. However, after reinstalling VASSAL it remembered my login and preferences from my previous install. Seems that the uninstall isn’t performing a “deep” uninstall. Is there a way to do this?

Larry

I am seeing this as well on a 2019 MacBook Pro 16. System Diagnostics shows VASSAL is running on only the iGPU even though the laptop has a powerful dGPU. Only VASSAL seems to be doing this - other tools hand off to the dGPU correctly.

Thus spake Joelist via messages:

I am seeing this as well on a 2019 MacBook Pro 16. System Diagnostics
shows VASSAL is running on only the iGPU even though the laptop has a
powerful dGPU. Only VASSAL seems to be doing this - other tools hand off
to the dGPU correctly.

Are other Java programs using the dGPU, or not?


J.

I tested with a couple of other Java applications and so far it is just VASSAL.

Who decides which GPU is used for an application? And can a user override this decision and force a given app to run on a certain GPU?

Is that an option of the Mac installer in Info.plist?

Here are some Activity Monitor shots to help shed light on what is going on.

Note in the VASSAL running the mod one the CPU is redlining but the GPU is totally unused by the mod.

Any updates on this. Here is the Activity Monitor image I hope:

Thus spake Joelist via messages:

Any updates on this. Here is the Activity Monitor image I hope:

Do you have any suggestions regarding what the cause might be or what
we should do about it?


J.

I am not sure what the cause is. I am seeing it on multiple VASSAL mods though. If for some reason there is a coding situation in VASSAL which is forcing everything to CPU it could cause this.

Have you tried forcing Java to run on the dedicated GPU (I have no idea how to do that; perhaps another Mac user can help)?

Do you have a discrete graphics card installed as well as the integrated on-board graphics?

Could you follow the instructions here:

techjunkie.com/view-gpu-usage-mac/

To get a better picture of what is happening?

Could you also show what you see on the ‘Energy’ tab of the Activity monitor.
Thanks.

[attachment=0]Screen Shot 2020-06-30 at 12.43.52 PM.jpg[/attachment]Hi!

I got to a better place by doing the following:

a) Removed VASSAL 3.3.1

b) Used CMD tools to completely rip all Java out of the system

c) Installed latest JRE

d) Reverted to VASSAL 3.2.17

It is still slightly choppy for the scrolling but better behaved.

Screenshot of monitors below

So that shows that you have 2 GPU’s installed. An ‘Integrated’ Intel GPU that is part of the motherboard chipset, which appears quiet, and a separate ‘Discrete’ high performance Radeon GPU which is running. I’d say the 0% GPU figure was showing the Integrated CPU usage.

By default, any Java programs will try and use the high-performance discrete card, even if the low-lower integrated graphics chip is perfectly able to handle it.

Googling ‘mac Java integrated discrete graphics’ reveals a big can of worms in this area. It is not easy for a Java program to force itself to use the integrated graphics chip.

Apparently it is not uncommon for the discrete graphics card to die. There is a program here gfx.io/ that allows you to manually force programs to use one or the other, as well as give you more info on GPU usage. Can you try it and see if you can get Vassal to run on the integrated graphics chip and see if this solves the problem?

(BTW if you do a “custom install” you should be able to have both Vassal 3.2.17 and Vassal 3.3.1 installed at once.)

I’ll try posting this again. When I rolled back to 3.2.17 and did my own Java setup things improved. Also, I checked the Preferences on the VMODs worst affected and set the JVM heap sizes up a lot, which also helped.

If you’re still having a problem with painting glitches:

  • Try disabling Direct3D if you’re using Windows. There’s a preference for it in VASSAL.

  • Try a 3.3.4 test build (anything from today or later)

    vassalengine.org/~uckelman/tmp/

with some of the JVM options listed here:

docs.oracle.com/javase/10/troub … m#JSTGD436

After the first time you run one of these builds, there will be a file called vassal.vmoptions in VASSAL’s config directory (~/.VASSAL on Linux, ~/Library/Application Support/VASSAL on Mac OS X, C:\Users<username>\AppData\Roaming\VASSAL on Windows) where you can add VM flags for the Player, one per line.

If you find a constellation of options which solves the problem, PLEASE let us know, as we have no way of troubleshooting this ourselves.