High CPU usage when playing a video
-
For what it's worth, these are the results from running that Odysee video in full-screen 2560x1440.
Vivaldi Task Manager:
GPU process: 100 - 120%
Tab process: 20 - 30%Process Explorer:
GPU process: ~15% CPU, ~4% GPU
Tab process: ~3-5%Specs:
Microsoft Windows 10 Pro
Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz, 4001 Mhz, 4 Core(s), 8 Logical Processor(s)
NVIDIA GeForce GTX 970, driver 460.89So a relatively old system, no problems with that video.
Windows Task manager gives the same results as Process Explorer obviously. Note also that the Vivaldi Task Manager shows usage percentage of the available logical processors/threads, so for a 4-core/8-thread machine the max value will be 800%.
I really don't know how the Vivaldi Task Manager calculates CPU% for the GPU process as a GPU typically has thousands of "cores".
The same video in VLC gives CPU < 1% and GPU ~3%.
The same video in my preferred player Zoom Player gives CPU ~4% and GPU ~60% - which is high but madVR+LAV does some heavy processing to make it look good. By default VLC rendering looks like
THB and I can't be arsed to figure out how to make it use madVR.
The advice I've always followed regarding codec packs is this:
https://forum.inmatrix.com/index.php?showtopic=107
-
-
@Zalex108
Hi, yes high CPU usage low GPU. With Chrome it is the opposite.
@Pathduck
With Windows task manager I can see which part of the GPU is used and Vivaldi use 0% for video decode, Chrome does.
Your CPU and GPU are very powerful even a bit older.My system:
Intel i5 3570K 16 GB RAM
GTX 760 4 GB /Display card
RTX 2060
Driver 460.79
Vivaldi 3.7.2218.42 / Chrome 89.0.4389.91 -
Ok, this seems reproducible enough at this point, so I've filed the bug report VB-78053. Not gonna test with the other GPU, as it seems that the problem isn't specific to my GPU model or driver.
@Pathduck, Thanks for checking this.
I really don't know how the Vivaldi Task Manager calculates CPU% for the GPU process as a GPU typically has thousands of "cores".
In my understanding that is the CPU usage of the process called "GPU Process", the part that runs on CPU and may spawn tasks on the GPU. In any case, at least for my GPU, there's no such thing as general GPU usage. I't reports CUDA, Graphics pipeline, Decoder, Encoder, any of which can be used 100%, while other parts may be unused. Using a video decoder doesn't affect Graphics or CUDA performance for example.
And yes, your CPU is pretty beefy compared to mine. But still, wasting CPU resources for something that can be done "for free" on a GPU is suboptimal. On my system though, the CPU (really ancient 4 core xeon) is being used 100%, which leads to video stuttering, and for me makes Vivaldi simply "unable" to play some videos. And I believe the CPU part of my PC is on par with the modern low-end systems. Also it may possibly lead to high battery usage on laptops.
-
@vvvivaldi You didn't post your CPU specs (unless it's hidden somewhere), so I just assumed with a RTX3060Ti the rest of your system would match
Also we get a lot of users just looking at the Vivaldi Task Manager and going "OMG Vivaldi uses more than 100% CPU" when they have a multi-thread machine.
I do notice that Vivaldi does not use any GPU processing on video decode, while Chromium 89 and Chrome does. So that might indeed be a bug, hopefully it will be looked into.
In my understanding that is the CPU usage of the process called "GPU Process", the part that runs on CPU and may spawn tasks on the GPU.
Exactly, so what I don't understand how a value of say 120% "CPU" for the GPU process translates to the 1664 cores the GTX970 has. But that's probably hard to figure out unless looking at the Chromium source code.
-
@Pathduck said in High CPU usage when playing a video:
I do notice that Vivaldi does not use any GPU processing on video decode, while Chromium 89 and Chrome does. So that might indeed be a bug, hopefully it will be looked into.
It does sound like a bad taste joke indeed, why should one have HW acceleration enabled if GPU it's not used?
-
@Pathduck, Actually my system may be the most unbalanced system in the world. It's a frankenputer based on socket LGA775 (from years 2004-2011), with Xeon X5460 (2007-2010) duckttaped into it, 8GB of DDR3 (it's theoretical maximum of that chipset) and quite modern GPU and storage subsystem. I just can't get around to upgrading the CPU/MOBO/Memory.
Exactly, so what I don't understand how a value of say 120% "CPU" for the GPU process translates to the 1664 cores the GTX970 has. But that's probably hard to figure out unless looking at the Chromium source code.
I mean that the "GPU Process" isn't running on GPU, it's executed on CPU and may give GPU instructions to execute. "GPU Process" is just a name. Also you can't just spawn an OS process on GPU. You run a process on the CPU, that gives the GPU some instructions and the GPU executes them. Some GPU "programs" may be involved. Like for example for graphics, you can give a GPU a program, composed of shaders, give it some data arrays, and make/queue a draw call. GPU will execute the draw call, using the data and programs provided. In case of CUDA a "kernel" is executed. But there is an OS process, running on CPU, that issues the instructions to the GPU. In short, there's no such thing as an OS process running on GPU. OS processes run on CPU. So the task manager shows the CPU usage, not some kind of GPU core usage. Also about "1664 cores" - gpu has different amounts of different cores. Like CUDA cores, GFX pipeline cores, Decoder/Encoder, RT, Tensor, etc. Generally speaking with some oversimplifications, those cores don't run processes like the CPU does. They use them in parallel to execute a single instruction (it's called SIMD - Single Instruction Multiple Data). Like you give a GPU an array of 1M vertices and a shader program, that for example thells GPU to transform all the points. The GPU with 1664 shader cores will apply the transform to the vertices 1664 vertices in one go, in parallel. As for some GPU usage stats you can see in the system task manager - that info is provided by the GPU driver. OS knows nothing about what is happening on the gpu.
-
@vvvivaldi Yeah I guess the "GPU Process" CPU usage % number is just that - CPU usage. I was mistakenly thinking it was somehow showing some calculation of actual GPU usage calculated into it as well.
-
@vvvivaldi I always had this problem since version 1 and it was the main reason why I didn't use Vivaldi.
By accident I discovered the solution:Go to: vivaldi://experiments/
enable: "Always use Chromium media demuxer"
Restart
-
@karl09 said in High CPU usage when playing a video:
enable: "Always use Chromium media demuxer"
That can be a solution.
This experimental is not enabled in releases yet, we test internal versions if enabling of such causes issues for users.
I hope a next 5.2 version will get the setting enabled by default. -
Lets get this out of the way for a start so there's no confusion
your GTX970 does not support hardware decoding of VC-1 VP9 or H265 so no amount of codec installing will help with that
-
Ppafflick moved this topic from Vivaldi for Windows on