Todos os produtos
Search
Central de documentação

File Storage NAS:Testar a performance de um sistema de arquivos NAS

Última atualização: Aug 26, 2026

Este tópico descreve como usar a ferramenta FIO para testar o throughput e as operações de entrada/saída por segundo (IOPS) de um sistema de arquivos em Linux e Windows.

Pré-requisitos

Crie e monte um sistema de arquivos em uma instância do Elastic Compute Service (ECS). Para mais informações, consulte Quick Start.

Informações básicas

As métricas de performance apresentadas neste tópico baseiam-se em testes realizados em sistemas Linux e Windows com a ferramenta FIO. Esses resultados servem como referência de performance para o File Storage NAS. Para obter as métricas oficiais de performance do File Storage NAS, use múltiplas instâncias ECS nos testes. Para consultar as métricas oficiais, acesse File Storage NAS.

Precauções

Antes de testar a performance, observe os pontos a seguir.

  • O throughput máximo não pode exceder a largura de banda interna da instância ECS. Se a largura de banda interna for muito baixa, o throughput será limitado.

    Por exemplo, se você adquirir um sistema de arquivos NAS de capacidade de uso geral com a menor capacidade, seu throughput inicial de leitura será de 150 MB/s. Caso sua instância ECS tenha uma largura de banda interna de 100 Mbps, o throughput máximo será de 12,5 MB/s. Para testar até 150 MB/s, são necessárias pelo menos 12 instâncias ECS. Se a largura de banda interna da instância ECS for de 1 Gbps, o throughput máximo será de 125 MB/s. Nesse cenário, para atingir 150 MB/s, são necessárias no mínimo 2 instâncias ECS.

  • No Linux, o cliente NFS limita o número de requisições NFS simultâneas. O valor padrão no kernel compilado é 2, o que afeta severamente a performance. Após instalar o cliente NFS, modifique o número de requisições NFS simultâneas para melhorar a performance do NFS. Para mais informações, consulte How do I modify the number of concurrent NFS requests?.

  • No Windows, a performance de um sistema de arquivos NAS com protocolo NFS é limitada pela execução sequencial de requisições para um único sistema de arquivos pelo cliente NFS do Windows. Ajuste o parâmetro -numjobs para aumentar o número de arquivos no teste com FIO.

Procedimento

  1. Conecte-se remotamente à instância ECS. Para mais informações, consulte Connection methods.

  2. Instale a ferramenta FIO. Caso a ferramenta já esteja instalada, pule esta etapa.

    • Sistema operacional Linux

      Sistema operacional

      Comando de instalação

      CentOS

      sudo yum install fio

      Redhat

      Alibaba Cloud Linux

      Ubuntu

      Execute os seguintes comandos em sequência:

      1. sudo apt-get  update
      2. sudo apt-get install fio

      Debian

    • Sistema operacional Windows

      Baixe o pacote de instalação do FIO no formato MSI no site oficial do FIO e instale-o.

  3. Execute os comandos de teste de performance.

Comandos de teste de performance para Linux

Esta seção usa um sistema de arquivos NAS de capacidade de uso geral como exemplo. Execute os comandos abaixo em uma única instância ECS Linux para testar a performance.

  • IOPS de leitura aleatória:

    fio -numjobs=1 -iodepth=128 -direct=1 -ioengine=libaio -sync=1 -rw=randread -bs=4K -size=1G -time_based -runtime=60 -name=Fio -directory=/mnt

    Exemplo de resultado do teste:

    
    Fio_168690241742: (g=0): rw=randread, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=128
    fio-3.7
    Starting 1 process
    Fio_168690241742: Laying out IO file (1 file / 1024MiB)
    
    Fio_168690241742: (groupid=0, jobs=1): err= 0: pid=24515: Fri Jun 16 16:01:21 2023
       read: IOPS=15.1k, BW=59.1MiB/s (61.0MB/s)(3562MiB/60258msec)
        slat (usec): min=2, max=142291, avg= 5.22, stdev=149.03
        clat (usec): min=607, max=4629.5k, avg=8451.38, stdev=19797.83
         lat (usec): min=650, max=4629.5k, avg=8456.67, stdev=19798.32
        lat percentiles (usec):
         |  1.00th=[  758],  5.00th=[  816], 10.00th=[  857], 20.00th=[  938],
         | 30.00th=[ 1037], 40.00th=[ 1172], 50.00th=[ 1352], 60.00th=[ 1680],
         | 70.00th=[ 3163], 80.00th=[ 17957], 90.00th=[ 20055], 95.00th=[ 22414],
         | 99.00th=[ 83362], 99.50th=[ 92799], 99.90th=[175113], 99.95th=[278922],
         | 99.99th=[517997]
       bw (  KiB/s): min=58584, max=169104, per=100.00%, avg=60776.15, stdev=10028.08, samples=120
       iops        : min=14646, max=42276, avg=15193.99, stdev=2507.02, samples=120
      lat (usec)   : 750=0.88%, 1000=25.93%
      lat (msec)   : 2=38.35%, 4=5.66%, 10=1.74%, 20=17.00%, 50=8.61%
      lat (msec)   : 100=1.48%, 250=0.29%, 500=0.07%, 750=0.01%, 1000=0.01%
      cpu          : usr=2.86%, sys=11.57%, ctx=525042, majf=0, minf=160
      IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=100.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.1%
         issued rwts: total=911950,0,0,0 short=0,0,0,0 dropped=0,0,0,0
         latency   : target=0, window=0, percentile=100.00%, depth=128
    
    Run status group 0 (all jobs):
       READ: bw=59.1MiB/s (61.0MB/s), 59.1MiB/s-59.1MiB/s (61.0MB/s-61.0MB/s), io=3562MiB (3735MB), run=60258-60258msec
    
  • IOPS de gravação aleatória:

    fio -numjobs=1 -iodepth=128 -direct=1 -ioengine=libaio -sync=1 -rw=randwrite -bs=4K -size=1G -time_based -runtime=60 -name=Fio -directory=/mnt

    Exemplo de resultado do teste:

    
    Fio_168690232321: (g=0): rw=randwrite, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=128
    fio-3.7
    Starting 1 process
    Fio_168690232321: Laying out IO file (1 file / 1024MiB)
    
    Fio_168690232321: (groupid=0, jobs=1): err= 0: pid=24409: Fri Jun 16 15:59:44 2023
      write: IOPS=15.2k, BW=59.4MiB/s (62.3MB/s)(3567MiB/60008msec)
        slat (usec): min=2, max=5193, avg= 4.94, stdev= 5.58
        clat (usec): min=1596, max=148914, avg=8405.03, stdev=4954.14
         lat (usec): min=1601, max=148918, avg=8410.06, stdev=4954.12
        lat percentiles (usec):
         |  1.00th=[ 2966],  5.00th=[ 3687], 10.00th=[ 4113], 20.00th=[ 4686],
         | 30.00th=[ 5145], 40.00th=[ 5735], 50.00th=[ 6259], 60.00th=[ 6849],
         | 70.00th=[10552], 80.00th=[14222], 90.00th=[15401], 95.00th=[16319],
         | 99.00th=[18482], 99.50th=[21103], 99.90th=[38536], 99.95th=[44303],
         | 99.99th=[81265]
       bw (  KiB/s): min=56408, max=95856, per=99.99%, avg=60870.87, stdev=5497.41, samples=120
       iops        : min=14102, max=23964, avg=15217.70, stdev=1374.35, samples=120
      lat (msec)   : 2=0.01%, 4=8.61%, 10=61.08%, 20=29.70%, 50=0.57%
      lat (msec)   : 100=0.02%, 250=0.01%
      cpu          : usr=2.67%, sys=8.95%, ctx=216723, majf=0, minf=27
      IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=100.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.1%
         issued rwts: total=0,913236,0,0 short=0,0,0,0 dropped=0,0,0,0
         latency   : target=0, window=0, percentile=100.00%, depth=128
    
    Run status group 0 (all jobs):
      WRITE: bw=59.4MiB/s (62.3MB/s), 59.4MiB/s-59.4MiB/s (62.3MB/s-62.3MB/s), io=3567MiB (3741MB), run=60008-60008msec
    
  • Throughput de leitura aleatória:

    fio -numjobs=1 -iodepth=128 -direct=1 -ioengine=libaio -sync=1 -rw=randread -bs=1M -size=1G -time_based -runtime=60 -name=Fio -directory=/mnt

    Exemplo de resultado do teste:

    
    Fio_168690251150: (g=0): rw=randread, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=libaio, iodepth=128
    fio-3.7
    Starting 1 process
    Fio_168690251150: Laying out IO file (1 file / 1024MiB)
    
    Fio_168690251150: (groupid=0, jobs=1): err= 0: pid=24616: Fri Jun 16 16:03:05 2023
       read: IOPS=498, BW=500MiB/s (524MB/s)(29.4GiB/60257msec)
        slat (usec): min=80, max=251817, avg=98.36, stdev=1453.22
        clat (msec): min=11, max=519, avg=256.37, stdev=17.04
         lat (msec): min=11, max=519, avg=256.46, stdev=16.99
        lat percentiles (msec):
         |  1.00th=[  247],  5.00th=[  255], 10.00th=[  255], 20.00th=[  255],
         | 30.00th=[  255], 40.00th=[  255], 50.00th=[  257], 60.00th=[  257],
         | 70.00th=[  257], 80.00th=[  257], 90.00th=[  257], 95.00th=[  257],
         | 99.00th=[  271], 99.50th=[  376], 99.90th=[  481], 99.95th=[  493],
         | 99.99th=[  506]
       bw (  KiB/s): min=489472, max=532480, per=99.99%, avg=512076.73, stdev=3669.64, samples=120
       iops        : min=  478, max=  520, avg=500.03, stdev= 3.58, samples=120
      lat (msec)   : 20=0.03%, 50=0.05%, 100=0.09%, 250=1.47%, 500=98.75%
      lat (msec)   : 750=0.03%
      cpu          : usr=0.03%, sys=4.83%, ctx=30067, majf=0, minf=5
      IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=117.1%
         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.1%
         issued rwts: total=30010,0,0,0 short=0,0,0,0 dropped=0,0,0,0
         latency   : target=0, window=0, percentile=100.00%, depth=128
    
    Run status group 0 (all jobs):
       READ: bw=500MiB/s (524MB/s), 500MiB/s-500MiB/s (524MB/s-524MB/s), io=29.4GiB (31.6GB), run=60257-60257msec
    
  • Throughput de gravação aleatória:

    fio -numjobs=1 -iodepth=128 -direct=1 -ioengine=libaio -sync=1 -rw=randwrite -bs=1M -size=1G -time_based -runtime=60 -name=Fio -directory=/mnt

    Exemplo de resultado do teste:

    A largura de banda (BW) de gravação aleatória no resultado do teste é de 500 MiB/s.

    
    Fio_168690260582: (g=0): rw=randwrite, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=libaio, iodepth=128
    fio-3.7
    Starting 1 process
    Fio_168690260582: Laying out IO file (1 file / 1024MiB)
    
    Fio_168690260582: (groupid=0, jobs=1): err= 0: pid=24705: Fri Jun 16 16:04:37 2023
      write: IOPS=498, BW=500MiB/s (524MB/s)(29.4GiB/60254msec)
        slat (usec): min=105, max=251450, avg=156.25, stdev=1450.74
        clat (msec): min=18, max=506, avg=256.29, stdev=17.20
         lat (msec): min=19, max=506, avg=256.45, stdev=17.15
        lat percentiles (msec):
         |  1.00th=[  243],  5.00th=[  253], 10.00th=[  253], 20.00th=[  255],
         | 30.00th=[  255], 40.00th=[  255], 50.00th=[  257], 60.00th=[  257],
         | 70.00th=[  257], 80.00th=[  257], 90.00th=[  259], 95.00th=[  259],
         | 99.00th=[  292], 99.50th=[  363], 99.90th=[  481], 99.95th=[  493],
         | 99.99th=[  506]
       bw (  KiB/s): min=471040, max=548864, per=99.99%, avg=512085.42, stdev=6121.76, samples=120
       iops        : min=  460, max=  536, avg=500.07, stdev= 5.98, samples=120
      lat (msec)   : 20=0.02%, 50=0.04%, 100=0.11%, 250=2.49%, 500=97.72%
      lat (msec)   : 750=0.03%
      cpu          : usr=3.24%, sys=4.52%, ctx=28949, majf=0, minf=4
      IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=117.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.1%
         issued rwts: total=0,30009,0,0 short=0,0,0,0 dropped=0,0,0,0
         latency   : target=0, window=0, percentile=100.00%, depth=128
    
    Run status group 0 (all jobs):
      WRITE: bw=500MiB/s (524MB/s), 500MiB/s-500MiB/s (524MB/s-524MB/s), io=29.4GiB (31.6GB), run=60254-60254msec
    

Testes de performance no Windows

Esta seção usa como exemplo um sistema de arquivos NAS de capacidade de uso geral montado na unidade Z:. O arquivo executável do FIO está instalado em C:\Program Files\fio\fio.exe. Execute os comandos a seguir para testar a performance.

Nota

Ao testar a performance de um sistema de arquivos NAS com protocolo NFS no Windows, note que a performance é limitada pela execução sequencial de requisições para um único sistema de arquivos pelo cliente NFS do Windows. Ajuste o parâmetro -numjobs para aumentar o número de arquivos no teste com FIO.

  • IOPS de leitura aleatória:

    "c:\Program Files\fio\fio.exe" -name=Fio -numjobs=2 -iodepth=128 -direct=1 -ioengine=windowsaio -sync=1 -rw=randread -bs=4K -size=1G -time_based -runtime=60 -group_reporting -thread -directory=Z\:\

    Exemplo de resultado do teste:

    
    Fio_168690138640: (g=0): rw=randread, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=windowsaio, iodepth=128
    ...
    fio-3.29
    Starting 2 threads
    Fio_168690138640: Laying out IO file (1 file / 1024MiB)
    Fio_168690138640: Laying out IO file (1 file / 1024MiB)
    
    Fio_168690138640: (groupid=0, jobs=2): err= 0: pid=3716: Fri Jun 16 15:57:13 2023
      read: IOPS=15.2k, BW=59.3MiB/s (62.2MB/s)(3559MiB/60015msec)
        slat (usec): min=2, max=1923, avg= 9.75, stdev= 5.93
        clat (usec): min=574, max=172102, avg=16841.03, stdev=13743.23
         lat (usec): min=582, max=172118, avg=16850.79, stdev=13743.03
        clat percentiles (usec):
         |  1.00th=[  1565],  5.00th=[  2376], 10.00th=[  3064], 20.00th=[  4752],
         | 30.00th=[  6390], 40.00th=[  8455], 50.00th=[ 16581], 60.00th=[ 19268],
         | 70.00th=[ 20841], 80.00th=[ 23725], 90.00th=[ 34341], 95.00th=[ 42730],
         | 99.00th=[ 61604], 99.50th=[ 69731], 99.90th=[ 89654], 99.95th=[ 98042],
         | 99.99th=[113771]
       bw (  KiB/s): min=57584, max=135136, per=100.00%, avg=60797.96, stdev=3971.16, samples=238
       iops        : min=14396, max=33783, avg=15199.29, stdev=992.75, samples=238
      lat (usec)   : 750=0.01%, 1000=0.08%
      lat (msec)   : 2=2.71%, 4=13.18%, 10=27.51%, 20=20.78%, 50=32.76%
      lat (msec)   : 100=2.94%, 250=0.04%
      cpu          : usr=0.00%, sys=5.83%, ctx=0, majf=0, minf=0
      IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=100.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.1%, 16=0.1%, 32=0.1%, 64=0.1%, >=64=0.1%
         issued rwts: total=911224,0,0,0 short=0,0,0,0 dropped=0,0,0,0
         latency   : target=0, window=0, percentile=100.00%, depth=128
    
    Run status group 0 (all jobs):
       READ: bw=59.3MiB/s (62.2MB/s), 59.3MiB/s-59.3MiB/s (62.2MB/s-62.2MB/s), io=3559MiB (3732MB),  run=60015-60015msec
    
  • IOPS de gravação aleatória:

    "c:\Program Files\fio\fio.exe" -name=Fio -numjobs=2 -iodepth=128 -direct=1 -ioengine=windowsaio -sync=1 -rw=randwrite -bs=4K -size=1G -time_based -runtime=60 -group_reporting -thread -directory=Z\:\

    Exemplo de resultado do teste:

    
    Fio_168690107265: (g=0): rw=randwrite, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=windowsaio, iodepth=128
    ...
    fio-3.29
    Starting 2 threads
    Fio_168690107265: Laying out IO file (1 file / 1024MiB)
    Fio_168690107265: Laying out IO file (1 file / 1024MiB)
    
    Fio_168690107265: (groupid=0, jobs=2): err= 0: pid=4056: Fri Jun 16 15:38:56 2023
      write: IOPS=15.3k, BW=59.9MiB/s (62.8MB/s)(3592MiB/60012msec); 0 zone resets
        slat (usec): min=2, max=4469, avg=11.04, stdev=16.84
        clat (usec): min=829, max=98497, avg=16640.38, stdev=3644.71
         lat (usec): min=1373, max=98502, avg=16651.42, stdev=3644.35
        clat percentiles (usec):
         |  1.00th=[10421],  5.00th=[13042], 10.00th=[13566], 20.00th=[14091],
         | 30.00th=[14746], 40.00th=[15533], 50.00th=[16450], 60.00th=[17171],
         | 70.00th=[17695], 80.00th=[18482], 90.00th=[19530], 95.00th=[20841],
         | 99.00th=[32375], 99.50th=[36439], 99.90th=[42206], 99.95th=[46924],
         | 99.99th=[76022]
       bw (  KiB/s): min=53596, max=67392, per=100.00%, avg=61371.35, stdev=1490.41, samples=238
       iops        : min=13398, max=16848, avg=15342.70, stdev=372.62, samples=238
      lat (usec)  : 1000=0.01%
      lat (msec)  : 2=0.01%, 4=0.07%, 10=0.82%, 20=91.27%, 50=7.80%
      lat (msec)  : 100=0.04%
      cpu          : usr=0.00%, sys=5.83%, ctx=0, majf=0, minf=0
      IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.2%, >=64=99.7%
         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=97.5%, 8=0.9%, 16=1.0%, 32=0.6%, 64=0.1%, >=64=0.1%
         issued rwts: total=0,919647,0,0 short=0,0,0,0 dropped=0,0,0,0
         latency   : target=0, window=0, percentile=100.00%, depth=128
    
    Run status group 0 (all jobs):
      WRITE: bw=59.9MiB/s (62.8MB/s), 59.9MiB/s-59.9MiB/s (62.8MB/s-62.8MB/s), io=3592MiB (3767MB), run=60012-60012msec
    
  • Throughput de leitura aleatória:

    "c:\Program Files\fio\fio.exe" -name=Fio -numjobs=2 -iodepth=128 -direct=1 -ioengine=windowsaio -sync=1 -rw=randread -bs=1M -size=1G -time_based -runtime=60 -group_reporting -thread -directory=Z\:\

    Exemplo de resultado do teste:

    
    Fio_168690086312: (g=0): rw=randread, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=windowsaio, iodepth=128
    ...
    fio-3.29
    Starting 2 threads
    Fio_168690086312: Laying out IO file (1 file / 1024MiB)
    Fio_168690086312: Laying out IO file (1 file / 1024MiB)
    
    Fio_168690086312: (groupid=0, jobs=2): err= 0: pid=6400: Fri Jun 16 15:35:46 2023
      read: IOPS=655, BW=656MiB/s (688MB/s)(38.7GiB/60371msec)
        slat (usec): min=20, max=7533, avg=60.61, stdev=84.70
        clat (msec): min=42, max=2036, avg=389.97, stdev=105.38
         lat (msec): min=42, max=2036, avg=390.03, stdev=105.37
        clat percentiles (msec):
         |  1.00th=[  184],  5.00th=[  257], 10.00th=[  368], 20.00th=[  376],
         | 30.00th=[  380], 40.00th=[  384], 50.00th=[  388], 60.00th=[  393],
         | 70.00th=[  397], 80.00th=[  405], 90.00th=[  414], 95.00th=[  422],
         | 99.00th=[  785], 99.50th=[ 1217], 99.90th=[ 1888], 99.95th=[ 1938],
         | 99.99th=[ 2005]
       bw (  KiB/s): min=282587, max=1051351, per=99.93%, avg=671112.03, stdev=64303.07, samples=240
       iops        : min=  275, max= 1026, avg=655.22, stdev=62.81, samples=240
      lat (msec)   : 50=0.01%, 100=0.19%, 250=4.68%, 500=93.38%, 750=0.62%
      lat (msec)   : 1000=0.53%, 2000=0.57%, >=2000=0.02%
      cpu          : usr=0.00%, sys=1.66%, ctx=0, majf=0, minf=0
      IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.2%, >=64=99.7%
         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.1%, 64=0.0%, >=64=0.1%
         issued rwts: total=39594,0,0,0 short=0,0,0,0 dropped=0,0,0,0
         latency   : target=0, window=0, percentile=100.00%, depth=128
    
    Run status group 0 (all jobs):
       READ: bw=656MiB/s (688MB/s), 656MiB/s-656MiB/s (688MB/s-688MB/s), io=38.7GiB (41.5GB), run=60371-60371msec
    
  • Throughput de gravação aleatória:

    "c:\Program Files\fio\fio.exe" -name=Fio -numjobs=2 -iodepth=128 -direct=1 -ioengine=windowsaio -sync=1 -rw=randwrite -bs=1M -size=1G -time_based -runtime=60 -group_reporting -thread -directory=Z\:\

    Exemplo de resultado do teste:

    
    Fio_168690096808: (g=0): rw=randwrite, bs=(R) 1024KiB-1024KiB, (W) 1024KiB-1024KiB, (T) 1024KiB-1024KiB, ioengine=windowsaio, iodepth=128
    ...
    fio-3.29
    Starting 2 threads
    Fio_168690096808: Laying out IO file (1 file / 1024MiB)
    Fio_168690096808: Laying out IO file (1 file / 1024MiB)
    
    Fio_168690096808: (groupid=0, jobs=2): err= 0: pid=4496: Fri Jun 16 15:37:12 2023
      write: IOPS=874, BW=874MiB/s (917MB/s)(51.5GiB/60296msec); 0 zone resets
        slat (usec): min=54, max=14217, avg=99.50, stdev=104.17
        clat (msec): min=8, max=972, avg=292.48, stdev=72.43
         lat (msec): min=8, max=972, avg=292.58, stdev=72.43
        clat percentiles (msec):
         |  1.00th=[   89],  5.00th=[  174], 10.00th=[  220], 20.00th=[  249],
         | 30.00th=[  292], 40.00th=[  300], 50.00th=[  300], 60.00th=[  305],
         | 70.00th=[  305], 80.00th=[  313], 90.00th=[  351], 95.00th=[  359],
         | 99.00th=[  575], 99.50th=[  667], 99.90th=[  852], 99.95th=[  885],
         | 99.99th=[  919]
       bw (  KiB/s): min=278528, max=1503232, per=100.00%, avg=895241.67, stdev=80207.46, samples=240
       iops        : min=  272, max= 1468, avg=873.98, stdev=78.34, samples=240
      lat (msec)   : 10=0.01%, 20=0.14%, 50=0.24%, 100=0.92%, 250=19.01%
      lat (msec)   : 500=78.07%, 750=1.34%, 1000=0.26%
      cpu          : usr=1.66%, sys=0.83%, ctx=0, majf=0, minf=0
      IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=99.8%
         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=99.1%, 8=0.6%, 16=0.3%, 32=0.1%, 64=0.1%, >=64=0.1%
         issued rwts: total=0,52715,0,0 short=0,0,0,0 dropped=0,0,0,0
         latency   : target=0, window=0, percentile=100.00%, depth=128
    
    Run status group 0 (all jobs):
      WRITE: bw=874MiB/s (917MB/s), 874MiB/s-874MiB/s (917MB/s-917MB/s), io=51.5GiB (55.3GB), run=60296-60296msec
    

Descrição dos parâmetros do FIO

A tabela a seguir descreve os parâmetros do FIO usados nos comandos de teste.

Parâmetro

Descrição

direct

Define se o I/O direto deve ser usado. Valor padrão: 1.

  • 1: Usa I/O direto. Ignora o cache de I/O e grava os dados diretamente.

  • 0: Não usa I/O direto.

iodepth

Profundidade da fila de I/O para o teste. Por exemplo, -iodepth=1 indica que o número máximo de operações de I/O em uma requisição FIO é 1.

rw

Política de leitura/gravação para o teste. Valores válidos:

  • randwrite: gravação aleatória.

  • randread: leitura aleatória.

  • read: leitura sequencial.

  • write: gravação sequencial.

  • randrw: leitura e gravação aleatórias mistas.

ioengine

Motor de I/O que o FIO usa para o teste. Geralmente, selecione libaio por ser mais adequado aos padrões de aplicações cotidianas. Para outras opções, consulte a documentação oficial do FIO.

bs

Tamanho do bloco das unidades de I/O. É possível especificar valores separados para leitura e gravação no formato leitura,gravação. Se um valor for deixado em branco, o padrão será usado.

size

Tamanho dos arquivos de teste.

Tamanho do arquivo de teste. O FIO lê ou grava todo o tamanho do arquivo antes que o teste pare, a menos que seja limitado por outras opções, como runtime. Se este parâmetro não for especificado, o FIO usa o tamanho total do arquivo ou dispositivo. Também é possível definir o tamanho como uma porcentagem de 1 a 100. Por exemplo, size=20% usa 20% do tamanho total do arquivo ou dispositivo.

numjobs

Número de threads de teste simultâneas.

runtime

Duração do teste, indicando o período de tempo durante o qual a ferramenta fio executa.

Se este parâmetro não for especificado, o FIO lê ou grava continuamente o arquivo inteiro. O tamanho do arquivo e o tamanho do bloco são definidos pelos parâmetros size e bs, respectivamente.

group_reporting

Modo de exibição dos resultados do teste.

Modo de exibição dos resultados. Se especificado, os resultados mostram estatísticas agregadas por processo, em vez de por tarefa.

directory

Caminho de montagem do sistema de arquivos a ser testado.

name

Nome da tarefa de teste. Pode ser definido conforme necessário.

Para mais informações sobre esses parâmetros, consulte a página man do FIO.

Tópicos relacionados

Para mais perguntas frequentes sobre a performance do NAS, consulte Performance FAQs.