Bug 1496253 - Spice/QXL cannot support gnome3 with multi-monitors as it requires hardware acceleration
Summary: Spice/QXL cannot support gnome3 with multi-monitors as it requires hardware a...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: mesa
Version: 7.0
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: pre-dev-freeze
: ---
Assignee: Dave Airlie
QA Contact: Desktop QE
URL:
Whiteboard:
Depends On:
Blocks: 1547138 1667301 1667318
TreeView+ depends on / blocked
 
Reported: 2017-09-26 19:21 UTC by Frank DeLorey
Modified: 2020-12-14 10:15 UTC (History)
19 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1667301 1667318 (view as bug list)
Environment:
Last Closed: 2018-10-30 08:01:02 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2018:3059 0 None None None 2018-10-30 08:02:32 UTC

Description Frank DeLorey 2017-09-26 19:21:49 UTC
Description of problem:

A VM running RHEL7 must use Gnome3. Gnome3 requires hardware acceleration which is not yet supported in RHEV and SPICE.


Version-Release number of selected component (if applicable):

RHEV 4.1
RHEL 7.X
Gnome 3

How reproducible:
Very

Steps to Reproduce:
1.Create a RHEL7 VM using Gnome as the desktop
2.Have the VM use multiple monitors
3.Open the consoles.

Actual results:

CPU goes to 100% and everything will crawl


Expected results:

VM should run normally without heavy CPU usage and very slow responses.

Additional info:

This came to light as a customer was running RHEL6 with gnome2 and everything worked as expected. They upgraded their VMs to RHEl7 which requires gnome3 and the problem is having a sever impact on them.According to the Desktop SBR there is no backing out of gnome3 and falling back to gnome2. Gnome3 requires hardware acceleration which is not yet fully developed or support on RHEV or Spice/QXL.

Comment 3 Frank DeLorey 2017-09-27 10:57:18 UTC
Customer is using 3 monitors resolutions of 2560x1440, 1440x2560 and 1440x2560.

Gnome shell is consuming high CPU in the VMs in RHEV. They are unable to use their VMs in VDI effectively due to Gnome taking resources which should be available to other applications. Additionally they are unable to use 3 monitors effectively in a triple head display (xinerama, not mirrored) with resolutions of 2560x1440, 1440x2560 and 1440x2560.

Comment 4 Frank DeLorey 2017-09-27 13:22:24 UTC
Update from the customer:

Most recent comment: On 2017-09-27 08:48:52, Thomas, Greg commented:
"This issue is very easy to reproduce. Install RHEL 7.4 Workstation on a new VM hosted by RHEV 3.6.
Login using Gnome, the default.
Set the display properties to use 2 or more monitors running at least 1920x1080 (and for an additional test, 2560x1440)
Open windows to browse the file system.
Open a terminal window.
Watch top to see gnome-shell CPU running at 100%
No special programs needed. No 3D apps. We merely want to move standard OS windows around the desktop.

All our VMs are set to Single PCI, either 2 or 4 monitors (note our biggest demands are 3 monitors, not 4). We only changed the Single PCI setting when prompted by support earlier in the ticket.

We run all the above resolutions under RHEL6 and Gnome2 without issue. When moving to RHEL7 the issues were immediately apparent.

MATE works for 2 monitors, not 3. Besides not being a supported desktop manager, since it doesn't work for 3 monitors, we can't use it for all users.

KDE works for the moment but hardware acceleration requirements are in the pipeline and isn't a long term solution since we are a yum update away from breaking the setup.

Greg

Comment 5 Frank DeLorey 2017-09-27 14:46:19 UTC
top - 08:31:09 up 1 day, 22:04, 13 users,  load average: 2.83, 1.84, 0.96
Tasks: 245 total,   4 running, 241 sleeping,   0 stopped,   0 zombie
%Cpu(s): 43.3 us,  4.9 sy,  0.2 ni, 51.0 id,  0.5 wa,  0.0 hi,  0.2 si,  0.0 st
KiB Mem : 10070864 total,   687756 free,  4534780 used,  4848328 buff/cache
KiB Swap:  3145724 total,  3145676 free,       48 used.  4827820 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
14939 jeff      20   0 3745828 1.473g  50652 S 119.6 15.3 190:08.99 gnome-shell 
14856 jeff      20   0 1945740 562028  97712 S  21.6  5.6  18:53.47 chrome      
14376 root      20   0  659028 295216  15376 R  16.9  2.9  41:54.21 X           
 1616 jeff      20   0 1396464 438284  36284 R  13.3  4.4   0:13.49 chrome      
14050 jeff      20   0 1089820 142148  37344 S   5.3  1.4  24:47.73 chrome      
10538 jeff      20   0 1200108 244844  45412 S   2.3  2.4   4:07.56 chrome      
 4578 jeff      20   0 1145008 174276  47712 S   1.7  1.7   2:38.94 chrome      
15217 jeff      20   0 1154596 174960  23048 S   1.7  1.7   2:37.11 chrome

Comment 10 Martin Tessun 2017-10-11 11:50:13 UTC
Hi Frank,

(In reply to Frank DeLorey from comment #5)
> top - 08:31:09 up 1 day, 22:04, 13 users,  load average: 2.83, 1.84, 0.96
> Tasks: 245 total,   4 running, 241 sleeping,   0 stopped,   0 zombie
> %Cpu(s): 43.3 us,  4.9 sy,  0.2 ni, 51.0 id,  0.5 wa,  0.0 hi,  0.2 si,  0.0
> st
> KiB Mem : 10070864 total,   687756 free,  4534780 used,  4848328 buff/cache
> KiB Swap:  3145724 total,  3145676 free,       48 used.  4827820 avail Mem 
> 
>   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND 
> 
> 14939 jeff      20   0 3745828 1.473g  50652 S 119.6 15.3 190:08.99
> gnome-shell 
> 14856 jeff      20   0 1945740 562028  97712 S  21.6  5.6  18:53.47 chrome  
> 
> 14376 root      20   0  659028 295216  15376 R  16.9  2.9  41:54.21 X       
> 
>  1616 jeff      20   0 1396464 438284  36284 R  13.3  4.4   0:13.49 chrome  
> 
> 14050 jeff      20   0 1089820 142148  37344 S   5.3  1.4  24:47.73 chrome  
> 
> 10538 jeff      20   0 1200108 244844  45412 S   2.3  2.4   4:07.56 chrome  
> 
>  4578 jeff      20   0 1145008 174276  47712 S   1.7  1.7   2:38.94 chrome  
> 
> 15217 jeff      20   0 1154596 174960  23048 S   1.7  1.7   2:37.11 chrome

the CPU usage of gnome-shell looks wrong to me, as already discussed in some mail threads. Did you already open a BZ for gnome-shell to investigate this, as I am not able to reproduce this in my virtual environments with multimonitor setups. Not even with a slow remote connection.

In addition you can disable most 3D effects in gnome shell via the Tweak Tool. Still all the rendering is done with opengl, so 3D software rendering is still in the game.

Please link the two BZs together if you opened the gnome-shell one.

Thanks!
Martin

Comment 11 David Blechter 2017-10-11 11:55:00 UTC
(In reply to Martin Tessun from comment #10)
> Hi Frank,
> 
> (In reply to Frank DeLorey from comment #5)
> > top - 08:31:09 up 1 day, 22:04, 13 users,  load average: 2.83, 1.84, 0.96
> > Tasks: 245 total,   4 running, 241 sleeping,   0 stopped,   0 zombie
> > %Cpu(s): 43.3 us,  4.9 sy,  0.2 ni, 51.0 id,  0.5 wa,  0.0 hi,  0.2 si,  0.0
> > st
> > KiB Mem : 10070864 total,   687756 free,  4534780 used,  4848328 buff/cache
> > KiB Swap:  3145724 total,  3145676 free,       48 used.  4827820 avail Mem 
> > 
> >   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND 
> > 
> > 14939 jeff      20   0 3745828 1.473g  50652 S 119.6 15.3 190:08.99
> > gnome-shell 
> > 14856 jeff      20   0 1945740 562028  97712 S  21.6  5.6  18:53.47 chrome  
> > 
> > 14376 root      20   0  659028 295216  15376 R  16.9  2.9  41:54.21 X       
> > 
> >  1616 jeff      20   0 1396464 438284  36284 R  13.3  4.4   0:13.49 chrome  
> > 
> > 14050 jeff      20   0 1089820 142148  37344 S   5.3  1.4  24:47.73 chrome  
> > 
> > 10538 jeff      20   0 1200108 244844  45412 S   2.3  2.4   4:07.56 chrome  
> > 
> >  4578 jeff      20   0 1145008 174276  47712 S   1.7  1.7   2:38.94 chrome  
> > 
> > 15217 jeff      20   0 1154596 174960  23048 S   1.7  1.7   2:37.11 chrome
> 
> the CPU usage of gnome-shell looks wrong to me, as already discussed in some
> mail threads. Did you already open a BZ for gnome-shell to investigate this,
> as I am not able to reproduce this in my virtual environments with
> multimonitor setups. Not even with a slow remote connection.
> 
> In addition you can disable most 3D effects in gnome shell via the Tweak
> Tool. Still all the rendering is done with opengl, so 3D software rendering
> is still in the game.
> 
> Please link the two BZs together if you opened the gnome-shell one.
> 
> Thanks!
> Martin

The spice-server is the wrong place for this BZ in any case. Let' close it and find the reproducer first based on comment #6

Comment 12 Martin Tessun 2017-10-11 12:44:24 UTC
Just for clarification of my tests (I am writing this update from  a RHEL 7.4 VM having 3 displays 1920x1080 (don't have larger monitors) with a  slow remote connection (VPN).

Still I don't see any exhaustive gnome-shell CPU usage in top:

top - 14:38:28 up 40 min,  2 users,  load average: 0.41, 0.45, 0.28
Tasks: 185 total,   1 running, 184 sleeping,   0 stopped,   0 zombie
%Cpu(s):  2.6 us,  0.4 sy,  0.0 ni, 97.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  3873476 total,  1432696 free,  1395376 used,  1045404 buff/cache
KiB Swap:  4063228 total,  4063228 free,        0 used.  2118860 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                                                                                        
 2533 mtessun   20   0 2639056 490908  48028 S   7.0 12.7   2:03.25 gnome-shell                                                                                                                                    
 1273 root      20   0  496808 146620  32200 S   3.0  3.8   0:40.55 X                                                                                                                                              
 3549 mtessun   20   0 2210608 280624 117612 S   0.7  7.2   0:37.30 firefox                                                                                                                                        
  107 root      20   0       0      0      0 S   0.3  0.0   0:00.73 kworker/2:1                                                                                                                                    
  751 root      20   0   50104   1208    848 S   0.3  0.0   0:00.20 spice-vdagentd                                                                                                                                 
 1104 root      20   0 1564404  34368  10148 S   0.3  0.9   0:06.23 python                                                                                                                                         
 3186 mtessun   20   0  707228  23172  13964 S   0.3  0.6   0:01.13 gnome-terminal-                                                                                                                                
 3289 mtessun   20   0  157876   2352   1564 R   0.3  0.1   0:01.53 top                                                                                                                                            
 3632 mtessun   20   0 1966368 166824  93356 S   0.3  4.3   0:30.43 Web Content                                                                                                                                    
    1 root      20   0  193704   6832   4056 S   0.0  0.2   0:02.59 systemd                                                                                                                                        
    2 root      20   0       0      0      0 S   0.0  0.0   0:00.01 kthreadd                                                                                                                                       
    3 root      20   0       0      0      0 S   0.0  0.0   0:00.00 ksoftirqd/0                                                                                                                                    
    5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H                                                                                                                                   
    6 root      20   0       0      0      0 S   0.0  0.0   0:00.09 kworker/u128:0                                                                                                                                 
    7 root      rt   0       0      0      0 S   0.0  0.0   0:00.03 migration/0                                


$ xrandr --listmonitors
Monitors: 3
 0: +*Virtual-0 1920/508x988/261+0+0  Virtual-0
 1: +Virtual-1 1920/508x988/261+1920+0  Virtual-1
 2: +Virtual-2 1920/508x1015/269+3840+0  Virtual-2
$

Comment 13 Frank DeLorey 2017-10-11 12:54:19 UTC
Joe Wright from the Desktop SBR has been working this. I am not sure if he has opened a BZ for this yet. I know he was waiting for some data from the customer.

Regards,

Frank

Comment 36 Frediano Ziglio 2018-05-03 07:59:18 UTC
This bug is getting pretty long and confusing.

The title says that 3D hardware acceleration is needed. If is needed QXL is designed for 2D and won't never support 3D as would conflicting with Virgl project leading to duplicate effort (for instance having double drivers).

If the problem, on the other hand, is something specific to QXL that makes the solution bad this is different. Just to remove QXL from the picture, how are the performance using VGA? If they are more or less the same the issue is software rendering in Mesa and we need a 3D card. If with VGA they are much better than there's something QXL specific and we can work on it.

Comment 38 Dave Airlie 2018-05-30 22:12:58 UTC
I've put the shm patches into the mesa 7.6 packages, hopefully solving this, however if there are still issues once 7.6 releases please open a new bug and reference this one.

Comment 45 errata-xmlrpc 2018-10-30 08:01:02 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2018:3059

Comment 46 Dave Airlie 2019-01-18 05:25:51 UTC
This bug was backed out in 7.6.z, not sure if I should reopen or clone


Note You need to log in before you can comment on or make changes to this bug.