Benchmarking Pihole : Pi Zero vs Pi 3b+

Posted on Tue 23 April 2019 in iot

Here's a benchmark comparing pi-hole running on a Pi Zero (with USB ethernet) vs a Pi 3b+.

tl;dr There was negligible performance difference for blocked domains, but a measurable difference in mean for forwarded + cacheable domains. Although the Pi 3b+ has a 11ms better mean response time for forwarded queries, the P95 for pi zero is better in both blocked and forwarded queries.

I would recommend using the Pi Zero.

Hypothesis

Prior to the experiment, I assumed that the pi zero would be 30-50% slower in all cases, and that stddev would be larger (worse & more erratic latencies).

Hardware & Setup

Router: TP Link Archer C9 PI 3b+ : connected via 100mb ethernet into router, 32gb sandisk microsd card. Raspbian Desktop Pi Zero-W : connected via usb ethernet adapter, 100mb ethernet into router, 8gb class-4 sd card. Raspbian Lite

Method

I used dnstrace -- a go dns benchmark. The client was a macbook pro connected via wifi. Each test did 1000 queries with 10 concurrency ( go run dnstrace.go -c 10 -s 192.168.0.201 -n 100 www.googletagservices.com )

Results

full histogram and results can be found here

BLOCKED Domain www.doubleclick.net

pi 3b+

 min:        16.252928ms
     mean:       38.372412ms
     [+/-sd]:    23.097544ms
     max:        385.875967ms

pi zero

DNS timings, 1000 datapoints
     min:        19.922944ms
     mean:       40.043544ms
     [+/-sd]:    7.762346ms
     max:        71.303167ms

FORWARDED domain www.amazon.com

pi 3b+

DNS timings, 997 datapoints
     min:        13.1072ms
     mean:       19.527493ms
     [+/-sd]:    12.101107ms
     max:        142.606335ms

pi zero

DNS timings, 999 datapoints
     min:        16.252928ms
     mean:       30.097752ms
     [+/-sd]:    5.005948ms
     max:        88.080383ms

Summary and Findings

I believe the zero is an adequate replacement for the pi 3b+ . Moreover, I was impressed and shocked that stddev on the pi zero was lower than the 3b+. So despite having worse mean forwarding response times, the P95 for pi zero is better in both blocked and forwarded queries.

:star: I'll leave these two devices online for a bit let me know if you'd like any further testing done. :star:

Updates

I've added benchmarks from a wired client to the gist results. The findings above are from the original wireless client.