Miner Guide

Optimization — Miners

Strategies to maximize earnings and system efficiency.

Execution Time

Faster execution = more jobs/hour = higher earnings.

1. Use NVMe SSD for Cache

Disk I/O is often the bottleneck. Use the fastest storage:

swarmient-daemon start \
  --cache-dir /mnt/nvme/swarmient-cache \
  --data-dir /mnt/nvme/swarmient-data

Performance: NVMe SSD = 3–5x faster than HDD for most workloads.

2. Disable CPU Frequency Scaling

Keep CPU at full speed (not power-saving mode):

Linux:

# Check current governor
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

# Set to performance
echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

macOS:

Disable “Reduce motion” and “Low Power Mode” in System Preferences.

3. Increase CPU Clock (Overclocking)

If comfortable with overclocking, higher clock = faster execution.

Warning: Risk of system instability. Start small.

Linux (manual):

# Check current speed
lscpu | grep MHz

# Increase clock (requires CPU support)
# Varies by CPU—research your model

Result: 10–20% faster execution with proper cooling.

4. Close Background Applications

Reduce resource contention:

# Linux: Find heavy processes
top -b -n 1 | head -20

# Kill unnecessary services
sudo systemctl stop -s  # Stop sleeping services

Stopping bloatware frees CPU and memory.

5. Monitor and Reduce Latency

Measure job latency:

swarmient-daemon metrics --period 60

Look for:

  • Job pickup latency — Time from job offered to execution start (should be <1 second)
  • Execution latency — Time from start to finish (varies by job)
  • Result submission latency — Time to upload results (should be <100ms)

If pickup latency is high, you might be over-subscribed (too many concurrent tasks).

Resource Allocation

1. Fine-Tune Concurrent Tasks

More concurrent tasks = more jobs, but resource contention increases.

Test different values:

# Conservative: 1 task per 4 cores
# Aggressive: 1 task per 2 cores

# If 8 cores:
# Conservative: 2 concurrent
# Aggressive: 4 concurrent

Measure impact:

swarmient-daemon earnings --timeline hourly

If hourly earnings drop, you have too many concurrent tasks.

2. Allocate Based on Job Type

Some jobs need more resources:

  • Lightweight: Text processing, simple math (1 core, 1GB RAM)
  • Medium: Code generation, data analysis (2 cores, 4GB RAM)
  • Heavy: ML training, large compilations (4+ cores, 8+ GB RAM)

Set max_concurrent based on workload mix:

{
  "execution": {
    "max_concurrent_tasks": 3,
    "concurrent_heavy": 1,
    "concurrent_medium": 2,
    "concurrent_lightweight": 4
  }
}

3. Reserve System Resources

Never advertise all your resources. Always reserve for OS:

CPU: Advertise cores ÷ 1.3 (leave 23% for OS)

# If 8 cores: advertise 6
swarmient-daemon start --cpu-cores 6

Memory: Advertise 75% of total

# If 16GB total: advertise 12GB
swarmient-daemon start --memory-gb 12

Disk: Advertise 70% of available

# If 200GB available: advertise 140GB
swarmient-daemon start --disk-gb 140

Reserving ensures you don’t run out of resources mid-job.

Uptime & Reliability

1. Enable Auto-Restart

Ensure daemon starts after reboot:

Linux:

sudo systemctl enable swarmient-daemon

macOS:

launchctl load ~/Library/LaunchAgents/com.swarmient.daemon.plist

2. Monitor System Health

Watch for issues:

# Check CPU temperature
sensors  # Linux
istats  # macOS

# Check disk health
smartctl -a /dev/sda  # Linux
diskutil info disk0  # macOS

# Check memory
free -h  # Linux
vm_stat  # macOS

Action if temperature > 85°C:

  • Increase fan speed
  • Improve ventilation
  • Stop overclocking
  • Reduce concurrent tasks

3. Schedule Maintenance

Do system maintenance during low-earnings periods:

# Example: Update and restart on Sunday at 3 AM
0 3 * * 0 /usr/local/bin/update-and-restart.sh

This avoids losing jobs during business hours.

4. Use UPS (Uninterruptible Power Supply)

Protect against power loss:

  • UPS keeps miner running during brief outages
  • Graceful shutdown on extended outages
  • Avoids corrupted data and lost earnings

Recommended for: Serious miners (>$100/month earnings)

Network Optimization

1. Use Wired Connection

Ethernet is more reliable than WiFi:

Benefits:

  • Lower latency
  • Better stability
  • Consistent bandwidth

2. Check Bandwidth

Ensure sufficient upload/download:

# Test bandwidth
speedtest-cli

# Should be: upload ≥1 Mbps, download ≥1 Mbps

If low, contact your ISP or consider upgrading.

3. Optimize Poll Interval

Adjust how often you check for jobs:

{
  "network": {
    "poll_interval_ms": 3000
  }
}

Lower interval (1000ms): Pickup jobs faster, use more bandwidth

Higher interval (10000ms): Use less bandwidth, slower to pickup

Default (5000ms) is balanced. Only change if:

  • Bandwidth is very limited (increase to 10000ms)
  • You want to maximize job pickup (decrease to 2000ms)

Hardware Upgrades

1. Add CPU Cores

More cores = more concurrent jobs = more earnings.

Cost-benefit: $100–300 for CPU + cooling = $5–10/month more earnings (break-even in 12–36 months).

2. Add RAM

More memory enables larger jobs.

Cost-benefit: $30–100 for RAM = $2–5/month more earnings (break-even in 6–20 months).

3. Add NVMe SSD

Faster storage = faster execution.

Cost-benefit: $50–150 for SSD = $3–8/month more earnings (break-even in 6–50 months).

4. Add GPU

GPU jobs pay 3–5x more than CPU jobs.

Cost-benefit: $200–500 for used GPU = $20–50/month more earnings (break-even in 4–25 months).

Recommended GPU: Mid-range (RTX 2060 or RTX 3060).

Example Optimization Journey

Week 1: Baseline

  • Hardware: 4 cores, 8GB RAM, HDD
  • Rate: $12/hour
  • Concurrent tasks: 1
  • Daily earnings: ~$1.50
  • Success rate: 92%

Week 2: Increase Concurrency

  • Concurrent tasks: 2
  • Daily earnings: $2.80
  • Success rate: 89% (higher resource contention)

Week 3: Reduce Concurrency, Add SSD

  • Concurrent tasks: 2
  • Cache on SSD instead of HDD
  • Daily earnings: $3.20
  • Success rate: 96% (faster execution)

Week 4: Upgrade CPU

  • Add 4 more cores (now 8 cores)
  • Concurrent tasks: 3
  • Daily earnings: $7.50
  • Success rate: 95%

Result: 5x earnings increase from optimizations.

Monitoring Tools

1. Dashboard Metrics

Check your dashboard for:

  • Real-time job queue
  • Earnings per hour
  • Resource utilization graphs
  • Success/failure rates
  • Reputation trends

2. Command-Line Tools

# Real-time monitoring
swarmient-daemon monitor

# Performance metrics
swarmient-daemon metrics

# Earnings breakdown
swarmient-daemon earnings --detailed

# System health
swarmient-daemon health-check

3. System Tools

# Linux: CPU, memory, disk
htop
iotop
df -h

# macOS: CPU, memory
Activity Monitor
Menu Stats

Cost of Optimization

Most optimizations have upfront costs but long-term payoff:

Optimization Cost Monthly Benefit Payoff Period
SSD for cache $80 +$5 16 months
CPU upgrade $200 +$15 13 months
RAM upgrade $50 +$3 17 months
GPU $300 +$30 10 months
UPS $150 +$2 (reliability) 75 months

Best ROI: GPU (if you want serious earnings).

Next Steps