diff --git a/src/core/compositor/compositor.cpp b/src/core/compositor/compositor.cpp
index cc45db9e7fab384a549b8858e0766348ed7818f1..56693961cd133804f938fe71b331f70a0bcb13d8 100644
--- a/src/core/compositor/compositor.cpp
+++ b/src/core/compositor/compositor.cpp
@@ -56,7 +56,7 @@ Compositor::Compositor(content::RenderWidgetHost *host)
 {
     DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
 
-    m_taskRunner = base::CreateSingleThreadTaskRunnerWithTraits({content::BrowserThread::UI});
+    m_taskRunner = base::CreateSingleThreadTaskRunnerWithTraits({content::BrowserThread::UI, base::TaskPriority::USER_VISIBLE});
     m_beginFrameSource =
         std::make_unique<viz::DelayBasedBeginFrameSource>(
             std::make_unique<viz::DelayBasedTimeSource>(m_taskRunner.get()),
diff --git a/src/core/compositor/compositor_resource_tracker.cpp b/src/core/compositor/compositor_resource_tracker.cpp
index 6530f3249b80726834f50b730bfedb5e4b14df9a..ba874053ece104c52b262db15ed7d15f319c7b50 100644
--- a/src/core/compositor/compositor_resource_tracker.cpp
+++ b/src/core/compositor/compositor_resource_tracker.cpp
@@ -244,7 +244,7 @@ void CompositorResourceTracker::updateMailboxes(std::vector<CompositorResource *
 void CompositorResourceTracker::scheduleRunSubmitCallback()
 {
     base::PostTaskWithTraits(
-        FROM_HERE, { content::BrowserThread::UI },
+        FROM_HERE, { content::BrowserThread::UI, base::TaskPriority::USER_VISIBLE },
         base::BindOnce(&CompositorResourceTracker::runSubmitCallback,
                        m_weakPtrFactory.GetWeakPtr()));
 }
diff --git a/src/core/web_engine_context_threads.cpp b/src/core/web_engine_context_threads.cpp
index 75f8bd4705094d2efd5c5c9bf9457fb8cdf5efdc..e92cf3e9b922f3abc080844b99af14051feb13a5 100644
--- a/src/core/web_engine_context_threads.cpp
+++ b/src/core/web_engine_context_threads.cpp
@@ -82,7 +82,7 @@ struct GpuThreadControllerQt : content::GpuThreadController
         if (s_gpuProcessDestroyed)
             return;
 
-        s_gpuProcess = std::make_unique<content::GpuProcess>(base::ThreadPriority::NORMAL);
+        s_gpuProcess = std::make_unique<content::GpuProcess>(base::ThreadPriority::DISPLAY);
         auto gpuInit = std::make_unique<gpu::GpuInit>();
         gpuInit->InitializeInProcess(base::CommandLine::ForCurrentProcess(), gpuPreferences);
         auto childThread = new content::GpuChildThread(params, std::move(gpuInit));