Comparing NeXus and FIO I/O

Here is a comparison of NeXus and FIO I/O based on the test cases of table 4.6.

Scan command: 
  %dscan exp_dmy01 -0.1 0.1 100 0.1

Elapsed times for different measurement groups:  
                               fio          nxs        nxs + fio
  d1_c01                       13.6s (26%)  14.9 (32%) 14.9 (32%) 
  d1_c01 - d1_c04              14.1s (29%)  15.3 (34%) 15.3 (34%)
  d1_c01 - d1_c12              15.7s (36%)  17.9 (44%) 17.7 (43%)
  d1_c01, mca-2048             25.8s (61%)  29.0 (65%) 30.0 (66%)
  d1_c01, mca-4096             29.5s (66%)  34.3 (71%) 36.1 (72%)
  d1_c01, mca-8192             36.8s (73%)  45.1 (78%) 49.3 (80%)
  d1_c01, i-petra:             13.3s (24%)  14.8 (32%) 14.9 (32%)
  d1_c01 - d1_c12, mca-2048    28.1s (64%)  31.8 (68%) 32.8 (69%)

Surprisingly, the FIO numbers are slightly better compared to table 4.6 although the same hardware was used. The only difference is that the PC has been upgraded to Debian-8.

However, the tests displayed in the above table have been carried out to compare FIO and NeXus I/O. We see that the overhead due to NeXus is less than 10%, even if NeXus and FIO are written in parallel. We conclude that the performance reduction generated by NeXus is acceptable.



2019-11-13