Back
Technology

MacBook Neo's Database Performance Compared to Cloud Servers

View source

MacBook Neo Shines in DuckDB Benchmarks Against Cloud Servers

DuckDB's Gábor Szárnyas recently published a benchmark comparison evaluating the performance of the 512GB MacBook Neo against several prominent cloud servers. The aim was to assess the MacBook Neo's capability in handling demanding database workloads, utilizing two industry-standard benchmarks: ClickBench and TPC-DS.

Benchmarks Employed

The tests utilized two primary benchmarks:

  • ClickBench: This benchmark comprises 43 queries, primarily focusing on aggregation and filtering operations. It operated on a single table containing 100 million rows, with the dataset measuring approximately 14 GB in Parquet format and 75 GB in CSV format.
  • TPC-DS: Featuring 24 tables and 99 queries, TPC-DS incorporates more complex database features, including window functions, offering a deeper dive into system performance under intricate scenarios.

Cloud Server Specifications

For a comprehensive comparison, the MacBook Neo was pitted against the following cloud server instances:

  • c6a.4xlarge: Equipped with 16 AMD EPYC vCPU cores and 32 GB RAM.
  • c8g.metal-48xl: A high-performance instance featuring 192 Graviton4 vCPU cores and 384 GB RAM.

ClickBench Results

Cold Run Performance

In the ClickBench cold run, which tests performance with empty caches, the MacBook Neo showcased remarkable speed. It completed all 43 queries in under a minute, demonstrating up to 2.8 times faster performance than the cloud instances. DuckDB attributed this significant advantage to the MacBook Neo's local NVMe SSD, which provides considerably faster initial data access compared to the network-attached disks typically used by cloud instances.

The MacBook Neo completed all ClickBench cold run queries in under a minute, demonstrating up to 2.8 times faster performance than cloud instances due to its local NVMe SSD.

Hot Run Performance

The hot run test, which leverages caching to reduce disk I/O, presented a different dynamic. The c8g.metal-48xl instance led the pack, finishing in a swift 4.35 seconds. The c6a.4xlarge completed the benchmark in 47.86 seconds, while the MacBook Neo finished in 54.27 seconds, indicating an approximate 10% faster performance than its own cold run.

Despite ranking last in the hot run, the MacBook Neo still surpassed the c6a.4xlarge on median query runtimes. Its total runtime was only about 13% slower than the c6a.4xlarge, even though the cloud instance boasted 10 more CPU threads and four times the RAM.

Despite ranking last in the hot run, the MacBook Neo's total runtime was only about 13% slower than the c6a.4xlarge, a cloud instance with significantly more CPU threads and RAM.

TPC-DS Results

The TPC-DS benchmark provided further insights into the MacBook Neo's capabilities, particularly concerning memory management.

SF100 (Scale Factor 100)

For the TPC-DS benchmark at SF100, the MacBook Neo achieved a median query runtime of 1.63 seconds and a total runtime of 15.5 minutes. This performance underscores its efficiency for moderately sized complex database workloads.

SF300 (Scale Factor 300)

At SF300, the tests began to reveal the MacBook Neo's memory constraints. Memory limitations became apparent, with DuckDB utilizing up to 80 GB for spilling to disk. One particularly demanding query (query 67) took 51 minutes to complete on its own. Overall, the MacBook Neo successfully completed all SF300 queries in 79 minutes.

At SF300, memory constraints became apparent, with DuckDB utilizing up to 80 GB for spilling to disk, and the MacBook Neo completing all queries in 79 minutes despite these challenges.

Note: Previously, the A19 Pro chip was tested using the TCP-H benchmark on an iPhone 16 Pro, completing the run in 478.2 seconds while operating at a chilled -50ºC in dry ice.