Is Intel Gen10 supported?


Recommended Posts

I'm thinking of picking up an Intel Core i5-10400 since Intel decided to add Hyperthreading back in anything under an i9.  It has the same UHD Graphics 630 as the previous gen, which I believe is working in the latest beta at least. 

 

Does anyone know if this hardware should work?

Link to comment

Hey folks, just built my first Unraid box with an Intel 10700K, ASUS TUF GAMING Z490-PLUS mobo, 4x WD Elements 8TB, 64 GB RAM (Ballistix Sport LT 16GB x4).

 

I had some issues getting up and running, neither my mobo onboard NIC nor my USB-C ethernet adapter would work. Only way I could get online was with a super old USB-A 2.0 100 Mbps ethernet adapter. Ordered a USB-A gigabit adapter to see if that works. I also have an ethernet card lying around here somewhere and I may just slap that in, too. I hear the onboard NIC may just start working with the new kernel so I'm not terribly worried about it.

 

Drives all came up fine, just had to format them. Got the Unassigned Devices/Plus plugins working, got drives all sorted out, assigned to array, everything functional there. Already transferring data from backup drives.

 

I've tried enabling the onboard iGPU so I can run Plex on Docker. No dice.

 

BIOS is set to use the CPU GFX.

 

Go script:

#!/bin/bash
# Start the Management Utility
/usr/local/sbin/emhttp &

modprobe i915
chmod -R 777 /dev/dri

syslinux.cfg:

default menu.c32
menu title Lime Technology, Inc.
prompt 0
timeout 50
label Unraid OS
  menu default
  kernel /bzimage
  append initrd=/bzroot i915.alpha_support=1
label Unraid OS GUI Mode
  kernel /bzimage
  append initrd=/bzroot,/bzroot-gui i915.alpha_support=1
label Unraid OS Safe Mode (no plugins, no GUI)
  kernel /bzimage
  append initrd=/bzroot unraidsafemode
label Unraid OS GUI Safe Mode (no plugins)
  kernel /bzimage
  append initrd=/bzroot,/bzroot-gui unraidsafemode
label Memtest86+
  kernel /memtest

Appears to show up, but /dev/dri never appears.

root@KeiserUnraid:~# lsmod | grep i915
i915                 1351680  0
i2c_algo_bit           16384  1 i915
iosf_mbi               16384  1 i915
drm_kms_helper        135168  1 i915
drm                   348160  2 drm_kms_helper,i915
intel_gtt              20480  1 i915
i2c_core               40960  4 drm_kms_helper,i2c_algo_bit,i915,drm
video                  40960  1 i915
backlight              16384  2 video,i915
root@KeiserUnraid:~# chmod 777 /dev/dri
chmod: cannot access '/dev/dri': No such file or directory

 

  • Like 1
Link to comment

Another update, I read that in latest versions of Unraid the i915.alpha_support=1 parameter for the kernel is no longer required. Regardless, I have been completely unable to get /dev/dri to show up. I've tried booting into legacy instead of UEFI and there really isn't much in my BIOS I can change in regards to onboard graphics. I don't think iGPU works yet. Hopefully with the new 6.9 version with the new kernel, but I'm not sure I'm willing to try out the new beta.

Link to comment

Trying to get this to work also.   I just received and upgraded my build with an I7-10700K, and Gigabyte Aurus Ultra Z490.

 

Going to Unraid's 6.9 beta 1 and setting up go file with:

#!/bin/bash
#enable module for iGPU and perms for the render device
modprobe i915
chown -R nobody:users /dev/dri
chmod -R 777 /dev/dri

# Start the Management Utility
/usr/local/sbin/emhttp &

Note: doesn't seem to matter whether syslinux.cfg is updated with "i915.alpha_support=1".  From what I've found on this forum, that is no longer needed.    

 

6.9 beta does enable both the support for the iGPU (/dev/dri now available in docker containers), as well as the onboard NIC (2.5 GB intel NIC)  - NIC only shows up as a 1GB.

 

 

However, I've tried this on two dockers and still can not get HW acceleration in transcoding.   Tried on Handbrake, and tdarr.  Going into the console for each, they both show:

 

$ ls -l /dev/dri
total 0
drwxr-xr-x 2 root root       80 Jun  7 11:33 by-path
crw-rw---- 1 root   18 226,   0 Jun  7 11:33 card0
crw-rw---- 1 root   18 226, 128 Jun  7 11:33 renderD128


$ vainfo
error: XDG_RUNTIME_DIR not set in the environment.
error: can't connect to X server!
error: failed to initialize display

I'm still a little fuzzy on the following, but I believe the docker container has to be at a certain level of the linux kernal.  And from the two links below, there appears to be other things the distro has to support...

 

https://bugs.launchpad.net/ubuntu/+source/intel-vaapi-driver/+bug/1873262

https://discourse.ubuntu.com/t/18-04-intel-va-api-support-for-intel-comet-lake/15132

 

At this point I'm not sure if this is a just 'wait it out' and it will start working, or if the dockers will need to be updated with the underlying linux. 

 

 

 

 

Link to comment

Hi, 

i got my hardware i5-10400 with Asrock Z490m-itx/ac. I've paired it with jm585 m.2 pcie to 5 port sata card (it works) onboard Sata detected the drives.

Similar to keiser my both onboard NICs are not detected on 6.8.3. I will try USB3.0 gigabit NIC. I haven't tried docker yet, falling back on temp system to get unraid running.

 

Meanwhile i will run memtest to test the ram.

Link to comment

I've gotten my i5 10400 iGPU passed through using the 6.9.0 beta 1 update. You need the newer linux 5.5.8 kernel to achieve this so if you update and do everything you mentioned previously for passing through your iGPU, it will work (with emby at least).

 

EDIT: Make sure you have multi-display/iGPU enabled in the bios or this will not work.

Edited by lukeoslavia
  • Like 1
Link to comment
  • 2 weeks later...
On 6/13/2020 at 5:34 AM, lukeoslavia said:

I've gotten my i5 10400 iGPU passed through using the 6.9.0 beta 1 update. You need the newer linux 5.5.8 kernel to achieve this so if you update and do everything you mentioned previously for passing through your iGPU, it will work (with emby at least).

 

EDIT: Make sure you have multi-display/iGPU enabled in the bios or this will not work.

Hello lukeoslavia, could you tell me about the CPU usage when hw transcoding ? for me it takes 40~50% for a 4k h264 96631 kbps video, I thing it is too high and want to know the normal situation, thanks.

image.png.aa4609283dbc2f075ddf7323ae515bba.pngimage.thumb.png.9dba5eb2d59133951e228d076db1138f.png

Link to comment

Thanks to the brave souls willing to make the jump and test the 6.9 beta. I did end up using my 2 port gigabit card and am running on that, but it'll be nice to get the extra unneeded card out and use the onboard port once 6.9 is released. Hopefully I can get Plex to transcode once the iGPU device shows up as well.

 

Everything else has been VERY smooth. Frankly I expected more issues and have been pleasantly surprised. Got a week left on my trial and about to buy my license.

Link to comment
On 6/22/2020 at 8:15 AM, nonikka said:

Hello lukeoslavia, could you tell me about the CPU usage when hw transcoding ? for me it takes 40~50% for a 4k h264 96631 kbps video, I thing it is too high and want to know the normal situation, thanks.

image.png.aa4609283dbc2f075ddf7323ae515bba.pngimage.thumb.png.9dba5eb2d59133951e228d076db1138f.png

TLDR: I have not seen processor utilization that high with transcoding so far.

 

Unfortunately, I don't have any 4k media in h.264 any more, it's all in HEVC (h.265) now. But I did test a couple of those.

 

H.265 -> h.264 seems to be the most taxing scenario for the processor. While converting a 1080p 15kbps h.264 down to 8kbps, I also transcoded a 4k HEVC 30kbps video down to 1080p 10kbps and the processor was ~ 17-20% during the entire transcode process for both of them.

 

So far I haven't seen it break a sweat any more than that unless i'm doing other tasks as well, this thing is kind of amazing for emby transcoding if you turn off the transcode throttle and just let it do the whole video all at once.

 

The only other thing I can say about 4k transcoding is it's almost always a bear so I limit 4k playback to devices I know can support direct playback.

 

Also, this is just a wild guess because I know very little about where Jellyfin is these days, but I wonder if their ffmpeg builds are the same as the builds emby uses and if that could cause some extra cpu usage.

Link to comment
On 6/23/2020 at 5:45 PM, keiser said:

Thanks to the brave souls willing to make the jump and test the 6.9 beta. I did end up using my 2 port gigabit card and am running on that, but it'll be nice to get the extra unneeded card out and use the onboard port once 6.9 is released. Hopefully I can get Plex to transcode once the iGPU device shows up as well.

 

Everything else has been VERY smooth. Frankly I expected more issues and have been pleasantly surprised. Got a week left on my trial and about to buy my license.

I don't know exactly what the difference is, but this also seems to be a gigabyte issue. I loved the i5 enough that I also decided to gift myself a new SFF i5 build for my gaming rig and went with the Gigabyte z490i Aorus Ultra itx motherboard. I had to use wifi to connect and get nic drivers. That's for a windows 10 build too which shocked the heck out of me to see it wasn't already playing nice.

 

I'm not sure with the ASROCK board in my Unraid machine though as the nic showed up in the current release, but I use a 10g mellanox card instead so it may not have actually been functional. I also saw the same issue discussed in some reviews of their new LGA 1200 boards.

Link to comment
On 6/27/2020 at 12:30 AM, lukeoslavia said:

TLDR: I have not seen processor utilization that high with transcoding so far.

 

Unfortunately, I don't have any 4k media in h.264 any more, it's all in HEVC (h.265) now. But I did test a couple of those.

 

H.265 -> h.264 seems to be the most taxing scenario for the processor. While converting a 1080p 15kbps h.264 down to 8kbps, I also transcoded a 4k HEVC 30kbps video down to 1080p 10kbps and the processor was ~ 17-20% during the entire transcode process for both of them.

 

So far I haven't seen it break a sweat any more than that unless i'm doing other tasks as well, this thing is kind of amazing for emby transcoding if you turn off the transcode throttle and just let it do the whole video all at once.

 

The only other thing I can say about 4k transcoding is it's almost always a bear so I limit 4k playback to devices I know can support direct playback.

 

Also, this is just a wild guess because I know very little about where Jellyfin is these days, but I wonder if their ffmpeg builds are the same as the builds emby uses and if that could cause some extra cpu usage.

thanks,I think maybe the subtitle transcode use cpu

Link to comment
  • 1 month later...

So being a real newbie, with no real idea how to do scripts etc, so not wanting to have to delve into that level to get things to work.

I am looking at the i5 10 gen and reading these post it looks like things are not working to well with unraid at the moment?

 

Again like most I am wanting to build a system to mainly use as a plex server. I wont require much more than 2 - 4 transcodes.

I think i may get interested in dockers esp radarr/sonarr/sab etc. and if i get brave some VM to maybe run windows.

 

I am not a gamer, and would look for around capacity to have about 10 drives +.

 

Need suggestions of complete setup......I am looking at a budget of about AUD$2k... this will not include storage drives, but cache nvem drives.

 

Any help in suggestions...I am hearing intel is better than amd for ease of off the shelf working.

Link to comment
  • 4 weeks later...

@lukeoslavia Not sure if you're still around but would love to know what you did to get 10th gen GPU passthrough.

 

I've got a i9-10900 (not K, not F, just plain 10900).  It has the UDH630 iGPU

 

my go and sysconfig:

root@15620-BEAST:~# more /boot/config/go
#!/bin/bash
# Start the Management Utility
/usr/local/sbin/emhttp &

#sensor chip drivers
modprobe coretemp
modprobe nct6775

modprobe i915
chmod -R 777 /dev/dri



root@15620-BEAST:~# more /boot/syslinux/syslinux.cfg
default menu.c32
menu title Lime Technology, Inc.
prompt 0
timeout 50
label Unraid OS
  menu default
  kernel /bzimage
  append pcie_acs_override=downstream,multifunction initrd=/bzroot i915.alpha_support=1
label Unraid OS GUI Mode
  kernel /bzimage
  append pcie_acs_override=downstream,multifunction initrd=/bzroot,/bzroot-gui i915.alpha_support=1
label Unraid OS Safe Mode (no plugins, no GUI)
  kernel /bzimage
  append initrd=/bzroot unraidsafemode
label Unraid OS GUI Safe Mode (no plugins)
  kernel /bzimage
  append initrd=/bzroot,/bzroot-gui unraidsafemode
label Memtest86+
  kernel /memtest

Anything I'm missing?  No /dev/dri directory after reboot and multi monitor is set to enabled and GPU is set to Auto in the BIOS.  Also tried to set GPU to CPU Graphics with no luck

 

root@15620-BEAST:~# ls /dev/dri
/bin/ls: cannot access '/dev/dri': No such file or directory

 

 

Link to comment

@johnny2678,  I was able to get it working -   You don't mention whether you are on the Beta Unraid.   You need to be on the 6.9.0 beta to have /dev/dri show up with the 10th gen CPUs....   Assuming you are, here's what I'm running with, which is just a little diff from what you have.

 

Go file:
#!/bin/bash
#enable module for iGPU and perms for the render device
modprobe i915
sleep 4
chown -R nobody:users /dev/dri
chmod -R 777 /dev/dri

# Start the Management Utility
/usr/local/sbin/emhttp &



Syslinux pertinant line (I only have this setup for regular boot, non gui mode, but shouldn't matter)
append kvm-intel.nested=1 pcie_acs_override=downstream,multifunction initrd=/bzroot

You don't need the "i915.alpha_support=1" - although it shouldn't make a difference either way.

For bios - try also plugging in a monitor if you haven't already, and turning that on prior to boot....  Just another thing you can try.

 

Edit: added full Go file, to avoid confusion

 

Edited by konaboy
Edit: added full Go file, to avoid confusion
  • Like 2
Link to comment
  • 1 month later...

Guys I have /dev/dri showing up fine on boot, and it also shows up in the jellyfin docker which I configured to enable HW transcoding... however, I cannot get the HW transcode to work... Did you make it work with Jellyfin, or are you using some other tool?

 

Uraid 6.9.0 beta - go file:

#!/bin/bash
# Start the Management Utility
modprobe i915
chmod -R 777 /dev/dri
chown -R nobody:users /dev/dri
/usr/local/sbin/emhttp &

 

Inside the jellyfin docker:

root@e561ea4f8fc0:/# ls -la /dev/dri
total 0
drwxr-xr-x 2 root root        80 Nov  1 20:38 .
drwxr-xr-x 6 root root       360 Nov  1 20:38 ..
crw-rw---- 1 root    18 226,   0 Nov  1 20:38 card0
crwxrwxrwx 1   99 users 226, 128 Nov  1 20:38 renderD12

Error I get in jellyfin:

[AVHWDeviceContext @ 0x55b0757b6300] libva: /usr/lib/jellyfin-ffmpeg/lib/dri/i965_drv_video.so init failed
[AVHWDeviceContext @ 0x55b0757b6300] Failed to initialise VAAPI connection: -1 (unknown libva error).
Device creation failed: -5.
Failed to set value '/dev/dri/renderD128' for option 'vaapi_device': Input/output error
Error parsing global options: Input/output error

Any hints please?

Link to comment
  • 3 weeks later...
On 11/1/2020 at 12:03 PM, sir_storealot said:

Guys I have /dev/dri showing up fine on boot, and it also shows up in the jellyfin docker which I configured to enable HW transcoding... however, I cannot get the HW transcode to work... Did you make it work with Jellyfin, or are you using some other tool?

 

Having similar issues.  Had hardware acceleration running in 6.8.3 with an i3-8100.  Upgraded to an i7-9700k and now Plex, and Viseron (CCTV video object detection) lost hardware acceleration (with no modifications to Unraid).  The BIOS did get reset when I changed the CPU, but I have unraid booting on the iGPU again now.  But I guess it still could be something set wrong in the BIOS.  /dev/dri showing up fine, but non of the dockers can access VAAPI. 

 

Upgraded to 6.9.0 Beta 35 this morning thinking that the new kernel would include new enough drivers for the UHD 630 module.  Still no luck.  /dev/dri/ still showing up fine, and visible to the containers.

 

Not a 10th gen CPU issue like OP, but the delineation seems to be between 8th generation and 9th/10th. There is one successful report above of it working.  Anyone have suggestions of what else I could try?

 

Run at root console:

lspci -kvnn
00:02.0 VGA compatible controller [0300]: Intel Corporation UHD Graphics 630 (Desktop 9 Series) [8086:3e98] (rev 02) (prog-if 00 [VGA controller])
        DeviceName: Onboard - Video
        Subsystem: Gigabyte Technology Co., Ltd Device [1458:d000]
        Flags: bus master, fast devsel, latency 0, IRQ 146, IOMMU group 2
        Memory at a4000000 (64-bit, non-prefetchable) [size=16M]
        Memory at 80000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 4000 [size=64]
        Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
        Capabilities: [40] Vendor Specific Information: Len=0c <?>
        Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
        Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [d0] Power Management version 2
        Capabilities: [100] Process Address Space ID (PASID)
        Capabilities: [200] Address Translation Service (ATS)
        Capabilities: [300] Page Request Interface (PRI)
        Kernel driver in use: i915
        Kernel modules: i915

Run in docker:

# ls -al /dev/dri
total 0
drwxr-xr-x  2 root root       80 Nov 17 22:27 .
drwxr-xr-x 13 root root     3320 Nov 17 22:27 ..
crwxrwxrwx  1 root   18 226,   0 Nov 17 22:27 card0
crwxrwxrwx  1 root   18 226, 128 Nov 17 22:27 renderD128
# vainfo
error: XDG_RUNTIME_DIR not set in the environment.
error: can't connect to X server!
libva info: VA-API version 1.1.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_1
libva error: /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so init failed
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
#

 

Edited by Jurykov
Added info
Link to comment
On 11/17/2020 at 1:30 PM, Jurykov said:

Having similar issues.  ...

 

Not a 10th gen CPU issue like OP, but the delineation seems to be between 8th generation and 9th/10th. There is one successful report above of it working.  Anyone have suggestions of what else I could try?

 

Run at root console:


lspci -kvnn
00:02.0 VGA compatible controller [0300]: Intel Corporation UHD Graphics 630 (Desktop 9 Series) [8086:3e98] (rev 02) (prog-if 00 [VGA controller])
        DeviceName: Onboard - Video
        Subsystem: Gigabyte Technology Co., Ltd Device [1458:d000]
        Flags: bus master, fast devsel, latency 0, IRQ 146, IOMMU group 2
        Memory at a4000000 (64-bit, non-prefetchable) [size=16M]
        Memory at 80000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 4000 [size=64]
        Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
        Capabilities: [40] Vendor Specific Information: Len=0c <?>
        Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
        Capabilities: [ac] MSI: Enable+ Count=1/1 Maskable- 64bit-
        Capabilities: [d0] Power Management version 2
        Capabilities: [100] Process Address Space ID (PASID)
        Capabilities: [200] Address Translation Service (ATS)
        Capabilities: [300] Page Request Interface (PRI)
        Kernel driver in use: i915
        Kernel modules: i915

Run in docker:


# ls -al /dev/dri
total 0
drwxr-xr-x  2 root root       80 Nov 17 22:27 .
drwxr-xr-x 13 root root     3320 Nov 17 22:27 ..
crwxrwxrwx  1 root   18 226,   0 Nov 17 22:27 card0
crwxrwxrwx  1 root   18 226, 128 Nov 17 22:27 renderD128
# vainfo
error: XDG_RUNTIME_DIR not set in the environment.
error: can't connect to X server!
libva info: VA-API version 1.1.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_1
libva error: /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so init failed
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
#

 

I suspect you are running into a problem that I saw when trying to use Tdarr with these newer CPUs..       Here's two links that show my issue, and what needs to be updated in the docker. 

 

Shows same vainfo output you are getting:

https://discordapp.com/channels/623392507828371476/623799920574595092/748901930444783706

 

And what the fix [probably] is - both my update, and a followon from user ProZach in Discord:

https://discordapp.com/channels/623392507828371476/623799920574595092/748901930444783706

 

This link https://wiki.archlinux.org/index.php/Hardware_video_acceleration describes the different VA-API driver needed (intel-media-driver, vs libva-intel-driver) in the linux docker....

 

Ahhh - and maybe this will help you:  https://forums.plex.tv/t/pms-ignores-libva-driver-name-environment-variable/498999

 

I run Plex in a Windows 10 VM on my Unraid - and use an Nvidia card for acceleration, so I haven't run into this...   Let us know if this helps you.

Link to comment
  • 2 months 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.