Metadata-Version: 2.2
Name: simple-iotest
Version: 3.52
Summary: A dead simple iotest for HPC environments
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: argparse

# iotest

Ever feel like fio is too complicated and too optimized? Well, simple-iotest covers this for you!

Using the most simple non-optimized write() or writev() with fallback to python f.write() (just like your code!) to test file system io performance.

Warning: if using big file sizes, make sure you have enough memory to hold all these bits!

Note:
	Recommand to also install the package Tee_Logger to also log your test results to your /var/log/ ( configurable ) for future keeping.

Genrated:

This script tests I/O performance by creating, reading, moving, and indexing files in various modes. It allows you to measure different aspects of disk performance and log the results.

## Installation
```bash
pipx install simple-iotest
```

## Usage
Run the script with:
```bash
iotest [options] [modes]
```

### Common Options
- `-fs, --file_size`: Size of the test files (can include suffix like `m`, `g`, etc.).  
- `-fc, --file_count`: Number of files to process per worker.  
- `-pc, --process_count`: Number of worker processes.  
- `-d, --directory`: Directory for file operations.  
- `-q, --quiet`: Suppresses output.  
- `-z, --zeros`: Uses zero-filled data instead of random.  
- `-nl, --no_log`: Disables log file creation.  
- `-nr, --no_report`: Disables result report creation.  

### Modes
- `write` / `w`: Only file writes.  
- `read` / `r`: Only file reads.  
- `index` / `i`: Create and remove temporary index folders.  
- `random`: Random read/write steps.  
- `comprehensive` / `c`: Includes write, index, read, etc.  
- `rw`: Do write → read in the same operation
- `rwi` or `wri`: Do write → index → read in the same operation.

Example:
```bash
iotest -fs 50m -fc 100 -pc 4 -d /tmp/iotest write read
```
Will launch 4 processes each write same random 50MiB size data to 100 seperate files sequentially.
Then will launch another 4 processes reading the same files.

Check the available arguments with `-h` or `--help` for more details.
