# Is 4K Ultra HD dependent on your CPU or your graphics card?



## shredifier (Feb 3, 2017)

I did an interesting experiment the other night
I decided to test all my systems and rigs (ranging from weak old laptops to high end gaming desktops) in order to see how well it is able to play back video content at a resolution of 3840x2160

First I tested my laptops with Intel core 2 Duo Processors in them (yeah I know, don't laugh!),  and they could NOT handle play back of some test bench home video's recorded in Ultra HD, it was unwatchable, with lag being an understatement, it froze and it turned my movies into a slideshow moving at less than 1 fps lol
So I asked myself, what is causing that?, is it my CPU or my graphics card....so i pulled up task manager and used resource monitor to see what was going on

This is what I found, as soon as I hit play, the CPU usage shot up immediately to 89%, and then within seconds went to 96-99% and staid there, yet using GPU-Z my graphics card was hardly even being used here, it was the CPU that was maxed out

So I fired up my beast desktop with core i7 and repeated the same experiment using the EXACT same movie and my CPU went to 21% and didn't really move

This to me proved conclusively that if you wish to play movies and content recorded at 4K, it's very heavily dependent on whether you have a fast enough CPU, as THAT is the bottleneck....no matter how powerful your GPU is, if you're CPU is not fast enough, it simply WILL NOT handle 4K content

Is this common knowledge guys, or have I stumbled onto something interesting here?


----------



## qubit (Feb 3, 2017)

Later processors have instructions for handling this kind of data / workload better and can make a massive difference to CPU usage.


----------



## Yukikaze (Feb 3, 2017)

What was the GPU in use? New GPUs (including the latest integrated graphics by Intel) have HW decoders for popular encoding formats and if setup correctly they will offload processing from the CPU. With the correct GPU setup you can playback 4K videos on an Atom. This is also similar to a phone playing back 4K content: It isn't that the CPU in the phone is that powerful, it is that it has specific tailor-made HW to deal with the format. Without GPU offloading, you will struggle to play 4K videos on many modern quad-core CPUs. For example, without GPU acceleration, my Core i7 4810MQ cannot playback many 4K videos, CPU usage shoots up to 100% and the framerate is abysmal. With a GTX960 connected via Thunderbolt, I have no issues playing back 4K content, with the CPU sitting in single-digit utilization.


----------



## shredifier (Feb 3, 2017)

Yukikaze said:


> Core i7 4810MQ


 Wow, you guys are so awesome for getting back to me so quickly

Are you serious about your Core i7 4810MQ  not being able to handle 4K content IF GPU acceleration is turned off?.....Your processor is at least as powerful as one of mine
So that means that somehow the GPU does play a factor in this as well...maybe the CPU is working together with the GPU?

How do I find out if my GPU has the ability to offload the workload from the CPU?....I know my GTX980 can.......not too sure if my humble laptop GPU's can do that....they are GeForce 8600M GS, and GeForce 9600M GT respectively.....none of them were able to play back the 4K content, but based on the incredible CPU spikes I was sure, until now, that it was being bottlenecked by the CPU and NOT the graphics card

Anyway this is all fascinating stuff to me, I love tinkering, and seeing how hard I can push my systems, and trying to push as much performance from them as I can


----------



## silentbogo (Feb 3, 2017)

There is no definitive answer to your question, because ATM there are several ways your computer can handle 4K decoding:
1) Software decoding (that's what your C2D does, hence high CPU load). I tried it once on my hexacore Xeon X5650 and it did not handle it well even w/ 4.2GHz overclock. 100% CPU usage and heavy frame skipping.
2) Hardware decoding on CPU (e.g. Intel QucikSync, AMD VCE) It uses resources of both CPU+iGPU and a built-in decoder. Some CPUs may not support 4K acceleration, like Sandy/Ivy bridge or only support it partially.
3) Hardware decoding on GPU. Self explanatory. Also varies between different GPU generations.

Most codec packs and decent media players can detect available options and let you switch manually between types of acceleration for video playback.
Something like this:

 

So, for example, if I am watching porn videos in 2160p without acceleration, my i3-6100 will be working hard at over 50% load.
If I enable CUVID and set everything to GPU acceleration, I will see no more than 20% CPU load even at high-bitrate 4K.

In either case - all those tests on old hardware are kind of pointless, because hardware acceleration for 4K HEVC or H.264 is relatively new and only present in the latest hardware.
Haswell only supports 4K H.264, but may have issues with HEVC.


----------



## shredifier (Feb 3, 2017)

silentbogo said:


> There is no definitive answer to your question, because ATM there are several ways your computer can handle 4K decoding:
> 1) Software decoding (that's what your C2D does, hence high CPU load). I tried it once on my hexacore Xeon X5650 and it did not handle it well even w/ 4.2GHz overclock. 100% CPU usage and heavy frame skipping.
> 2) Hardware decoding on CPU (e.g. Intel QucikSync, AMD VCE) It uses resources of both CPU+iGPU and a built-in decoder. Some CPUs may not support 4K acceleration, like Sandy/Ivy bridge or only support it partially.
> 3) Hardware decoding on GPU. Self explanatory. Also varies between different GPU generations.
> ...



ROTFLOL!!!!  , your comment about 2160 porn had me in stitches

I'm blown away by your knowledge, and a big thanks for the answer!.....Long story short, 4K is relatively new and hardware is still catching up, hence the problems.....is it accurate to say that the older your hardware is, like my laptops, the CPU is the determining factor, but as we get newer and more recent hardware, the GPU is handling the 4K stuff more and not the CPU?


----------



## Liviu Cojocaru (Feb 3, 2017)

You will still have the option on what to use to play 4K content (either CPU or GPU) but I would say that the best choice is to use the GPU for 4k decoding  and @silentbogo 's comment was epic )


----------



## Yukikaze (Feb 3, 2017)

Saying "4K" is somewhat of an issue. You can encode a 4K video (also, "4K" can mean one of several resolutions in the vicinity of 4000x2000, just to make things even more confusing) in many different formats. For example, you can use uncompressed video. In this case, there is no decoding to do, and your biggest issue would be reading the gigantic files fast enough off your drive (this is why video editors love very high bandwidth drives). In this case, life for the CPU and/or GPU is easy. On the opposite end you have HEVC, which is an efficient codec that was designed with HW decoding in mind: It is relatively easy to design a small HW block to decode it with a very low power consumption, but it is hard to make an efficient SW implementation of it (this is why CPUs struggle mightily with it).

I believe the first video card with full HEVC decoding in HW was the GTX960, so it could decode HEVC while essentially being at idle (the GTX970/980 had a partial offload, so the GPU cores had to be used to fully decode the HEVC stream). The Kaby Lake iGPU (Core i3/5/7 7XXX series) also has full HW HEVC decoding, the new GTX 10-series of cards do as well, as do the new AMD RX 4XX series of cards and the older R9 Fury cards (but Furies only support HW decoding for 8-bit color streams, as opposed to full 10-bit color stream support, which limits their playback capability).


----------



## Vya Domus (Feb 3, 2017)

shredifier said:


> Long story short, 4K is relatively new and hardware is still catching up, hence the problems.....is it accurate to say that the older your hardware is, like my laptops, the CPU is the determining factor, but as we get newer and more recent hardware, the GPU is handling the 4K stuff more and not the CPU?



Processors were never designed to independently handle things like image processing  or other media/graphics related stuff in the first place , historically there have been several instruction sets developed to aid these kinds of operations but CPU's are still no where near as capable as GPU's are due to their nature. So , it has never been a matter of catching up they are different components that are good at different things..


----------



## shredifier (Feb 3, 2017)

*I believe the first video card with full HEVC decoding in HW was the GTX960,.....*.That's another topic for another day lol , if you want to decode HEVC files use the INFERIOR gtx960, if you want to game you use the far more expensive gtx980 which can't decode HEVC properly

There's a whole lot of angry threads at the moment over at the Nvidia forums where it appears that the latest drivers from Nvidia are deliberately gimping Kepler cards and only optimising Maxell and Pascall


----------



## Yukikaze (Feb 3, 2017)

Nobody today is buying a GTX960/970 or 980 with the 10-series (and AMD's RX series) out there (except for niche uses such as video cards for Macs, which do not have OS X drivers for the 10-series of cards), so this point is moot.

As for the Kepler/Maxwell and Pascal optimizations or the lack of thereof, this is really off-topic.


----------



## Caring1 (Feb 3, 2017)

I thought it was common knowledge.
GPU Benchmarks often show less powerful CPU's gimp the score.


----------



## shredifier (Feb 4, 2017)

Yukikaze said:


> Nobody today is buying a GTX960/970 or 980 with the 10-series (and AMD's RX series) out there (except for niche uses such as video cards for Macs, which do not have OS X drivers for the 10-series of cards), so this point is moot.
> 
> As for the Kepler/Maxwell and Pascal optimizations or the lack of thereof, this is really off-topic.


Sorry but I strongly disagree.....It has everything to do with the topic at hand so I'll take your comment with a grain of salt

I don't give 2 hoots which architecture is better, Maxell or Kepler, i'm interested in which hardware is being gimped when it comes to hardware decoding, and is it reliant on the CPU or GPU....so for example, knowing which brand of graphics card supports hardware decoding is extremely pertinent to this conversation because that will influence my decision to buy such products in the future because I'm looking for whether it's the CPU or the GPU doing all that encoding


----------

