IOMELT(1)
π IOMELT(1) β the iomelt page, bestie edition π
okay so this is iomelt, and it lives in the User Manuals section of your manual pages, and I am literally about to make you love a storage benchmark. yes, a benchmark. stay with me. π«Ά
β¨ NAME β¨
iomelt β a simple yet effective IO benchmark tool πΈ
π¦ SYNOPSIS π¦
iomelt [-dDhnoOrRv] [-b BYTES ] [-s BYTES ] [-p PATH ]
π DESCRIPTION π
okay so iomelt is a benchmark tool for storage devices, and honestly? it's giving main character energy for something so understated. it's designed to be simple to use and to produce consistent and reproducible results β no chaos, no drama, just numbers you can trust. β¨
by default it creates a 10 Megabytes file using the optimal block size as returned by statvfs(), and then it runs a series of five different tests: serial write, serial read, random rewrite, random read, mixed read/write. five tests, five vibes, all in one go. π
π OPTIONS π
-dβ dump data in a format that can be easily digested by pattern processing commands likeawk. machine-readable, bestie. π€-Dβ print time in seconds since epoch. raw timestamp realness. β±οΈ-hβ prints usage parameters. the "help me help you" flag. π-Hβ omit header row when dumping data. bye bye header, you will not be missed. π-nβ do not convert bytes to a human readable format. keep those raw numbers raw. π’-oβ do NOT display results (does not override-d). yes, a benchmark that shows you nothing. iconic honestly. π-Oβ reopen workload file between tests. fresh file, fresh start, fresh vibes. π¦-rβ creates a random suffix to the test file (useful when testing clustered distributed file systems that use file name as a hash key). so specific, so valid. π²-Rβ tries to minimize cache effects by using Direct IO. heads up though: the underlying file system must support theO_DIRECTopen()flag. the aligned buffer is created usingposix_memalign(). no cap, this one's doing the most. π₯-vβ controls the level of verbosity. π£οΈ-vvβ even more verbose output. it's giving extra. π¬π¬-Vβ displays version number. π-b BYTESβ block size used for read and write operations. please note that unless specified,iomeltwill try to use the optimal block size as returned bystatvfs(). block size must be a power of two. β‘-s BYTESβ test file size.K,M,Gmay be used as suffixes for Kilobytes, Megabytes and Gigabytes, respectively. pick your unit, live your truth. π-p PATHβ complete path to the directory where the test file should be created. π
π AUTHOR π
Written by Rodrigo Campos (camposr@gmail.com) β absolute legend, we stan. π
π SEE ALSO π
open(2), statvfs(3), posix_memalign(3), posix_fadvise(2), read(2), write(2) β the whole friend group, fr fr. π«Ά
Detailed documentation and latest version may be obtained at http://iomelt.com β
π BUGS π
okay so there are two things you need to know, and I'm saying this with love. π
- The
-voption must precede the-poption in order to display the debugging information for thechdir()operation. order matters, bestie. π - The unit conversion function will fail for large file sizes in 32 bit systems due to integer overflows. not a vibe, but forewarned is forearmed. β οΈ
and that's the whole page, no skips, no shortcuts. π
this one came from Linux, dated AUGUST 2012, and it's IOMELT(1) all the way down β mwah, go benchmark something. πβ¨π
π¦ where this page comes from
- nixos 26.05: iomelt 0.7
- nixpkgs unstable: iomelt 0.7
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms