Bug 158093 - konsole lauched with --enable-transparency is very slow to resize (5 to 10 secs) freezing the whole desktop during this time
Summary: konsole lauched with --enable-transparency is very slow to resize (5 to 10 se...
Status: RESOLVED NOT A BUG
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: unspecified
Platform: Debian testing Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-02-20 13:41 UTC by Julien Bigot
Modified: 2008-03-20 16:59 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments
.xsession-error when no effect is enabled (2.01 KB, application/x-bzip2)
2008-02-20 15:14 UTC, Julien Bigot
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Julien Bigot 2008-02-20 13:41:12 UTC
Version:            (using KDE 4.0.1)
Installed from:    Debian testing/unstable Packages
OS:                Linux

When konsole is started with the --enable-transparency switch, it takes a very long time (5 to 10 secs) to resize, while the desktop is usually quite smooth for other things (after using it for some time or perhaps after doing a specific thing, I couldn't determine the cause, it tends to be slow for everything, but that's another story !).

During the resizing time the whole desktop is unusable (not redrawing I think). I can only move the mouse.

I use kwin 4.0.1 and konsole 4.0.1 in a (mostly) 3.5.8 KDE (all are debian packages, 3.5.8 from unstable and 4.0.1 from experimental)

---

$ cat .kde4/share/config/kwinrc
[$Version]
update_info=kwin_focus2.upd:kwin_focus2,kwin_focus1.upd:kwin_focus1,kwin.upd:kde3.0r1,kwin.upd:kde3.2Xinerama,kwin3_plugin.upd:kde3.2,kwin_on_off.upd:kwin_on_off

[Compositing]
Backend=OpenGL
Enabled=true
GLDirect=false
GLMode=TFP
GLTextureFilter=1
GLVSync=false
HiddenPreviews=3
XRenderSmoothScale=false

[Desktops]
Name_1=
Name_2=
Name_3=
Name_4=
Number=4

[Desktops-screen-1]
Name_1=
Name_2=
Name_3=
Name_4=
Number=4

[Effect-MakeTransparent]
Decoration=0.75
Dialogs=0.9
MoveResize=0.75

[Effect-PresentWindows]
BorderActivate=9
BorderActivateAll=7

[Effect-ThumbnailAside]
MaxWidth=250
Opacity=60
Spacing=10

[MouseBindings]
CommandActiveTitlebar1=Raise
CommandActiveTitlebar2=Lower
CommandActiveTitlebar3=Operations menu
CommandAll1=Move
CommandAll2=Toggle raise and lower
CommandAll3=Resize
CommandAllKey=Alt
CommandAllWheel=Nothing
CommandInactiveTitlebar1=Activate and raise
CommandInactiveTitlebar2=Activate and lower
CommandInactiveTitlebar3=Operations menu
CommandTitlebarWheel=Nothing
CommandWindow1=Activate, raise and pass click
CommandWindow2=Activate and pass click
CommandWindow3=Activate and pass click

[Plugins]
kwin4_effect_blurEnabled=true
kwin4_effect_boxswitchEnabled=true
kwin4_effect_desktopgridEnabled=true
kwin4_effect_dialogparentEnabled=true
kwin4_effect_diminactiveEnabled=false
kwin4_effect_explosionEnabled=false
kwin4_effect_fadeEnabled=true
kwin4_effect_fallapartEnabled=false
kwin4_effect_invertEnabled=false
kwin4_effect_loginEnabled=false
kwin4_effect_logoutEnabled=false
kwin4_effect_lookingglassEnabled=false
kwin4_effect_magnifierEnabled=false
kwin4_effect_maketransparentEnabled=true
kwin4_effect_minimizeanimationEnabled=true
kwin4_effect_mousemarkEnabled=false
kwin4_effect_presentwindowsEnabled=true
kwin4_effect_scaleinEnabled=false
kwin4_effect_shadowEnabled=true
kwin4_effect_sharpenEnabled=false
kwin4_effect_showfpsEnabled=false
kwin4_effect_showpaintEnabled=false
kwin4_effect_taskbarthumbnailEnabled=false
kwin4_effect_thumbnailasideEnabled=false
kwin4_effect_trackmouseEnabled=false
kwin4_effect_videorecordEnabled=false
kwin4_effect_zoomEnabled=false

[PopupInfo]
ShowPopup=false

[TabBox]
TraverseAll=false

[Windows]
ActiveMouseScreen=false
AltTabStyle=KDE
AutoRaise=false
AutoRaiseInterval=750
BorderSnapZone=10
ClickRaise=true
DelayFocus=false
DelayFocusInterval=750
ElectricBorderDelay=150
ElectricBorders=0
FocusPolicy=ClickToFocus
FocusStealingPreventionLevel=1
GeometryTip=false
HideUtilityWindowsForInactive=true
MaximizeButtonLeftClickCommand=Maximize
MaximizeButtonMiddleClickCommand=Maximize (vertical only)
MaximizeButtonRightClickCommand=Maximize (horizontal only)
MoveMode=Opaque
MoveResizeMaximizedWindows=false
Placement=Smart
ResizeMode=Opaque
RollOverDesktops=true
SeparateScreenFocus=false
ShadeHover=false
ShadeHoverInterval=250
SnapOnlyWhenOverlapping=false
TitlebarDoubleClickCommand=Maximize
WindowSnapZone=10

---

$ cat /etc/X11/xorg.conf
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 1.0  (randy@juliet2)  Sat May 12 15:26:42 PDT 2007

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0" 0 0
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Extensions"
    Option      "Composite"     "Enable"
EndSection

Section "Files"
    RgbPath         "/usr/X11R6/lib/X11/rgb"
EndSection

Section "Module"
    Load           "dbe"
    Load           "extmod"
    Load           "type1"
    Load           "freetype"
    Load           "glx"
EndSection

Section "ServerFlags"
    Option         "Xinerama" "0"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
    Option         "XkbLayout" "fr"
EndSection

Section "Monitor"
    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Seiko"
    HorizSync       30.0 - 75.0
    VertRefresh     60.0
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Videocard0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Quadro NVS 135M"
    Option         "AddARGBGLXVisuals" "true"
    Option         "UseEvents" "false"
    Option         "RenderAccel" "true"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Videocard0"
    Monitor        "Monitor0"
    DefaultDepth   24
    Option         "TwinView" "1"
    Option         "metamodes" "DFP-0: nvidia-auto-select +1600+0, DFP-1: nvidia-auto-select +0+0"
    SubSection     "Display"
        Depth       24
        Modes      "1600x1200" "1280x1024" "1024x768" "800x600" "640x480"
    EndSubSection
EndSection

---

$ dpkg -l 'kde*' | grep ii
ii  kde                                  5:48                                 the K Desktop Environment official modules
ii  kde-core                             5:48                                 the K Desktop Environment core modules
ii  kde-guidance                         0.8.0-2                              collection of KDE system administration tool
ii  kde-guidance-powermanager            0.8.0-2                              HAL based power manager applet
ii  kde-i18n-fr                          4:3.5.8-1                            French (fr) internationalized (i18n) files f
ii  kde-icons-mono                       4:3.5.8-2                            a monochromatic icons theme for KDE
ii  kde-icons-oxygen                     4:4.0.1-1                            Oxygen icon theme for KDE 4
ii  kdeaccessibility                     4:3.5.8-2                            accessibility packages from the official KDE
ii  kdeaddons                            4:3.5.8-3                            add-on plugins and applets provided with KDE
ii  kdeaddons-kfile-plugins              4:3.5.8-3                            KDE file dialog plugins for text files and f
ii  kdeadmin                             4:3.5.8-2                            system administration tools from the officia
ii  kdeadmin-kfile-plugins               4:3.5.8-2                            KDE file metainfo plugins for deb and rpm fi
ii  kdeartwork                           4:3.5.8-2                            themes, styles and more from the official KD
ii  kdeartwork-emoticons                 4:3.5.8-2                            emoticon collections for KDE chat clients
ii  kdeartwork-misc                      4:3.5.8-2                            various multimedia goodies released with KDE
ii  kdeartwork-style                     4:3.5.8-2                            widget styles released with KDE
ii  kdeartwork-theme-icon                4:3.5.8-2                            icon themes released with KDE
ii  kdeartwork-theme-window              4:3.5.8-2                            window decoration themes released with KDE
ii  kdebase                              4:3.5.8.dfsg.1-7                     base components from the official KDE releas
ii  kdebase-bin                          4:3.5.8.dfsg.1-7                     core binaries for the KDE base module
ii  kdebase-data                         4:3.5.8.dfsg.1-7                     shared data files for the KDE base module
ii  kdebase-kio-plugins                  4:3.5.8.dfsg.1-7                     core I/O slaves for KDE
ii  kdebase-runtime                      4:4.0.1-1                            runtime components from the official KDE 4 r
ii  kdebase-runtime-bin-kde4             4:4.0.1-1                            core binaries for the KDE 4 base runtime mod
ii  kdebase-runtime-data                 4:4.0.1-1                            shared data files for the KDE 4 base runtime
ii  kdeedu                               4:3.5.8-1                            educational apps from the official KDE relea
ii  kdeedu-data                          4:3.5.8-1                            shared data for KDE educational applications
ii  kdeeject                             4:3.5.8.dfsg.1-7                     script used by KDE to eject removable media
ii  kdegames                             4:4.0.1-1                            games from the official KDE 4 release
ii  kdegames-card-data                   4:4.0.1-1                            card decks for KDE 4 games
ii  kdegames-mahjongg-data               4:4.0.1-1                            tilesets and backgrounds for Mahjongg games
ii  kdegraphics                          4:3.5.8-2                            graphics apps from the official KDE release
ii  kdegraphics-kfile-plugins            4:3.5.8-2+b1                         KDE metainfo plugins for graphic files
ii  kdelibs                              4:3.5.8.dfsg.1-7                     core libraries from the official KDE release
ii  kdelibs-bin                          4:4.0.1-1                            executables for all KDE 4 core applications
ii  kdelibs-data                         4:3.5.8.dfsg.1-7                     core shared data for all KDE applications
ii  kdelibs4c2a                          4:3.5.8.dfsg.1-7                     core libraries and binaries for all KDE appl
ii  kdelibs5                             4:4.0.1-1                            core libraries for all KDE 4 applications
ii  kdelibs5-data                        4:4.0.1-1                            core shared data for all KDE 4 applications
ii  kdemultimedia                        4:3.5.8-2                            multimedia apps from the official KDE releas
ii  kdemultimedia-kappfinder-data        4:3.5.8-2                            multimedia data for kappfinder
ii  kdemultimedia-kfile-plugins          4:3.5.8-2                            au/avi/m3u/mp3/ogg/wav plugins for kfile
ii  kdemultimedia-kio-plugins            4:3.5.8-2                            enables the browsing of audio CDs under Konq
ii  kdenetwork                           4:3.5.8-1                            network-related apps from the official KDE r
ii  kdenetwork-filesharing               4:3.5.8-1                            network filesharing configuration module for
ii  kdenetwork-kfile-plugins             4:3.5.8-1                            torrent metainfo plugin for KDE
ii  kdepasswd                            4:3.5.8.dfsg.1-7                     password changer for KDE
ii  kdepim                               4:3.5.8-1                            Personal Information Management apps from th
ii  kdepim-kfile-plugins                 4:3.5.8-1                            KDE File dialog plugins for palm and vcf fil
ii  kdepim-kio-plugins                   4:3.5.8-1                            KDE pim I/O Slaves
ii  kdepim-kresources                    4:3.5.8-1                            KDE pim resource plugins
ii  kdepim-wizards                       4:3.5.8-1                            KDE server configuration wizards
ii  kdepimlibs-data                      4:4.0.1-1                            core shared data for KDE PIM 4 applications
ii  kdepimlibs5                          4:4.0.1-1                            core libraries for KDE PIM 4 applications
ii  kdeprint                             4:3.5.8.dfsg.1-7                     print system for KDE
ii  kdesktop                             4:3.5.8.dfsg.1-7                     miscellaneous binaries and files for the KDE
ii  kdessh                               4:4.0.1-1                            Secure Shell utility for KDE 4
ii  kdetoys                              4:3.5.8-1                            toys from the official KDE release
ii  kdeutils                             4:4.0.1-1                            general-purpose utilities from the official
ii  kdewallpapers                        4:3.5.8-2                            wallpapers released with KDE
ii  kdewebdev                            4:3.5.8-1                            web development apps from the official KDE r

---

if more information can be useful, let me know. And thank you to the whole kde team for providing such a great desktop environment !
Comment 1 Robert Knight 2008-02-20 14:06:10 UTC
I think this might be related to known performance problems with NVidia graphics cards and compositing in KDE 4.

1.  How large is your Konsole window? (roughly, in pixels)
2.  Does disabling KWin's effects make any difference?  

I suggest keeping KWin's desktop effects enabled, but turn off all individual effects and then enable them one-by-one to find out which of them cause the most significant performance drop.  At a guess I would expect the "blur" effect might be responsible.


Comment 2 Julien Bigot 2008-02-20 15:14:01 UTC
First, some informations perhaps worth mentioning, xorg & nvidia-driver version : 

$ dpkg -l xserver-xorg nvidia-kernel-2.6.24-1-686 
ii  nvidia-kernel-2.6.24-1-686                  169.09-1+2.6.24-4 
ii  xserver-xorg                                1:7.3+10 


1. this appens whatever the konsole size is (usually resizing from ~1600x1000 -> ~1000x600, but same appens when I do ~200x200 -> ~300x300) 

2. 
 - if I fully disable desktop effects Enabled=false in the [Compositing] section, there is not more slowdown (but no more transparency too) 
 - if I disable all effects, I get a black screen on login, as reported by someone else in bug #154637 (see attached xsession-error, even if I don't think there's much interesting here, I'll also post it on #154637) 
 - if I just enable the fade effect, then the behaviour is the same as with all effects enabled.
Comment 3 Julien Bigot 2008-02-20 15:14:45 UTC
Created attachment 23635 [details]
.xsession-error when no effect is enabled
Comment 4 Julien Bigot 2008-02-20 19:02:41 UTC
last bit of information, KWIN_NVIDIA_HACK is set to 1 & exported in my ~/.profile
Comment 5 Adrian 2008-03-13 01:21:49 UTC
KWIN_NVIDIA_HACK=1 doesn't speed up konsole behaviour for me.

I use KDE-SVN (13 narch 2008), X.Org X Server 1.4.0.90 (Release Date: 5 September 2007), nvidia-drivers-169.12.
Comment 6 Lubos Lunak 2008-03-20 16:59:40 UTC
Profiling using sysprof shows that the majority of time is spent in the nvidia closed-source driver for xorg (/usr/lib/xorg/modules/drivers/nvidia_drv.so, and from the the majority is in /usr/lib/xorg/modules/libfb.so), so I'm afraid there's not much we can do for you. I suggest you report the problem to nvidia.