Run traffic in IDE Stream
April 1, 2025 ยท View on GitHub
Instal FIO Tool
FIO is an open source tool that will spawn a number of threads or processes doing a particular type of I/O action as specified by the user. Its binary packages have been part of the linux distribution repositories. Here are some examples to install FIO.
## For Ubuntu
sudo apt-get -y install fio
## For CentOS
sudo yum -y install fio
Find the TEEIO Device information
Follow below steps to prepare the TEEIO Device information which will be used in FIO command options. Step 1: Use lspci to check the device (For example device's BDF is da:00.0)
# lspci -s da:00.0 -v
da:00.0 Non-Volatile memory controller: SomeVendor's Device [NVM Express])
Subsystem: SomeVendor's Device aa99
Physical Slot: 19
Flags: bus master, fast devsel, latency 0, IRQ 16, NUMA node 0
... ...
Kernel driver in use: nvme
Kernel modules: nvme
In the output of lspci, check Kernel driver in use: nvme
Step 2: Check the actual device
# ls /sys/bus/pci/devices/0000\:da\:00.0/nvme
nvme5
Step 3: Make sure /dev/nvme5 exists
# ls /dev/nvme5
/dev/nvme5
Prepare the FIO command
Run below command to test I/O traffic with FIO.
FILENAME=/dev/nvme5
sudo fio --filename=${FILENAME} --rw=rw \
--direct=1 --bs=4K --ioengine=libaio \
--runtime=300 --numjobs=1 --time_based \
--group_reporting --name=seq_readwrite \
--iodepth=16 \
--output=result_seqwrite_IDE.txt
Note: If tester want to test 2 Devices with one FIO command, follow Find the TEEIO Device information to find both devices' information, for example, /dev/nvme5 and /dev/nvme6, then set FILENAME=/dev/nvme5:/dev/nvme6.