looks like Ubuntu 24.04 not good enough with Intel N150,maybe that is why GMKtec install 24.10 by default

  1. Get https://www.mirrorservice.org/sites/releases.ubuntu.com/24.04.2/ubuntu-24.04.2-live-server-amd64.iso
  2. Choose HWE kernel (during install)
  3. Compile and install https://github.com/intel/gmmlib.git
  4. Compile and install https://github.com/intel/libva
  5. Compile and install https://github.com/intel/libva-utils
  6. Compile and install https://github.com/intel/media-driver.git
  7. Compile and install https://gitlab.freedesktop.org/drm/igt-gpu-tools/ (or package intel-gpu-tools can try to use from distribution )

With HWE we got Kernel  6.11.0-21


Using username "gmk".
gmk@10.9.9.77's password:
Welcome to Ubuntu 24.04.2 LTS (GNU/Linux 6.11.0-21-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Fri Apr  4 05:06:10 PM UTC 2025

  System load:  0.07              Temperature:             63.0 C
  Usage of /:   6.6% of 97.87GB   Processes:               160
  Memory usage: 3%                Users logged in:         1
  Swap usage:   0%                IPv4 address for enp6s0: 10.9.9.77


Expanded Security Maintenance for Applications is not enabled.

33 updates can be applied immediately.
To see these additional updates run: apt list --upgradable

Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status


To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

tools to compile Intel video driver

apt install -y cmake pkg-config meson libdrm-dev automake libtool gcc git

That you get if try to use tools and drivers from Ubuntun 24.04.2

gmk@g9:~$ vainfo
error: can't connect to X server!
libva info: VA-API version 1.20.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_20
libva error: /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so init failed
libva info: va_openDriver() returns 1
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/i965_drv_video.so
libva info: Found init function __vaDriverInit_1_20
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

Build latest driver Intel video driver for Linux

git clone https://github.com/intel/gmmlib.git
cd gmmlib/
mkdir build 
cd build
cmake ../
make -j 4
make install
cd ../..

git clone https://github.com/intel/libva.git
cd libva
./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu
make
make install
cd ..

git clone https://github.com/intel/libva-utils.git
cd libva-utils
./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu
make
make install
cd ..

git clone https://github.com/intel/media-driver.git
cd media-driver/
mkdir build
cd build 
cmake ../
make -j 4
make install
cd ../..

# Intel_gpu_tools compilation is optional
apt install -y peg bison flex libcairo2-dev libudev-dev libprocess-cpp-dev libunwind-dev valgrind libpixman-1-dev libdw-dev libproc2-dev libkmod-dev
git clone https://gitlab.freedesktop.org/drm/igt-gpu-tools
cd igt-gpu-tools
meson build && ninja -C build
./meson.sh install
cd ..

to save space

apt remove -y cmake pkg-config meson libdrm-dev automake libtool gcc peg bison flex libcairo2-dev libudev-dev libprocess-cpp-dev libunwind-dev valgrind libpixman-1-dev libdw-dev libproc2-dev libkmod-dev



and now check with vainfo

root@g9:~/libva-utils# vainfo
Trying display: drm
libva info: VA-API version 1.23.0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_23
libva info: va_openDriver() returns 0
vainfo: VA-API version: 1.23 (libva 2.23.0.pre1)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 25.2.0 (187a0c7d0)
vainfo: Supported profile and entrypoints
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileNone                   : VAEntrypointStats
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Simple            : VAEntrypointEncSlice
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointFEI
      VAProfileH264Main               : VAEntrypointEncSliceLP
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSlice
      VAProfileH264High               : VAEntrypointFEI
      VAProfileH264High               : VAEntrypointEncSliceLP
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline: VAEntrypointFEI
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
      VAProfileVP8Version0_3          : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointEncSlice
      VAProfileHEVCMain               : VAEntrypointFEI
      VAProfileHEVCMain               : VAEntrypointEncSliceLP
      VAProfileHEVCMain10             : VAEntrypointVLD
      VAProfileHEVCMain10             : VAEntrypointEncSlice
      VAProfileHEVCMain10             : VAEntrypointEncSliceLP
      VAProfileVP9Profile0            : VAEntrypointVLD
      VAProfileVP9Profile0            : VAEntrypointEncSliceLP
      VAProfileVP9Profile1            : VAEntrypointVLD
      VAProfileVP9Profile1            : VAEntrypointEncSliceLP
      VAProfileVP9Profile2            : VAEntrypointVLD
      VAProfileVP9Profile2            : VAEntrypointEncSliceLP
      VAProfileVP9Profile3            : VAEntrypointVLD
      VAProfileVP9Profile3            : VAEntrypointEncSliceLP
      VAProfileHEVCMain12             : VAEntrypointVLD
      VAProfileHEVCMain12             : VAEntrypointEncSlice
      VAProfileHEVCMain422_10         : VAEntrypointVLD
      VAProfileHEVCMain422_10         : VAEntrypointEncSlice
      VAProfileHEVCMain422_12         : VAEntrypointVLD
      VAProfileHEVCMain422_12         : VAEntrypointEncSlice
      VAProfileHEVCMain444            : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_10         : VAEntrypointVLD
      VAProfileHEVCMain444_10         : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_12         : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain10          : VAEntrypointVLD
      VAProfileHEVCSccMain10          : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain444         : VAEntrypointVLD
      VAProfileHEVCSccMain444         : VAEntrypointEncSliceLP
      VAProfileAV1Profile0            : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointEncSliceLP

root@server5:~# intel_gpu_top
intel-gpu-top: Intel Alderlake_n (Gen12) @ /dev/dri/card0 -    0/   0 MHz; 100% RC6;  0.00/ 0.43 W;        0 irqs/s

         ENGINES     BUSY                                                                                          MI_SEMA MI_WAIT
       Render/3D    0.00% |                                                                                      |      0%      0%
         Blitter    0.00% |                                                                                      |      0%      0%
           Video    0.00% |                                                                                      |      0%      0%
    VideoEnhance    0.00% |                                                                                      |      0%      0%

PID           Render/3D                      Blitter                        Video                      VideoEnhance          NAME

root@server5:~# intel_gpu_frequency
Opened device: /dev/dri/card0
cur: 0 MHz
min: 200 MHz
RP1: 300 MHz
max: 1000 MHz


additional packages

# intel GPU tools (if not compiled)
# apt install -y intel-gpu-tools

# if not compiled newest btop that shows GPU load on Intel
# apt install -y  btop 

# disk tools
apt install -y smartmontools nvme-cli mmc-utils

apt install -y lm-sensors cpufrequtils

# To be able to change Power Limits fro command line
apt install -y devmem2 msr-tools
wget https://raw.githubusercontent.com/horshack-dpreview/setPL/master/setPL.sh
chmod +x /root/setPL.sh


root@server5:~# mmc status get  /dev/mmcblk0
SEND_STATUS response: 0x00000900
DEVICE STATE: TRANS
STATUS: READY_FOR_DATA

root@server5:~# nvme list
Node                  Generic               SN                   Model                                    Namespace  Usage                      Format           FW Rev
--------------------- --------------------- -------------------- ---------------------------------------- ---------- -------------------------- ---------------- --------
/dev/nvme0n1          /dev/ng0n1            S7DSNJ0X904565Y      Samsung SSD 990 PRO with Heatsink 4TB    0x1         33.84  GB /   4.00  TB    512   B +  0 B   4B2QJXD7
/dev/nvme1n1          /dev/ng1n1            S7DSNJ0X904574E      Samsung SSD 990 PRO with Heatsink 4TB    0x1         33.81  GB /   4.00  TB    512   B +  0 B   4B2QJXD7
/dev/nvme2n1          /dev/ng2n1            S7DSNJ0X904497E      Samsung SSD 990 PRO with Heatsink 4TB    0x1         33.81  GB /   4.00  TB    512   B +  0 B   4B2QJXD7
/dev/nvme3n1          /dev/ng3n1            S7DSNJ0X904509N      Samsung SSD 990 PRO with Heatsink 4TB    0x1         33.81  GB /   4.00  TB    512   B +  0 B   4B2QJXD7


Partitioning to LVM

sgdisk -Z /dev/nvme0n1
sgdisk -Z /dev/nvme1n1
sgdisk -Z /dev/nvme2n1
sgdisk -Z /dev/nvme3n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme0n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme1n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme2n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme3n1
pvcreate /dev/nvme0n1p1 -y; pvcreate /dev/nvme1n1p1 -y; pvcreate /dev/nvme2n1p1 -y; pvcreate /dev/nvme3n1p1 -y
vgcreate storage --physicalextentsize 128k /dev/nvme0n1p1 /dev/nvme1n1p1 /dev/nvme2n1p1 /dev/nvme3n1p1
lvcreate -L 14.5T -I 128k -i 4 -n fs storage
lvcreate -L 32G -I 128k -i 4 -n swap storage
lvcreate -l +100%FREE -I 128k -i 4 -n tmp storage
#
# mkfs.ext4 -L EXT4-4K /dev/storage/fs
# mkfs.ext4 -C 16384 -O  bigalloc -L EXT4-16K /dev/storage/fs
mkfs.ext4 -C 131072 -O  bigalloc -L EXT4-128K /dev/storage/fs

remove partitioning

sed -i 's/^\/dev\/mapper\/storage/#\/dev\/mapper\/storage/' /etc/fstab
umount /storage
lvremove -f /dev/storage/tmp /dev/storage/swap /dev/storage/fs
vgremove storage
pvremove -f /dev/nvme0n1p1 /dev/nvme1n1p1 /dev/nvme2n1p1 /dev/nvme3n1p1

mdraid

sgdisk -Z /dev/nvme0n1
sgdisk -Z /dev/nvme1n1
sgdisk -Z /dev/nvme2n1
sgdisk -Z /dev/nvme3n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme0n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme1n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme2n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme3n1
mdadm --create --level=0 --raid-devices=4 --name=storage  /dev/md0 /dev/nvme*n1p1
mkfs.ext4 /dev/md0

remove mdraid

umount /dev/md0
mdadm -S /dev/md0
mdadm --zero-superblock /dev/nvme*n1p1


btrfs

sgdisk -Z /dev/nvme0n1
sgdisk -Z /dev/nvme1n1
sgdisk -Z /dev/nvme2n1
sgdisk -Z /dev/nvme3n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme0n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme1n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme2n1
sgdisk -n1:0:0 -t1:EF00 /dev/nvme3n1
mkfs.btrfs --data raid0 --mixed --sectorsize 128k /dev/nvme0n1p1 /dev/nvme1n1p1 /dev/nvme2n1p1 /dev/nvme3n1p1

systemctl daemon-reload
root@server5:/# mkfs.btrfs --data raid0 --sectorsize 4k /dev/nvme0n1p1 /dev/nvme1n1p1 /dev/nvme2n1p1 /dev/nvme3n1p1  btrfs-progs v6.6.3
See https://btrfs.readthedocs.io for more information.

Performing full device TRIM /dev/nvme0n1p1 (3.64TiB) ...
Performing full device TRIM /dev/nvme3n1p1 (3.64TiB) ...
Performing full device TRIM /dev/nvme2n1p1 (3.64TiB) ...
Performing full device TRIM /dev/nvme1n1p1 (3.64TiB) ...
NOTE: several default settings have changed in version 5.15, please make sure
      this does not affect your deployments:
      - DUP for metadata (-m dup)
      - enabled no-holes (-O no-holes)
      - enabled free-space-tree (-R free-space-tree)

Label:              (null)
UUID:               136781b9-8962-48e5-b881-80bf277097de
Node size:          16384
Sector size:        4096
Filesystem size:    14.55TiB
Block group profiles:
  Data:             RAID0             4.00GiB
  Metadata:         RAID1             1.00GiB
  System:           RAID1             8.00MiB
SSD detected:       yes
Zoned device:       no
Incompat features:  extref, skinny-metadata, no-holes, free-space-tree
Runtime features:   free-space-tree
Checksum:           crc32c
Number of devices:  4
Devices:
   ID        SIZE  PATH
    1     3.64TiB  /dev/nvme0n1p1
    2     3.64TiB  /dev/nvme1n1p1
    3     3.64TiB  /dev/nvme2n1p1
    4     3.64TiB  /dev/nvme3n1p1

root@server5:~# mdadm --create --level=0 --raid-devices=4 --name=storage  /dev/md0 /dev/nvme*n1p1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.



  • No labels