See:
Hi
I can now proudly present the „eAIPU“
cannot Post a Photo … the Forum Software does Not Like Photos
-[0000:00]-+-00.0 Advanced Micro Devices, Inc. [AMD] Strix/Strix Halo Root Complex
+-00.2 Advanced Micro Devices, Inc. [AMD] Strix/Strix Halo IOMMU
+-01.0 Advanced Micro Devices, Inc. [AMD] Strix/Strix Halo Dummy Host Bridge
+-01.1-[01-60]--
+-01.2-[61-c0]----00.0-[62-c0]--+-01.0-[63-91]--
| +-02.0-[92]----00.0 Intel Corporation JHL7440 Thunderbolt 3 USB Controller [Titan Ridge DD 2018]
| \-04.0-[93-c0]--
+-02.0 Advanced Micro Devices, Inc. [AMD] Strix/Strix Halo Dummy Host Bridge
+-02.1-[c1]----00.0 Samsung Electronics Co Ltd NVMe SSD Controller S4LV008[Pascal]
+-02.2-[c2]----00.0 Sandisk Corp SN8000S NVMe SSD
+-02.3-[c3]----00.0 MEDIATEK Corp. Device 7925
+-02.4-[c4]----00.0 Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller
+-02.5-[c5]----00.0 Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller
+-03.0 Advanced Micro Devices, Inc. [AMD] Strix/Strix Halo Dummy Host Bridge
+-03.2-[c6]----00.0 Samsung Electronics Co Ltd NVMe SSD Controller S4LV008[Pascal]
+-08.0 Advanced Micro Devices, Inc. [AMD] Strix/Strix Halo Dummy Host Bridge
+-08.1-[c7]--+-00.0 Advanced Micro Devices, Inc. [AMD/ATI] Strix [Radeon 880M / 890M]
| +-00.1 Advanced Micro Devices, Inc. [AMD/ATI] Radeon High Definition Audio Controller [Rembrandt/Strix]
| +-00.2 Advanced Micro Devices, Inc. [AMD] Strix/Krackan/Strix Halo CCP/ASP
| +-00.4 Advanced Micro Devices, Inc. [AMD] Device 151e
| +-00.6 Advanced Micro Devices, Inc. [AMD] Family 17h/19h/1ah HD Audio Controller
| \-00.7 Advanced Micro Devices, Inc. [AMD] Sensor Fusion Hub
+-08.2-[c8]--+-00.0 Advanced Micro Devices, Inc. [AMD] Strix/Strix Halo PCIe Dummy Function
| \-00.1 Advanced Micro Devices, Inc. [AMD] Strix/Krackan/Strix Halo Neural Processing Unit
+-08.3-[c9]--+-00.0 Advanced Micro Devices, Inc. [AMD] Device 151f
| +-00.3 Advanced Micro Devices, Inc. [AMD] Device 151a
| +-00.4 Advanced Micro Devices, Inc. [AMD] Device 151b
| +-00.5 Advanced Micro Devices, Inc. [AMD] USB4 Router 0
| \-00.6 Advanced Micro Devices, Inc. [AMD] USB4 Router 1
+-14.0 Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller
+-14.3 Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge
+-18.0 Advanced Micro Devices, Inc. [AMD] Strix Data Fabric; Function 0
+-18.1 Advanced Micro Devices, Inc. [AMD] Strix Data Fabric; Function 1
+-18.2 Advanced Micro Devices, Inc. [AMD] Strix Data Fabric; Function 2
+-18.3 Advanced Micro Devices, Inc. [AMD] Strix Data Fabric; Function 3
+-18.4 Advanced Micro Devices, Inc. [AMD] Strix Data Fabric; Function 4
+-18.5 Advanced Micro Devices, Inc. [AMD] Strix Data Fabric; Function 5
+-18.6 Advanced Micro Devices, Inc. [AMD] Strix Data Fabric; Function 6
\-18.7 Advanced Micro Devices, Inc. [AMD] Strix Data Fabric; Function 7
can not find device :(
it must be that ::::
+-01.1-[01-60]--
+-01.2-[61-c0]----00.0-[62-c0]--+-01.0-[63-91]--
| +-02.0-[92]----00.0 Intel Corporation JHL7440 Thunderbolt 3 USB Controller [Titan Ridge DD 2018]
| \-04.0-[93-c0]--
unknow architecture exit
Makefile:32: *** Unsupported architecture: unknown "". Schluss.
on voyager-sdk operators clobber-libs
from Makefile in root dir:
HOST_ARCH := $(shell uname -m)it’s an x86_64 AMD
(rootdir)/operators/Makefile
ARCH := $(shell uname -p)
should be:
ARCH := $(shell uname -m)
and
Firmware Flasher - Extracting files...
Extracting firmware files...
Files extracted successfully!
Starting firmware flashing sequence...
Step 1: Loading bootloader update...
timeout: der Befehl ‘triton_trace’ konnte nicht ausgeführt werden: Datei oder Verzeichnis nicht gefunden
./enable_bootloader_update.sh: Zeile 4622: triton_trace: Kommando nicht gefunden.
./enable_bootloader_update.sh: Zeile 4623: triton_multi_ctx: Kommando nicht gefunden.
i got some error
wget https://axelera-public.s3.eu-central-1.amazonaws.com/built_metis_firmware/voyager-sdk-v1.2.0/firmware_release_public_v1.2.0.tar.gz
--2025-12-22 19:44:16-- https://axelera-public.s3.eu-central-1.amazonaws.com/built_metis_firmware/voyager-sdk-v1.2.0/firmware_release_public_v1.2.0.tar.gz
Auflösen des Hostnamens axelera-public.s3.eu-central-1.amazonaws.com (axelera-public.s3.eu-central-1.amazonaws.com)… 3.5.137.123, 52.219.171.194, 52.219.208.14, ...
Verbindungsaufbau zu axelera-public.s3.eu-central-1.amazonaws.com (axelera-public.s3.eu-central-1.amazonaws.com)|3.5.137.123|:443 … verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 403 Forbidden
2025-12-22 19:44:17 FEHLER 403: Forbidden.
an error log
building operators
make[1]: Verzeichnis „/home/florit/voyager-sdk/operators“ wird betreten
rm -rf Release /home/florit/voyager-sdk/operators/lib onnxruntime/onnxruntime-linux-x64-1.17.1 onnxruntime/onnxruntime-linux-x64-1.17.1.tgz onnxruntime/onnxruntime
make[1]: Verzeichnis „/home/florit/voyager-sdk/operators“ wird verlassen
make[1]: Verzeichnis „/home/florit/voyager-sdk/trackers“ wird betreten
rm -rf Debug Release
make[1]: Verzeichnis „/home/florit/voyager-sdk/trackers“ wird verlassen
make[1]: Verzeichnis „/home/florit/voyager-sdk/examples“ wird betreten
rm -rf Release
make[1]: Verzeichnis „/home/florit/voyager-sdk/examples“ wird verlassen
make -C operators
make[1]: Verzeichnis „/home/florit/voyager-sdk/operators“ wird betreten
mkdir -p onnxruntime
(cd onnxruntime && wget https://github.com/microsoft/onnxruntime/releases/download/v1.17.1/onnxruntime-linux-x64-1.17.1.tgz && tar -xzf onnxruntime-linux-x64-1.17.1.tgz) || (cd .. && rm -rf Release /home/florit/voyager-sdk/operators/lib onnxruntime/onnxruntime-linux-x64-1.17.1 onnxruntime/onnxruntime-linux-x64-1.17.1.tgz onnxruntime/onnxruntime && exit 1)
--2025-12-22 20:25:23-- https://github.com/microsoft/onnxruntime/releases/download/v1.17.1/onnxruntime-linux-x64-1.17.1.tgz
Auflösen des Hostnamens github.com (github.com)… 140.82.121.3
Verbindungsaufbau zu github.com (github.com)|140.82.121.3|:443 … verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 302 Found
Platz: https://release-assets.githubusercontent.com/github-production-release-asset/156939672/5f1b36d4-fdd2-4923-880d-5514cf58a4c9?sp=r&sv=2018-11-09&sr=b&spr=https&se=2025-12-22T20%3A11%3A25Z&rscd=attachment%3B+filename%3Donnxruntime-linux-x64-1.17.1.tgz&rsct=application%2Foctet-stream&skoid=96c2d410-5711-43a1-aedd-ab1947aa7ab0&sktid=398a6654-997b-47e9-b12b-9515b896b4de&skt=2025-12-22T19%3A10%3A30Z&ske=2025-12-22T20%3A11%3A25Z&sks=b&skv=2018-11-09&sig=6ryIFZy7%2FzDcin8soC1DWYo8lxgv1HNcaQERoWP4axQ%3D&jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmVsZWFzZS1hc3NldHMuZ2l0aHVidXNlcmNvbnRlbnQuY29tIiwia2V5Ijoia2V5MSIsImV4cCI6MTc2NjQzMTgyNCwibmJmIjoxNzY2NDMxNTI0LCJwYXRoIjoicmVsZWFzZWFzc2V0cHJvZHVjdGlvbi5ibG9iLmNvcmUud2luZG93cy5uZXQifQ.e8OJdIJfn4SHNK6EvfWWvcCsptg7utZR9HVUouOLGH8&response-content-disposition=attachment%3B%20filename%3Donnxruntime-linux-x64-1.17.1.tgz&response-content-type=application%2Foctet-stream [folgend]
--2025-12-22 20:25:24-- https://release-assets.githubusercontent.com/github-production-release-asset/156939672/5f1b36d4-fdd2-4923-880d-5514cf58a4c9?sp=r&sv=2018-11-09&sr=b&spr=https&se=2025-12-22T20%3A11%3A25Z&rscd=attachment%3B+filename%3Donnxruntime-linux-x64-1.17.1.tgz&rsct=application%2Foctet-stream&skoid=96c2d410-5711-43a1-aedd-ab1947aa7ab0&sktid=398a6654-997b-47e9-b12b-9515b896b4de&skt=2025-12-22T19%3A10%3A30Z&ske=2025-12-22T20%3A11%3A25Z&sks=b&skv=2018-11-09&sig=6ryIFZy7%2FzDcin8soC1DWYo8lxgv1HNcaQERoWP4axQ%3D&jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmVsZWFzZS1hc3NldHMuZ2l0aHVidXNlcmNvbnRlbnQuY29tIiwia2V5Ijoia2V5MSIsImV4cCI6MTc2NjQzMTgyNCwibmJmIjoxNzY2NDMxNTI0LCJwYXRoIjoicmVsZWFzZWFzc2V0cHJvZHVjdGlvbi5ibG9iLmNvcmUud2luZG93cy5uZXQifQ.e8OJdIJfn4SHNK6EvfWWvcCsptg7utZR9HVUouOLGH8&response-content-disposition=attachment%3B%20filename%3Donnxruntime-linux-x64-1.17.1.tgz&response-content-type=application%2Foctet-stream
Auflösen des Hostnamens release-assets.githubusercontent.com (release-assets.githubusercontent.com)… 185.199.109.133, 185.199.111.133, 185.199.108.133, ...
Verbindungsaufbau zu release-assets.githubusercontent.com (release-assets.githubusercontent.com)|185.199.109.133|:443 … verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 200 OK
Länge: 5783432 (5,5M) [application/octet-stream]
Wird in »onnxruntime-linux-x64-1.17.1.tgz« gespeichert.
0K .......... .......... .......... .......... .......... 0% 1,47M 4s
50K .......... .......... .......... .......... .......... 1% 2,88M 3s
100K .......... .......... .......... .......... .......... 2% 8,32M 2s
150K .......... .......... .......... .......... .......... 3% 7,07M 2s
200K .......... .......... .......... .......... .......... 4% 4,05M 2s
250K .......... .......... .......... .......... .......... 5% 4,23M 2s
300K .......... .......... .......... .......... .......... 6% 7,15M 1s
350K .......... .......... .......... .......... .......... 7% 3,98M 1s
400K .......... .......... .......... .......... .......... 7% 9,03M 1s
450K .......... .......... .......... .......... .......... 8% 4,40M 1s
500K .......... .......... .......... .......... .......... 9% 7,95M 1s
550K .......... .......... .......... .......... .......... 10% 4,12M 1s
600K .......... .......... .......... .......... .......... 11% 7,65M 1s
650K .......... .......... .......... .......... .......... 12% 7,53M 1s
700K .......... .......... .......... .......... .......... 13% 8,69M 1s
750K .......... .......... .......... .......... .......... 14% 4,21M 1s
800K .......... .......... .......... .......... .......... 15% 7,75M 1s
850K .......... .......... .......... .......... .......... 15% 8,04M 1s
900K .......... .......... .......... .......... .......... 16% 2,24M 1s
950K .......... .......... .......... .......... .......... 17% 46,9M 1s
1000K .......... .......... .......... .......... .......... 18% 4,54M 1s
1050K .......... .......... .......... .......... .......... 19% 433K 1s
1100K .......... .......... .......... .......... .......... 20% 4,64M 1s
1150K .......... .......... .......... .......... .......... 21% 1,72M 1s
1200K .......... .......... .......... .......... .......... 22% 81,6M 1s
1250K .......... .......... .......... .......... .......... 23% 27,7M 1s
1300K .......... .......... .......... .......... .......... 23% 2,15M 1s
1350K .......... .......... .......... .......... .......... 24% 1,18M 1s
1400K .......... .......... .......... .......... .......... 25% 9,18M 1s
1450K .......... .......... .......... .......... .......... 26% 100M 1s
1500K .......... .......... .......... .......... .......... 27% 8,80M 1s
1550K .......... .......... .......... .......... .......... 28% 812K 1s
1600K .......... .......... .......... .......... .......... 29% 8,04M 1s
1650K .......... .......... .......... .......... .......... 30% 67,8M 1s
1700K .......... .......... .......... .......... .......... 30% 66,3M 1s
1750K .......... .......... .......... .......... .......... 31% 2,19M 1s
1800K .......... .......... .......... .......... .......... 32% 2,49M 1s
1850K .......... .......... .......... .......... .......... 33% 9,10M 1s
1900K .......... .......... .......... .......... .......... 34% 5,18M 1s
1950K .......... .......... .......... .......... .......... 35% 10,4M 1s
2000K .......... .......... .......... .......... .......... 36% 71,4M 1s
2050K .......... .......... .......... .......... .......... 37% 3,26M 1s
2100K .......... .......... .......... .......... .......... 38% 11,6M 1s
2150K .......... .......... .......... .......... .......... 38% 8,72M 1s
2200K .......... .......... .......... .......... .......... 39% 3,94M 1s
2250K .......... .......... .......... .......... .......... 40% 72,3M 1s
2300K .......... .......... .......... .......... .......... 41% 2,77M 1s
2350K .......... .......... .......... .......... .......... 42% 8,30M 1s
2400K .......... .......... .......... .......... .......... 43% 4,25M 1s
2450K .......... .......... .......... .......... .......... 44% 89,5M 1s
2500K .......... .......... .......... .......... .......... 45% 4,33M 1s
2550K .......... .......... .......... .......... .......... 46% 9,25M 1s
2600K .......... .......... .......... .......... .......... 46% 58,1M 1s
2650K .......... .......... .......... .......... .......... 47% 9,83M 1s
2700K .......... .......... .......... .......... .......... 48% 9,53M 1s
2750K .......... .......... .......... .......... .......... 49% 3,38M 1s
2800K .......... .......... .......... .......... .......... 50% 5,14M 1s
2850K .......... .......... .......... .......... .......... 51% 11,1M 1s
2900K .......... .......... .......... .......... .......... 52% 8,35M 1s
2950K .......... .......... .......... .......... .......... 53% 48,6M 1s
3000K .......... .......... .......... .......... .......... 54% 4,76M 1s
3050K .......... .......... .......... .......... .......... 54% 33,1M 1s
3100K .......... .......... .......... .......... .......... 55% 9,05M 1s
3150K .......... .......... .......... .......... .......... 56% 2,82M 1s
3200K .......... .......... .......... .......... .......... 57% 8,02M 1s
3250K .......... .......... .......... .......... .......... 58% 8,05M 1s
3300K .......... .......... .......... .......... .......... 59% 7,47M 1s
3350K .......... .......... .......... .......... .......... 60% 56,1M 1s
3400K .......... .......... .......... .......... .......... 61% 53,8M 0s
3450K .......... .......... .......... .......... .......... 61% 12,5M 0s
3500K .......... .......... .......... .......... .......... 62% 4,24M 0s
3550K .......... .......... .......... .......... .......... 63% 5,85M 0s
3600K .......... .......... .......... .......... .......... 64% 9,91M 0s
3650K .......... .......... .......... .......... .......... 65% 8,99M 0s
3700K .......... .......... .......... .......... .......... 66% 66,4M 0s
3750K .......... .......... .......... .......... .......... 67% 8,72M 0s
3800K .......... .......... .......... .......... .......... 68% 65,1M 0s
3850K .......... .......... .......... .......... .......... 69% 2,37M 0s
3900K .......... .......... .......... .......... .......... 69% 4,27M 0s
3950K .......... .......... .......... .......... .......... 70% 175M 0s
4000K .......... .......... .......... .......... .......... 71% 10,5M 0s
4050K .......... .......... .......... .......... .......... 72% 7,50M 0s
4100K .......... .......... .......... .......... .......... 73% 67,2M 0s
4150K .......... .......... .......... .......... .......... 74% 43,7M 0s
4200K .......... .......... .......... .......... .......... 75% 64,9M 0s
4250K .......... .......... .......... .......... .......... 76% 5,18M 0s
4300K .......... .......... .......... .......... .......... 77% 2,80M 0s
4350K .......... .......... .......... .......... .......... 77% 10,4M 0s
4400K .......... .......... .......... .......... .......... 78% 48,3M 0s
4450K .......... .......... .......... .......... .......... 79% 37,4M 0s
4500K .......... .......... .......... .......... .......... 80% 6,33M 0s
4550K .......... .......... .......... .......... .......... 81% 8,11M 0s
4600K .......... .......... .......... .......... .......... 82% 54,7M 0s
4650K .......... .......... .......... .......... .......... 83% 11,4M 0s
4700K .......... .......... .......... .......... .......... 84% 7,30M 0s
4750K .......... .......... .......... .......... .......... 84% 52,3M 0s
4800K .......... .......... .......... .......... .......... 85% 4,66M 0s
4850K .......... .......... .......... .......... .......... 86% 48,0M 0s
4900K .......... .......... .......... .......... .......... 87% 37,3M 0s
4950K .......... .......... .......... .......... .......... 88% 12,2M 0s
5000K .......... .......... .......... .......... .......... 89% 7,80M 0s
5050K .......... .......... .......... .......... .......... 90% 66,6M 0s
5100K .......... .......... .......... .......... .......... 91% 11,6M 0s
5150K .......... .......... .......... .......... .......... 92% 7,25M 0s
5200K .......... .......... .......... .......... .......... 92% 7,47M 0s
5250K .......... .......... .......... .......... .......... 93% 9,38M 0s
5300K .......... .......... .......... .......... .......... 94% 68,8M 0s
5350K .......... .......... .......... .......... .......... 95% 29,8M 0s
5400K .......... .......... .......... .......... .......... 96% 6,34M 0s
5450K .......... .......... .......... .......... .......... 97% 10,6M 0s
5500K .......... .......... .......... .......... .......... 98% 9,59M 0s
5550K .......... .......... .......... .......... .......... 99% 59,4M 0s
5600K .......... .......... .......... .......... ....... 100% 65,9M=1,0s
2025-12-22 20:25:25 (5,59 MB/s) - »onnxruntime-linux-x64-1.17.1.tgz« gespeichert [5783432/5783432]
ln -snf onnxruntime-linux-x64-1.17.1 onnxruntime/onnxruntime
mkdir -p lib
for lib in onnxruntime/onnxruntime/lib/*; do ln -snf "../${lib}" lib; done
mkdir -p Release
cd Release && PKG_CONFIG_PATH=/opt/axelera/runtime-1.5.2-1/lib/pkgconfig:/opt/axelera/runtime-1.5.2-1/lib/pkgconfig:/home/florit/voyager-sdk/operators/lib/pkgconfig cmake .. -GNinja -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/home/florit/voyager-sdk/operators -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON || (cd .. && rm -rf Release /home/florit/voyager-sdk/operators/lib onnxruntime/onnxruntime-linux-x64-1.17.1 onnxruntime/onnxruntime-linux-x64-1.17.1.tgz onnxruntime/onnxruntime && exit 1)
-- The C compiler identification is GNU 14.2.0
-- The CXX compiler identification is GNU 14.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1")
-- Checking for module 'OpenCL'
-- Found OpenCL, version 3.0
-- Checking for module 'opencv4'
-- Found opencv4, version 4.10.0
-- Checking for module 'nlohmann_json'
-- Found nlohmann_json, version 3.11.3
-- Checking for module 'libva'
-- Package 'libva', required by 'virtual:world', not found
-- Found OpenCV: /usr (found version "4.10.0")
-- Found OpenCV: /usr (found suitable version "4.10.0", minimum required is "4")
-- Building bytetrack
-- Building oc_sort
-- Checking for module 'axruntime'
-- Found axruntime, version 0.8
-- Checking for modules 'libavcodec;libavformat;libswscale;libavutil'
-- Found libavcodec, version 61.19.101
-- Found libavformat, version 61.7.100
-- Found libswscale, version 8.3.100
-- Found libavutil, version 59.39.100
-- Checking for module 'gmodule-2.0'
-- Found gmodule-2.0, version 2.84.4
-- Checking for module 'glib-2.0'
-- Found glib-2.0, version 2.84.4
-- Checking for module 'gstreamer-1.0'
-- Found gstreamer-1.0, version 1.26.2
-- Checking for module 'gstreamer-video-1.0'
-- Found gstreamer-video-1.0, version 1.26.2
-- Checking for module 'glib-2.0'
-- Found glib-2.0, version 2.84.4
-- Checking for module 'gmodule-2.0'
-- Found gmodule-2.0, version 2.84.4
-- Checking for module 'gstreamer-1.0'
-- Found gstreamer-1.0, version 1.26.2
-- Checking for module 'gstreamer-base-1.0'
-- Found gstreamer-base-1.0, version 1.26.2
-- Checking for module 'gstreamer-video-1.0'
-- Found gstreamer-video-1.0, version 1.26.2
-- Checking for module 'gstreamer-allocators-1.0'
-- Found gstreamer-allocators-1.0, version 1.26.2
-- Checking for module 'opencl'
-- Package 'opencl', required by 'virtual:world', not found
-- Looking for customer components in: /home/florit/voyager-sdk/operators/../customers/*
-- Found customer directory: /home/florit/voyager-sdk/operators/../customers/tutorials
-- Including customer components: tutorials
-- Checking for module 'hailo_tappas'
-- Package 'hailo_tappas', required by 'virtual:world', not found
-- Checking for module 'gsthailometa'
-- Package 'gsthailometa', required by 'virtual:world', not found
-- Checking for module 'gmodule-2.0'
-- Found gmodule-2.0, version 2.84.4
-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
-- Checking for module 'gmock'
-- Package 'gmock', required by 'virtual:world', not found
CMake Warning at CMakeLists.txt:382 (message):
Unit tests will not be run. Please install libgtest-dev and libgmock-dev
to enable unit tests.
-- Configuring done (1.0s)
-- Generating done (0.3s)
CMake Warning:
Manually-specified variables were not used by the project:
CMAKE_VERBOSE_MAKEFILE
-- Build files have been written to: /home/florit/voyager-sdk/operators/Release
ninja -C Release install
ninja: Entering directory `Release'
[1/176] Building CXX object trackers/algorithms/bytetrack/CMakeFiles/bytetrack.dir/src/lapjv.cpp.o
[2/176] Building CXX object trackers/axtracker/CMakeFiles/axtracker.dir/src/lapjv.cpp.o
[3/176] Building CXX object trackers/algorithms/oc_sort/CMakeFiles/oc_sort.dir/src/lapjv.cpp.o
[4/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxLog.cpp.o
[5/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenClExtensions.cpp.o
FAILED: axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenClExtensions.cpp.o
/usr/bin/c++ -DAXELERA_ENABLE_AXRUNTIME -DHAVE_OPENCL -Daxstreamer_EXPORTS -I/usr/include/opencv4 -I/opt/axelera/runtime-1.5.2-1/include -I/home/florit/voyager-sdk/operators/axstreamer/include -I/opt/axelera/runtime-1.5.2-1 -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -Wno-sign-compare -Wno-unused-variable -Wimplicit-fallthrough -Wno-deprecated-enum-enum-conversion -Wno-deprecated-declarations -Wno-deprecated-anon-enum-enum-conversion -Wno-return-type-c-linkage -Wno-pessimizing-move -Wno-maybe-uninitialized -Wno-error=class-memaccess -MD -MT axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenClExtensions.cpp.o -MF axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenClExtensions.cpp.o.d -o axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenClExtensions.cpp.o -c /home/florit/voyager-sdk/operators/axstreamer/src/AxOpenClExtensions.cpp
In file included from /home/florit/voyager-sdk/operators/axstreamer/include/AxOpenClExtensions.hpp:21,
from /home/florit/voyager-sdk/operators/axstreamer/src/AxOpenClExtensions.cpp:2:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h: In function ‘std::string AxToLower(std::string_view)’:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h:60:8: error: ‘transform’ is not a member of ‘std’
60 | std::transform(s.begin(), s.end(), std::back_inserter(result),
| ^~~~~~~~~
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-return-type-c-linkage’ may have been intended to silence earlier diagnostics
cc1plus: note: unrecognized command-line option ‘-Wno-deprecated-anon-enum-enum-conversion’ may have been intended to silence earlier diagnostics
[6/176] Building CXX object trackers/algorithms/oc_sort/CMakeFiles/oc_sort.dir/src/Utilities.cpp.o
[7/176] Building CXX object trackers/algorithms/bytetrack/CMakeFiles/bytetrack.dir/src/STrack.cpp.o
[8/176] Building CXX object trackers/algorithms/oc_sort/CMakeFiles/oc_sort.dir/src/KalmanBoxTracker.cpp.o
[9/176] Building CXX object trackers/CMakeFiles/tracker_factory.dir/src/cmc.cpp.o
[10/176] Building CXX object PillowResize/src/PillowResize/CMakeFiles/PillowResize.dir/ResampleSIMDVerticalConv.cc.o
[11/176] Building CXX object PillowResize/src/PillowResize/CMakeFiles/PillowResize.dir/normalize_coeffs.cc.o
[12/176] Building CXX object trackers/axtracker/CMakeFiles/axtracker.dir/src/trackers.cpp.o
[13/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxInferenceAxRuntime.cpp.o
FAILED: axstreamer/CMakeFiles/axstreamer.dir/src/AxInferenceAxRuntime.cpp.o
/usr/bin/c++ -DAXELERA_ENABLE_AXRUNTIME -DHAVE_OPENCL -Daxstreamer_EXPORTS -I/usr/include/opencv4 -I/opt/axelera/runtime-1.5.2-1/include -I/home/florit/voyager-sdk/operators/axstreamer/include -I/opt/axelera/runtime-1.5.2-1 -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -Wno-sign-compare -Wno-unused-variable -Wimplicit-fallthrough -Wno-deprecated-enum-enum-conversion -Wno-deprecated-declarations -Wno-deprecated-anon-enum-enum-conversion -Wno-return-type-c-linkage -Wno-pessimizing-move -Wno-maybe-uninitialized -Wno-error=class-memaccess -MD -MT axstreamer/CMakeFiles/axstreamer.dir/src/AxInferenceAxRuntime.cpp.o -MF axstreamer/CMakeFiles/axstreamer.dir/src/AxInferenceAxRuntime.cpp.o.d -o axstreamer/CMakeFiles/axstreamer.dir/src/AxInferenceAxRuntime.cpp.o -c /home/florit/voyager-sdk/operators/axstreamer/src/AxInferenceAxRuntime.cpp
In file included from /home/florit/voyager-sdk/operators/axstreamer/include/AxInference.hpp:8,
from /home/florit/voyager-sdk/operators/axstreamer/src/AxInferenceAxRuntime.cpp:2:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h: In function ‘std::string AxToLower(std::string_view)’:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h:60:8: error: ‘transform’ is not a member of ‘std’
60 | std::transform(s.begin(), s.end(), std::back_inserter(result),
| ^~~~~~~~~
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-return-type-c-linkage’ may have been intended to silence earlier diagnostics
cc1plus: note: unrecognized command-line option ‘-Wno-deprecated-anon-enum-enum-conversion’ may have been intended to silence earlier diagnostics
[14/176] Building CXX object trackers/CMakeFiles/tracker_factory.dir/src/TrackerFactory.cpp.o
[15/176] Building CXX object PillowResize/src/PillowResize/CMakeFiles/PillowResize.dir/ResampleSIMDHorizontalConv.cc.o
[16/176] Building CXX object trackers/algorithms/bytetrack/CMakeFiles/bytetrack.dir/src/BYTETracker.cpp.o
[17/176] Building CXX object PillowResize/src/PillowResize/CMakeFiles/PillowResize.dir/PillowResize.cc.o
[18/176] Building CXX object trackers/algorithms/bytetrack/CMakeFiles/bytetrack.dir/src/utils.cpp.o
[19/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenCVVideoDecoder.cpp.o
[20/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxFFMpegVideoDecoder.cpp.o
[21/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxInference.cpp.o
FAILED: axstreamer/CMakeFiles/axstreamer.dir/src/AxInference.cpp.o
/usr/bin/c++ -DAXELERA_ENABLE_AXRUNTIME -DHAVE_OPENCL -Daxstreamer_EXPORTS -I/usr/include/opencv4 -I/opt/axelera/runtime-1.5.2-1/include -I/home/florit/voyager-sdk/operators/axstreamer/include -I/opt/axelera/runtime-1.5.2-1 -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -Wno-sign-compare -Wno-unused-variable -Wimplicit-fallthrough -Wno-deprecated-enum-enum-conversion -Wno-deprecated-declarations -Wno-deprecated-anon-enum-enum-conversion -Wno-return-type-c-linkage -Wno-pessimizing-move -Wno-maybe-uninitialized -Wno-error=class-memaccess -MD -MT axstreamer/CMakeFiles/axstreamer.dir/src/AxInference.cpp.o -MF axstreamer/CMakeFiles/axstreamer.dir/src/AxInference.cpp.o.d -o axstreamer/CMakeFiles/axstreamer.dir/src/AxInference.cpp.o -c /home/florit/voyager-sdk/operators/axstreamer/src/AxInference.cpp
In file included from /home/florit/voyager-sdk/operators/axstreamer/include/AxInference.hpp:8,
from /home/florit/voyager-sdk/operators/axstreamer/src/AxInference.cpp:2:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h: In function ‘std::string AxToLower(std::string_view)’:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h:60:8: error: ‘transform’ is not a member of ‘std’
60 | std::transform(s.begin(), s.end(), std::back_inserter(result),
| ^~~~~~~~~
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-return-type-c-linkage’ may have been intended to silence earlier diagnostics
cc1plus: note: unrecognized command-line option ‘-Wno-deprecated-anon-enum-enum-conversion’ may have been intended to silence earlier diagnostics
[22/176] Building CXX object trackers/algorithms/oc_sort/CMakeFiles/oc_sort.dir/src/OCSort.cpp.o
[23/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxFilterDetections.cpp.o
FAILED: axstreamer/CMakeFiles/axstreamer.dir/src/AxFilterDetections.cpp.o
/usr/bin/c++ -DAXELERA_ENABLE_AXRUNTIME -DHAVE_OPENCL -Daxstreamer_EXPORTS -I/usr/include/opencv4 -I/opt/axelera/runtime-1.5.2-1/include -I/home/florit/voyager-sdk/operators/axstreamer/include -I/opt/axelera/runtime-1.5.2-1 -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -Wno-sign-compare -Wno-unused-variable -Wimplicit-fallthrough -Wno-deprecated-enum-enum-conversion -Wno-deprecated-declarations -Wno-deprecated-anon-enum-enum-conversion -Wno-return-type-c-linkage -Wno-pessimizing-move -Wno-maybe-uninitialized -Wno-error=class-memaccess -MD -MT axstreamer/CMakeFiles/axstreamer.dir/src/AxFilterDetections.cpp.o -MF axstreamer/CMakeFiles/axstreamer.dir/src/AxFilterDetections.cpp.o.d -o axstreamer/CMakeFiles/axstreamer.dir/src/AxFilterDetections.cpp.o -c /home/florit/voyager-sdk/operators/axstreamer/src/AxFilterDetections.cpp
In file included from /home/florit/voyager-sdk/operators/axstreamer/include/AxFilterDetections.hpp:2,
from /home/florit/voyager-sdk/operators/axstreamer/src/AxFilterDetections.cpp:3:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h: In function ‘std::string AxToLower(std::string_view)’:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h:60:8: error: ‘transform’ is not a member of ‘std’
60 | std::transform(s.begin(), s.end(), std::back_inserter(result),
| ^~~~~~~~~
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-return-type-c-linkage’ may have been intended to silence earlier diagnostics
cc1plus: note: unrecognized command-line option ‘-Wno-deprecated-anon-enum-enum-conversion’ may have been intended to silence earlier diagnostics
[24/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenCVRender.cpp.o
FAILED: axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenCVRender.cpp.o
/usr/bin/c++ -DAXELERA_ENABLE_AXRUNTIME -DHAVE_OPENCL -Daxstreamer_EXPORTS -I/usr/include/opencv4 -I/opt/axelera/runtime-1.5.2-1/include -I/home/florit/voyager-sdk/operators/axstreamer/include -I/opt/axelera/runtime-1.5.2-1 -O3 -DNDEBUG -std=gnu++20 -fPIC -Wall -Werror -Wno-sign-compare -Wno-unused-variable -Wimplicit-fallthrough -Wno-deprecated-enum-enum-conversion -Wno-deprecated-declarations -Wno-deprecated-anon-enum-enum-conversion -Wno-return-type-c-linkage -Wno-pessimizing-move -Wno-maybe-uninitialized -Wno-error=class-memaccess -MD -MT axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenCVRender.cpp.o -MF axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenCVRender.cpp.o.d -o axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenCVRender.cpp.o -c /home/florit/voyager-sdk/operators/axstreamer/src/AxOpenCVRender.cpp
In file included from /home/florit/voyager-sdk/operators/axstreamer/include/AxMeta.hpp:13,
from /home/florit/voyager-sdk/operators/axstreamer/include/AxOpenCVRender.hpp:5,
from /home/florit/voyager-sdk/operators/axstreamer/src/AxOpenCVRender.cpp:1:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h: In function ‘std::string AxToLower(std::string_view)’:
/home/florit/voyager-sdk/operators/axstreamer/include/AxDataInterface.h:60:8: error: ‘transform’ is not a member of ‘std’
60 | std::transform(s.begin(), s.end(), std::back_inserter(result),
| ^~~~~~~~~
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-return-type-c-linkage’ may have been intended to silence earlier diagnostics
cc1plus: note: unrecognized command-line option ‘-Wno-deprecated-anon-enum-enum-conversion’ may have been intended to silence earlier diagnostics
[25/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxOpenCl.cpp.o
[26/176] Building CXX object trackers/algorithms/oc_sort/CMakeFiles/oc_sort.dir/src/Association.cpp.o
[27/176] Building CXX object trackers/algorithms/bytetrack/CMakeFiles/bytetrack.dir/src/kalmanFilter.cpp.o
[28/176] Building CXX object trackers/algorithms/oc_sort/CMakeFiles/oc_sort.dir/src/KalmanFilter.cpp.o
[29/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxNms.cpp.o
[30/176] Building CXX object axstreamer/CMakeFiles/axstreamer.dir/src/AxInferenceNet.cpp.o
ninja: build stopped: subcommand failed.
make[1]: *** [Makefile:85: Release] Fehler 1
make[1]: Verzeichnis „/home/florit/voyager-sdk/operators“ wird verlassen
make: *** [Makefile:80: operators] Fehler 2
ERROR: Failed to build operators
refreshing pcie and firmware
WARNING: Failed to refresh pcie and firmware
Installation complete. To activate the environment, type:
source venv/bin/activate
To get started, please see the Quick Start Guide at:
quick_start_guide.md
most on this machine dosent work
inxi -fCARG
CPU:
Info: 12-core model: AMD Ryzen AI 9 HX 370 w/ Radeon 890M bits: 64
type: MT MCP cache: L2: 12 MiB
Speed (MHz): avg: 1767 min/max: 599/4367 cores: 1: 1767 2: 1767 3: 1767
4: 1767 5: 1767 6: 1767 7: 1767 8: 1767 9: 1767 10: 1767 11: 1767 12: 1767
13: 1767 14: 1767 15: 1767 16: 1767 17: 1767 18: 1767 19: 1767 20: 1767
21: 1767 22: 1767 23: 1767 24: 1767
Flags: 3dnowprefetch abm adx aes amd_lbr_pmc_freeze amd_lbr_v2 aperfmperf
apic arat avic avx avx2 avx512_bf16 avx512_bitalg avx512_vbmi2
avx512_vnni avx512_vp2intersect avx512_vpopcntdq avx512bw avx512cd
avx512dq avx512f avx512ifma avx512vbmi avx512vl avx_vnni bmi1 bmi2 bpext
bus_lock_detect cat_l3 cdp_l3 clflush clflushopt clwb clzero cmov
cmp_legacy constant_tsc cpb cppc cpuid cqm cqm_llc cqm_mbm_local
cqm_mbm_total cqm_occup_llc cr8_legacy cx16 cx8 de decodeassists erms
extapic extd_apicid f16c flush_l1d flushbyasid fma fpu fsgsbase fsrm fxsr
fxsr_opt gfni ht hw_pstate ibpb ibrs ibrs_enhanced ibs invpcid irperf
lahf_lm lbrv lm mba mca mce misalignsse mmx mmxext monitor movbe
movdir64b movdiri msr mtrr mwaitx nonstop_tsc nopl npt nrip_save nx ospke
osvw overflow_recov pae pat pausefilter pclmulqdq pdpe1gb perfctr_core
perfctr_llc perfctr_nb perfmon_v2 pfthreshold pge pku pni popcnt pse
pse36 rapl rdpid rdpru rdrand rdseed rdt_a rdtscp rep_good sep sha_ni
skinit smap smca smep ssbd sse sse2 sse4_1 sse4_2 sse4a ssse3 stibp
succor svm svm_lock syscall tce topoext tsc tsc_adjust tsc_scale umip
user_shstk v_spec_ctrl v_vmsave_vmload vaes vgif vmcb_clean vme vmmcall
vnmi vpclmulqdq wbnoinvd wdt x2avic xgetbv1 xsave xsavec xsaveerptr
xsaveopt xsaves xtopology
Graphics:
Device-1: Advanced Micro Devices [AMD/ATI] Strix [Radeon 880M / 890M]
driver: amdgpu v: kernel
Display: x11 server: X.Org v: 21.1.16 with: Xwayland v: 24.1.6 driver: X:
loaded: amdgpu unloaded: fbdev,modesetting,vesa dri: radeonsi gpu: amdgpu
resolution: 3840x2160~60Hz
API: EGL v: 1.5 drivers: kms_swrast,radeonsi,swrast
platforms: gbm,x11,surfaceless,device
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 25.0.7-2 renderer: AMD
Radeon Graphics (radeonsi gfx1150 LLVM 19.1.7 DRM 3.61
6.12.57+deb13-rt-amd64)
API: Vulkan v: 1.4.309 drivers: radv,llvmpipe surfaces: xcb,xlib
Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo de: kscreen-console,
kscreen-doctor, xfce4-display-settings wl: wayland-info x11: xdriinfo,
xdpyinfo, xprop, xrandr
Audio:
Device-1: Advanced Micro Devices [AMD/ATI] Radeon High Definition Audio
driver: snd_hda_intel
Device-2: Advanced Micro Devices [AMD] Ryzen HD Audio
driver: snd_hda_intel
API: ALSA v: k6.12.57+deb13-rt-amd64 status: kernel-api
Server-1: PipeWire v: 1.4.2 status: active
RAID:
Message: No RAID data found.
most on this machine dosent work
intel is needed but i got some AMD
Vormals nicht ausgewähltes Paket axelera-voyager-sdk-base-1.5.2 wird gewählt.
(Lese Datenbank ... 957605 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von axelera-voyager-sdk-base-1.5.2_amd64.deb ...
Entpacken von axelera-voyager-sdk-base-1.5.2 (1.5.2) ...
dpkg: Abhängigkeitsprobleme verhindern Konfiguration von axelera-voyager-sdk-base-1.5.2:
axelera-voyager-sdk-base-1.5.2 hängt ab von intel-media-va-driver-non-free; aber:
Paket intel-media-va-driver-non-free ist nicht installiert.
axelera-voyager-sdk-base-1.5.2 hängt ab von gstreamer1.0-vaapi; aber:
Paket gstreamer1.0-vaapi ist nicht installiert.
axelera-voyager-sdk-base-1.5.2 hängt ab von intel-opencl-icd; aber:
Paket intel-opencl-icd ist nicht installiert.
axelera-voyager-sdk-base-1.5.2 hängt ab von libboost-filesystem-dev; aber:
Paket libboost-filesystem-dev ist nicht installiert.
axelera-voyager-sdk-base-1.5.2 hängt ab von libboost-log-dev; aber:
Paket libboost-log-dev ist nicht installiert.
axelera-voyager-sdk-base-1.5.2 hängt ab von libboost-program-options-dev; aber:
Paket libboost-program-options-dev ist nicht installiert.
axelera-voyager-sdk-base-1.5.2 hängt ab von libboost-regex-dev; aber:
Paket libboost-regex-dev ist nicht installiert.
axelera-voyager-sdk-base-1.5.2 hängt ab von libboost-thread-dev; aber:
Paket libboost-thread-dev ist nicht installiert.
axelera-voyager-sdk-base-1.5.2 hängt ab von libgstreamer-plugins-good1.0-dev; aber:
Paket libgstreamer-plugins-good1.0-dev ist nicht installiert.
axelera-voyager-sdk-base-1.5.2 hängt ab von llvm-14; aber:
Paket llvm-14 ist nicht installiert.
dpkg: Fehler beim Bearbeiten des Paketes axelera-voyager-sdk-base-1.5.2 (--install):
Abhängigkeitsprobleme - verbleibt unkonfiguriert
Fehler traten auf beim Bearbeiten von:
axelera-voyager-sdk-base-1.5.2
error on
axdevice
ERROR: /opt/axelera/runtime-1.5.2-1/lib/libaxruntime.so: axr_create_context: libzip.so.4: cannot open shared object file: No such file or directory
OS debian 13
debian and ubuntu amd64 driver installation
wget https://repo.radeon.com/amdgpu-install/7.1.1/ubuntu/noble/amdgpu-install_7.1.1.70101-1_all.deb
sudo apt install ./amdgpu-install_7.1.1.70101-1_all.deb
sudo apt update
sudo apt install python3-setuptools python3-wheel
sudo usermod -a -G render,video $LOGNAME # Add the current user to the render and video groups
sudo apt install rocmwget https://repo.radeon.com/amdgpu-install/7.1.1/ubuntu/noble/amdgpu-install_7.1.1.70101-1_all.deb
sudo apt install ./amdgpu-install_7.1.1.70101-1_all.deb
sudo apt update
sudo apt install "linux-headers-$(uname -r)"
sudo apt install amdgpu-dkms
config-debian-13-amd64.yaml
code down under
# Axelera AI Installer Configuration
name: "Axelera AI - LLM SDK"
os:
name: Debian
version: 13
vars:
AX_DEBIAN_URL: https://software.axelera.ai/artifactory/axelera-apt-source/
AX_PYPI_RUNTIME_URL: https://software.axelera.ai/artifactory/axelera-runtime-pypi/
AX_PYPI_DEVELOPMENT_URL: https://software.axelera.ai/artifactory/axelera-dev-pypi/
AX_PIP_EXTRA_ARGS: ""
AX_CFG_DIR: cfg
AX_VERSION: 1.5.2
AX_DKMS_VERSION: 1.4.4
AX_MULTI_DEVICE_VERSION: 1.0.0
installer_dependencies:
- git
- kmod
- rocm-llvm
- rocm-llvm-dev
- make
- wget
common:
description: Common
libs:
- libgstreamer-plugins-base1.0-dev
- axelera-runtime-1.5.2
- systemd
penv:
python: 3.12.6
pip: 25.0
pipenv: 2025.7.23
repositories:
- name: pypi
url: https://pypi.org/simple
ssl: true
default: true
- name: pytorch
url: https://download.pytorch.org/whl/cpu
ssl: false
- name: axelera_development
url: ${AX_PYPI_DEVELOPMENT_URL}
ssl: false
requires_auth: false
- name: axelera_runtime
url: ${AX_PYPI_RUNTIME_URL}
ssl: false
common:
index_url: https://pypi.org/simple
requires_auth: false
libs:
- accelerate: "*"
- alive-progress: "*"
- argparse: "*"
- boto3: "*"
- cityscapesscripts: "*"
- climage: "*"
- cmake: "{version = \">=3.24,<4.0.0\"}"
- cython: "*"
- ftfy: "6.2.0"
- gradio: "{version = \">=5.9.0\"}"
- grpcio: "*"
- h5py: "*"
- jinja2: "*"
- lap: "*"
- matplotlib: "{version = \"<3.10\"}"
- matplotlib-inline: "*"
- more-itertools: "*"
- networkx: "{version = \">=3.3,<4\"}"
- numpy: "{version = \"<2\"}"
- onnxruntime: "{version = \">=1.16,<2\"}"
- onnx: "{version = \">=1.16,<=1.17.0\"}"
- onnxoptimizer: "{version = \">=0.3.13,<0.4\"}"
- onnxsim: "{version = \">=0.4.36,<0.5\"}"
- opencv-python: "*"
- pillow: "*"
- protobuf: "*"
- pyclipper: "*"
- pycocotools: "*"
- pyglet: "2.1.3"
- pytest: "*"
- PyYAML: "*"
- rich: "*"
- scipy: "*"
- sewar: "*"
- shapely: "*"
- siphash24: "*"
- strictyaml: "*"
- tqdm: "*"
- transformers: "{version = \">=4.45.1\"}"
- typer: "*"
development:
index_url: https://pypi.org/simple
requires_auth: false
libs: []
runtime:
index_url: https://pypi.org/simple
requires_auth: false
libs:
- pygobject: "{version = \"==3.50.0\"}"
torch:
index_url: https://download.pytorch.org/whl/cpu
requires_auth: false
libs:
- rocm/torch: "{index = \"pytorch\", version = \">=2.6.0,<3.0.0\"}"
- rocm/torchvision: "{index = \"pytorch\", version = \">=0.22.0,<1.0.0\"}"
axelera_common:
index_url: ${AX_PYPI_RUNTIME_URL}
pip_extra_args: ${AX_PIP_EXTRA_ARGS}
requires_auth: false
libs:
- axelera-types: "{index = \"axelera_runtime\" }"
- axelera-runtime: "{index = \"axelera_runtime\" }"
axelera_development:
index_url: ${AX_PYPI_DEVELOPMENT_URL}
pip_extra_args: ${AX_PIP_EXTRA_ARGS}
requires_auth: false
libs:
- ax-pytest-helpers: "{index = \"axelera_development\" }"
- axelera-onnx2torch: "{index = \"axelera_development\" }"
- axelera-qtoolsv2: "{index = \"axelera_development\" }"
- axelera-onnx-graph-cleaner: "{index = \"axelera_development\" }"
- axelera-qtools-tvm-interface: "{index = \"axelera_development\" }"
- axelera-aipu-api: "{index = \"axelera_development\" }"
- axelera-package-lib: "{index = \"axelera_development\" }"
- axelera-miraculix: "{index = \"axelera_development\" }"
- axelera-aipu-aingine-api: "{index = \"axelera_development\" }"
- axelera-codegen: "{index = \"axelera_development\" }"
- axelera-tvm: "{index = \"axelera_development\" }"
- axelera-compiler: "{index = \"axelera_development\" }"
axelera_runtime:
index_url: ${AX_PYPI_RUNTIME_URL}
pip_extra_args: ${AX_PIP_EXTRA_ARGS}
requires_auth: false
libs:
- axelera-llm: "{index = \"axelera_runtime\" }"
requirements: ${AX_CFG_DIR}/requirements-ubuntu-2204-amd64.txt
pyenv:
- url: https://github.com/pyenv/pyenv.git
- url: https://github.com/pyenv/pyenv-doctor.git
dir: plugins/pyenv-doctor
- url: https://github.com/pyenv/pyenv-installer.git
dir: plugins/pyenv-installer
- url: https://github.com/pyenv/pyenv-update.git
dir: plugins/pyenv-update
- url: https://github.com/pyenv/pyenv-virtualenv.git
dir: plugins/pyenv-virtualenv
- url: https://github.com/pyenv/pyenv-which-ext.git
dir: plugins/pyenv-which-ext
python_src: https://www.python.org/ftp/python/3.10.6/Python-3.10.6.tgz
pyenv_dependencies:
- python3-venv
python_dependencies:
- python3*-dev
- build-essential
- libbz2-dev
- libcairo2-dev
- libffi-dev
- libgirepository1.0-dev
- liblzma-dev
- libncurses-dev
- libreadline-dev
- libsqlite3-dev
- libssl-dev
- pkg-config
- tk-dev
- xz-utils
- zlib1g-dev
# platform specific
docker:
base: ubuntu:22.04
target-runtime: axelera/runtime-ubuntu22.04
target-base: axelera/framework-ubuntu22.04
term: xterm-256color
libs:
- apt-utils
- emacs-gtk
- less
- libcanberra-gtk-module
- libcanberra-gtk3-module
- lsb-release
- nano
- pciutils
- sudo
- systemd
- udev
- vim
system-dependencies:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
migrate:
- docker
- docker-engine
- docker.io
- docker-compose
- docker-doc
- podman-docker
- containerd
- runc
runtime:
description: Runtime
libs:
- clinfo
- graphviz
- gstreamer1.0-libav
- gstreamer1.0-opencv
- gstreamer1.0-plugins-base
- gstreamer1.0-plugins-good
- gstreamer1.0-plugins-ugly
- gstreamer1.0-rtsp
- gstreamer1.0-tools
- gstreamer1.0-x
- libasio-dev
- libboost-filesystem1.88
- libboost-log1.88
- libboost-program-options1.88
- libboost-regex1.88
- libboost-thread1.88
- libeigen3-dev
- libgstreamer-plugins-good*-dev
- libgstreamer-plugins-bad*-dev
- libgstreamer1.0-dev
- libgstrtspserver-1.0-dev
- libjson-glib-dev
- libprotobuf-dev
- libsimde-dev
- libzmq3-dev
- meson
- nlohmann-json3-dev
- ocl-icd-opencl-dev
- python3-gi
- qt6-base-dev
- unzip
# platform specific
- rocminfo
- rocm
- gstreamer1.0-tools
- gstreamer1.0-plugins-base
- gstreamer1.0-plugins-good
- gstreamer1.0-plugins-bad
- gstreamer1.0-plugins-ugly
- gstreamer1.0-libav
- rocm-opencl
envs:
- name: AXELERA_RUNTIME_DIR
value: "/opt/axelera/runtime-1.5.2-1"
- name: AXELERA_DEVICE_DIR
value: "/opt/axelera/device-1.5.2-1/omega"
- name: AXELERA_RISCV_TOOLCHAIN_DIR
value: "/opt/axelera/riscv-gnu-newlib-toolchain-409b951ba662-7"
- name: PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION
value: python
- name: AXELERA_FRAMEWORK
value: $PWD
- name: AIPU_FIRMWARE_OMEGA
value: "${AXELERA_DEVICE_DIR}/bin/start_axelera_runtime.elf"
- name: AIPU_RUNTIME_STAGE0_OMEGA
value: "${AXELERA_DEVICE_DIR}/bin/start_axelera_runtime_stage0.bin"
- name: TVM_HOME
value: "${AXELERA_RUNTIME_DIR}/tvm/tvm-src"
- name: GST_PLUGIN_PATH
value: "${AXELERA_RUNTIME_DIR}/lib/gstreamer-1.0:${AXELERA_FRAMEWORK}/operators/lib${GST_PLUGIN_PATH:+:$GST_PLUGIN_PATH}"
- name: PYTHONPATH
value: "${AXELERA_FRAMEWORK}:${AXELERA_RUNTIME_DIR}/tvm/tvm-src${PYTHONPATH:+:$PYTHONPATH}"
- name: LD_LIBRARY_PATH
value: "${AXELERA_RUNTIME_DIR}/lib:${AXELERA_FRAMEWORK}/operators/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
- name: PATH
value: "${AXELERA_RUNTIME_DIR}/bin:${AXELERA_RISCV_TOOLCHAIN_DIR}/bin${PATH:+:$PATH}"
- name: PKG_CONFIG_PATH
value: "${AXELERA_RUNTIME_DIR}/lib/pkgconfig:${AXELERA_FRAMEWORK}/operators/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}"
driver:
description: PCIe driver
libs:
- metis-dkms == 1.4.4
- axelera-multi-device == 1.0.0
repositories:
- list: /etc/apt/sources.list.d/docker.list
packages:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
gpg-url: https://download.docker.com/linux/ubuntu/gpg
gpg-key: /etc/apt/keyrings/docker.gpg
sources:
- https://download.docker.com/linux/ubuntu jammy stable
- list: /etc/apt/sources.list.d/nvidia-docker.list
packages:
- nvidia-container-toolkit
gpg-url: https://nvidia.github.io/nvidia-docker/gpgkey
gpg-key: /etc/apt/keyrings/nvidia.docker.gpg
sources:
- https://nvidia.github.io/libnvidia-container/stable/ubuntu18.04/$(ARCH) /
- https://nvidia.github.io/nvidia-container-runtime/stable/ubuntu18.04/$(ARCH) /
- https://nvidia.github.io/nvidia-docker/ubuntu18.04/$(ARCH) /
- list: /etc/apt/sources.list.d/vscode.list
packages:
- code
gpg-url: https://packages.microsoft.com/keys/microsoft.asc
gpg-key: /etc/apt/keyrings/packages.microsoft.gpg
sources:
- https://packages.microsoft.com/repos/code stable main
- list: /etc/apt/sources.list.d/axelera.list
packages:
- axelera-device-1.5.2
- axelera-runtime-1.5.2
- axelera-riscv-gnu-newlib-toolchain-409b951ba662-7
- axelera-riscv-openocd
- metis-dkms
- axelera-multi-device
# platform specific
gpg-url: https://software.axelera.ai/artifactory/api/security/keypair/axelera/public
gpg-key: /etc/apt/keyrings/axelera.gpg
sources:
- ${AX_DEBIAN_URL} ubuntu22 main
next:
- "To get started, please see the Quick Start Guide at:"
-
- " quick_start_guide.md"
ready to be an authenticAMD and debian
def check_cpu():
ok = "lscpu | awk '/Vendor ID:/{print $2}'"
return ok
def check_os(envs):
ok = check_key("os", envs)
if check_key("name", envs["os"], "os"):
if not envs["os"]["name"] == "Debian":
if check_key("cpu", envs["os"], "cpu"):
if not envs["os"]["cpu"] == "AuthenticAMD":
print("os:cpu Installer supports AMD only")
ok = False
else:
ok = False
else:
ok = False
ok = ok and check_key("version", envs["os"], "os")
return ok
how to make the intel switch? between intel and amd
to have some different files like: config-debian-13-amd64.yaml AND config-debian-13-intel64.yaml
for amd:
# Axelera AI Installer Configuration
name: "Axelera AI - LLM SDK"
os:
name: Debian
version: 13
cpu: AuthenticAMD
vars:
AX_DEBIAN_URL: https://software.axelera.ai/artifactory/axelera-apt-source/
AX_PYPI_RUNTIME_URL: https://software.axelera.ai/artifactory/axelera-runtime-pypi/
AX_PYPI_DEVELOPMENT_URL: https://software.axelera.ai/artifactory/axelera-dev-pypi/
AX_PIP_EXTRA_ARGS: ""
AX_CFG_DIR: cfg
AX_VERSION: 1.5.2
AX_DKMS_VERSION: 1.4.4
AX_MULTI_DEVICE_VERSION: 1.0.0
installer_dependencies:
- git
- kmod
- rocm-llvm
- rocm-llvm-dev
- make
- wget
common:
description: Common
libs:
- libgstreamer-plugins-base1.0-dev
- axelera-runtime-1.5.2
- systemd
penv:
python: 3.12.6
pip: 25.0
pipenv: 2025.7.23
repositories:
- name: pypi
url: https://pypi.org/simple
ssl: true
default: true
- name: pytorch
url: https://download.pytorch.org/whl/cpu
ssl: false
- name: axelera_development
url: ${AX_PYPI_DEVELOPMENT_URL}
ssl: false
requires_auth: false
- name: axelera_runtime
url: ${AX_PYPI_RUNTIME_URL}
ssl: false
common:
index_url: https://pypi.org/simple
requires_auth: false
libs:
- accelerate: "*"
- alive-progress: "*"
- argparse: "*"
- boto3: "*"
- cityscapesscripts: "*"
- climage: "*"
- cmake: "{version = \">=3.24,<4.0.0\"}"
- cython: "*"
- ftfy: "6.2.0"
- gradio: "{version = \">=5.9.0\"}"
- grpcio: "*"
- h5py: "*"
- jinja2: "*"
- lap: "*"
- matplotlib: "{version = \"<3.10\"}"
- matplotlib-inline: "*"
- more-itertools: "*"
- networkx: "{version = \">=3.3,<4\"}"
- numpy: "{version = \"<2\"}"
- onnxruntime: "{version = \">=1.16,<2\"}"
- onnx: "{version = \">=1.16,<=1.17.0\"}"
- onnxoptimizer: "{version = \">=0.3.13,<0.4\"}"
- onnxsim: "{version = \">=0.4.36,<0.5\"}"
- opencv-python: "*"
- pillow: "*"
- protobuf: "*"
- pyclipper: "*"
- pycocotools: "*"
- pyglet: "2.1.3"
- pytest: "*"
- PyYAML: "*"
- rich: "*"
- scipy: "*"
- sewar: "*"
- shapely: "*"
- siphash24: "*"
- strictyaml: "*"
- tqdm: "*"
- transformers: "{version = \">=4.45.1\"}"
- typer: "*"
development:
index_url: https://pypi.org/simple
requires_auth: false
libs: []
runtime:
index_url: https://pypi.org/simple
requires_auth: false
libs:
- pygobject: "{version = \"==3.50.0\"}"
torch:
index_url: https://download.pytorch.org/whl/cpu
requires_auth: false
libs:
- rocm/torch: "{index = \"pytorch\", version = \">=2.6.0,<3.0.0\"}"
- rocm/torchvision: "{index = \"pytorch\", version = \">=0.22.0,<1.0.0\"}"
axelera_common:
index_url: ${AX_PYPI_RUNTIME_URL}
pip_extra_args: ${AX_PIP_EXTRA_ARGS}
requires_auth: false
libs:
- axelera-types: "{index = \"axelera_runtime\" }"
- axelera-runtime: "{index = \"axelera_runtime\" }"
axelera_development:
index_url: ${AX_PYPI_DEVELOPMENT_URL}
pip_extra_args: ${AX_PIP_EXTRA_ARGS}
requires_auth: false
libs:
- ax-pytest-helpers: "{index = \"axelera_development\" }"
- axelera-onnx2torch: "{index = \"axelera_development\" }"
- axelera-qtoolsv2: "{index = \"axelera_development\" }"
- axelera-onnx-graph-cleaner: "{index = \"axelera_development\" }"
- axelera-qtools-tvm-interface: "{index = \"axelera_development\" }"
- axelera-aipu-api: "{index = \"axelera_development\" }"
- axelera-package-lib: "{index = \"axelera_development\" }"
- axelera-miraculix: "{index = \"axelera_development\" }"
- axelera-aipu-aingine-api: "{index = \"axelera_development\" }"
- axelera-codegen: "{index = \"axelera_development\" }"
- axelera-tvm: "{index = \"axelera_development\" }"
- axelera-compiler: "{index = \"axelera_development\" }"
axelera_runtime:
index_url: ${AX_PYPI_RUNTIME_URL}
pip_extra_args: ${AX_PIP_EXTRA_ARGS}
requires_auth: false
libs:
- axelera-llm: "{index = \"axelera_runtime\" }"
requirements: ${AX_CFG_DIR}/requirements-debian-13-amd64.txt
pyenv:
- url: https://github.com/pyenv/pyenv.git
- url: https://github.com/pyenv/pyenv-doctor.git
dir: plugins/pyenv-doctor
- url: https://github.com/pyenv/pyenv-installer.git
dir: plugins/pyenv-installer
- url: https://github.com/pyenv/pyenv-update.git
dir: plugins/pyenv-update
- url: https://github.com/pyenv/pyenv-virtualenv.git
dir: plugins/pyenv-virtualenv
- url: https://github.com/pyenv/pyenv-which-ext.git
dir: plugins/pyenv-which-ext
python_src: https://www.python.org/ftp/python/3.10.6/Python-3.10.6.tgz
pyenv_dependencies:
- python3-venv
python_dependencies:
- python3*-dev
- build-essential
- libbz2-dev
- libcairo2-dev
- libffi-dev
- libgirepository1.0-dev
- liblzma-dev
- libncurses-dev
- libreadline-dev
- libsqlite3-dev
- libssl-dev
- pkg-config
- tk-dev
- xz-utils
- zlib1g-dev
# platform specific
docker:
base: ubuntu:22.04
target-runtime: axelera/runtime-ubuntu22.04
target-base: axelera/framework-ubuntu22.04
term: xterm-256color
libs:
- apt-utils
- emacs-gtk
- less
- libcanberra-gtk-module
- libcanberra-gtk3-module
- lsb-release
- nano
- pciutils
- sudo
- systemd
- udev
- vim
system-dependencies:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
migrate:
- docker
- docker-engine
- docker.io
- docker-compose
- docker-doc
- podman-docker
- containerd
- runc
runtime:
description: Runtime
libs:
- clinfo
- graphviz
- gstreamer1.0-libav
- gstreamer1.0-opencv
- gstreamer1.0-plugins-base
- gstreamer1.0-plugins-good
- gstreamer1.0-plugins-ugly
- gstreamer1.0-rtsp
- gstreamer1.0-tools
- gstreamer1.0-x
- libasio-dev
- libboost-filesystem1.88
- libboost-log1.88
- libboost-program-options1.88
- libboost-regex1.88
- libboost-thread1.88
- libeigen3-dev
- libgstreamer-plugins-good*-dev
- libgstreamer-plugins-bad*-dev
- libgstreamer1.0-dev
- libgstrtspserver-1.0-dev
- libjson-glib-dev
- libprotobuf-dev
- libsimde-dev
- libzmq3-dev
- meson
- nlohmann-json3-dev
- ocl-icd-opencl-dev
- python3-gi
- qt6-base-dev
- unzip
# platform specific
- rocminfo
- rocm
- gstreamer1.0-tools
- gstreamer1.0-plugins-base
- gstreamer1.0-plugins-good
- gstreamer1.0-plugins-bad
- gstreamer1.0-plugins-ugly
- gstreamer1.0-libav
- rocm-opencl
envs:
- name: AXELERA_RUNTIME_DIR
value: "/opt/axelera/runtime-1.5.2-1"
- name: AXELERA_DEVICE_DIR
value: "/opt/axelera/device-1.5.2-1/omega"
- name: AXELERA_RISCV_TOOLCHAIN_DIR
value: "/opt/axelera/riscv-gnu-newlib-toolchain-409b951ba662-7"
- name: PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION
value: python
- name: AXELERA_FRAMEWORK
value: $PWD
- name: AIPU_FIRMWARE_OMEGA
value: "${AXELERA_DEVICE_DIR}/bin/start_axelera_runtime.elf"
- name: AIPU_RUNTIME_STAGE0_OMEGA
value: "${AXELERA_DEVICE_DIR}/bin/start_axelera_runtime_stage0.bin"
- name: TVM_HOME
value: "${AXELERA_RUNTIME_DIR}/tvm/tvm-src"
- name: GST_PLUGIN_PATH
value: "${AXELERA_RUNTIME_DIR}/lib/gstreamer-1.0:${AXELERA_FRAMEWORK}/operators/lib${GST_PLUGIN_PATH:+:$GST_PLUGIN_PATH}"
- name: PYTHONPATH
value: "${AXELERA_FRAMEWORK}:${AXELERA_RUNTIME_DIR}/tvm/tvm-src${PYTHONPATH:+:$PYTHONPATH}"
- name: LD_LIBRARY_PATH
value: "${AXELERA_RUNTIME_DIR}/lib:${AXELERA_FRAMEWORK}/operators/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
- name: PATH
value: "${AXELERA_RUNTIME_DIR}/bin:${AXELERA_RISCV_TOOLCHAIN_DIR}/bin${PATH:+:$PATH}"
- name: PKG_CONFIG_PATH
value: "${AXELERA_RUNTIME_DIR}/lib/pkgconfig:${AXELERA_FRAMEWORK}/operators/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}"
driver:
description: PCIe driver
libs:
- metis-dkms == 1.4.4
- axelera-multi-device == 1.0.0
repositories:
- list: /etc/apt/sources.list.d/docker.list
packages:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
gpg-url: https://download.docker.com/linux/ubuntu/gpg
gpg-key: /etc/apt/keyrings/docker.gpg
sources:
- https://download.docker.com/linux/ubuntu jammy stable
- list: /etc/apt/sources.list.d/nvidia-docker.list
packages:
- nvidia-container-toolkit
gpg-url: https://nvidia.github.io/nvidia-docker/gpgkey
gpg-key: /etc/apt/keyrings/nvidia.docker.gpg
sources:
- https://nvidia.github.io/libnvidia-container/stable/ubuntu18.04/$(ARCH) /
- https://nvidia.github.io/nvidia-container-runtime/stable/ubuntu18.04/$(ARCH) /
- https://nvidia.github.io/nvidia-docker/ubuntu18.04/$(ARCH) /
- list: /etc/apt/sources.list.d/vscode.list
packages:
- code
gpg-url: https://packages.microsoft.com/keys/microsoft.asc
gpg-key: /etc/apt/keyrings/packages.microsoft.gpg
sources:
- https://packages.microsoft.com/repos/code stable main
- list: /etc/apt/sources.list.d/axelera.list
packages:
- axelera-device-1.5.2
- axelera-runtime-1.5.2
- axelera-riscv-gnu-newlib-toolchain-409b951ba662-7
- axelera-riscv-openocd
- metis-dkms
- axelera-multi-device
# platform specific
gpg-url: https://software.axelera.ai/artifactory/api/security/keypair/axelera/public
gpg-key: /etc/apt/keyrings/axelera.gpg
sources:
- ${AX_DEBIAN_URL} ubuntu22 main
next:
- "To get started, please see the Quick Start Guide at:"
-
- " quick_start_guide.md"requirements.txt
about-time==4.2.1
accelerate==1.12.0
aiofiles==24.1.0
alive-progress==3.3.0
annotated-doc==0.0.4
annotated-types==0.7.0
anyio==4.12.0
appdirs==1.4.4
attrs==25.4.0
ax-pytest-helpers==1.5.2
axelera-aipu-aingine-api==0.3.0
axelera-aipu-api==3.1.0
axelera-codegen==1.5.2
axelera-compiler==1.5.2
axelera-llm==1.5.2
axelera-miraculix==0.3.0
axelera-onnx-graph-cleaner==1.5.2
axelera-onnx2torch==1.5.2
axelera-package-lib==0.4.6
axelera-qtools-tvm-interface==1.5.2
axelera-qtoolsv2==1.5.2
axelera-runtime==1.5.2
axelera-tvm==1.5.2
axelera-types==1.5.2
boto3==1.42.5
botocore==1.42.5
brotli==1.2.0
certifi==2025.11.12
charset-normalizer==3.4.4
cityscapesscripts==2.2.4
click==8.3.1
climage==0.2.2
cloudpickle==3.1.2
cmake==3.31.10
coloredlogs==15.0.1
contourpy==1.3.2
cycler==0.12.1
cython==3.2.2
decorator==5.2.1
eval-type-backport==0.2.2
exceptiongroup==1.3.1
fastapi==0.124.0
ffmpy==1.0.0
filelock==3.20.0
flatbuffers==25.9.23
fonttools==4.61.0
fsspec==2025.12.0
ftfy==6.2.0
gradio==5.50.0
gradio-client==1.14.0
graphemeu==0.7.2
groovy==0.1.2
grpcio==1.76.0
h11==0.16.0
h5py==3.15.1
hf-xet==1.2.0
httpcore==1.0.9
httpx==0.28.1
huggingface-hub==0.36.0
humanfriendly==10.0
idna==3.11
importlib-resources==6.5.2
inflection==0.5.1
iniconfig==2.3.0
jinja2==3.1.6
jmespath==1.0.1
jsonschema==4.25.1
jsonschema-specifications==2025.9.1
jsonschema2md==1.3.0
kdtree==0.16
kiwisolver==1.4.9
lap==0.5.12
markdown==3.10
markdown-it-py==4.0.0
markupsafe==3.0.3
matplotlib==3.9.4
matplotlib-inline==0.2.1
mdurl==0.1.2
ml-dtypes==0.5.4
more-itertools==10.8.0
mpmath==1.3.0
networkx==3.4.2
numpy
onnx==1.17.0
onnxoptimizer==0.3.13
onnxruntime==1.23.2
onnxsim==0.4.36
opencv-python==4.11.0.86
orjson==3.11.5
packaging==25.0
pandas==2.3.3
pillow
platformdirs==4.5.1
pluggy==1.6.0
protobuf==6.33.2
psutil==7.1.3
pycairo==1.20.0
pyclipper==1.4.0
pycocotools==2.0.10
pydantic==2.8.2
pydantic-core==2.20.1
pydub==0.25.1
pyglet==2.1.3
pygments==2.19.2
PyGobject
pyopencl==2025.2.7
pyparsing==3.2.5
pyquaternion==0.9.9
pytest==9.0.2
python-dateutil==2.9.0.post0
python-jsonschema-objects==0.5.7
python-multipart==0.0.20
pytools==2025.2.5
pytz==2025.2
pyyaml==6.0.3
referencing==0.37.0
regex==2025.11.3
requests==2.32.5
rich==14.2.0
rpds-py==0.30.0
ruff==0.14.8
s3transfer==0.16.0
safehttpx==0.1.7
safetensors==0.7.0
scipy==1.15.3
semantic-version==2.10.0
setuptools==80.9.0
setuptools-git-versioning==1.13.6
sewar==0.4.6
shapely==2.1.2
shellingham==1.5.4
siphash24==1.8
six==1.17.0
starlette==0.50.0
strictyaml==1.7.3
sympy==1.14.0
tokenizers==0.22.1
toml==0.10.2
tomli==2.3.0
tomlkit==0.13.3
torch==2.8.0+cpu
torchvision==0.23.0+cpu
tornado==6.5.2
tqdm==4.67.1
traitlets==5.14.3
transformers==4.57.3
typer==0.20.0
types-pyyaml==6.0.12.20250915
typing==3.7.4.3
typing-extensions==4.15.0
tzdata==2025.2
urllib3
uvicorn==0.38.0
wcwidth==0.2.14
websockets==15.0.1
z3-solver==4.15.4.0Installer_support.py
#!/usr/bin/env python3
# Copyright Axelera AI, 2025
from collections.abc import MutableMapping
import argparse
import hashlib
import json
import os
import re
import subprocess
import sys
import textwrap
from typing import Dict
from unittest.mock import patch
import yaml
"""
This module provides support functions for the installer scripts.
It is very much WIP and is expected to grow and change considerably as
existing bash code in the installer scripts is ported to python, and extended.
"""
def run(cmd, shell=True, check=True, verbose=False, capture_output=True):
if verbose:
print(cmd)
try:
result = subprocess.run(
cmd, shell=shell, check=check, capture_output=capture_output, text=True
)
if verbose:
if result.stdout:
print(result.stdout)
if result.stderr:
print(result.stderr)
return result
except subprocess.CalledProcessError as e:
raise
def check_depends(cmd):
"""Takes a failed install command and reruns it, examining the output for dependency issues.
It collects the names of the interrelated packages and prints them to stdout so the results
can be used in bash code to correct the failed install."""
matches = []
while True:
try:
run(cmd)
# In case a non-failing command is given
break
except subprocess.CalledProcessError as e:
output = e.stdout + e.stderr
new_matches = []
for line in output.splitlines():
match = re.match(r"^\s*([^\s]*).*(?:Depends|Breaks): ([^\s]*)", line)
if match:
for g in match.groups():
new_matches.append(g)
if new_matches:
matches.extend(new_matches)
cmd += f" {' '.join(new_matches)}"
else:
break
print(" ".join(matches))
__VAR_DICT = {}
def required_key(key):
return f"Missing required key: {key}"
def required_value(key):
return f"Missing value for key: {key}"
def check_key(key, envs, parent="", check_value=True):
keystr = f"{parent}:{key}" if parent else key
if not key in envs:
print(required_key(keystr))
return False
elif check_value and not envs[key]:
print(required_value(keystr))
return False
return True
def replace_vars(string: str, val_dict: Dict[str, str], permissive: bool) -> str:
"""Replace any variable defined in the vars section
Args:
string (str): The string to replace the variables in
val_dict (dict[str, str]): The dictionary of variables
permissive (bool): If true, ignore variables that are not defined
Returns:
str -- The string with the variables replaced
Throws:
RuntimeError -- If the variable is not defined
"""
pattern = r"\$\{[^}]*\}"
instances = []
while True:
instances = re.findall(pattern, string)
if not instances:
break
variables = {instance[2:-1]: False for instance in instances}
for var in variables.keys():
if var not in val_dict:
if permissive:
continue
raise RuntimeError(f"Variable {var} is not defined")
variables[var] = True
string = string.replace("${" + var + "}", val_dict[var])
# If we are permissive, we can stop if not all variables are defined
if permissive and not all(variables.values()):
break
return string
def check_vars(envs):
"""Check if we have defined any configuration variables"""
# the vars key is optional and if not defined it can be omitted
if "vars" not in envs:
return True
global __VAR_DICT
__VAR_DICT = envs["vars"].copy()
# validate that the variables is a Dict[str, str]
for k, v in __VAR_DICT.items():
if not isinstance(k, str):
raise RuntimeError(f"Variable {k} is not a string")
if not isinstance(v, str):
raise RuntimeError(f"Value {v} is not a string")
# Overwrite the values of the variables from the environment if they exist
for k, _ in __VAR_DICT.items():
if k in os.environ:
__VAR_DICT[k] = os.environ[k]
# Substitute any variables that reference other variables
for k, v in __VAR_DICT.items():
# Non permissive variable substitution: Do not allow any undefined variables in
# the vars section. Raise an error if we reference a variable that is not defined
# in the definition of another variable. We expect that we can
# fully expand the values of the defined variable at parsing time.
res = replace_vars(v, __VAR_DICT, permissive=False)
if res:
__VAR_DICT[k] = res
envs["vars"] = __VAR_DICT
return True
def check_cpu():
ok = "lscpu | awk '/Vendor ID:/{print $2}'"
return ok
def check_os(envs):
ok = check_key("os", envs)
if check_key("name", envs["os"], "os"):
if not envs["os"]["name"] == "Debian":
if check_key("cpu", envs["os"], "cpu"):
if not envs["os"]["cpu"] == "AuthenticAMD":
print("os:cpu Installer supports AuthenticAMD only")
ok = False
else:
ok = False
else:
ok = False
ok = ok and check_key("version", envs["os"], "os")
return ok
def check_system_libs(key, libs):
# system libs are always optional
if key in libs:
if libs[key]:
return True
else:
print(required_value(key))
return False
else:
return True
def check_is_list(value, text, require_dict: bool = False):
if isinstance(value, list) and (
not require_dict or all(isinstance(item, MutableMapping) for item in value)
):
return True
else:
extra = " of dicts" if require_dict else ""
print(f"{text} must be a (possibly empty) list{extra}")
return False
def check_subset_or_component(
pkg: str, envs, component: bool = False, required: bool = True
):
if required:
if not check_key(pkg, envs):
return False
elif not pkg in envs:
return True
prefix = "penv:" if not component else ""
if (component or check_key("index_url", envs[pkg], pkg)) and check_key(
"libs", envs[pkg], pkg, check_value=False
):
libs = envs[pkg]["libs"]
optionals = envs[pkg].get("optionals", [])
return check_is_list(libs, f"{prefix}{pkg}:libs") and check_is_list(
optionals, f"{prefix}{pkg}:optionals (if present)", require_dict=True
)
else:
return False
def check_penv(envs):
# penv is optional
ok = True
if not "penv" in envs:
return True
if not check_key("penv", envs):
return False
envs = envs["penv"]
if check_key("python", envs):
if not str(envs["python"]).startswith("3."):
print("penv:python: Installer supports python3 only")
ok = False
else:
ok = False
ok = ok and check_key("pip", envs)
ok = ok and check_key("repositories", envs)
ok = ok and check_subset_or_component("common", envs)
ok = ok and check_subset_or_component("axelera_common", envs)
ok = ok and check_subset_or_component("axelera_development", envs)
ok = ok and check_subset_or_component("axelera_runtime", envs)
ok = ok and check_subset_or_component("development", envs)
ok = ok and check_subset_or_component("runtime", envs)
ok = ok and check_subset_or_component("torch", envs)
ok = ok and check_key("requirements", envs)
ok = ok and check_key("pyenv", envs)
ok = ok and check_key("python_src", envs)
ok = ok and check_key("python_dependencies", envs)
ok = ok and check_key("pyenv_dependencies", envs)
return ok
def validate(envs):
ok = True
ok = ok and check_key("name", envs)
ok = ok and check_vars(envs)
ok = ok and check_cpu()
ok = ok and check_os(envs)
ok = ok and check_system_libs("installer_dependencies", envs)
ok = ok and check_penv(envs)
ok = ok and check_subset_or_component("docker", envs, component=True)
ok = ok and check_subset_or_component("runtime", envs, component=True)
ok = ok and check_subset_or_component("common", envs, component=True)
ok = ok and check_subset_or_component("driver", envs, component=True)
return ok
def limit_for_hash(env, hash_type, optional):
# Remove all settings that don't affect docker contents
is_docker_hash = hash_type == "docker"
if "penv" in env:
if "repositories" in env["penv"]:
del env["penv"]["repositories"]
if "pyenv" in env["penv"]:
del env["penv"]["pyenv"]
if "python_src" in env["penv"]:
del env["penv"]["python_src"]
if "pyenv_dependencies" in env["penv"]:
del env["penv"]["pyenv_dependencies"]
for component in ["docker", "runtime", "common"]:
if component in env:
if not is_docker_hash:
del env[component]
else:
if "description" in env[component]:
del env[component]["description"]
if "system-dependencies" in env[component]:
del env[component]["system-dependencies"]
if "optionals" in env[component] and not optional:
del env[component]["optionals"]
if "driver" in env:
del env["driver"]
if "repositories" in env:
del env["repositories"]
if "next" in env:
del env["next"]
def flatten(env, parent=False, optional=False):
items = []
optionals = env.pop("optionals", [])
for key, value in env.items():
key = str(parent) + str("_") + str(key) if parent else key
if isinstance(value, MutableMapping):
_items, _unused = flatten(value, key, optional=optional)
items.extend(_items.items())
optionals += _unused
elif isinstance(value, list):
if optional and optionals and key.endswith("_libs"):
for item in optionals:
value.append(item["name"])
optionals = []
for k, v in enumerate(value):
_items, _unused = flatten({str(k): v}, key, optional=optional)
items.extend(_items.items())
optionals += _unused
else:
items.append((key, value))
return dict(items), optionals
def parse_config_file(args):
envs = {}
try:
with open(args.config_file, "r") as f:
envs = yaml.safe_load(f)
except yaml.YAMLError as e:
print(e)
sys.exit(1)
if not validate(envs):
sys.exit(1)
if args.hash:
limit_for_hash(envs, args.hash, args.optional)
yaml_str = json.dumps(envs, sort_keys=True)
with open(args.requirements_file, "r") as file:
yaml_str += file.read()
hash_str = hashlib.sha256(yaml_str.encode("utf-8")).hexdigest()
print(hash_str[:8])
else:
flat, unused_optionals = flatten(envs, optional=args.optional)
for ix, unused in enumerate(unused_optionals):
key = f"unused_optionals_{ix}"
flat[f"{key}_name"] = unused["name"]
flat[f"{key}_info"] = unused["info"]
for i in flat.items():
# Substitute the values of any variables
key = i[0].replace("-", "_").replace(".", "_")
# Variable substitution is permissive in the body of the configuration
# If there are undefined variables then we expect that those are
# system environment variables that will be defined at runtime.
value = replace_vars(str(i[1]), __VAR_DICT, permissive=True)
value = str(value).replace('"', '\\"').replace("$", "\\\\\\$")
print(f'export AX_{key}="{value}"')
def print_single_status(desc_len, name_width, name, item, info):
# print "| name | item info |" justifying as appropriate
# no folding is done - it is assumed to fit within the available space
print(f"| {name:<{name_width}} | {item}{info:>{desc_len-len(item)}} |")
def print_status(info_width, name_width, name, item, info):
# print "| name | item info |" justifying and folding as appropriate
desc_len = info_width - name_width - 7
item = item.strip()
info = info.strip()
if len(item) + len(info) + 1 > desc_len:
if len(item) > desc_len:
wrapped = textwrap.wrap(item, width=desc_len, replace_whitespace=False)
print_single_status(desc_len, name_width, name, wrapped[0], "")
print_status(
info_width, name_width, "", item.removeprefix(wrapped[0]), info
)
else:
print_single_status(desc_len, name_width, name, item, "")
if len(info) <= desc_len:
print_single_status(desc_len, name_width, "", "", info)
else:
wrapped = textwrap.wrap(info, width=desc_len, replace_whitespace=False)
print_single_status(desc_len, name_width, "", "", wrapped[0])
print_status(
info_width, name_width, "", "", info.removeprefix(wrapped[0])
)
return
print_single_status(desc_len, name_width, name, item, info)
def status_type(parser, values):
if len(values) != 5:
raise parser.error(f"Exactly 5 arguments required (got {len(values)})")
try:
info_width = int(values[0])
name_width = int(values[1])
except ValueError:
parser.error("First two arguments (info_width, name_width) must be integers")
name, item, info = values[2], values[3], values[4]
return (info_width, name_width, name, item, info)
if __name__ == "__main__":
parser = argparse.ArgumentParser(description="Support functions for the installer.")
top_level = parser.add_mutually_exclusive_group()
top_level.add_argument(
"--check-depends", type=str, help="run `check_depends` on the given command"
)
top_level.add_argument(
"--config-file", type=str, help="Path to the YAML configuration file"
)
top_level.add_argument(
"--status",
nargs=5,
metavar=("INFO_WIDTH", "NAME_WIDTH", "NAME", "ITEM", "INFO"),
type=str,
help="Prints a line of status info, folded as necessary. Provide info_width and name_width (integers), followed by name, item, info (strings)",
)
parser.add_argument(
"--hash", type=str, choices=["docker", "env"], help="Type of hash to compute"
)
parser.add_argument(
"--requirements-file", type=str, help="Path to the requirements file"
)
parser.add_argument(
"--optional", action="store_true", help="Include optional packages"
)
args = parser.parse_args()
if (args.hash is None) != (args.requirements_file is None):
parser.error(
"Either both --hash and --requirements-file must be provided, or neither."
)
if args.status:
args.status = status_type(parser, args.status)
if args.check_depends:
check_depends(args.check_depends)
elif args.config_file:
parse_config_file(args)
elif args.status:
print_status(*args.status)
else:
parser.print_help()
exit(1)
def test_replace_vars():
import pytest
val_dict = {
"VAR1": "value1",
"VAR2": "value2",
"VAR3": "${VAR1}_and_more",
"PREFIX": "VAR",
"NUM": "3",
}
assert (
replace_vars("This is ${VAR1}", val_dict, permissive=False) == "This is value1"
)
assert (
replace_vars("This is ${VAR2}", val_dict, permissive=False) == "This is value2"
)
assert (
replace_vars("This is ${VAR3}", val_dict, permissive=False)
== "This is value1_and_more"
)
assert (
replace_vars("This is ${VAR4}", val_dict, permissive=True) == "This is ${VAR4}"
)
with pytest.raises(RuntimeError, match='VAR4 is not defined'):
replace_vars("This is ${VAR4}", val_dict, permissive=False)
def test_check_vars():
import pytest
envs = {"vars": {"VAR1": "value1", "VAR2": "${VAR1}_and_more", "VAR3": "test"}}
assert check_vars(envs) == True
assert envs["vars"]["VAR1"] == "value1"
assert envs["vars"]["VAR2"] == "value1_and_more"
assert envs["vars"]["VAR3"] == "test"
envs = {"vars": {"VAR1": "value1", "VAR2": "${VAR1}_and_more", "VAR3": "test"}}
with patch.dict(
os.environ,
{"VAR1": "overridden"},
):
assert check_vars(envs) == True
assert envs["vars"]["VAR1"] == "overridden"
assert envs["vars"]["VAR2"] == "overridden_and_more"
assert envs["vars"]["VAR3"] == "test"
envs["vars"]["VAR3"] = "${UNDEFINED_VAR}_test"
with pytest.raises(RuntimeError, match='UNDEFINED_VAR is not defined'):
check_vars(envs)
def test_is_list(capsys):
assert check_is_list([], "some_list") == True
assert check_is_list([1, 2, 3], "some_list") == True
assert check_is_list([{"a": 1}, {"b": 2}], "some_list", require_dict=True) == True
assert check_is_list([{"a": 1}, {"b": 2}], "some_list", require_dict=False) == True
assert check_is_list([1, "string", {}], "some_list", require_dict=True) == False
assert check_is_list("not a list", "some_list", require_dict=True) == False
assert (
"some_list must be a (possibly empty) list of dicts" in capsys.readouterr().out
)
assert check_is_list("not a list", "some_list", require_dict=False) == False
assert "some_list must be a (possibly empty) list\n" in capsys.readouterr().out
def test_check_subset_or_component(capsys):
envs = yaml.safe_load(
"""
common:
description: Common
"""
)
assert check_subset_or_component("not_common", envs, required=False) == True
assert check_subset_or_component("not_common", envs, required=True) == False
assert "Missing required key: not_common" in capsys.readouterr().out
assert check_subset_or_component("common", envs, component=True) == False
assert "Missing required key: common:libs" in capsys.readouterr().out
envs = yaml.safe_load(
"""
common:
description: Common
libs:
- libgstreamer-plugins-base1.0-dev
- axelera-runtime-1.5.0-a0+g224f27977
- systemd
"""
)
assert check_subset_or_component("common", envs, component=True) == True
assert check_subset_or_component("common", envs, component=False) == False
assert "Missing required key: common:index_url" in capsys.readouterr().out
envs = yaml.safe_load(
"""
common:
description: Common
libs:
- libgstreamer-plugins-base1.0-dev
- axelera-runtime-1.5.0-a0+g224f27977
- systemd
optionals:
- name: libmali
info: Mali GPU driver
"""
)
assert check_subset_or_component("common", envs, component=True) == True
envs = yaml.safe_load(
"""
common:
description: Common
index_url: "http://ax-whatever/development"
libs:
- libgstreamer-plugins-base1.0-dev
- axelera-runtime-1.5.0-a0+g224f27977
- systemd
optionals:
- name: libmali
info: Mali GPU driver
"""
)
assert check_subset_or_component("common", envs, component=False) == True
envs = yaml.safe_load(
"""
common:
description: Common
libs:
- libgstreamer-plugins-base1.0-dev
- axelera-runtime-1.5.0-a0+g224f27977
- systemd
optionals:
name: libmali
"""
)
assert check_subset_or_component("common", envs, component=True) == False
assert (
"common:optionals (if present) must be a (possibly empty) list of dicts"
in capsys.readouterr().out
)
envs = yaml.safe_load(
"""
axelera_common:
index_url: "http://ax-whatever/development"
requires_auth: false
libs:
- axelera-types: "{index = \\"axelera_runtime\\" }"
- axelera-runtime: "{index = \\"axelera_runtime\\" }"
- axelera-compiler: "{index = \\"axelera_development\\" }"
axelera_runtime:
index_url: "http://ax-whatever/runtime"
requires_auth: false
libs: []
"""
)
assert check_subset_or_component("axelera_common", envs, component=False) == True
assert check_subset_or_component("axelera_runtime", envs, component=False) == True
def test_flatten():
import copy
envs = yaml.safe_load(
"""
penv:
python: 3.12
pip: 25.0.1
repositories:
- name: pypi
url: https://pypi.org/simple
ssl: true
default: true
- name: axelera_runtime
url: "http://ax-whatever/runtime"
ssl: false
pip_extra_args: --blah-blah
common:
index_url: "http://ax-whatever/common"
requires_auth: false
libs:
- lib1
- lib2
optionals:
- name: opt1
info: optional lib 1
- name: opt2
info: optional lib 2
"""
)
exp = (
{
"penv_common_index_url": "http://ax-whatever/common",
"penv_common_libs_0": "lib1",
"penv_common_libs_1": "lib2",
"penv_common_requires_auth": False,
"penv_pip": "23.0.1",
"penv_python": 3.1,
"penv_repositories_0_default": True,
"penv_repositories_0_name": "pypi",
"penv_repositories_0_ssl": True,
"penv_repositories_0_url": "https://pypi.org/simple",
"penv_repositories_1_name": "axelera_runtime",
"penv_repositories_1_pip_extra_args": "--blah-blah",
"penv_repositories_1_ssl": False,
"penv_repositories_1_url": "http://ax-whatever/runtime",
},
[
{
"info": "optional lib 1",
"name": "opt1",
},
{
"info": "optional lib 2",
"name": "opt2",
},
],
)
# deepcopy because flatten modifies the input and we want the same input for both tests
assert flatten(copy.deepcopy(envs), optional=False) == exp
exp = (
{
"penv_common_index_url": "http://ax-whatever/common",
"penv_common_libs_0": "lib1",
"penv_common_libs_1": "lib2",
"penv_common_libs_2": "opt1",
"penv_common_libs_3": "opt2",
"penv_common_requires_auth": False,
"penv_pip": "23.0.1",
"penv_python": 3.1,
"penv_repositories_0_default": True,
"penv_repositories_0_name": "pypi",
"penv_repositories_0_ssl": True,
"penv_repositories_0_url": "https://pypi.org/simple",
"penv_repositories_1_name": "axelera_runtime",
"penv_repositories_1_pip_extra_args": "--blah-blah",
"penv_repositories_1_ssl": False,
"penv_repositories_1_url": "http://ax-whatever/runtime",
},
[],
)
assert flatten(envs, optional=True) == exp
def test_status(capsys):
import textwrap
print_status(35, 10, "Name", "item", "info")
out = capsys.readouterr().out
assert out == textwrap.dedent(
"""\
| Name | item info |
"""
)
print_status(35, 10, "Name", "long_item_no_spaces", "info")
out = capsys.readouterr().out
assert out == textwrap.dedent(
"""\
| Name | long_item_no_space |
| | s info |
"""
)
print_status(35, 10, "Name", "long item with spaces", "info")
out = capsys.readouterr().out
assert out == textwrap.dedent(
"""\
| Name | long item with |
| | spaces info |
"""
)
print_status(35, 10, "Name", "long item with spaces", "long_info_no_spaces_in")
out = capsys.readouterr().out
assert out == textwrap.dedent(
"""\
| Name | long item with |
| | spaces |
| | long_info_no_space |
| | s_in |
"""
)
print_status(35, 10, "Name", "long item with spaces", "long info with spaces in")
out = capsys.readouterr().out
assert out == textwrap.dedent(
"""\
| Name | long item with |
| | spaces |
| | long info with |
| | spaces in |
"""
)
print_status(35, 10, "Name", "short item", "long info with spaces in")
out = capsys.readouterr().out
assert out == textwrap.dedent(
"""\
| Name | short item |
| | long info with |
| | spaces in |
"""
)
print_status(35, 10, "Name", "long_item_no_spaces", "long info with spaces in")
out = capsys.readouterr().out
assert out == textwrap.dedent(
"""\
| Name | long_item_no_space |
| | s |
| | long info with |
| | spaces in |
"""
)
May find in Debian yaml file: „ocl-icd-opencl-dev“ and replace with „rocm-opencl-dev“
and find in requirement.txt
„torch“ and „torchvision“ and remove the „+cpu“ option for amd install
Does any one know how to deactivate usb-c devices upon shutdown?
eg: Axelera Metis pcie 4-chip card
and activate on boot?
# Remove NVIDIA USB Type-C UCSI devices, if present
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c8000", ATTR{power/control}="auto", ATTR{remove}="1"
# Remove Axelera USB Type-C UCSI devices, if present
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0xunknown", ATTR{class}=="0x0c8000", ATTR{power/control}="auto", ATTR{remove}="1"
# add NVIDIA USB Type-C UCSI devices, if present
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c8000", ATTR{power/control}="auto", ATTR{remove}="0"
# add Axelera USB Type-C UCSI devices, if present
ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0xunknown", ATTR{class}=="0x0c8000", ATTR{power/control}="auto", ATTR{remove}="0"
And allow eAIPU and GPU
any Tipps how to?
/etc/X11/xorg.conf.d/80-igpu-primary-egpu-eaipu-offload.conf
Section "Device"
Identifier "Device0"
Driver "modesetting"
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
BusID "PCI:26:16:3" # Edit according to lspci, translate from hex to decimal.
Option "AllowExternalGpus" "True" # Required for proprietary NVIDIA driver.
EndSection
Section "Device"
Identifier "Device2"
Driver "metis"
BusID "PCI:26:16:4" # Edit according to lspci, translate from hex to decimal.
Option "AllowExternalGpus" "True" # Required for proprietary AXELERA driver.
EndSection
Another idea how to CPU switch
and OS switch
Only an idea …
def check_cpu():
ok = "lscpu | awk '/Vendor ID:/{print $2}'"
if ok == "AuthenticAMD":
ok = "lscpu | awk '/Vendor ID:/{print $2}'"
elif ok == "AuthenticINTEL":
ok = "lscpu | awk '/Vendor ID:/{print $2}'"
else:
ok = "lscpu | awk '/Vendor ID:/{print $2}'"
return ok
def check_sys(envs):
ok = check_key("os", envs)
if check_key("name", envs["os"], "os"):
if envs["os"]["name"] == "Debian":
ok = True
elif envs["os"]["name"] == "Ubuntu":
ok = True
elif envs["os"]["name"] == "Kubuntu":
ok = True
else:
ok = False
else:
ok = False
return ok
def check_os(envs):
ok = check_key("os", envs)
if check_key("name", envs["os"], "os"):
if not envs["os"]["name"] == check_sys(envs):
if check_key("cpu", envs["os"], "os"):
if envs["os"]["cpu"] == check_cpu():
print("os:cpu Installer supports NOT This CPU and OS")
ok = False
else:
ok = False
else:
ok = False
ok = ok and check_key("version", envs["os"], "os")
return ok
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.
Sorry, we're still checking this file's contents to make sure it's safe to download. Please try again in a few minutes.
OKSorry, our virus scanner detected that this file isn't safe to download.
OK