***GUIDE*** Plex Hardware Acceleration using Intel Quick Sync


Recommended Posts

26 minutes ago, Mor9oth said:

Any recommendations?

Do you need IPMI or not? If not take a look at the Gigabyte C246M-WU4 or Asus WS C246M Pro. Sadly there is no C246 board with onboard 10G. A 10G card adds ~6 watts, 3 watts the card and 3 watts the port. I know that 3 watts per port are valid for the onboard 10G ports as well but I don't know how much the controller/chipset adds. Let's say it's 1 watt.. the total different would be only 2 watts.

 

Link to comment
What does it even mean for the CPU workload to transcode with CPU only compared to iGPU (Quick Sync)?

Software (CPU) vs. hardware (iGPU with QSV or discrete GPU) is a matter of which component do you want to take on the workload.

 

Sofware transcode really hits the CPU hard and all cores/threads will show high utilization, often over 90%.  In a software transcode, the passmark score of the CPU is important as a certain amount of CPU power is required per transcoded stream.  The recommendation is 2000 passmarks per stream (with 2000 more reserved for unRAID overhead) for a transcode of 1080p original material.  For 4K/HEVC original material a whopping 17,000 passmarks per stream are required.

 

Some prefer software transcode as they say it results in better quality.  At low bitrates/resolutions this is probably true but for anything 720p 4 Mbit per second or above the difference is not that great.

 

Hardware transcodes offload the work to the iGPU/GPU and many more simultaneous streams can usually be supported unless you have a really powerful CPU.  With hardware transcoding, CPU use is very, very low compared to software transcoding, usually less than 5%.

 

FYI the passmark score of the E-2278G is 17386; enough for 7 1080p transcodes and 0 4K/HEVC transcodes.

 

With my E-2288G, I have had as many as 12 1080p transcodies going with iGPU/QSV and it could do more.  This was just a test and CPU utilization never exceeded 5%.

Edited by Hoopster
Link to comment
4 hours ago, mgutt said:

Do you need IPMI or not? If not take a look at the Gigabyte C246M-WU4 or Asus WS C246M Pro. Sadly there is no C246 board with onboard 10G. A 10G card adds ~6 watts, 3 watts the card and 3 watts the port. I know that 3 watts per port are valid for the onboard 10G ports as well but I don't know how much the controller/chipset adds. Let's say it's 1 watt.. the total different would be only 2 watts.

 

@mgutt: thank you for your tips and the recommendation! The Gigabyte C246M-WU4 looks actually pretty nice! 😊 

I guess i simple add a 10G nic for my Network. Can you recommend one with rj45? What about the Asus XG-C100C 10G?

 

Since I dont need remote management, i guess i dont need IPMI. 

Link to comment
4 minutes ago, Mor9oth said:

Since I dont need remote management, i guess i dont need IPMI

IPMI is very nice for being able to update the BIOS and monitor system performance without being at server and is very useful in headless situations.  However, if you will have a monitor and keyboard attached to the server, IPMI becomes more of a convenience than a necessity.

 

For years, my server was a workstation board without IPMI.  It is only in the latest upgrade to the E-2288G/ASRock E3C246D4U that my main server has IPMI.  I like it but I could live without it.

 

On my backup server, IPMI is a necessity as it is completely headless and my backup script is able to power it on and off via IPMI which is very nice.

 

With a C242 chipset, IPMI means no iGPU.  WIth a C246 chipset, at least in SuperMicro and ASRock implementations, you can have both.

Link to comment
37 minutes ago, Hoopster said:

On my backup server, IPMI is a necessity

A smart socket would allow the same:

- set BIOS to auto power on

- set Smart socket to power off if under ~3watts

- set Smart socket to power on by schedule

- set Cronjob accordingly or script to execute on boot

- let a script power down the backup server if in idle

 

I will use for my remote backup server a selfmade IPMI. At the moment I'm simply using a Lubuntu VM with Real VNC Viewer.

 

@Mor9oth

They are all good. Asus, QNAP and LR Link (Aliexpress) are the cheapest.

 

P.S. if you want to save even more energy, you could directly connect the server with the client through 10G and in addition the client and the server with the 1G ports of your router (this means you need two cables for your client). By that you don't need a 10G switch and you save in addition the 3 watts of the permanently active connection between server and 10G switch. If you have multiple clients that should be connected through 10G, install a 2 port or 4 port 10 card. Still cheaper as the 10G switch. ;)

 

Edited by mgutt
Link to comment

So ... one more argument for just add a GPU to my current setting: I use Handbrake and all transcodes from that also make my server sound like a Jet engine. Because of the load my Fans spin up too ... Something I don't like and wanted to change anyway.

There is a Handbrake Container with GPU addition (Handbrake with Nvidia NVENC) that would solve this problem by remove the load to the GPU (That is hopefully quiet then ...).

Thinking further -  The Nvidia Plugin allows me to use the GPU in every Container - but what about the iGPU? Is it also versatile enough? I mean in Handbrake it is not possible ... Is the iGPU even usable in VMs? ...

So isn't it easier and more versatile to just add a GPU.   

 

 

Link to comment
3 hours ago, Hoopster said:

IPMI is very nice for being able to update the BIOS and monitor system performance without being at server and is very useful in headless situations.  However, if you will have a monitor and keyboard attached to the server, IPMI becomes more of a convenience than a necessity.

 

For years, my server was a workstation board without IPMI.  It is only in the latest upgrade to the E-2288G/ASRock E3C246D4U that my main server has IPMI.  I like it but I could live without it.

 

On my backup server, IPMI is a necessity as it is completely headless and my backup script is able to power it on and off via IPMI which is very nice.

 

With a C242 chipset, IPMI means no iGPU.  WIth a C246 chipset, at least in SuperMicro and ASRock implementations, you can have both.

Thank you @Hoopster! 

IPMI sounds great! When I purchased my current build I wanted to have IPMI as an Option. But I never used it and to be honest - I do not really know how to set it up correctly - or in the best way - Which software to use, what possibilities etc. I began with the Dynamix Sleep Plugin - but when the sleep started it never stopped. The server didn't wake up in the morning. I needed to press the Power Button to wake it up. I guess this happened because the IPMI wasn't installed/setup at all.  At this point I stopped bothering with it. But what would be very nice is to access and edit the Bios. 

 

@Hoopster What is your opinion in my unlucky situation? Just adding a P2000 (Just using Unraid Nvidia Plugin) or replacing the Motherboard for getting the iGPU run?

 

Kind Regards!

 

Link to comment
6 minutes ago, Mor9oth said:

What is your opinion in my unlucky situation? Just adding a P2000 (Just using Unraid Nvidia Plugin) or replacing the Motherboard for getting the iGPU run?

Regarding some of your other questions, HandBrake does not support hardware decoding (only encoding) so even if you have an iGPU it will only encode with the iGPU hardware.  I use my iGPU in HandBrake as well and CPU utilization is in the 65%-75% range even with QSV enabled in HandBrake. Of course, without it, CPU utilization in around 95% in HandBrake. 

 

Subtitle and audio encoding is also done in software only with HandBrake.  I do not know if HandBrake supports hardware encoding with a discrete GPU as I only see the option for QSV in the settings since I am passing through the iGPU.  However, if it does support a GPU such as the P2000, it will likely have the same restrictions.

 

The iGPU can be used simultaneously for Plex and HandBrake.  I have had both using it at the same time on several occasions. 

 

If you decide to stick with IPMI, setup is rather easy on your current board.; just some BIOS settings.  It runs as an HTML 5 application in a browser.  Very slick.  Previous versions required Java and would break from time to time with Java updates.

 

An iGPU can be passed through to a VM.  There is a long thread on that subject in these forums.  However, keep in mind that once a VM has control of any video device (iGPU or discrete GPU card) it cannot be used for any other purpose.

 

If you go with the unRAID Nvidia plugin and an Nvidia GPU, the P2000 is an excellent choice as it supports "unlimited" streams as opposed to the 2 stream limit of the GTX/consumer cards.

 

Since I am not currently running any VMs that require GPU pass through, all of my video/transcoding needs are met very well with the iGPU.  I can still install a video card to pass through to a VM should that need arise while leaving the iGPU for transcoding uses.

 

Your decision all comes down to what you need and want most as far as hardware capabilities.

Link to comment
2 hours ago, Mor9oth said:

server sound like a Jet engine.

1.) Why is the server in your room?

2.) Sounds like a cheap cooler / fan / case.

2 hours ago, Mor9oth said:

Is the iGPU even usable in VMs?

If Plex/Unraid uses the (i)GPU, it's not available for the VM. So you need a second GPU for a VM (which could be the iGPU if you use the GPU as your Unraid/Plex GPU). But do you need hardware acceleration in a VM?

2 hours ago, Mor9oth said:

There is a Handbrake Container with GPU addition

Enabling Intel QSV in handbrake is the same step as enabling it for Plex.

2 hours ago, Mor9oth said:

remove the load to the GPU

If you use QSV, the load is much lower, which means less heat, which means less noise. Here you find interesting Infos about handbrake's hardware acceleration:

https://handbrake.fr/docs/en/latest/technical/performance.html

 

1 hour ago, Hoopster said:

does not support hardware decoding

It looks like it's possible in a recent version.

1 hour ago, Hoopster said:

It runs as an HTML 5 application in a browser

Asrock? My Supermicro used java and I hated it ^^

Link to comment
Quote

1.) Why is the server in your room?

2.) Sounds like a cheap cooler / fan / case.

 

1.) It is at the moment in the living room because we don't have a dry basement and my girlfriend originally didn't want to have it in her workspace. Since the server is sometimes too loud, this will change in the future.

2.) Not at all. I have 4 fans from Noctua in my case. All of them are temperature controlled. Super silent in idle - only loud if I do transcode. Here my setup btw:

 

1.jpg.92455b6b47bb2759cd7d2afffa1f0b97.jpg

 

(So Maybe I was a bit too dramatic with the Jet engine comparison ... 🙈

It is only loud while transcoding - but this is also unpleasant in the living room)

 

Link to comment
Quote

If Plex/Unraid uses the (i)GPU, it's not available for the VM. So you need a second GPU for a VM (which could be the iGPU if you use the GPU as your Unraid/Plex GPU). But do you need hardware acceleration in a VM?

Alright, so I need a dedicated GPU just for VM too. I guess I will add this later. Maybe I do add a gaming GPU instead of the P 2000. 

I don't need hardware acceleration in the VMs at all.

Link to comment
37 minutes ago, Mor9oth said:

so I need a dedicated GPU just for VM too. ... I don't need hardware acceleration in the VMs at all.

Hmm what? ^^ Using a GPU for the VM is hardware acceleration?!

 

Only to be clear:

- a VM that is used rarely as a client and uses no video encoding/decoding software does not need a physical GPU, the virtual GPU is enough

- a VM that is used as client could have a physical GPU to make it more responsive

- a VM that is used for Gaming or Video encoding/decoding must have a physical GPU

 

41 minutes ago, Mor9oth said:

So Maybe I was a bit too dramatic with the Jet engine comparison ... 🙈

It is only loud while transcoding - but this is also unpleasant in the living room

Ok, maybe you could change the curve to something more silent? But of course it depends on your current temps.

Edited by mgutt
Link to comment
Quote

Hmm what? ^^ Using a GPU for the VM is hardware acceleration?!

 

Only to be clear:

- a VM that is used rarely as a client and uses no video encoding/decoding software does not need a physical GPU, the virtual GPU is enough

- a VM that is used as client could have a physical GPU to make it more responsive

- a VM that is used for Gaming or Video encoding/decoding must have a physical GPU

Sorry for being so newbie 🙈

Thank you for this overview about VMs! 👍

Link to comment
Quote

Ok, maybe you could change the curve to something more silent? But of course it depends on your current temps.

Since the fans are controlled by temperature I could change the setting, so they would spin up just later. First on 65° or something. I guess I need to try it a little bit to find the best setting.

But I will wait until I got the new Motherboard. Just ordered the C246M-WU4 😀

Then I will add a 10 GbE NIC.

Quote

P.S. If you want to save even more energy, you could directly connect the server with the client through 10G and in addition the client and the server with the 1G ports of your router (this means you need two cables for your client). By that you don't need a 10G switch and you save in addition to 3 watts of the permanently active connection between server and 10G switch. If you have multiple clients that should be connected through 10G, install a 2 port or 4 port 10 card. Still cheaper as the 10G switch.

You mean something like this, right?

Not cheap (180 Euro), but since the new mainboard is way cheaper than my Asrock E3C242D4U2-2T this is ok.

Hmm - but I guess the heatsink is because the card gets hot - means a lot of energy/cost? Could not find any information about power consumption.

x550-10g-2t-x4-1.thumb.jpg.89fd2ea1682a2b88af176e3f0c0abbd0.jpg

 

https://www.sfpcables.com/10g-network-card-dual-rj45-port-x4-lane-intel-x550-t2-equivalent-4734

 

Link to comment
3 hours ago, Mor9oth said:

May I ask you how you get this Temp output? Is this a Plugin and is it in the Unraid Menu?

Temperatures come from the Dynamix - System Temp plugin.

image.thumb.png.654bea522ede183a5d862cbee4f914a3.png

 

Fan speeds come from the IPMI plugin. Of course, you need a board with IPMI to use this.

image.png.c7874101a4177413c131ce5e91807c9c.png

 

I am using a combination of both plugins in the display footer.

 

Although your queries started off with trying to get transcoding working with your iGPU and QuickSync, we have strayed off topic and taken the conversation to topics not really relevant to this thread (IPMI, HandBrake, VMs, unRAID Nvidia plugin/dedicated GPUs, etc.).  You might want to ask a moderator to split this conversation off into a separate thread from the point at which we started discussing things not related to the hardware acceleration/QSV guide.

Edited by Hoopster
Link to comment
5 hours ago, Mor9oth said:

 

Oh, I'm sorry, it wasn’t a bad intention. I guess I actually got off the topic.

I understand and I contributed to going off topic.  It is easy to do.  I just think splitting this off will keep the Hardware Acceleration/QSV thread a little more focused on its purpose and easier to follow.

  • Like 1
Link to comment
  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.