Is Assembly Still Relevant To Most Linux Software?

Written by Michael Larabel in Programming on 2 April 2013 at 05:39 AM EDT. 176 Comments
PROGRAMMING
Steve McIntyre and the Linaro Enterprise Group recently analyzed Ubuntu and Fedora software packages to see what software was still relying upon hand-written Assembly code. This was done to see how much real Assembly is being used, to see what the code was used for, and whether it was worth porting to 64-bit ARM / AArch64 / ARMv8.

Their findings found that most software doesn't need porting for 64-bit ARM but that "most software in the typical Linux distribution does not contain any assembly." For Ubuntu 13.04, only about 6% of the packages contained any Assembly code.

With packages found containing Assembly, a lot was found to already support ARMv7 and ARMv8 capabilities while some could be better-tuned to take advantage of ARM architectural features.

It was also determined that most of the Assembly code has little value. Packages still using Assembly were doing for either low-level purposes with hardware control or for performance reasons (e.g. SIMD for multimedia). Small amounts of the Assembly being used was for handling atomics, embedded library code, or controlling symbol access.

Among the Linux software packages with Assembly code that will see some love from the Linaro Enterprise Group includes the Linux kernel, GCC, glibc, gdb, binutils, LLVM, OpenJDK, and GMP. Some other important but less critical packages include GRUB2, PHP, PostgreSQL, libaio, zlib, and libjpeg.

For those wanting to see the lengthy Linaro Enterprise Group report on Assembly use in full, it can be viewed via the Linaro Wiki.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week