Teredactle 37 Posted November 18, 2023 Posted November 18, 2023 Hi, I have done a few searches but can't really find a legit answer to this. I'm now running Emby in a VM (Windows 10 Hyper-V) and it's running great, on most part - I don't have more than 1 session usually going (either local or remote) but it would be nice to have the capability so that the CPU doesn't get killed. I'd like to be able to leverage GPU for transcoding (Intel Quicksync or Nvidia) since you can't share the GPU in Windows 10 to a VM with HyperV. It's not quite clear to me, if I installed docker desktop, if I could share the GPU - I'm not looking to totally pass through the GPU, but do a vGPU where it's also available to base OS (win10) but also can be shared to the container if needed. Could anyone chime in if this is possible? Would love it if you've actually been successful and done it. Thank you
RanmaCanada 496 Posted November 18, 2023 Posted November 18, 2023 If you're using quicksync you really won't notice it. Heck I barely noticed it when I was running my server on my main system and using NVENC. In the end I found it was cheaper and easier to just use a second machine. I prefer laptops as they can be had for dirt cheap, and they do the job. An i3-8130u can be had for about $100 and it will work like a champ. $100 I feel is a small price to pay for peace of mind that it will just work. But this might be what you are looking for? I only browsed the first page but it appears to be what you might want.
PixelWizard 7 Posted November 20, 2023 Posted November 20, 2023 (edited) On 18/11/2023 at 12:01, RanmaCanada said: Si estás usando quicksync, realmente no lo notarás. Diablos, apenas lo noté cuando estaba ejecutando mi servidor en mi sistema principal y usando NVENC. Al final descubrí que era más barato y más fácil usar una segunda máquina. Prefiero las computadoras portátiles, ya que se pueden obtener por muy poco dinero, y hacen el trabajo. Un i3-8130u se puede conseguir por unos 100 dólares y funcionará como un campeón. Creo que $ 100 es un pequeño precio a pagar por la tranquilidad de que simplemente funcionará. ¿Pero esto podría ser lo que estás buscando? Solo navegué por la primera página, pero parece ser lo que podrías desear. With quicksync is posible create 2 embys with access to iGPU? i want make emby for test and emby for my family use but not sure if i can share my 13700h with 2 emby dockers Edited November 20, 2023 by est3ban129
Teredactle 37 Posted November 20, 2023 Author Posted November 20, 2023 On 11/18/2023 at 12:01 AM, RanmaCanada said: If you're using quicksync you really won't notice it. Heck I barely noticed it when I was running my server on my main system and using NVENC. In the end I found it was cheaper and easier to just use a second machine. I prefer laptops as they can be had for dirt cheap, and they do the job. An i3-8130u can be had for about $100 and it will work like a champ. $100 I feel is a small price to pay for peace of mind that it will just work. But this might be what you are looking for? I only browsed the first page but it appears to be what you might want. Thanks for the link, looks like it needs a lot to make it work - I was just looking to offload Emby server off the main system really so that if I need to reboot, and that system hosts other VMs/containers, they won't all go down. Looks like it "may" work but requires some "hacking" and I want something that is stable. I tried it with VMware desktop and didn't work stable. As for the i3-8130u is there any place where one could see encoding performance using this particular processor vs the one I'm using now ( E3-1225v3, and plan to use E3-1245v5); processor wise the E3-1245v5 is much better, but I can't find a similar place to compare the onboard graphics that each of these cpus have in terms of performance encode/decode.
RanmaCanada 496 Posted November 21, 2023 Posted November 21, 2023 The E3-1225v3 is Haswell, 4th gen, and is utter garbage tier for quicksync encode quality and speed. The E3-1245v5 is Skylake and only supports 8bit HEVC. I can tell you that my i3-8130u was able to handle 2 4k transcodes with tone mapping and would throw up when adding a third. But we all know you should never transcode 4k to begin with. As for 1080p transcodes, I had no problems doing 10+, and 8GB of ram will get you to 17 1080p transcodes. Doom9 has a hardware thread where we discuss things like this. It covers almost a decade of hardware encoding. You will see some very important industry people in that discussion thread. I can tell you right now that the measly i3-8130u will destroy both xeons in regards to quality and speed due to its updated ASICS. Here's a laptop from eBay, for $100 that's an i3-8130u with a network jack, all it needs is an SSD and an OS. Heck you can even find an i5 8th gen for about $120. The thing I love about using laptops, 1) they are cheap, 2) they are small and fit anywhere, 3) they use so little power, 4) integrated keyboard/mouse/screen. https://forums.serverbuilds.net/t/guide-hardware-transcoding-the-jdm-way-quicksync-and-nvenc/1408/3 From personal experience, the units will use about 10-15 watts of power total, and when they're sitting there idle waiting for clients, they will do about 5-7 watts. My current server is an i5-1235u that pulls a mere 10 watts, and is bios locked to 15 (thanks HP). Passmark scores have nothing to do with their transcode capabilities when you are discussing Quicksync.
RanmaCanada 496 Posted November 21, 2023 Posted November 21, 2023 20 hours ago, est3ban129 said: With quicksync is it possible to create 2 embys with access to iGPU? i want to make emby for test and emby for my family use but not sure if i can share my 13700h with 2 emby dockers You should be able to. A quick search says so. I have no experience with it so you would probably have to create your own post in regards to it. This is for UNRAID, but should be similar for things like TrueNAS or Linux distros. Again, I have no first hand knowlege of this so I would say start your own post and let the experts help you.
caffeineshock 18 Posted November 22, 2023 Posted November 22, 2023 On 11/18/2023 at 2:10 AM, Teredactle said: Hi, I have done a few searches but can't really find a legit answer to this. I'm now running Emby in a VM (Windows 10 Hyper-V) and it's running great, on most part - I don't have more than 1 session usually going (either local or remote) but it would be nice to have the capability so that the CPU doesn't get killed. I'd like to be able to leverage GPU for transcoding (Intel Quicksync or Nvidia) since you can't share the GPU in Windows 10 to a VM with HyperV. It's not quite clear to me, if I installed docker desktop, if I could share the GPU - I'm not looking to totally pass through the GPU, but do a vGPU where it's also available to base OS (win10) but also can be shared to the container if needed. Could anyone chime in if this is possible? Would love it if you've actually been successful and done it. Thank you thats partially true. you cant do it in windows 10 (right no? they still didnt update hyper-v on win10, omg) but you can do it on win11. in fact, thats what i am doing. i had to update to win11 then i was able to share the gpu with the host and 2 different vms (in my case a 3070) with full driver-support, nvenc etc etc. on the screen you can see the 1 single gpu i got in my server that is shared across several vms and host. and all the transcoders are available in emby that runs inside a vm and uses the shared gpu
Teredactle 37 Posted November 22, 2023 Author Posted November 22, 2023 Wow, ok that is amazing news, I wonder if latest Win10 updates are able to do this or if it's even considered to be done for Win10 - I really don't want to update to Win11, there are certain things I dislike about it, I know eventually I'll have to but for now I prefer Win10. This is excellent news however, as it's basically what I want to do, with support out of the box! Thanks to you and the other posters in fact, offering some other options, I prefer to say with Win1x and HyperV however and not have to separate out functions to other devices.
caffeineshock 18 Posted November 22, 2023 Posted November 22, 2023 (edited) 45 minutes ago, Teredactle said: Wow, ok that is amazing news, I wonder if latest Win10 updates are able to do this or if it's even considered to be done for Win10 - I really don't want to update to Win11, there are certain things I dislike about it, I know eventually I'll have to but for now I prefer Win10. This is excellent news however, as it's basically what I want to do, with support out of the box! Thanks to you and the other posters in fact, offering some other options, I prefer to say with Win1x and HyperV however and not have to separate out functions to other devices. why dot you want to update to win11? i think many of the things that make you deny the upgrade are solveable alternative: switch to windows server 2022 it has the feature as well (idk about 2019. it might do it also but not sure) edit------- on windows server youre even able to partition your gpu in case you want it (idk why you should tho). not available on win10 or 11 Edited November 22, 2023 by caffeineshock
mrmarkfr 8 Posted December 30, 2023 Posted December 30, 2023 On 22/11/2023 at 07:50, caffeineshock said: thats partially true. you cant do it in windows 10 (right no? they still didnt update hyper-v on win10, omg) but you can do it on win11. in fact, thats what i am doing. i had to update to win11 then i was able to share the gpu with the host and 2 different vms (in my case a 3070) with full driver-support, nvenc etc etc. on the screen you can see the 1 single gpu i got in my server that is shared across several vms and host. and all the transcoders are available in emby that runs inside a vm and uses the shared gpu Ok, this is exactly what I was looking for. Two questions though, did you have to do anything special, or just install the VM like Linus did here, and 2nd, how do you see that screen in Emby. When I go to the transcoding tab in my emby, I don't see anything like that screen. )
mrmarkfr 8 Posted December 30, 2023 Posted December 30, 2023 9 minutes ago, Luke said: What do you see? This is all I see, no list of gpu.
Luke 42080 Posted December 30, 2023 Posted December 30, 2023 6 minutes ago, mrmarkfr said: This is all I see, no list of gpu. What are you expecting to see? Did you consult our docker setup guide? https://hub.docker.com/r/emby/embyserver
mrmarkfr 8 Posted December 30, 2023 Posted December 30, 2023 I'm not running in a docker, maybe that's why. I'm running directly on Windows. I was wondering why what I was seeing didn't look like this.
daldana 122 Posted December 30, 2023 Posted December 30, 2023 @mrmarkfr, If you click in the box that is showing "Yes", you can change that to "Advanced" and it should show you options. If you already did that, my apologies.
mrmarkfr 8 Posted December 30, 2023 Posted December 30, 2023 5 minutes ago, daldana said: @mrmarkfr, If you click in the box that is showing "Yes", you can change that to "Advanced" and it should show you options. If you already did that, my apologies. that was it, I was looking for advanced somewhere in there
caffeineshock 18 Posted January 4, 2024 Posted January 4, 2024 (edited) On 12/30/2023 at 6:21 PM, mrmarkfr said: Ok, this is exactly what I was looking for. Two questions though, did you have to do anything special, or just install the VM like Linus did here, and 2nd, how do you see that screen in Emby. When I go to the transcoding tab in my emby, I don't see anything like that screen.) im probably little late for this but: what ltt does in that video is called "gpu partitioning" which is something slightly different. you dont have to do it that way. in his expample a 12gb gpu is split into 2 with 6gb each. you can do it this way,, but you dont have to. you can make the ram allocation dynamic. i didnt use any of the script provided by parsec. there is a good documentation by microsoft itself. its actually pretty simple and goes kinda like that: read the documentation from microsoft to get the right PS-commands -> copy the driver from 2 or 3 directories inside your windows-folder into your vm -> execute the commands -> done. ask google for details doing it "not the way linus shows it" will let your host device with almost all the ram your gpu has without the need for splitting the gpu in half (or 4 pieces or whatever profiles the gpu has) Edited January 4, 2024 by caffeineshock
mrmarkfr 8 Posted January 4, 2024 Posted January 4, 2024 1 hour ago, caffeineshock said: im probably little late for this but: what ltt does in that video is called "gpu partitioning" which is something slightly different. you dont have to do it that way. in his expample a 12gb gpu is split into 2 with 6gb each. you can do it this way,, but you dont have to. you can make the ram allocation dynamic. i didnt use any of the script provided by parsec. there is a good documentation by microsoft itself. its actually pretty simple and goes kinda like that: read the documentation from microsoft to get the right PS-commands -> copy the driver from 2 or 3 directories inside your windows-folder into your vm -> execute the commands -> done. ask google for details doing it "not the way linus shows it" will let your host device with almost all the ram your gpu has without the need for splitting the gpu in half (or 4 pieces or whatever profiles the gpu has) I ended up using the instructions from Craft Computing, without the Parsec portion. Seems to be working so far, but haven't put it under a lot of stress yet.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now