รีวิว Radxa X4 Kit : บอร์ด SBC ที่ใช้ Intel N100 – ทดสอบประสิทธิภาพและ GPIO บน Ubuntu 24.04 (Part 2)

หลังจากที่เราได้แกะกล่องและทดสอบ  Radxa X4 Kit เบื้องต้นไปแล้ว ในรีวิวนี้เราจะมาทดสอบประสิทธิภาพในการใช้งาน Radxa X4 Kit บนระบบปฎิบัติการ Ubuntu 24.04 กัน

โดยทำการทดสอบมาตรฐานและเปรียบเทียบประสิทธิภาพกับซิงเกิ้ลบอร์ดยอดนิยมอย่าง Raspberry Pi 5 โดยใช้การทดสอบตามหัวข้อดังนี้

  1. การตรวจสอบข้อมูลระบบเบื้องต้น
  2. การทดสอบ Benchmark
    • CPU
    • Disk
    • Peripherals
    • Network
  3. การทดสอบการใช้งานเว็บและมัลติมีเดียร์
  4. การตรวจสอบการใช้พลังงาน

และหลังจากนั้นเรายังจะทดสอบการใช้งานขา GPIO จำนวน 40 ขาที่เชื่อมต่อกับ MCU RP2040 ที่ติดตั้งบนบอร์ดให้เห็นกันว่าถ้าต้องการจะใช้งานจะทำได้อย่างไร

ข้อมูลระบบเบื้องต้น


โดยเราทำการติดตั้ง Ubuntu 24.04 ลงไปบน SSD ขนาด 128GB และแรมขนาด 8GB  จากนั้นเราทำการอ่านข้อมูลเพิ่มเติมด้วยคำสั่ง inxi เพื่อตรวจสอบอุปกรณ์อื่น ๆ ในระบบ จะพบข้อมูลต่าง ๆ โดยจะเห็นว่าอุณหภูมิตอน idel อยู่ที่ 42 องศาเท่านั้น RAM ถูกใช้งานไป 2.48 GB จาก 8GB และการติดตั้ง Ubuntu 24.04 ใช้พื้นที่ไปเพียง 11.67 GB เท่านั้น

การทดสอบประสิทธิภาพของ Radxa X4 Kit

การทดสอบด้วย sbc-bench.sh

เราทำการทดสอบด้วย sbc-bench.sh ซึ่งได้ผลลัพธ์ดังนี้ และสามารถอ่านรายงานฉบับเต็มได้ที่ https://0x0.st/XYiQ.bin


ข้อมูลทั่วไป


จากการทดสอบ Benchmark จะพบว่าอุณหภูมิของ CPU ในการทดสอบอยู่ที่ค่าเฉลี่ยนไม่เกิน 70 องศาเซลเซียส แต่เมื่อเทียบกับการทดสอบ CPU N100 จากบอร์ดอื่นจะพบว่าสิ่งที่ต่างกันคือค่าสัญญาณนาฬิกาของ Radxa X4 ทำงานต่ำกว่าในบางการทดสอบเช่น cpuminer ซึ่งจะพบว่าสัญญาณนาฬิกาเริ่มลดลงหลังจากการทดสอบ 7-zip single core benchmark ซึ่งหากดูในรายงานจะพบว่ามีการแจ้งว่าพบ “Powercap detected”


ซึ่งตอนแรกคาดว่าน่าจะเกิดจากการจ่ายพลังงานที่ต่ำลงของ USB Adaptor ในชุดคิต แต่ลองเปลี่ยนแล้วทดสอบก็ยังได้ค่าใกล้เคียงของเดิม ดังนั้นแสดงว่ามีการจำกัดการใช้พลังงาน โดยเราจะตรวจสอบด้วยการใช้คำสั่ง “sudo powercap-info -p intel-rapl” เพื่อตรวจสอบ ซึ่งจากข้อมูลจะพบว่าค่า power limit ของ PL1 (long duration) ถูกตั้งค่าไว้ที่  6W และค่าของ PL2 (short duration) จะอยู่ที่ 25W ซึ่งค่า TDP ของ N100 อยู่ที่ 6W


เลยทำการปรับตั้งค่าของ PL1 ให้เป็น 15W ตามค่า default ของ N100 [ตามวิธีในบทความ] ดังนี้


แล้วทดสอบใหม่อีกครั้งผลลัพธฺ์ที่ได้คือ ค่าอุณหภูมิที่พุ่งไปสูงมาก นั่นคือเหตุผลว่าทำไมค่า default ของ PL1 ถึงถูกจำกัดเอาไว้


เมื่อเข้าใจถึงสาเหตุแล้ว เลยกลับมาเปรียบเทียบเปรียบเทียบผลลัพธ์ของ แบนด์วิดท์หน่วยความจำ และ 7-zip เทียบกับ Raspberry Pi 5 และ SBC อื่นๆ ค่าจาก Radxa X4 นั้น memcpy: 8128.3 MB/s, memchr: 13245.3 MB/s, memset: 7960.9 MB/s ซึ่งเปรียบเทียบกับ Raspberry Pi 5 ที่ได้ memcpy: 5158.3 MB/s, memchr: 13463.2 MB/s, memset: 11671.4 MB/s จะพบว่ามีเพียงค่า memset ที่ได้ต่ำกว่า Raspberry Pi 5  แต่ค่าที่ได้ต่ำกว่า RK3588E ทุกกรณี

sbc mem compare

การทดสอบประสิทธิภาพของ  NVMe SSD

  • ทดสอบด้วย IOZONE3

เราทำการทดสอบประสิทธิภาพของ NVMe SSD ที่มากับชุดคิตด้วยโปรแกรม IOZONE3 โดยทำการปิดค่าแคชลงเพื่อให้ได้ค่าการอ่ารเขียนจากดิสก์จริง ๆ โดยผลการทดสอบเป็นดังข้อมูลด้านล่าง โดยจะพบว่าความเร็วในการ เขียน/อ่าน NVMe SSD  PM991 ของ Samsung ซึ่งเป็น PCIe 3.0 X4  นั้นอยู่ที่ 1,700 MB/s และ  946 MB/s

  • ทดสอบด้วย smartctl

ทดสอบประสิทธิภาพของ graphic card ด้วย UNIGINE Benchmarks

เราเลือกทดสอบประสิทธิภาพของ graphic card ด้วย UNIGINE Benchmarks ซึ่งผลของการ Benchmark ได้ค่า FPS อยู่ที่ 12.4 ค่า Min FPS อยู่ที่ 7.2 และ Max FPS อยู่ที่ 24 ดังแสดงในรูปภาพด้านล่าง

Radxa X4 SCB Ubuntu 24.04 unigine

ทดสอบประสิทธิภาพของ LAN และ Wi-Fi

ในการทดสอบประสิทธิภาพของเครือข่ายเราจะทำการทดสอบความเร็วของ LAN และ Wi-Fi โดยการทดสอบด้วยโปรแกรม iperf3

  • iperf3 บน ETH0

ซึ่งบอร์ด Radxa X4 ระบุไว้ว่า ethernet มีความเร็วที่ 2.5Gbps ซึ่งได้เชื่อมต่อทดสอบร่วมกับบอร์ด LattePanda Mu ซึ่งเป็น 2.5Gbps เช่นเดียวกัน โดยใช้สาย LAN CAT6A ซึ่งรองรับได้ถึง 10Gbps

Radxa X4 SCB Ubuntu 24.04 iperf3

  • ทดสอบใน client mode

จากคุณสมบัติของบอร์ดที่แจ้งว่า ethernet port เป็น 2.5Gbps  เมื่อเราทดสอบที่ port ETH0 ก็พบว่าความเร็วในการส่งข้อมูลทำได้ที่เฉลี่ย  2.35 Gbits/sec เป็นความเร็วที่ทำได้ดี

  • ทดสอบใน server mode

จากนั้นเราทดสอบให้ บอร์ด Radxa X4 เรียกใช้โปรแกรม iperf3 ในโหมด server เพื่อดูข้อมูลที่รับกลับมาบ้าง ก็ได้ผลลัพธ์ใกล้เคียงกับตอนทำงานเป็น client คือสามารถรับข้อมูลได้ที่ความเร็วเฉลี่ย 2.35 Gbits/sec

  • iperf3  บน WLAN0

Radxa X4 SCB Ubuntu 24.04 iperf3 wifi

  • ทดสอบใน client mode

การทดสอบความเร็วของ Wi-Fi นั้น เราใช้โมดูล M.2 จาก AzureWave  ที่ใช้ chip RTL8852BE (Wi-Fi 5) เราทำทดสอบโดยใช้เน็ตเวิร์ค 5GHz ของ Xiaomi Router AX3200 ซึ่งความเร็วในการรับส่งข้อมูลเฉลี่ยนอยู่ที่ 581 Mbps ก็ถือว่าเป็นไปตามมาตรฐาน AC600

  • ทดสอบใน server mode

จากนั้นเราทดสอบให้ บอร์ด Radxa X4 เรียกใช้โปรแกรม iperf3 ในโหมด server เพื่อดูข้อมูลที่รับกลับมาบ้าง ข้อมูลที่ได้รับกลับมามีความเร็วน้อยกว่าบ้างเนื่องจากเป็น Wi-Fi ได้ค่าอยู่ที่ 500 Mbits/sec

การทดสอบการใช้งานเว็บและมัลติมีเดียร์

  • การท่องเว็บ

ในการประสิทธิภาพการท่องเว็บ เราจะใช้ Speedometer 2.0 ถึงแม้ว่าปัจจุบันจะถูกแนะนำให้ทดสอบด้วย speedometer  3.0 แล้วก็ตาม เพื่อให้เราสามารถเปรียบเทียบกับ Raspberry Pi 5 ที่เคยทดสอบไว้ได้ โดยเราจะตรวจสอบประสิทธิภาพในแต่ละเว็บบราวเซอร์ ซึ่งบน Ubuntu จะมีเพียง Firefox ติดตั้งมาให้ เราต้องทำการติดตั้ง Chromium เพิ่มด้วยตัวเองก่อนเริ่มการทดสอบ

Radxa X4 SCB Ubuntu 24.04 speedometer
การทดสอบ Speedometer 2.0 รูปด้านซ้ายบน Firefox และด้านขวาบน Chromium

Speedometer 2.0 แสดงให้เห็นว่าผลการทดสอบบน Firefox จะช้ากว่า Chromium  โดยค่าจากการทดสอบบน Chromium อยู่ที่ 175  ซึ่งสูงกว่าบน Firefox ราว ๆ 12% โดยส่วนของผลการทดสอบบน Firefox นั้นได้คะแนนที่ 153 และเมื่อเปรียบเทียบกับบอร์ด Raspberry Pi 5 ที่ได้คะแนนที่ 56 แล้วจะพบว่า คะแนนของ Radxa X4  สูงกว่าราว ๆ 3 เท่า

  • WebGL Aquarium demo

Radxa X4 SBC webgl aquarium Ubuntu 24.04

การทดสอบด้วย WebGL Aquarium demo บน Chromium นั้นทดสอบด้วยการกำหนดเป้าหมายว่าที่ frame rate ที่สูงกว่า 30 FPS จะได้มีจำนวนปลาที่ว่ายน้ำอยู่กี่ตัว โดยผลลัพธ์ที่น่าพอใจคือ สามารถทดสอบได้ 32 fps ที่ปลาจำนวน 15,000 ตัว ซึ่งถ้าเปรียบกับตัวแรงอย่าง RK3588s ทำได้ 31 fps ที่ 5,000 ตัว ถือว่าใกล้เคียงกันมาก

  • การทดสอบเล่น YouTube และวิดีโอ

Radxa X4 SBC Ubuntu 24.04 chrome youtube 4k

ในส่วนของการทดสอบการเล่นวิดีโอต้นฉบับบน Youtube ที่ความละเอียด 4k ที่ 30 fps สามารถเล่นไฟล์ได้โดยไม่ปรากฎ frame drop ให้เห็น แต่อย่างใด

Radxa X4 SBC Ubuntu chrome youtube 4k60fps

จากนั้นเราการทดสอบการเล่นวิดีโอบน Youtube ด้วยความละเอียดต้นฉบับ 4k ที่  60 fps สามารถเล่นไฟล์ได้โดยมี frame drop ที่ราว ๆ 17 % และพบการหยุดโหลดตลอดเวลา ซึ่งเมื่อดูค่าความเร็วจาก connection speed ที่แสดงซึ่งอยู่ที่ เกิน 100 mbps ไม่น่าจะ

  • การเล่นไฟล์ Video

Radxa X4 SBC Ubuntu vlc h264 2K

การทดสอบเล่นไฟล์ codec H.264 ความละเอียด Full HD(1920 x 1080) ด้วยโปรแกรม VLC สามารถเล่นได้ ดีโดยไมี frame drop ที่ต่ำมาก โดยเราทดสอบด้วยวิดีโอ Big Bug Bunny เรื่องการถอดรหัสเสียงต่าง ๆทำได้ครบถ้วน

Radxa X4 SBC Ubuntu vlc h265 4K 120fps hevc

จากนั้นเราทดสอบเล่นไฟล์ที่เป็น H.265 ที่ความละเอียด 4K@30fps ก็สามารถเล่นไฟล์ได้โดยไม่มีการกระตุกเมื่อเปิดดูค่าสถิติก็จะพบว่ามี frame drop ที่ประมาณ 10% ซึ่งค่อนข้างได้ผลที่แปลกไปจากผลการทดสอบบอร์ดที่ใช้  CPU N100 ตัวอื่นที่จะอยู่ที่ 1% เท่านั้น

ตรวจสอบการใช้พลังงาน

การทดสอบวัดการใช้พลังงานของ Radxa X4  บนบอร์ด โดยใช้ USB power meter ได้ค่าผลลัพธ์ขณะทดสอบดังนี้

  • ขณะปิดเครื่อง การใช้พลังงานอยู่ที่ประมาณ 0.2 Watt

Radxa X4 shutdown power consumption

  • เมื่อเริ่ม boot ในขั้นตอน POST จะใช้พลังงานอยู่ที่ ประมาณ 12 Watt

Radxa X4 boot power consumption

  • เมื่ออยู่ในสถานะ Idle หลังจากบูตสำเร็จแล้วการใช้พลังงานจะอยู่ที่ประมาณ 6 Watt

Radxa X4 idle power consumption

ลองทดสอบเล่นไฟล์ video บน youtube ที่ความละเอียด 4K 60FPS ใช้พลังงานในการทำงานอยู่ที่ 12 Watt

Radxa X4 youtube4k power consumption

  • ทดสอบการทำงานเต็มที่บนทั้ง 4 คอร์ ด้วย 7Zip Benchmark ใช้พลังงานอยู่ที่ 12 Watt

Radxa X4 7zip benchmark power consumption

ซึ่งหลังจากทดสอบการทำงานครบถ้วนแล้ว ก็จะข้อเปรียบเทียบการใช้พลังงานเทียบกับบอร์ด N100 อื่น ที่เคยทดสอบมาจากอัตราการใช้พลังงานจะพบว่าใช้น้อยกว่าบอร์ดอื่น ๆ เช่น Lattepanda Mu มาก

การทดลองใช้งาน GPIO

การใช้งาน GPIO บนบอร์ด Radxa X4 นี้จะเป็นการใช้งานบน MCU RP2040 ที่อยู่บนบอร์ด ไม่ได้เป็นการติดต่อกับ GPIO ของ CPU โดยตรง โดยจะเชื่อมต่อกันผ่านสองการสื่อสารคือ USB mass storage สำหรับการอัพโหลดโปรแกรม และ UART สำหรับการรับส่งข้อมูลระหว่างการทำงาน เพื่อให้เข้าใจง่าย ๆ คือ หากเราต้องการใช้งาน GPIO เราต้องเขียนโปรแกรมและ compile/upload ให้ใช้งานผ่าน RP2040 ได้และในระหว่างการทำงานนั้น การติดต่อสื่อสารระหว่าง N100 กับ RP2040 ที่ทำได้คือ การรับส่งข้อมูลแบบ serial ผ่าน UART เท่านั้น

Radxa X4 communicaiton gpio

การเชื่อมต่อ

โดยการเชื่อมต่อเราจะสามารถอ้างอิงขาต่าง ๆ ได้ตามตารางด้านล่าง [ที่มา]  โดยขาทุกขายกเว้นขาที่เป็นไฟเลี้ยงและกราวด์ จะสามารถทำงานได้หลาย function ตามที่ปรากฎในตาราง

Radxa4 GPIO definition

ซึ่งเราจะทดสอบกับ GPS receiver ของ Beitian รุ่น BN-180 ซึ่งใช้การติดต่อสื่อสารแบบ UART จึงได้เลือกเชื่อมต่อกับขา GPIO 20,21 ซึ่งใน function3 แสดงข้อมูลว่าเป็น UART1 TX และ  UART1 RX Radxa X4 SCB Ubuntu 24.04 GPIO testing

การพัฒนาโปรแกรม

ในขั้นตอนการพัฒนาโปรแกรมนั้นในเว็บไซต์ของ Radxa เองมีแนะนำให้พัฒนาด้วย PICO-SDK แต่ในรีวิวนี้จะใช้การพัฒนาด้วย PlatformIO ซึ่งรองรับการพัฒนา RP2040 บน Arduino core เนื่องจากเราสามารถพัฒนาต่อยอดได้ง่ายกว่า โดยเริ่มจากการติดตั้ง VSCODE บน Ubuntu ให้เรียบร้อย [ขั้นตอน] แล้วทำการติดตั้ง extension PlatformIO ให้เสร็จสิ้นจากนั้นเรา ทดลองสร้าง project  โดยเลือกบอร์ดเป็น Raspberry Pi Pico จากนั้นทดลองเขียนโค้ดทดสอบแบบง่าย ๆ ให้ทำงานเป็น serial bridge


โดยสร้าง Serial พอร์ตใช้งานจำนวนทั้งสิ้น 3 พอร์ตคือ Serial , Serial2 และ  Serialx โดย Serial คือพอร์ตสำหรับ debug ค่าต่าง ๆ ของ Rp2040 ส่วน Serial2 คือพอร์ตที่เชื่อมต่อกับ GPS receiver และสุดท้าย Serialx คือพอร์ตที่เชื่อมต่อเข้ากับ ttyS4 ของ CPU

หลังจากนั้นเราทำการ build และ upload ไฟล์ได้เลยโดยไม่ต้องกดปุ่ม BOOTSEL  เพื่อลากไฟล์ .uf2 แล้วโดยเราจะทำการตั้งค่าในไฟล์ platformio.ini ให้ใช้ upload protocol เป็น picotool


Radxa X4 GPIO test upload

ซึ่งหลังจากตั้งต่าเสร็จสิ้นเราก็จะสามารถ build/upload ได้โดยสะดวกไม่ต้องคอยมากดปุ่มให้ลำบาก เนื่องจากปุ่มอยู่ด้านใต้ของเคสทำให้เกิดความลำบากในการกดแต่ละครั้ง การใช้วิธีนี้จึงสะดวกมากกว่า

การทดสอบ

หลังจาก upload โปรแกรมเรียบร้อยแล้วเราจะทดสอบดูว่าการสื่อสารระหว่าง Rp2040 กับ N100 สามารถทำได้ถูกต้องหรือไม่ด้วยการสร้างใช้โปรแกรม minicom ในการดูข้อมูลที่รับส่งระหว่าง CPU และ MCU ด้วยคำสั่ง


ซึ่งก็จะแสดงข้อมูลที่ถูกอ่านจาก GPS receiver มาปรากฎบนหน้าจอ ซึ่งจากการทดสอบนี้เราก็จะพบว่าเราสามารถเชื่อมต่ออุปกรณ์ต่าง ๆ เข้ากับบอร์ด Radxa X4 ได้ง่ายขึ้น เพราะเราสามารถพัฒนาโค้ดจาก Arduino ได้ ถึงแม้การรับส่งข้อมูลระหว่าง CPU และ MCU จะมีข้อจำกัดอยู่บ้างจากการใช้ได้แค่ UART ในการสื่อสาร

Radxa X4 GPIO test minicom

สรุปการใช้งานและทดสอบประสิทธิภาพของ Radxa X4 บน Ubuntu 24.04

เมื่อจบการทดสอบประสิทธิภาพของ Radxa X4 บน Ubuntu 24.04 แล้วก็พบว่าเมื่อต้องนำมาเปรียบเทียบกันกับ Raspberry Pi 5 ก็มีแง่มุมที่น่าสนใจหลายด้าน เช่น Raspberry Pi 5 ได้คะแนนที่สูงกว่าในการ benchmark ในหัวข้อ memset , 7zip และ OpenSSL AES-256 16K  ซึ่งได้คะแนนสูงกว่าไม่มาก

Radxa X4 vs Raspberry Pi 5 benchmarks comparison

ในการทดสอบประสิทธิภาพด้านกราฟฟิกนั้น Radxa X4 ให้คะนนที่สูงกวาสามเท่าเลยทีเดียว และยังมีความเร็วในการอ่าน SSD ที่สูงกว่ามากด้วย ซึ่งในหัวข้อการใช้งานเครือข่าย Radxa X4 ก็ยังมีคะแนนนำทุกข้อเนื่องจากการใช้ 2.5Gb LAN และ Wi-Fi 5 ที่วิ่งบน PCIe Gen3 x4 แต่หากมาดูต่อในเรื่องการใช้พลังงานแล้ว Raspberry Pi 5 ยังได้เปรียบในด้านการใช้พลังงานที่ต่ำกว่า เมื่อมาดูในการเชื่อมต่ออุปกรณ์และการใช้งานทั่วไปสองบอร์ดนี้ไม่ต่างกัน แต่หากเป็นการใช้งาน GPIO แล้ว Raspberry Pi 5 ยังใช้งานได้สะดวกกว่าเพราะเป็นการติดต่อตรงจาก CPU ไม่ต้องผ่าน Co-processor เหมือนที่ Radxa X4 เลือกทำผ่าน RP2040 สุดท้ายคือการสนับสนุนของระบบปฎิบัติการ เนื่องจากปัจจุบัน Windows ARM version ยังใช้งานแบบถูกต้องได้บน Raspberry Pi 5 แต่สามารถใช้งานได้บน Radxa X4 เลยดังนั้นหากต้องใช้งาน Windows Radxa X4 ยังเป็นคำตอบที่ดี แต่หากใช้งาน Linux ก็ถือว่าเสมอกันในข้อนี้

โดยสรุปการใช้งานและทดสอบประสิทธิภาพของ Radxa X4 นี้ถือว่าเป็นบอร์ด X64 ที่เล็กกระทัดรัดใช้งานได้มีประสิทธิภาพสูงมีการใส่เทคโนโลยีต่าง ๆ ที่จำเป็นลงไปได้ครบ เหมาะกับงานที่ต้องการความสามารทางกราฟฟิกและการประมวลผลที่สูง โดยอาจต้องแลกกับการใช้พลังงานที่สูงกว่าเมื่อเทียบกับบอร์ด Raspberry Pi 5 ในส่วนของการอัพเกรดในอนาคตทาง Radxa ก็ออกแบบให้ storage และ network ใช้การเชื่อมต่อผ่าน M.2 โดยไม่ต้องมี HAT อะไรเพิ่มเติม ทำให้เราสามารถอัพเกรดปรับปรุงอุปกรณ์ต่อเชื่อมได้โดยง่าย

สุดท้ายนี้ต้องขอขอบคุณ Radxa ที่ส่ง X4 SBC และอุปกรณ์เสริมมาให้ทำการรีวิว โดยหากคุณมองหาบอร์ด SBC ที่มีประสิทธิภาพสูงแบบนี้อยู่สามารถซื้อได้บน Aliexpress ในราคาเริ่มต้นที่ $63.37(~2,100฿)  และสามารถสามารถซื้อได้บน Arace ในราคาเริ่มต้นที่ $80(~2,700฿)

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
โฆษณา