All benchmarks are artificial, but this one had me scratching my head. One hears that the BeagleBone Black is screamingly fast compared to the Raspberry Pi; faster, newer processor, blahdeblah, mcbtyc, etc. I found the opposite is true.
So I buy one at the exceptionally soggy Toronto Mini Maker Faire. Props to the CircuitCo folks, they are easy to set up: just a mini-USB cable provides power and virtual network shell. And BoneScript — an Arduino-like JavaScript library — is very clever indeed. But I need to see if this thing has any grunt, and so I need a benchmark.
After hearing about the business-card raytracer, I thought it would be perfect. I compiled it on both machines with:
g++ -Ofast  card.cpp  -o card
and then ran it with:
time ./card > /dev/null
The results are … surprising:
- Raspberry Pi: 4′ 15″
- BeagleBone Black: 12′ 39″ → 3× slower
(In comparison, my i7 quad-core laptop runs it in 8½ seconds.)
I don’t have any explanation why the BBB is so much slower. It’s almost as if the compiler isn’t fully optimizing under Ã…ngström Linux.
Raspberry Pi: system info
$ uname -a
Linux rpi 3.6.11+ #538 PREEMPT Fri Aug 30 20:42:08 BST 2013 armv6l GNU/Linux
$ cat /proc/cpuinfo
Processor   : ARMv6-compatible processor rev 7 (v6l)
BogoMIPSÂ Â Â : 697.95
Features   : swp half thumb fastmult vfp edsp java tls
CPU implementer   : 0x41
CPU architecture: 7
CPU variant   : 0x0
CPU part   : 0xb76
CPU revision   : 7
Hardware   : BCM2708
Revision   : 000f
BeagleBone Black: system info
# uname -a
Linux beaglebone 3.8.13 #1 SMP Tue Jun 18 02:11:09 EDT 2013 armv7l GNU/Linux
# cat /proc/cpuinfo
processor   : 0
model name   : ARMv7 Processor rev 2 (v7l)
BogoMIPSÂ Â Â : 297.40
Features   : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls
CPU implementer   : 0x41
CPU architecture: 7
CPU variant   : 0x3
CPU part   : 0xc08
CPU revision   : 2
Hardware   : Generic AM33XX (Flattened Device Tree)
Revision   : 0000
Both boards are running at stock speed.
Update: I’ve tried with an external power supply, and checked that the processor was running at full speed. It made no difference. I suspect that Raspbian enables armhf floating point by default, while Ã…ngström needs to be told to use it.