Fsqual
Filesystem qualification tool
Install / Use
/learn @avikivity/FsqualREADME
fsqual - file system qualification tool for asynchonus I/O
About
Linux AIO is notoriously bad; but it is hard to understand what the weaknesses of a filesystem implementation in a particular kernel version are. The fsqual tool provides a way to qualify a filesystem's aio implementation.
See this blog post for more information.
The test matrix checks the following variations:
- Whether the write changes the size of the file or not
- Whether the write first touches its offset range, or alternatively overwrites already-written data
- Whether the write uses sector granularity (typically 512 bytes) or block granularity (typically 4096 bytes)
- Whether the writes happen concurrently, or only one at a time
- Whether O_DSYNC is in use (as is typical for commitlogs) or not
Building
Install the following packages:
libaio-devel(libaio-devon Debian and derivatives)xfsprogs-devel.x86_64(xfslibs-devon Debian and derivatives)gcc-c++(g++on Debian and derivatives)make
To build, simply run
make
Running
Change to a directory under the mountpoint to be tested, and run fsqual.
fsqual will report, for each test scenario, whether io_submit was truly asynchronous. This is done by measuring context switches during the io_submit call.
Related Skills
node-connect
342.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
85.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
342.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
