hardware used:

energy meassurements:

  • meassured wattage when PC was idle (doing nothing):

    • GNU Linux Debian MATE: 36Watt
      • which is less than expected! 😀
        • mobile hardware, for comparison, still more efficient: GNU Linux Debian 11 MATE on Lenovo t440 i5 idle power consumption (not charging battery) 15Watt
    • Windows 10 Pro sitting idle for 10min: 60Watt

      • which is WAY more than expected, why actually is Windows using almost double the energy when doing nothing?
    • of course the ARM or RISC CPU + GNU Linux is THE BEST ENERGY SAVER combination!

 

https://www.chip.de/downloads/CPU-Z_13011109.html

CPU wise this “OnBoardGPU” G System is doing great, GPU wise no wonders were expected and Disk wise expectations were higher.

first things first:

“professional” raid cards cost A LOT of money and are in essence also just very specialized small computers (doing one task but doing it well).

For this reason “hardware RAID” for 2000 Bucks a card is definately worth the money for big companies that can afford it and need maximum reliability.

For small businesses and individual users, going “as software RAID as possible” is probably the only affordable option, that can work very well, as GNU Linux has demonstrated with MDADM for years (if done correctly (use similar harddisks), it should be just as solid as any other RAID system)

So the AMD RAIDXpert2 system is such a software-driver based RAID that can even RAID NVMes.

But is it reliably? And how well does it work? let’s find out.

setup in bios:

after this step reboot, and hit DEL to get back into the bios… now RAID2Xpert2 tools is available

Windows based benchmarks: first obstacle: what driver to use?

IT DEPENDS ON THE USER’S TYPE OF AMD CPU!

“load driver” this has to be done 2x times:

1st time:

2st time:

Driver CC or DID? DEPENDS ON CPU TYPE!

check this table:

https://www.amd.com/system/files/TechDocs/53987_1.pdf

So OF COURSE this AMD RAID is a “as software as it gets RAID”.

which means a specialized driver will do the RAID job and utilize the CPU for this job (a little overhead, but given the massive speeds and cores of todays CPUs that should be of almost no impact).

It delivers impressive results with benchmarks such as CrystalDiskMark

AMD RAIDXpert2 consists of

  • storage management and
  • a RAID controller and port virtualization
  • AMD RAIDXpert2 runs on existing systems by using a motherboard’s built-in SATA ports, PCIe M.2 slots and PCIe NVMe Add-in cards” (src)

benchmarks: the speed

CrystalDiskMark:

not sure if this benchmark can be taken “for real” as it (probably) also includes RAM caching.

win: “copy onto yourself” benchmark:

copied 72.2GBytes (77538850987 Bytes = 72.21368GBytes to be exact) of files from C: (on RAID0) to X: (on RAID0)

completed in 64Sec this means average “copy onto yourself” (read & write at the same time from same RAID0) speed of 1.12812GBytes/sec. Yes there was some CPU activity involved.

PassMark 2nd run:

also during PassMarkTest CPU usage was like this:

ATTO Benchmark:

note: when running this in Dierct I/O (default) mode IT WILL STALL! (and take down the whole system with it)

WITH Direct I/O (STALL)

(as with other software-driver-based RAID)

NO Direct I/O

same here

these NVMes are known to have

  • 2GByte/1Sec (sequential read)
  • 1Gbyte/1Sec (sequential write)

so above 10GByte/sec are definately from RAM CACHED results!

and thus not of much meaning (unfortunately).

reliability?

Tested it for 3 weeks, it worked. (no hickups, no freezes, no dataloss).

But 3 weeks is nothing, plz someone do a 3 year long-term testing, then we are talking 😀

NVMe RAID0 should boost Windows Boot time?

and it does, but not as much as expected: humans should never wait for machines, vice versa yes.

So power up times are a major problem for users of computers, but especially for smart phone users (here the old Nokia phones definately had a massive advantage with “boot” times of 3sec X-D)

The Windows 10 Pro 64Bit observed RAID0 boot time was:

  • 10sec BIOS
  • +13sec to Desktop

these are “okayish” values, but far from impressive for this very often everday repeated use case.

(init times vary from BIOS to BIOS and system to system, but windows only boot time of 3sec would have been an impressive “snap” worth the hazzle for many users )

Compared to older AMD DDR3 + SSD systems worth 150 Bucks that boot Win 10 Pro in that time.

(using Windows only for gaming… so it does not bother this user so much, but it must be a massive pain in the … for all those masses of windows users to wait that long for their system to boot up, but what can ye say? mankind has become stubborn “have used this, will use it forever” (unable to change?))

PS: Interesting: when installing Win 10 64Bit Pro on an Samsung SSD Evo 870, the boot speeds are exactly the same (10sec bios, +13sec to win desktop) is something else the limiting factor?)

so what about GNU Linux?

the idea was to have a dual-boot system: SPOILER: managed to do that, but did it like this:

  • added an SSD and installed windows on that SSD (also moved the games to that SSD, for faster loading time)
  • installed GNU Linux Debian 11 on the NVMe while setting up software RAID0 for maximum speed 😀
    • the grub boot loader, for some reason installed itself on /dev/sda (which is the windows SSD)
    • it successfully detected the windows installation and can boot both from grub boot menu 😀

what might also be interesting: run Windows 10 KVM as VM guest, passing onBoard Vega7 GPU (UNTESTED!) through for gaming (but then 2x GPUs are required, one for “viewing the screen” and one for pass-through to Windows.

KVM QEMU GPU Graphic Card Pass Through – Windows Games on GNU Linux

  • hint: there are ACTUALLY GNU Linux drivers for this AMD RAID mode for Ubuntu (PDF and a github (UNTESTED!))
    • so if it works with Ubuntu, it SHOULD also work with Debian.

The question is: Why use it?

As it might be the better idea to go with the default well tested GNU Linux MDADM software RAID system.

Per default Debian 11 setup does not recognize the AMD Raid: (it just sees two separate NVMe)

GNU Linux Debian 11 mdadm based raid setup

What is “special” about mdadm raid with GNU Linux is, that it is possible to raid whole devices, it is also possible to combine two partitions (of equal size) to a RAID1 (redundancy) or RAID0 (performance).

master boot record will still be on /dev/sda (that’s what it does per default)

Setup amdgpu drivers (firmware) + MATE Desktop

resolution will be shitty 1024×768 without the AMD drivers/firmware:

https://packages.debian.org/search?keywords=firmware-amd-graphics

su - root
apt update
lspci -nn | grep VGA
07:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [1002:1638] (rev c9)

apt-get install firmware-amd-graphics libgl1-mesa-dri libglx-mesa0 mesa-vulkan-drivers xserver-xorg-video-all

https://wiki.debian.org/AtiHowTo#Identification

3D bench

https://wiki.debian.org/Mesa#Testingperformance

glxinfo | grep OpenGL
OpenGL vendor string: AMD
OpenGL renderer string: AMD RENOIR (DRM 3.40.0, 5.10.0-20-amd64, LLVM 11.0.1)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 20.3.5
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6 (Compatibility Profile) Mesa 20.3.5
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 20.3.5
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:


glxinfo | grep rendering
direct rendering: Yes



glxgears -info; # run OpenGL 3D benchmark "gears"
417 frames in 5.0 seconds = 83.131 FPS
300 frames in 5.0 seconds = 59.996 FPS
300 frames in 5.0 seconds = 59.999 FPS
300 frames in 5.0 seconds = 59.994 FPS

Youtube 4k and 8k Benchmark

passed with flying colors…

BUT CPU really hit it’s limit with 8k playback (basically all smooth, almost no dropped frames, but all cores at almost 100%)

more benchmarks:

25000x fish – that’s a lot of fish at 15 fps

1000x fish it can draw with 40 to 60 fps

all harddisk related benchmarks are run in the user’s default home dir /home/user

which is on the NVMe RAID0 via mdadm mounted at /home

lin: “copy onto yourself” benchmark:

copied 32.9 GB within 34.79sec = 0.94567 GByte/sec

so that is -16.17% slower than the AMD Raid under Win 10.

md5sum single core benchmark:

/scripts/benchmark_md5sum.sh
md5sum benchmark...
=== your cpu is:
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
model name	: AMD Ryzen 5 5600G with Radeon Graphics
=== generate 1GB test file
1048576+0 records in
1048576+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 1.92204 s, 559 MB/s
1.0G	md5sumTestFile
cd573cfaace07e7949bc0c46028904ff  md5sumTestFile

real	0m1.293s
real    0m1.295s # 2nd run
real    0m1.295s # 3rd run

which makes it almost 2x twice (+195%) as fast (single-core) as an i5-4200U (mobile CPU).

harddisk benchmarks:

su - root
apt install iozone3

run it:

time iozone -a
iozone test complete.
real	0m34.631s #1st run
real    0m31.539s #2nd run
real    0m30.870s #3rd run

for comparison: created ext4 partition on the Samsung 870 EVO (1TB):

iozone test complete.
real 1m58.598s

compared with the first run of the NVMe mdadm RAID0 setup is +342.46% faster.

iozone.man.txt

basic dd benchmark:

# the script
vim /scripts/bench/bench_harddisk.sh 
#!/bin/bash
echo "=== harddisk sequential write and read bench v1 ==="
echo "starting test on the device that holds the current directory the user is in"
echo "no need to run it as root"
echo ""
echo "========== writing 3GB of zeroes =========="
time dd if=/dev/zero of=./testfile bs=3G count=1 oflag=direct

echo "========== reading 6GB of zeroes =========="
time dd if=./testfile bs=3GB count=1 of=/dev/null

echo "========== tidy up remove testfile =========="
rm -rf ./testfile;

# run it
/scripts/bench/bench_harddisk.sh 
=== harddisk sequential write and read bench v1 ===
starting test on the device that holds the current directory the user is in
no need to run it as root

========== writing 3GB of zeroes ==========
0+1 records in
0+1 records out
2147479552 bytes (2.1 GB, 2.0 GiB) copied, 1.37282 s, 1.6 GB/s

real	0m1.376s
user	0m0.000s
sys	0m1.205s
========== reading 6GB of zeroes ==========
0+1 records in
0+1 records out
2147479552 bytes (2.1 GB, 2.0 GiB) copied, 0.630029 s, 3.4 GB/s

real	0m0.634s
user	0m0.001s
sys	0m0.599s
========== tidy up remove testfile ==========

boot time:

always applying grub2-speed-boost

first run was like win:

  • 10sec bios
  • 13sec to desktop
    • 23sec total

2nd run was faster (not sure why it was faster, shutdown , powerON, start timer)

  • 8.52sec bios
  • 11.97sec to Desktop
    • 20.49sec total

3rd shutdown & powerON:

  • 8.07sec bios
  • 12.34sec to Desktop
    • 20.41 total

so about 2.5 sec faster than win 10 64Bit (no matter AMD RAID or EVO SSD)

summary/resume/fazit/in total:

this system + GNU Linux Debian 11 MATE just flies

speedy speedy system for demanding workloads

next update: will install Win 10 64Bit Pro as KVM guest on GNU Linux Debian 11 host and do some harddisk benchmarking and GPU forwarding (if possible)

liked this article?

  • only together we can create a truly free world
  • plz support dwaves to keep it up & running!
  • (yes the info on the internet is (mostly) free but beer is still not free (still have to work on that))
  • really really hate advertisement
  • contribute: whenever a solution was found, blog about it for others to find!
  • talk about, recommend & link to this blog and articles
  • thanks to all who contribute!
admin