Arm Techcon 2019 Schedule – Machine Learning, Security, Containers, and More

Arm Techcon 2019

Arm TechCon will take place on October 8-10, 2019 at San Jose Convention Center to showcase new solutions from Arm and third-parties, and the company has now published the agenda/schedule for the event. There are many sessions and even if you’re not going to happen it’s always useful to checkout what will be discussed to learn more about what’s going on currently and what will be the focus in the near future for Arm development. Several sessions normally occur at the same time, so as usual I’ll make my own virtual schedule with the ones I find most relevant. Tuesday, October 8  09:00 – 09:50 – Open Source ML is rapidly advancing. How can you benefit? by Markus Levy, Director of AI and Machine Learning Technologies, NXP Over the last two years and still continuing, machine learning applications have benefited tremendously from the growing number of open source frameworks, tools, and libraries to support edge inferencing. These include CMSIS-NN, ARM …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Linux 5.2 Release – Main Changes, Arm, MIPS & RISC-V Architectures

Linux 5.2 Changelog

Linus Torvalds announced the release of Linux 5.2 last Sunday: So I was somewhat pre-disposed towards making an rc8, simply because of my travels and being entirely off the internet for a few days last week, and with spotty internet for a few days before that [*]. But there really doesn’t seem to be any reason for another rc, since it’s been very quiet. Yes, I had a few pull requests since rc7, but they were all small, and I had many more that are for the upcoming merge window. Part of it may be due to the July 4th week, of course, but whatever – I’ll take the quiet week as a good sign. So despite a fairly late core revert, I don’t see any real reason for another week of rc, and so we have a v5.2 with the normal release timing. There’s no particular area that stands out there – the changes are sosmall that the appended …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Android Patch Brings Bluetooth SBC Codec Audio Quality on-par with aptX

Android Bluetooth SBC HD Audio

In the context of CNX Software’s topics, SBC usually stands for “Single Board Computer”, but SBC also stands for “SubBand Codec“, a standard and mandatory Bluetooth codec which is supported by all headphones, portable speakers, car head units, and basically everything that plays audio over Bluetooth. SBC is known as a basic and low-quality Bluetooth codec, so people will often recommend using other codecs such as aptX, AAC or LDAC wherever possible, but ValdikSS has submitted a patch for Android which improves Bluetooth SBC codec audio quality on most existing devices, allegedly making it as good as the high quality aptX HD codec. ValdikSS explains this basically works by increasing the bitrate: My patchset bypass Android Bluetooth stack limitations and increase bitrate from stock 328 kbps to 452 or 551 kbps, depending on device speed capabilities. It’s already merged into LineageOS 15.1 and 16.0, Resurrection Remix and crDroid alternative Android firmwares. You’ll get the full detailed technical explanation in “Bluetooth …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Embedded Linux Conference & Open Source Summit 2019 Schedule

Embedded Linux Conference 2019 Schedule

In the last few years, I covered the Embedded Linux Conference and IoT Summit schedules since both were happening at the same time and in the same location. But the Linux Foundation have recently announced the Embedded Linux Conference will combine with the Open Source Summit, so the IoT Summit appears to have been phased out. The full schedule for the events taking place on August 21 – 23, 2019 at the Hilton San Diego Bayfront, USA, has also been released, so I’ll create a virtual schedule with some of the sessions most relevant to this blog. Wednesday August 21, 2019 11:30 – 12:05 – What’s New with U-Boot? by Simon Glass, Google LLC U-Boot is a widely used bootloader in embedded systems. Many users are unaware of the wide feature-set of U-Boot, particularly features added in the last few years. This talk aims to bring users (and prospective users) up to speed on the state of the art in …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

A Look at a Small NanoPi NEO4 Build Farm

NANOPI NEO4 Build Farm

FriendlyElec NanoPi NEO4 is currently the cheapest and smallest SBC powered by Rockchip RK3399 hexa-core processor which packs two Cortex A72 “fast” 64-bit cores, and four Cortex-A53 “efficiency” cores, so it should be an obvious candidate if you plan on building an Arm build farm costs to its low cost, small form factor, and relatively good performance. As part of his work on HAProxy load balancer, Willy Tarreau often has to run time-consuming builds for Arm targets, and to speed up the builds he’s put together several Arm based build farms powered by low cost development boards / SBCs. Up to now he had a build farm powered by five MIQI boards featuring Rockchip RK3288 processor with four Cortex-A17 “fast” 32-bit processor, and controlled with a ClearFog Pro networking board. He’s now decided to build another similar build farm but with NanoPi NEO4 boards instead. Willy goes through the hardware setup, and software into much details in a blog post, …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Facebook BOLT Speeds Up Large x86 & ARM64 Binaries by up to 15%

Facebook BOLT

Compilers like GCC OR LLVM normally do a good job at optimizing your code when processing your source code into assembly, and then binary format, but there’s still room for improvement – at least for larger binaries -, and Facebook has just released BOLT (Binary Optimization and Layout Tool) that has been found to reduce CPU execution time by 2 percent to 15 percent. The tool is mostly useful for binaries built from a large code base, with binary size over 10MB which are often too large to fit in instruction cache. The hardware normally spends lots of processing time getting an instruction stream from memory to the CPU, sometimes up to 30% of execution time, and BOLT optimizes placement of instructions in memory – as illustrated below – in order to address this issue also known as “instruction starvation”. BOLT works with applications built by any compiler, including the popular GCC and Clang compilers. The tool relies on Linux …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Optimizing JPEG Transformations on Qualcomm Centriq Arm Servers with NEON Instructions

Arm servers are already deployed in some datacenters, but they are pretty new compared to their Intel counterparts, so at this stage software may not always be optimized as well on Arm as on Intel. Vlad Krasnow working for Cloudflare found  one of those unoptimized cases when testing out Jpegtran – a utility performing lossless transformation of JPEG files – on one of their Xeon Silver 4116 Server: and comparing it to one based on Qualcomm Centriq 2400 Arm SoC: Nearly four times slower on a single core. Not so good, as the company aims for at least 50% of the performance since the Arm processor has double the number of cores. Vlad did some optimization on The Intel processor using SSE instructions before, so he decided to look into optimization the Arm code with NEON instructions instead. First step was to check which functions may slowdown the process the most using perf: encode_mcu_AC_refine and encode_mcu_AC_first are the main culprits. …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Embedded Systems Conference 2018 Schedule – IoT, Security, Artificial Intelligence, and More

The Embedded Systems Conference takes place each year in Boston, US in April or May. This year, the event will occur on April 18-19, and the organizers have published the schedule with 7 tracks: Advanced Technologies, Center Stage (free), Embedded Hardware Design & Verification, Embedded Software Design & Verification, IoT and Connected Devices, Keynotes (free) and Special Event (free). Even if you can’t attend, it’s always useful to have a look at the schedule to learn about potential industry developments. So I’ve made my own virtual schedule with some of the sessions I found relevant to this blog. Wednesday, April 18 8:00 – 10:00 – An Introduction to RTOS by Jean Labrosse (Software Architect, Silicon Labs) This tutorial will help you understand what RTOSs are and how they work so that you can make better use of their features. The class will explain what an RTOS is and why you should use one. We’ll explain what tasks are, why you …

Support CNX Software – Donate via PayPal or become a Patron on Patreon