设置了nokaslr, 虽然查询dmesg 信息符合预期,但是fio gpu direct storage测试异常,一直在准备阶段,无任何输出,但同环境改成posix,走cpu 则正常,
dmesg 查询符合预期
root@switch-PURICO:/home/switch/mxFIO/build# sudo dmesg -T |grep "device page"
[Wed Sep 23 01:58:56 2026] METAX.BASE.INFO metax pro feature device page support 1
gpu 直接 storage 测试,fio没有输出
root@switch-PURICO:/home/switch/mxFIO/build# ./fio --name=gds-test --directory=/mnt/gds/ext4 --ioengine=libcufile --cuda_io=cufile --gpu_dev_ids=0 --direct=1 --rw=write --bs=1M --size=4G --numjobs=1 --group_reporting --time_based --runtime=60 --ramp_time=4 --end_fsync=1
gds-test: (g=0): rw=write, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=libcufile, iodepth=1
fio-3.40
Starting 1 process
Killed1 (f=0): [/(1)][-.-%][eta 01m:04s]
mcfile 日志如下:
switch-PURICO:123148:123148 [MCFILE DEBUG] (mcFileDriverOpen:105) API_CALL
switch-PURICO:123148:123148 [MCFILE DEBUG] (mcFileBufRegister:83) API_CALL devPtr_base = 0x78ea60800000, length = 1056766, flags = 0
switch-PURICO:123148:123148 [MCFILE DEBUG] (mcFileHandleRegister:45) API_CALL descr->handle.fd = 11, descr->type = 1
switch-PURICO:123148:123148 [MCFILE DEBUG] (mcFileRead:209) API_CALL devPtr_base = 0x78ea60800000, size = 1048576, file_offset = 0, devPtr_offset = 0
相同环境,使用posix,存储storage先经过pwrite/pread 至内存,然后再通过libmcfile API至显存,fio输出正常
root@switch-PURICO:/home/switch/mxFIO/build# ./fio --name=gds-test --directory=/mnt/gds/ext4 --ioengine=libcufile --cuda_io=posix --gpu_dev_ids=0 --direct=1 --rw=read --bs=1M --size=4G --numjobs=1 --group_reporting --time_based --runtime=1 --ramp_time=4 --end_fsync=1
gds-test: (g=0): rw=read, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=libcufile, iodepth=1
fio-3.40
Starting 1 process
Jobs: 1 (f=1): [R(1)][100.0%][r=2262KiB/s][r=2 IOPS][eta 00m:00s]
gds-test: (groupid=0, jobs=1): err= 0: pid=123900: Wed Sep 23 02:13:16 2026
read: IOPS=68, BW=68.9MiB/s (72.3MB/s)(69.0MiB/1001msec)
clat (usec): min=481, max=447378, avg=14492.17, stdev=56946.02
lat (usec): min=481, max=447378, avg=14492.59, stdev=56946.03
clat percentiles (usec):
| 1.00th=[ 482], 5.00th=[ 510], 10.00th=[ 515], 20.00th=[ 529],
| 30.00th=[ 553], 40.00th=[ 635], 50.00th=[ 766], 60.00th=[ 807],
| 70.00th=[ 881], 80.00th=[ 26346], 90.00th=[ 27919], 95.00th=[ 28181],
| 99.00th=[446694], 99.50th=[446694], 99.90th=[446694], 99.95th=[446694],
| 99.99th=[446694]
bw ( KiB/s): min=114878, max=114878, per=100.00%, avg=114878.00, stdev= 0.00, samples=1
iops : min= 112, max= 112, avg=112.00, stdev= 0.00, samples=1
lat (usec) : 500=1.45%, 750=44.93%, 1000=27.54%
lat (msec) : 2=4.35%, 50=18.84%, 250=1.45%, 500=1.45%
cpu : usr=2.20%, sys=4.60%, ctx=138, majf=0, minf=36
IO depths : 1=100.0%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
submit : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
issued rwts: total=69,0,0,0 short=0,0,0,0 dropped=0,0,0,0
latency : target=0, window=0, percentile=100.00%, depth=1