fio icon indicating copy to clipboard operation
fio copied to clipboard

Provide a statically compiled fio binary or appimage containing faio

Open snail2sky opened this issue 1 year ago • 6 comments

Currently, it is too troublesome to run fio on different Linux distributions. Different operating systems rely on different libraries. Moreover, sometimes it is still an offline environment, and there is no way to download fio through the software package warehouse. Therefore, I hope the author can provide a static compiled version or appimage version of fio.

snail2sky avatar Oct 23 '24 09:10 snail2sky

I 2nd and 3rd this recommendation. One MAJOR issue with FIO, is that there is no documented method for how to install the necessary libraries required for building FIO with support for various I/O engines. Ideally, a statically linked FIO would be configured with all I/O engines, solving a multitude of issues for users wishing to use I/O engines that are not easily configured (nor documented as to how to do so), for RDMA, NFS, HTTP, etc. etc. Again, a statically linked FIO would solve this need.

russfellows avatar Dec 29 '24 16:12 russfellows

Anyone can setup a build system for this and have it generate binaries every time a release is tagged. It's not something I'm personally interested in doing, but would be happy to see someone else do it.

axboe avatar Dec 29 '24 17:12 axboe

One of our CI scripts installs various libraries for Debian- and RedHat-based distributions to enable a good number of ioengines:

https://github.com/axboe/fio/blob/master/ci/actions-install.sh

vincentkfu avatar Dec 30 '24 16:12 vincentkfu

Vincent, I see the actions. However, there are a dearth of ioengines installed in these definitions. None of them include http, few include nfs, rdma, etc. etc. These current actions install a very limited, and different set of ioengines on various platforms, which is not at all the intention of this thread. The intent is quite the opposite, which is to have a multi (linux) platform set of fio executables that are statically linked, and include all ioengines possible.

russfellows avatar Dec 30 '24 18:12 russfellows

I suffer from running fio on different arch&distro as well, a statically-linked binary with rdma/nfs engine is required. Personally I use latest Debian 12.8 to build fio statically, however some weird performance issue appeared. Maybe I should try building fio statically with RHEL-like distro.

HuangShumin avatar Dec 31 '24 00:12 HuangShumin

http builds are broken: https://github.com/axboe/fio/issues/1810 All the CI platforms except Windows include nfs. The Debian-based distributions include rdma.

I have no objection to the original purpose of this ticket. Until someone does the work to resolve it, feel free to inspect the CI scripts in case they install a library for an ioengine that you need.

vincentkfu avatar Dec 31 '24 18:12 vincentkfu