Embedded Linux Board Comparison. Part 1

Raspberry Pi Beaglebone Black Arduino Yun Intel Galileo

Raspberry Pi, Beaglebone Black, Arduino Yun, and Intel Galileo--which one is right for you?

Have you heard about small Linux-based development boards like the Raspberry Pi or Beaglebone Black, but been confused about which one is best for you? This guide will compare the specifications, performance, power usage, and development experience of four popular Linux-based development boards to help you choose which is right for you!

The boards that will be covered in this guide include:

  • Arduino Yun
  • Beaglebone Black
  • Intel Galileo
  • Raspberry Pi

This guide will compare each board with an emphasis on their features and capabilities for maker and electronics projects. All of these boards run a version of Linux and are great for putting sensors, gadgets, and other hardware on the internet. However, you'll see there are quite a few differences in the hardware and capabilities that might make you prefer one board over the other.

Specifications

The following Tables 1 and 2 compares the specs and I/O capabilities of each board.

Table 1. The specs compares of each board

  Arduino Yun Beaglebone Black Intel Galileo Raspberry Pi
Picture Arduino Yun Beaglebone Black Intel Galileo Raspberry Pi
SoC

Atheros AR9331

Texas Instruments AM3358 Intel Quark X1000 Broadcom BCM2835
CPU MIPS32 24K
and ATmega32U4
ARM Cortex-A8 Intel X1000 ARM1176
Architecture MIPS and AVR ARMv7 i586 ARMv6
Speed 400 Mhz (AR9331) and
16mhz (ATmega)
1 Ghz 400 Mhz 700 Mhz
Memory 64 MB (AR9331) and
2.5 KB (ATmega)
512 MB 256 MB 256 MB (model A) or
512 MB (model B)
FPU None (Software) Hardware Hardware Hardware
GPU None PowerVR SGX530 None Broadcom VideoCore IV
Internal Storage 16 MB (AR9331) and
32 KB (ATmega)
2 GB (rev B) or 4 GB (rev C) 8 MB None
External Storage MicroSD (AR9331) MicroSD MicroSD SD card
Networking 10/100 Mbit Ethernet
and 802.11b/g/n WiFi
10/100 Mbit Ethernet 10/100 Mbit Ethernet None (model A) or
10/100 Mbit Ethernet
(model B)
Power Source 5 V from USB micro B
connector, or header pin.
5 V from USB mini B
connector, 2.1 mm jack,
or header pin.
5 V from 2.1 mm jack,
or header pin.
5 V from USB micro B
connector, or header pin.
Dimensions 2.7 in × 2.1 in
(68.6 mm × 53.3 mm)
3.4 in × 2.1 in
(86.4 mm × 53.3 mm)
4.2 in × 2.8 in
(106.7 mm × 71.1 mm)
3.4 in × 2.2 in
(85.6 mm × 56 mm)
Weight 1.4 oz (41 g) 1.4 oz (40 g) 1.8 oz (50 g) 1.6 oz (45 g)
Approximate
Price
$75 $55 (rev C),
$45 (rev B)
$80 $25 (model A),
$35 (model B)
Documentation Open source with full
schematics. CPU not
officially documented.
Open source with full
schematics. CPU fully
documented.
Open source with full
schematics. CPU fully
documented.
Open source with full
schematics. CPU partially
documented.

Table 2. Comparsion the I/O capabilities of each board

  Arduino Yun BeagleBone Black Intel Galileo Raspberry Pi
Digital I/O Pins 20 65 14 17
Digital I/O Power 5 V 3.3 V 3.3 V or 5 V
(switched with jumper)
3.3 V
Analog Input

12 with 10-bit ADC, 0-5 V
(supports external
reference input)

7 with 12-bit ADC, 0-1.8 V
(no external reference input)
6 with 12-bit ADC, 0-5 V
(no external reference input)
None
PWM Output 7 8 6 (limited speeds prevent
fine servo control)
1
UART 2 (1 wired to AR9331) 4 2
(1 exposed through
3.5 mm jack)
1
SPI 1 2 1 2
I2C 1 2 1 1
USB Host 1 standard A connector
(AR9331)
1 standard A connector 1 micro AB connector 1 (Model A) or 2 (Model B)
standard A connector
USB Client 1 micro B connector
(ATmega)
1 mini B connector 1 micro B connector None
Video Output None Micro HDMI None HDMI, Composite RCA,
DSI
Video Input None None None CSI (camera)
Audio Output None Micro HDMI None HDMI,
3.5mm jack
Power Output 3.3 V up to 50 mA,
5 V
3.3 V up to 250 mA,
5 V up to 1 A
3.3 V up to 800 mA,
5 V up to 800 mA
3.3 V up to 50 mA,
5 V up to 300-500 mA
Other

• All I/O routed to ATmega
processor unless noted
otherwise.

• Hardware compatibility
with most Arduino Leonardo
compatible shields.

• Real-time support
with programmable
real-time units.

• Many pins have multiple
functions such as I2S audio,
CAN bus, etc.
• Mini-PCI Express slot.

• Real-time clock with
optional battery.

• Mixed compatibility
with Arduino shields.
 

Performance

To compare performance of the boards I used the nbench benchmark tool. This is an old tool that was originally created to measure the performance of early Pentium-class computers. When nbench runs it performs a series of tests which are meant to mimic real world workloads, like compressing data or training a neural network. Each test result is combined to build a score for the memory, integer, and floating point performance of each system.

For this test I compiled nbench for each board using GCC 4.7. I chose a minimum of optimization settings as the goal was to compare each board and not necessarily produce the fastest results.

Performance of the Linux-boards: Arduino Yun, Beaglebone Black, Intel Galileo, Raspberry Pi
Figure 1. Performance of the boards.

Table 3. nbench benchmark tool results

  Arduino Yun

Beaglebone Black

Intel Galileo Raspberry Pi
Model A
Raspberry Pi
Model B
Memory Index 1.104 5.661 0.669 2.509 2.570
Integer Index 1.840 6.032 1.198 3.305 3.291
Floating Point Index 0.038 1.591 0.621 2.064 2.002

Looking at the results (Table 3), the Beaglebone Black has the strongest memory and integer performance. However the Beaglebone Black's floating point performance is slightly behind the Raspberry Pi. This can be explained because the ARM Cortex-A8 processor on the Beaglebone Black has a 'VFPLite' floating point unit which isn't as fast as other ARM FPUs. If you only care about performance and don't have a floating point heavy workload, the Beaglebone Black is a good board to consider.

Another interesting comparison is the Arduino Yun and Intel Galileo. Both boards run at the same 400mhz clock speed, but it's apparent the MIPS architecture of the Yun has slightly more performance than the Intel architecture of the Galileo. Floating point performance on the Yun is very low because it doesn't have a hardware floating point unit and must run those operations in software.

Finally, both the Raspberry Pi model A and model B are almost identical in performance. This result is expected because there is no difference between the processor on either board. The model B board only has more memory and peripherals compared to the model A. From a performance per cost standpoint, the model A board at $25 is quite impressive.

Part 2Power Usage, Temperature, Development