MinIO Warp is an open-source tool for testing storage performance. It allows you to plan capacity and make sure the infrastructure meets requirements.

After MinIO’s migration to Hugo for documentation, I went about the task of adding documentation for Warp that previously only existed in the upstream code repositories.

This particular document covers two types of tests Warp provides. I put it together using some existing documentation and code examples in the repository combined with a deep dive analysis of the code using Claude, a review by a MinIO team member that uses the product regularly during support calls, and my own testing.


Warp offers different test types to evaluate specific aspects of storage performance. Choose the test type that matches what you want to measure.

Single operation tests

Single operation tests focus on one type of storage operation at a time. These tests help you understand baseline performance for specific workloads.

The table below lists common test types.

Test typeMeasuresUse case
PUTUpload performanceBackup systems, data ingestion workflows
GETDownload performanceContent delivery, data retrieval scenarios
DELETECleanup performanceLifecycle management operations
LISTDirectory browsing performanceFile management applications
# Test upload performance
warp put --duration 5m --access-key YOUR_ACCESS_KEY --secret-key YOUR_SECRET_KEY

# Test download performance
warp get --duration 5m --access-key YOUR_ACCESS_KEY --secret-key YOUR_SECRET_KEY

# Test object listing
warp list --duration 5m --access-key YOUR_ACCESS_KEY --secret-key YOUR_SECRET_KEY

For a complete list of available test types, see benchmarks.

Mixed workload tests

Mixed workload tests combine multiple operation types to simulate real application behavior. Most production applications perform a mix of reads, writes, and metadata operations.

Configure the operation distribution to match your application patterns. A read-heavy application might use 70% GET operations, 20% STAT operations, and 10% PUT operations. A write-heavy backup application might reverse this distribution.

# Read-heavy workload
warp mixed --get-distrib 70 --stat-distrib 20 --put-distrib 10 --access-key YOUR_ACCESS_KEY --secret-key YOUR_SECRET_KEY

# Write-heavy workload
warp mixed --get-distrib 20 --stat-distrib 10 --put-distrib 70 --access-key YOUR_ACCESS_KEY --secret-key YOUR_SECRET_KEY