Frigate NVR - akceleracja Coral TPU z lokalnym AI

tak czytalem to ale właczyłem i dzialalo, tylko to chciałem sprawdzic

zrobilem i mam taki odzew:


root@XPENOLOGY_DELL:/volume1/docker# ls
apex.ko  coral  @eaDir  frigate  frigate2  gasket.ko
root@XPENOLOGY_DELL:/volume1/docker# insmod gasket.ko
insmod: ERROR: could not insert module gasket.ko: Invalid module format
root@XPENOLOGY_DELL:/volume1/docker# insmod apex.ko
insmod: ERROR: could not insert module apex.ko: Invalid module format

Jeszcze raz dla pewności:

/$ uname -a
root@XPENOLOGY_DELL:/volume1/docker# uname -a
Linux XPENOLOGY_DELL 4.4.59+ #25426 SMP PREEMPT Mon Dec 14 18:48:50 CST 2020 x86_64 GNU/Linux synology_apollolake_918+

insmod gasket.ko

potem pokaż co pokazuje dmesg .
Oczywiscie wszystkie polecenia wykonujesz z poziomu użytkownika root

no juz to ismod robilem

dsmeg nie ma w ogole


root@XPENOLOGY_DELL:/volume1/docker# insmod gasket.ko
insmod: ERROR: could not insert module gasket.ko: Invalid module format
root@XPENOLOGY_DELL:/volume1/docker# dsmeg
-ash: dsmeg: command not found
root@XPENOLOGY_DELL:/volume1/docker# lsmod
Module                  Size  Used by
tcm_loop               12940  1
iscsi_target_mod      236522  1
target_core_ep         44622  2
target_core_multi_file    26766  1
target_core_file       41362  1
target_core_iblock     19769  1
target_core_mod       929914  18 target_core_iblock,target_core_multi_file,iscsi_target_mod,target_core_ep,target_core_file,tcm_loop
syno_extent_pool     1296536  0
cifs                  372254  0
rodsp_ep               76931  3 target_core_multi_file,syno_extent_pool,target_core_file
udf                    80226  0
isofs                  31403  0
loop                   19749  0
hid_generic             1321  0
usbhid                 26079  0
hid                    94408  2 hid_generic,usbhid
usblp                  10618  0
uhci_hcd               22683  0
ehci_pci                3999  0
ehci_hcd               42414  1 ehci_pci
apollolake_synobios    68252  0
ax88179_178a           15422  0
usbnet                 20745  1 ax88179_178a
tg3                   154417  0
cnic                   55581  0
bnx2                   74941  0
vmxnet3                42959  0
pcnet32                31986  0
e1000                 100121  0
sfc                   218790  0
netxen_nic             99003  0
qlge                   79767  0
qlcnic                265808  0
qla3xxx                37457  0
sky2                   48579  0
skge                   30856  0
jme                    34901  0
uio                     8037  1 cnic
alx                    28387  0
atl1c                  35074  0
atl1e                  28714  0
atl1                   31075  0
libphy                 23937  1 tg3
mii                     4035  5 jme,atl1,usbnet,pcnet32,ax88179_178a
exfat                 117655  0
btrfs                 956366  1
syscopyarea             3262  0
sysfillrect             3754  0
sysimgblt               2239  0
fb_sys_fops             1314  0
cfbfillrect             3818  0
cfbcopyarea             3326  0
cfbimgblt               2303  0
drm_panel_orientation_quirks     3601  0
iosf_mbi                4234  0
fb                     34563  0
fbdev                    966  1 fb
video                  25321  0
backlight               6096  1 video
button                  4756  0
synoacl_vfs            15727  1
hfsplus                92438  0
md4                     4337  0
hmac                    2961  0
r8168                 522467  0
ixgbe                 195514  0
igb                   173575  0
i2c_algo_bit            5328  1 sfc
e1000e                168333  0
vxlan                  32753  0
ip6_udp_tunnel          1903  1 vxlan
udp_tunnel              2355  1 vxlan
fuse                   85163  0
vfat                   10351  0
fat                    53904  1 vfat
crc32c_intel           12849  1
aesni_intel           157811  0
glue_helper             3893  1 aesni_intel
lrw                     3541  1 aesni_intel
gf128mul                5546  1 lrw
ablk_helper             1948  1 aesni_intel
arc4                    2040  0
cryptd                  7882  2 aesni_intel,ablk_helper
ecryptfs               78536  1 btrfs
sha256_generic         11993  0
ecb                     2113  0
aes_x86_64              7503  1 aesni_intel
authenc                 4076  0
des_generic            16861  0
ansi_cprng              3940  0
cts                     4136  0
md5                     2833  0
cbc                     2712  0
cpufreq_powersave       1126  0
cpufreq_performance     1130  4
acpi_cpufreq            6495  0
processor              23367  5 acpi_cpufreq
cpufreq_stats           2742  0
dm_snapshot            28295  0
dm_bufio               14214  1 dm_snapshot
crc_itu_t               1467  1 udf
crc_ccitt               1467  0
quota_v2                4047  0
quota_tree              7850  1 quota_v2
psnap                   1917  0
p8022                   1179  0
llc                     3569  2 p8022,psnap
sit                    15812  0
tunnel4                 2261  1 sit
ip_tunnel              13200  1 sit
ipv6                  336006  54 sit,cnic
zram                   19042  2
sg                     26457  0
etxhci_hcd             86330  0
rtc_cmos                9192  2
mdio                    3127  3 alx,sfc,ixgbe
mpt3sas               198135  0
raid_class              3572  1 mpt3sas
scsi_transport_sas     24739  1 mpt3sas
megaraid_sas          111352  0
megaraid               43585  0
mptctl                 26245  0
mptspi                 13124  0
mptscsih               18913  1 mptspi
mptbase                63234  3 mptctl,mptspi,mptscsih
scsi_transport_spi     19223  1 mptspi
megaraid_mbox          28928  0
megaraid_mm             7952  1 megaraid_mbox
vmw_pvscsi             15470  0
BusLogic               21973  0
usb_storage            49426  0
xhci_pci                4650  0
xhci_hcd              104955  1 xhci_pci
usbcore               198691  13 etxhci_hcd,usblp,uhci_hcd,usb_storage,ehci_hcd,ehci_pci,usbhid,usbnet,ax88179_178a,xhci_hcd,xhci_pci
usb_common              2222  1 usbcore
uu                     19564  0
root@XPENOLOGY_DELL:/volume1/docker#

Może to kwestia uprawnień do katalogów.
W Syno jest to szczególnie ważne.

Pewnie chodzi jednak o dmesg

1 polubienie

Troche dziwne bo w tym watku pokazują wyniki z dsmeg - https://community.synology.com/enu/forum/17/post/19279, tylko to dotyczy starej wersji ale wątpię w to żeby tego nie było w nowszym wydaniu.

Jeszcze pomocna będzi etaka komenda:

modinfo /katalog/do/modułu/gasket.ko

Proponuję także poszukac w systemie katalogu w którym są pozostałem moduly *.ko i tak wgrać te dwa skompilowane.

@Stravi już wyjaśnił

dsmeg != dmesg

dmesg = diagnostic message
dsmeg = ???

:wink:

Teraz zauważyłem różnicę, poprawiłem posta.

dmesg dziala i jest bardzo dlugi nie moge go wrzucic w jednym poście,
a czego w nim szukamy?
to dwie ostatnie linijki na czerwono są:


[  531.172258] gasket: version magic '4.4.59 SMP preempt mod_unload ' should be '4.4.59+ SMP preempt mod_unload '
[  826.661936] apex: version magic '4.4.59 SMP preempt mod_unload ' should be '4.4.59+ SMP preempt mod_unload '

przenioslem do innych *.ko /usr/lib/modules
i tez nie mozna zainstalowac

root@XPENODELL:/usr/lib/modules# insmod gasket.ko
insmod: ERROR: could not insert module gasket.ko: Invalid module format

modinfo

root@XPENODELL:/usr/lib/modules# modinfo gasket.ko
-ash: modinfo: command not found

Jest rożnica, jest skompilowany dla 4.4.59 SMP a powinien być dla 4.4.59*+* SMP, weryfikuję dalej …

2 polubienia

@bartik22 czy po instalacji Synology robiłeś jakiś update? Na forach czasami ludzie piszą, że mają wersję np. “I am on DSM 6.2.2-24922 Update 3”

Mam dokładnie tak:
DSM 6.2.3-25426 Update 3

Któryś z update’ow wprowadza poprawkę do jądra stąd jest plus na końcu, nie potrafię wgrać tej poprawki do jądra (nie potrafię znaleźć tej proprawki w archiwum Synology), stąd pomysł abyś spróbował zainstalować tak Synology aby po wydaniu polecenia uname -a pojawiło się 4.4.59 bez tego “+”.

ja nie updatowałem :frowning:
to juz jest w tym DSM_DS918+_25426.pat

zobacz to:
https://xpenology.com/forum/topic/28321-driver-extension-jun-103b104b-for-dsm623-for-918-3615xs-3617xs/?do=findComment&comment=186738

coś piszą żeby dodać plusa …?

Informacyjnie: dyskusja toczyła się dalej wspólnego z @bartik22, ostatecznie udało mi się skompilować moduły pod platformę jakiej używa @bartik22.

Panowie @Cezary.K i @bartik22 dziękuje za cenne dodatkowe informacje, które przyczyniły się do tego sukcesu. Jak widać nie trzeba czegoś używać, mieć aby rozwiązywać problemy z tym związane :grinning:.

Pomocne artykuły:

https://hallard.me/how-to-install-kernel-modules-on-synology-ds1010-dsm-4-1/

źródła Synology - Synology Open Source Project download | SourceForge.net albo Synology Archive Download Site - Index of /download
polecenia:

tar xvf gasket.tar.gz -C /usr/local/src/linux-4.4.x/drivers/staging/gasket
cd linux-4.4.x/
cp synoconfigs/apollolake .config
alias dsm6make='make ARCH=x86_64 CROSS_COMPILE=/usr/local/src/x86_64-pc-linux-gnu/bin/x86_64-pc-linux-gnu-'
# zmodyfikować pliki Kconfig i Makefile w /usr/local/src/linux-4.4.x/drivers/staging aby móc dodać gaspet jako moduł do jądra. 
dsm6make menuconfig
dsm6make modules
dsm6make M=drivers/staging/gasket/
#copy file
insmod gasket.ko
insmod apex.ko

3 polubienia

Bardzo dziekujemy za pomoc. Czekam na zamówiony TPU Coral pod PCI-e x1. Ja prawdopodobnie będę go uruchamiał pod Linux (bare metal). Dobrze wiedzieć, że jest możliwość uruchomienia Frigate ze wsparciem Coral PCI na Synology.
:clap:

Wielkie dzięki @macek za poświęcony czas i pomoc zakończoną sukcesem :+1:

System już widzi Corala i działa jak ta lala… 6,5 - 7ms !

bdbtr

Ciekawostka: