diff --git a/test/Makefile b/test/Makefile index cca0d134f..80ede0be6 100644 --- a/test/Makefile +++ b/test/Makefile @@ -47,6 +47,7 @@ $(INITRAMFS)/lib/x86_64-linux-gnu: | $(VDSO_LIB) @cp -L /lib/x86_64-linux-gnu/libcrypt.so.1 $@ @cp -L /lib/x86_64-linux-gnu/libdl.so.2 $@ @cp -L /lib/x86_64-linux-gnu/libz.so.1 $@ + @cp -L /lib/x86_64-linux-gnu/libmvec.so.1 $@ @cp -L /usr/local/benchmark/iperf/lib/libiperf.so.0 $@ @cp -L $(VDSO_LIB) $@ @@ -93,6 +94,7 @@ $(INITRAMFS)/benchmark/bin: @cp /usr/local/benchmark/iozone $@ @cp -r /usr/local/benchmark/unixbench $@ @cp -r /usr/local/benchmark/lmbench $@ + @cp /usr/local/benchmark/fio/bin/fio $@ @# Replace the homebrewed getpid with a standard benchmark like UnixBench or LMbench. @gcc -O2 $(CUR_DIR)/apps/getpid/getpid.c -o $@/getpid diff --git a/tools/docker/Dockerfile.jinja b/tools/docker/Dockerfile.jinja index ecb2d1515..5df2fd413 100644 --- a/tools/docker/Dockerfile.jinja +++ b/tools/docker/Dockerfile.jinja @@ -48,6 +48,7 @@ RUN git clone https://github.com/kdlucas/byte-unixbench.git RUN git clone https://github.com/asterinas/lmbench.git RUN wget https://www.iozone.org/src/current/iozone3_506.tar RUN tar -x -f iozone3_506.tar +RUN git clone -b fio-3.37 https://github.com/axboe/fio.git # Build sysbench WORKDIR /root/sysbench-1.0.20 @@ -84,6 +85,14 @@ WORKDIR /root/iozone3_506/src/current RUN CFLAGS=-static make linux-AMD64 \ && cp iozone /usr/local/benchmark/ +# Build fio +WORKDIR /root/fio +RUN ./configure --disable-shm --prefix=/usr/local/benchmark/fio \ + # Remove this when we support syscall timerfd_create and fadvise + && sed -i -e '/#define CONFIG_HAVE_TIMERFD_CREATE/d' -e '/#define CONFIG_POSIX_FADVISE/d' config-host.h \ + && make -j \ + && make install + # Clear cached files WORKDIR /root RUN rm -rf sysbench-1.0.20 \ @@ -92,7 +101,8 @@ RUN rm -rf sysbench-1.0.20 \ lmbench \ byte-unixbench \ iozone3_506.tar \ - iozone3_506 + iozone3_506 \ + fio #= Build syscall test =========================================================