We understand your concern regarding the exact FIO commands that were used to measure the numbers of the Intel® Optane™ SSD DC P4800X Series.
We will investigate on this, as soon as we have an update we will let you know.
Here is how we measure the numbers of the SSD:
1- Important Parameters:
root@TBStw# man fio
filename : Name of drive(s) (for multiple drives, use : as a separator)
blocksize : Transfer Size (in bytes – use K, M as suffix for KBs and MBs)
rw : Workload
read – Sequential reads ; randread – Random Reads
write – Sequential writes; randwrite – Random writes
randrw – Random Mixed read/write workload ; rw – Sequential mixed read/write
(needs a read/write mix. Use rwmixread or rwmixwrite to specify % mix. rwmixcycle can be used to define the time interval –in msec- between reads & writes)
size : Span (can be defined in GB or %. Default is 100%)
ioengine : how job issues IO (sync for synchronous & libaio for Linux native asynchronous IOs)
direct : Set to 1 to pass IOs directly to drive (bypassing buffers)
iodepth : Per-job Queue depth (for multiple jobs, aggregate queue depth = #numjobs x iodepth)
randrepeat : Used to seed random # generator in predictable way (should be turned off)
numjobs : #CPU threads. Greater parallelism is required for high-perf drives.
runtime: In seconds
output : Name of output file
name : Give a name to the job
rate : To limit read & write IOs to a fixed rate (useful for monitoring latencies. For mixed workloads, separate rates for reads & writes can be defined by using , as a separator)
write_bw_log : Name of file to write bandwidth log to
write_lat_log : Name of file to write latency log to
group_reporting : To report aggregate /QoS in final output.
time_based: To set the run to end after specified time.
norandommap : FIO will pick offset for writing without looking at past IO history.
log_avg_msec : To define logging frequency (in msec)
Can be sent directly to command line or through a shell script
root@localhost IO_script# gedit nvme_lab1.sh &
Ex 1: 128K Sequential test on nvme
fio --output=RD_128K_Seq_Read.txt --name=myjob1 --write_bw_log=RD_128K_Seq_Read_sec_by_sec.csv --filename=/dev/nvme0n1 \ --ioengine=libaio --direct=1 --norandommap --randrepeat=0 --blocksize=128K --rw=read --iodepth=128
Open new terminal
root@localhost IO_script# ./nvme_lab1.sh
root@localhost IO_script# iostat –xkz 1
These are some examples scrips:
rw=randrw -----------------> DEfines read/write mix.
rate=16m ------------------> Limits the bandwidth.
Please let us know if there is something else we can assist you with.
Many thanks for your reply.
May I know the sector size configured for the SSD? I used Intel SSD data center tool to check my NVMe information and it is shown below:
- Intel Optane(TM) SSD DC P4800X ****7175003R375AGN - ... Bootloader : EB3B0213 DevicePath : /dev/nvme0n1 DeviceStatus : Healthy Firmware : E2010211 IntelNVMe : True LBAFormat : 0 NativeMaxLBA : 732585167 NumErrorLogPageEntries : 63 NumLBAFormats : 6 PhySpeed : The selected drive does not support this feature. PhysicalSectorSize : The selected drive does not support this feature. PhysicalSize : 375083606016 PowerGovernorAveragePower : The desired feature is not supported. ... SMBusAddress : 256 SectorSize : 512 SerialNumber : ****7175003R375AGN TCGSupported : False ...
May I know your configured