How One Line of Code Tripled Allwinner A20 SATA Write Performance

Allwinner A20 SATA Performance Patch

If you’ve been following this blog long enough, you may remember that all linux-sunxi community work aiming at improving u-boot and Linux software support on Allwinner processors started with Allwinner A10 processor found in MeLE A1000 TV box back in 2012, which at the time provided an interesting alternative to Raspberry Pi board that was in short supply at launch time and several months after. One of the most interesting feature found in Allwinner A10 single core Arm Cortex-A8 processor was its SATA interface, and Allwinner A20 was announced a few months later with a dual core Cortex-A7 processor and virtually the same peripherals as Allwinner A10, including SATA. However when I  tested CubieTruck board connected to a mechanical drive, I noticed sequential SATA performance was fine for reads (~180MB/s), but writes were fairly slow at around 36 MB/s. Other people complained about it, and some looked into it, and at one point it appeared the maximum SATA write performance …

AIO-3399J Development Board Review with Ubuntu 16.04

AIO-3399J WiFi, Heatsink, USB Firmware Update

Regular readers will know that Firefly team sent  me several of their Rockchip boards for evaluation, and I started with a review of ROC-RK3328-CC development board powered by Rockchip RK3328 processor. This time, I went with the high-end AIO-3399J board comprised of a features-packed baseboard and a Rockchip RK3399 system-on-module. Just like with the previous review, I’ve decided to focus on Linux support, in this case Xunbuntu 16.04, and I’ll do an Android review on the company releases Android 8.1 for Firefly-RK3399 board. First Boot with AIO-3399J Board Before booting the board, I inserted the heatsink, and connected the provided WiFi antennas. I also connected some devices and cables, including a mouse,  the male to male USB cable to the top USB 3.0 (OTG) port for firmware update, a HDMI cable to my TV, and Ethernet cable, as well as the serial debug board. The final step was to connect the 12V power supply, and I immediately got output to …

Micro SD Cards for Development Boards – Classes, Tools, Benchmarks, Reliability, and Tips & Tricks

When people plan to use a development board for their project, they mainly focus on the requirements of the development board itself, as well as software support. But selecting the right accessories may be just as crucial for good performance and stability. For example, selecting a proper power supply is important, as the board may freeze or randmly rebooted if it is not feed at the right voltage. Part of this is selecting a micro USB cable, as you’ll want a cable with minimal resistance which can be achieved through shorter cables and/or a low AWG value. Another important item that can impact stability and performance of the systems are micro SD cards when used to run the operating system in development boards. Understanding SD Card Performance Metrics & Classes Until a few years ago, (Micro) SD cards were primary used to store data such as photos, videos and music. In those use cases, you have large files that benefit …

Review & Quick Start Guide for Khadas Vim Pro Development Board with Ubuntu 16.04

Khadas Vim is the only Amlogic S905X development board I’m aware of. There are 4 or 5 versions of the board, but currently only two models are sold: Khadas Vim with 8GB flash and single band WiFi + BLE 4.0, and Khadas VIM Pro with 16GB flash, and dual band WiFi + BLE 4.2. SZWesion, the company behind the board, has sent Khadas Vim Pro for evaluation. Today, I’ll take a few pictures of the board and its accessories, and report my experience playing with Ubuntu 16.04.2 on the board. They’ve also released Android, LibreELEC, and dual boot Android/Ubuntu (for Vim Pro only) images, which you can find in the firmware resources page. Khadas Vim Pro Unboxing and Photos My parcel included Khadas package that looks like a book, an HDMI cable, and the same IR remote control sent with GeekBox, the first board made by the company, and powered by a Rockchip RK3368 processor. You can indeed open the …

FriendlyARM NanoPi NEO Board Benchmarks

We’ve already seen how to setup NanoPi NEO with Ubuntu Core, and while it’s mostly designed as an IoT node, for example to control relays over Ethernet or the Internet, I’ve still decided to see how it would perform under load by running Phoronix benchmarks, and then network and storage (micro SD card provided by FriendlyARM). It’s a small board, so we should expect it to heat a lot under load, especially it does not come with an heatsink by default. Also bear in mind that performance may dramatically change depending on the software implementation, and for the test, I’m using the company’s Ubuntu Core firmware. Before start the benchmark, I noticed that QTe-Demo was running in the background, probably because it was used on their other board with video output or LCD. but it’s taking some CPU usage, and is absolutely not needed here. To disable it, edit /etc/rc.local, and comment out one line as follows: I also planned …

FFSB and IOzone: File System Benchmarking Tools, Features and Internals – ELCE 2012

Keshava Munegowda and Sourav Poddar, software engineers at Texas Instruments, give a presentation about 2 relatively new file system benchmarks: The Flexible Filesystem Benchmark (FFSB ) and IOzone at the Embedded Linux Conference Europe 2012. Abstract: The IOzone is widely used File System Bench-marking tool in both linux and windows systems. The Flexible Filesystem Benchmark (FFSB) is a new cross-platform file-system performance measurement tool. It uses custom profiles as input to measure multiple file systems read/write performances. This paper identifies and compares these file system benchmarking tools in terms of the optimal usage techniques such as buffer size, number of threads, number of write blocks etc. Internals and features of these tools , and the necessary steps involved in the porting of benchmarking tools to different platforms are also discussed. The depicted file system benchmarking performance numbers, in this paper, are measured in both x86 PCs and ARM based SOC platforms.The audience for this presentation are the System Architects and …