Skip to content

Resource Monitoring Script

Monitor computational resource usage for Cromwell tasks to estimate efficiency.

  • Lightweight

    Uses only native Linux tools (/proc filesystem)

  • No Dependencies

    Works on most Linux distributions

  • Complete Metrics

    CPU, memory, disk I/O, disk space, and network

  • TSV Format

    Easy to analyze with awk, pandas, or Excel

Download resource_monitor.sh

Collected Metrics

Column Description
timestamp Date and time
cpu_percent CPU usage (all cores)
mem_used_mb Used memory (MB)
mem_total_mb Total memory (MB)
mem_percent Memory usage %
disk_total_gb Total disk (GB)
disk_used_gb Used disk (GB)
disk_avail_gb Available disk (GB)
disk_percent Disk usage %
disk_read_mb MB read since last measurement
disk_write_mb MB written since last measurement
net_rx_mb Network MB received
net_tx_mb Network MB transmitted

Quick Start

Syntax

./resource_monitor.sh [interval_seconds] [disk_path]

Parameters

Parameter Default Description
interval_seconds 10 Time between measurements
disk_path /mnt/disks/cromwell_root/ Disk path to monitor

Examples

./resource_monitor.sh
./resource_monitor.sh > resource_metrics.tsv
./resource_monitor.sh 5 > resource_metrics.tsv

Cromwell Integration

To use this script as a Cromwell monitoring script, configure it in your backend options.

Cromwell Documentation

For detailed configuration instructions, see the official Cromwell Workflow Options documentation.