テスト環境
すべてのベンチマークは、同一条件下でMyRemoteMacの専用サーバー上で実行しました。
- M4 Pro: Mac Mini M4 Pro、14-core CPU / 20-core GPU、24GB RAM、512GB SSD
- M4: Mac Mini M4、10-core CPU / 10-core GPU、16GB RAM、256GB SSD
- M2 Pro: Mac Mini M2 Pro、12-core CPU / 19-core GPU、16GB RAM、512GB SSD
- Intel i9: Mac Mini Intel Core i9(2018年)、6-core、32GB RAM、512GB SSD
- macOS: Sequoia 15.2、Xcode 16.2、すべて最新アップデート適用
Geekbench 6スコア
Geekbench 6は、CPUの純粋な性能を測定します。シングルコアスコアは、日常的なタスクやIDE操作における応答性を示します。マルチコアスコアは、ビルドおよびコンパイルの性能を反映します。
| チップ | シングルコア | マルチコア | Intel i9との比較 |
|---|---|---|---|
| M4 Pro | 3,850 | 22,000 | +129% SC / +168% MC |
| M4 | 3,800 | 15,000 | +126% SC / +83% MC |
| M2 Pro | 2,750 | 14,500 | +64% SC / +77% MC |
| Intel i9 | 1,680 | 8,200 | Baseline |
重要なポイント: M4 ProのマルチコアスコアはIntel i9より2.68x高速で、Intelで10分かかっていたビルドが、今では4分未満で完了することを意味します。シングルコアの向上により、XcodeのUI、コード補完、インデックス作成の応答性が劇的に向上します。
Xcodeビルド時間
約500,000行のSwiftコード、200以上のターゲット、そしてSwiftとObjective-Cが混在するモジュールを含む、大規模な本番iOSプロジェクトでクリーンビルドをテストしました。
| チップ | クリーンビルド時間 | インクリメンタルビルド | Intelとの短縮時間 |
|---|---|---|---|
| M4 Pro | 4m 12s | 8s | 8m 18s saved (66%) |
| M4 | 5m 45s | 11s | 6m 45s saved (54%) |
| M2 Pro | 7m 15s | 14s | 5m 15s saved (42%) |
| Intel i9 | 12m 30s | 32s | Baseline |
測定方法
# Clean build measurement xcodebuild clean time xcodebuild -workspace App.xcworkspace \ -scheme App \ -destination 'platform=iOS Simulator,name=iPhone 16' \ build 2>&1 | tail -1 # Incremental build (single file change) touch Sources/App/ContentView.swift time xcodebuild -workspace App.xcworkspace \ -scheme App \ -destination 'platform=iOS Simulator,name=iPhone 16' \ build 2>&1 | tail -1
Swift Package Managerのクリーンビルド
Alamofire、Kingfisher、SnapKit、Firebase SDKなどの大規模なパッケージを含む、50個の依存関係を持つSwift Package Managerプロジェクトをテストしました。
| チップ | 依存関係の解決 | クリーンビルド | 合計時間 |
|---|---|---|---|
| M4 Pro | 12s | 1m 38s | 1m 50s |
| M4 | 14s | 2m 15s | 2m 29s |
| M2 Pro | 15s | 2m 52s | 3m 07s |
| Intel i9 | 28s | 5m 45s | 6m 13s |
# SPM clean build measurement swift package clean time swift build -c release 2>&1 | tail -5 # With parallel jobs (default uses all cores) time swift build -c release -j $(sysctl -n hw.ncpu)
Dockerビルドのパフォーマンス
Docker Desktop for Macを使用して、本番用Node.jsアプリケーションのDockerイメージ(npm install、TypeScriptのコンパイル、nginxのセットアップを含むマルチステージビルド)のビルドをテストしました。
| チップ | Dockerビルド(キャッシュなし) | Dockerビルド(キャッシュ済みレイヤー) | イメージサイズ |
|---|---|---|---|
| M4 Pro | 42s | 6s | 185MB |
| M4 | 58s | 7s | 185MB |
| M2 Pro | 1m 15s | 8s | 185MB |
| Intel i9 | 2m 38s | 12s | 192MB |
# Docker build benchmark docker system prune -af time docker build --no-cache -t benchmark-app . # Cached rebuild (change only app source, not dependencies) echo "// updated" >> src/index.ts time docker build -t benchmark-app .
LLM推論のパフォーマンス
Apple Siliconのユニファイドメモリアーキテクチャは、大規模言語モデルをローカルで実行するのに非常に適しています。llama.cpp とMetalアクセラレーションを使用して推論速度をテストしました。
| モデル | M4 Pro (tok/s) | M4 (tok/s) | M2 Pro (tok/s) | Intel i9 (tok/s) |
|---|---|---|---|---|
| Llama 3 8B (Q4_K_M) | 48.2 | 35.6 | 28.4 | 8.1 |
| Mistral 7B (Q4_K_M) | 52.7 | 38.9 | 31.2 | 9.3 |
| Llama 3 70B (Q4_K_M) | 8.5 | OOM | OOM | OOM |
| CodeLlama 13B (Q4_K_M) | 32.1 | 22.8 | 18.6 | 5.7 |
# Install llama.cpp with Metal support brew install llama.cpp # Run benchmark with Llama 3 8B llama-bench -m llama-3-8b-q4_k_m.gguf -n 512 -ngl 99 # Interactive chat llama-cli -m llama-3-8b-q4_k_m.gguf \ -n 512 -ngl 99 --color \ -p "You are a helpful coding assistant."
注: 24GBのユニファイドメモリを搭載したM4 Proは、4-bit量子化で最大約40Bパラメータのモデルを実行できます。70Bモデルには、48GBまたは64GBの構成が必要です。32GBのIntel i9は、技術的には7-13Bのモデルを実行できますが、Metal GPUアクセラレーションがないため、実用的でない速度になります。
SSDのパフォーマンス
SSDの速度は、Xcodeのインデックス作成、プロジェクトの起動時間、シミュレーターの起動、依存関係の解決に直接影響します。dd とDisk Speed Testを使用して、シーケンシャルの読み書き速度を測定しました。
| チップ | シーケンシャルリード | シーケンシャルライト | ランダム4Kリード(IOPS) |
|---|---|---|---|
| M4 Pro | 7,400 MB/s | 6,200 MB/s | 1,200K |
| M4 | 6,800 MB/s | 5,100 MB/s | 1,050K |
| M2 Pro | 5,100 MB/s | 4,200 MB/s | 850K |
| Intel i9 | 2,800 MB/s | 2,300 MB/s | 350K |
# Quick SSD benchmark with dd # Write test dd if=/dev/zero of=./testfile bs=1G count=5 2>&1 | tail -1 # Read test (clear cache first) sudo purge dd if=./testfile of=/dev/null bs=1G count=5 2>&1 | tail -1 # Cleanup rm ./testfile
ネットワークスループット
すべてのMyRemoteMacサーバーは、1Gbpsのネットワークで接続されています。以下は、実際に測定した転送速度です。
| テスト | 速度 | 備考 |
|---|---|---|
| iperf3(ローカルデータセンター) | 9.42 Gbps | データセンター内でワイヤースピードに近い速度 |
| Speedtest(インターネット) | 8.7 Gbps down / 8.2 Gbps up | 主要な欧州のピアリングポイントまで |
| git clone(大規模リポジトリ、2GB) | 14s | GitHubから取得。GitHubのegress帯域により制限されます |
| CocoaPods install(50個のpod) | 28s | git cloneとspecの解決を含む |
| Docker pull(1GBイメージ) | 8s | Docker Hubから |
# Network benchmark commands
brew install iperf3
iperf3 -c speedtest-server.example.com -t 30
# Measure git clone speed
time git clone --depth 1 https://github.com/nicklockwood/SwiftFormat.git
# Test download speed
curl -o /dev/null -w "Speed: %{speed_download} bytes/sec\n" \
https://speed.hetzner.de/1GB.bin
総合比較表
すべての指標を並べて、簡単に比較できます。
| 指標 | M4 Pro | M4 | M2 Pro | Intel i9 |
|---|---|---|---|---|
| Geekbench SC | 3,850 | 3,800 | 2,750 | 1,680 |
| Geekbench MC | 22,000 | 15,000 | 14,500 | 8,200 |
| Xcode Clean Build (500k LOC) | 4m 12s | 5m 45s | 7m 15s | 12m 30s |
| SPM Clean Build | 1m 50s | 2m 29s | 3m 07s | 6m 13s |
| Docker Build (no cache) | 42s | 58s | 1m 15s | 2m 38s |
| Llama 3 8B Inference | 48.2 tok/s | 35.6 tok/s | 28.4 tok/s | 8.1 tok/s |
| SSD Read | 7,400 MB/s | 6,800 MB/s | 5,100 MB/s | 2,800 MB/s |
| SSD Write | 6,200 MB/s | 5,100 MB/s | 4,200 MB/s | 2,300 MB/s |
| Power Consumption | ~45W peak | ~30W peak | ~40W peak | ~120W peak |
CI/CDにとっての意味
高速なハードウェアは、より高速なCI/CDパイプライン、より短い開発者のフィードバックループ、そしてビルドあたりのコスト削減に直結します。
ビルドパイプラインの時間短縮
Intelで25分かかっていた一般的なiOS CIパイプライン(チェックアウト、ビルド、テスト、アーカイブ)が、M4 Proでは10分未満で完了します。
# Typical CI pipeline timing (M4 Pro): # git checkout: 5s (vs 15s Intel) # pod install: 28s (vs 1m20s) # xcodebuild: 4m12s (vs 12m30s) # xcodebuild test: 3m15s (vs 8m40s) # archive: 2m30s (vs 6m15s) # Total: ~10m (vs ~29m Intel)
ビルドあたりのコスト比較
M4で月額$85、月100回のビルドを想定し、$0.08/分のGitHubホスト型macOSランナーと比較します。
# MyRemoteMac M4 Pro ($149/mo): # 100 builds x 10min = 1,000 min # Cost per build: $1.49 # GitHub-hosted macOS runner: # 100 builds x 25min = 2,500 min # Cost: 2,500 x $0.08 = $200/mo # Cost per build: $2.00 # Savings: 25% cheaper + 2.5x faster
開発者の生産性への影響
研究によると、ビルド時間は開発者のフロー状態に直接影響します。10分のビルドでは、開発者は他のタスクにコンテキストスイッチし、合計で15-20分を失います。4分のビルドなら、開発者はフローを維持できます。それぞれが1日10回ビルドを行う5人の開発者チームの場合、M4 ProはIntel i9と比較して、1日あたり合計で約5時間の待ち時間を削減します。
自分で試す
これらのベンチマークをご自身のMyRemoteMacサーバーで実行し、結果を直接ご確認ください。
# Quick benchmark script for your MyRemoteMac server
#!/bin/bash
echo "=== System Info ==="
sysctl -n machdep.cpu.brand_string
sw_vers
echo ""
echo "=== Geekbench 6 ==="
echo "Download from: https://www.geekbench.com/download/"
echo ""
echo "=== SSD Benchmark ==="
echo "Write speed:"
dd if=/dev/zero of=./benchfile bs=1G count=2 2>&1 | tail -1
echo "Read speed:"
sudo purge 2>/dev/null
dd if=./benchfile of=/dev/null bs=1G count=2 2>&1 | tail -1
rm -f ./benchfile
echo ""
echo "=== Network Speed ==="
curl -o /dev/null -w "Download speed: %{speed_download} bytes/sec\n" \
https://speed.hetzner.de/100MB.bin 2>/dev/null
echo ""
echo "=== Xcode Version ==="
xcodebuild -version
echo ""
echo "Done! Compare your results with the benchmarks at"
echo "https://myremotemac.com/guides/mac-mini-m4-pro-benchmarks"