https://bugs.kde.org/show_bug.cgi?id=509123
--- Comment #5 from Harald Sitter <[email protected]> --- Created attachment 185048 --> https://bugs.kde.org/attachment.cgi?id=185048&action=edit memory allocations Ha! I managed to somewhat reproduce this and I am reasonably certain it's some problem with the driver. What appears to happen is that after a while (unclear what triggers it) the GPU memory starts filling up (you can observe this using nvtop). After exactly 10 minutes uptime the driver then allocates a bunch of system memory. It will continue to do so exactly 5 minutes after the last allocation. This appears to happen as a result of QWaylandGLContext::swapBuffers but I am rather thinking it's simply the trigger for whatever happens internally in the driver source. I am going to attach a heaptrack graph of the memory consumption. We can very clearly see the consumption spikes every 5 minutes. <unresolved function> in libnvidia-eglcore.so.580.82.09 <unresolved function> in libnvidia-eglcore.so.580.82.09 <unresolved function> in libEGL_nvidia.so.0 <unresolved function> in libEGL_nvidia.so.0 <unresolved function> in libEGL_nvidia.so.0 <unresolved function> in libEGL_nvidia.so.0 wlEglSwapBuffersWithDamageHook in libnvidia-egl-wayland.so.1 <unresolved function> in libEGL_nvidia.so.0 <unresolved function> in libEGL_nvidia.so.0 QtWaylandClient::QWaylandGLContext::swapBuffers(QPlatformSurface*) in libQt6WaylandEglClientHwIntegration.so.6 QRhiGles2::endFrame(QRhiSwapChain*, QFlags<QRhi::EndFrameFlag>) in libQt6Gui.so.6 QRhi::endFrame(QRhiSwapChain*, QFlags<QRhi::EndFrameFlag>) in libQt6Gui.so.6 QSGGuiThreadRenderLoop::renderWindow(QQuickWindow*) in libQt6Quick.so.6 QWindow::event(QEvent*) in libQt6Gui.so.6 <unresolved function> in plasmashell QApplicationPrivate::notify_helper(QObject*, QEvent*) in libQt6Widgets.so.6 QCoreApplication::notifyInternal2(QObject*, QEvent*) in libQt6Core.so.6 QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) in libQt6Gui.so.6 QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) in libQt6Gui.so.6 QWindowSystemInterface::flushWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) in libQt6Gui.so.6 QObject::event(QEvent*) in libQt6Core.so.6 QApplicationPrivate::notify_helper(QObject*, QEvent*) in libQt6Widgets.so.6 QCoreApplication::notifyInternal2(QObject*, QEvent*) in libQt6Core.so.6 QCoreApplication::sendEvent(QObject*, QEvent*) in libQt6Core.so.6 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) in libQt6Core.so.6 QCoreApplication::sendPostedEvents(QObject*, int) in libQt6Core.so.6 postEventSourceDispatch in libQt6Core.so.6 g_main_dispatch in libglib-2.0.so.0 g_main_context_iterate_unlocked::g_main_context_dispatch_unlocked in libglib-2.0.so.0 g_main_context_iterate_unlocked in libglib-2.0.so.0 g_main_context_iteration in libglib-2.0.so.0 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) in libQt6Core.so.6 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) in libQt6Core.so.6 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) in libQt6Core.so.6 QCoreApplication::exec() in libQt6Core.so.6 <unresolved function> in plasmashell __libc_start_call_main in libc.so.6 __libc_start_main_impl in libc.so.6 <unresolved function> in plasmashell -- You are receiving this mail because: You are watching all bug changes.
