I am running Leap 15.1 with KDE and a AMD Radeon R7 240 video card. The Radeon driver is installed as is Mesa.
glxinfo | grep ‘version’ shows:
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
Max core profile version: 4.5
Max compat profile version: 4.5
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
OpenGL core profile version string: 4.5 (Core Profile) Mesa 18.3.2
OpenGL core profile shading language version string: 4.50
OpenGL version string: 4.5 (Compatibility Profile) Mesa 18.3.2
OpenGL shading language version string: 4.50
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 18.3.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
When I go to Display and Monitor and look at Compositor options the highest OpenGL version showing is 3.1. If I understand the glxinfo I should see something higher than that. What am I missing?
VMWare Player requires a minimum of OpenGL 3.3 to support 3D graphics in Windows 10. Everything I can see shows the hardware will support it. The question is how to configure Leap to show the option. I am missing something.
That said,
Although I’m running my VMware on a MSWin instead of Linux so can’t test your scenario directly but ran a test that suggests you should <not> try to upgrade Mesa to the latest in the X11 OBS…
Despite the OBS build having a higher version number than what is provided in the Update repo so suggests it should be a later build, I found likely the opposite… Here is the readout from the latest (current) in the OBS:X11 repo (which required pointing nuerous package conflicts to the OBS:X11 instead of some other option)
Or, is this what will work for you? (see the “Core profile” version, but in this case even the OSS Update version is better than what is in OBS). I guess main way to verify what is happening is to run some benchmarks…
# glxinfo | grep 'version'server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
Max core profile version: 3.3
Max compat profile version: 3.3
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 2.0
OpenGL core profile version string: 3.3 (Core Profile) Mesa 19.2.6
OpenGL core profile shading language version string: 3.30
OpenGL version string: 3.3 (Compatibility Profile) Mesa 19.2.6
OpenGL shading language version string: 3.30
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 19.2.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16
So, for starters, I’d suggest submitting a “feature request” to https://bugzilla.opensuse.org with a “What’s up with the X11 repo?”
I remember over the years someone(s) posting about various versions of Mesa, can’t remember if any of them built Mesa on their own, but it doesn’t look particularly difficult… If you try and run into problems, just post your issues… There are various guides to using various compilers, but I’d recommend the following which looks cleanest to me… You can browse the other options in the navigation pane in the left margin
And settled on the following two test, the first recommended by OpenGL itself and the other an ancient (2014) test that runs in a web browser that’s probably “good enough.”
I applied usual benchmarking practices I know about including running a test multiple times, “warming up” the machine being tested and the fact that today’s benchmark tests pretty much all run in virtual mode and not real mode (harkening back to 16-bit days). By running in a web browser, the second test (Wirple) is subject to even more possible factors.
In fact, I think it might even have been Wirple that I used maybe 3-4 years ago when I ran a test and posted results in the Virtualization forum, stating that I found then that A VMware Guest suffered only about 2% degradation compared to the HoSTOS. I wouldn’t expect any worse performance today, VMware has pretty good GFX performance.
And, for the same reasons as always I won’t publish any of my actual benchmark numbers because they’d be worthless to anybody else and misleading if anyone thought they’d find them useful in any way. There are too many differences between any one machine and another. If you’d like to compare your machine to all others (Tests often post aggregate results), you can try to make sense of that but I’d doubt you could.
The tests I’ve run comparing a Guest to the HostOS and possibly other Guests have some validity because we generally would like to know if there is any kind of penalty running in a Guest, no matter the cause(s).
Your statement about DirectX 10 is a restatement of my issue. Windows 10 uses DirectX 10 for 3D acceleration. VMWare requires a minimum of OpenGL 3.3 to support 3D accelleration in a Windows 10 guest. VMWare will work without acceleration but I am somewhat puzzled by my inability to fix this problem.
Mesa has supported OpenGL 3.3 since version 10. Leap 15.1 is on version 18+. I think my issues are in the configuration of OpenGL and not in the Mesa version number. I just haven’t figured out the solution.
Your original gfx output <suggests> that perhaps openGL 3D 4.5 might be installed.
The reason why I went down the path of benchmarking is that if you have DirectX 10 and graphics acceleration enabled in your HostOS, then when you run a benchmark testing 3D performance, that establishes your optimum benchmark.
It then stands to reason that if you run the same test in your Guest and achieve results somewhat close to the HostOS marks, then it’s a reasonable assumption that functionality is working in your Guest as well. But, if you see a big difference… I’ll pull a number out of thin air… of about 30% then you can reasonably assume that would indicate graphics acceleration and specifically what the benchmarking test is supposed to test is not fully working in the Guest.
The problem is the VMWare video driver won’t install without a minimum of OpenGL 3.3 in the Host if 3D acceleration is attempted. The default Microsoft Basic video driver will install and that driver is next to worthless.
I need someone to explain how to configure the system for OpenGL 3.3.
Didn’t you say you were installing on a MSWindows HostOS?
If so, you need to make sure DirectX10 is installed, not any support for OpenGL (which in the past I’ve found is fairly bad in MSWindows).
Your Linux Guest will then use OpenGL 3D for your accelerated graphics, in part because Linux doesn’t support DirectX.
As I said,
Before getting down in the technical weeds, benchmark your video performance in your Guest and HostOS, and compare your marks…
Then, I recommend…
There should be some info somewhere on how to read your glxinfo output accurately.
I’m guessing when I <think> it says that your 3D support is 4.5 which should be more than sufficient.
The next best thing but is much more unreliable is to run the official benchmark recommended by OpenGL, and then search the Internet for anyone else who might have posted results running on a machine as identical as possible to your own. As I described earlier, if you can minimize the differences between your system and another system you’re comparing to, you should see a substantial difference in marks.
I probably won’t be able to do this very soon, but I could probably run the benchmark test on my own machine and see if the produced marks are what I’d expect… Because I know my own machine fairly well, I’d be able to verify whether certain tests are likely valid or not.
This question arises because I had an old version of Windows 7 running on the computer. Microsoft is discontinuing support and an upgrade to Windows 10 sounded simple enough. Everything went OK except 3D support for the new Windows version.
what OpenGL driver and which effects are running.
Compositing Type: OpenGL
OpenGL vendor string: X.Org
OpenGL renderer string: AMD OLAND (DRM 2.50.0, 4.12.14-lp151.28.36-default, LLVM 7.0.1)
OpenGL version string: 4.5 (Compatibility Profile) Mesa 18.3.2
OpenGL platform interface: GLX
OpenGL shading language version string: 4.50
OpenGL version: 4.5
OpenGL 2 Shaders are used
I tried installing the X11-tools so I could run 3ddiag in the hope the tool might tell me something useful. X11-tools installed and YaST says 3ddiag should be part of the package but I get no response to 3ddiag at the command line. Anyone know hows this runs?
First, Malcolm is correct.
VMware Linux Guests only support openGL 3D core profile 3.3 and nothing else before or since.
That’s really specific.
And that is supported by numerous postings by many exclaiming about their discovery that their VMware Linux guests weren’t performing well.
Maybe when I did my 3D benchmark that one time, it could have been during this “sweet spot” when the right 3D core version was default.
Also, although Malcolm’s reference is very old relative to “current” VMware kb articles, nothing has really changed except to expand on the topic.
Since you’re working with disposable Guests anyway…
The following is where you can try using old packages instead of building something new.
I figure you can tinker with installing a Mesa package created long ago that was built with OpenGL 3D core profile 3.3.
According to some research, that would have been part of Mesa builds 10.0 through 10.6.
And, that’s in at least the last release of the old openSUSE 13.2 update repo. Unfortunately the LEAP 42.1 ISO jumps to Mesa 11.02. https://ftp5.gwdg.de/pub/opensuse/discontinued/update/13.2/x86_64/
Otherwise…
To build your own custom Mesa you’d have to download the source from Gitlab https://gitlab.freedesktop.org/mesa/mesa/tree/10.6
The install instructions included in the above source are pretty hard to read because they’re in HTML (unless you deploy in a webserver) but looks like it’s identical to what is posted on the mesa website… Note the extra features you can turn on if you’re running Workstation 15 https://www.mesa3d.org/vmware-guest.html
I won’t post all the VMware articles I dug up they hardly mention Linux at all but can be summarized…
Install latest/most capable video driver in your HostOS
Enable hardware acceleration in the HostOS
Configure your VMware Guest properties to enable hardware acceleration (or, actually not if you can’t support in Guest, thereby forcing to an earlier 3D core profile which can provide at least some performance)
In the Guest, OpenGL 3D core profile 3.3 must be installed, compatibility profiles not supported.
Latest VMware Tools should be installed in Guest (should be automatically installed if openSUSE)
Note that even if successful, OpenGL 3D will run in “software emulation mode” (whatever that means, perhaps suggesting won’t be as good as DirectX)
And,
One more option comes to mind,
If you have multiple graphics cards installed in your system, consider doing a GPU pass-through.
If hardware acceleration and OpenGL 3D is enabled and working on the HostOS, then hardware pass-through would bypass any virtualized device issues.
Hardware pass-through should be very easy in VMware, when you launch a VM you should see a long row of icons across the bottom right of the graphics console… click on the one for graphics and see if the pass-through option is offered.
You’re running a Win10 in the Guest?
Either I’m not reading these posts properly (possible) or all the necessary info wasn’t posted properly from the beginning…
OK,
Here are the relevant VMware documents but not that VMware does not expressly detail what one can expect running on a Linux HostOS…
Host Machine
Guest (Virtual Machine, describing only MSWindows Guests)
Bottom line and summarizing…
Install the most advanced (likely proprietary) driver for your GPU card.
Turn up the hardware acceleration all the way to max.
Configure the VM’s Guest Properties’ Display for hardware acceleration
Install the most recently available DirectX in your MSWindows Guest.
Note that the VMware docs only describe a MSWindows Guest running on a MSWindows HostOS, so it’s anyone’s guess what your results will be.
Since not documented, your scenario might need to be posted to the VMware forums.
Despite the potential of Opengl 4.5 returned by glxinfo my system is not showing Compositor choices higher than 3.1. I should be able to go to Display and Monitor and select Opengl 3.3 as Compositor and at least attempt to get 3D acceleration in VMWare working. Why won’t Leap 15.1 give me Opengl choices beyond the rather dated Opengl 3.1?