3

What does the "reclen" field mean? Googling showed that "reclen" = "record length", but I still don't know what "record length" means.

             KB  reclen   write rewrite    read    reread
             512       4  230006  596753   992087  1014106
             512       8  349490  779312  1502145  1565664
             512      16  777057 1909533  3178578  3300716
             512      32  813868 2073638  3438111  3511189
             512      64  836374 2144028  3605511  3737279
             512     128  831194 2187712  3796747  3879045
             512     256  841948 2256681  3844324  3907276
             512     512  824492 2235538  3879045  3943148
Pellaeon
  • 953
  • 1
  • 7
  • 7

2 Answers2

1

It's probably the size of individual IO requests (i.e. read() and write() calls), so the first line is 128 requests of 4KiB each, whereas the last line is 1 request of 512KiB.

mgorven
  • 30,036
  • 7
  • 76
  • 121
  • A quick glance at the source code makes me believe this to be the case. For example, this line: `fwrite(buffer, (size_t) reclen, 1, stream)`. "stream" is the output file pointer, so this will write the buffer out in one reclen-length record to the stream. I checked the iostream.c source file for version 3.492. – Mike S Aug 26 '21 at 15:36
0

reclen or record length is the size of the chunks that iozone breaks a file into before performing an I/O operation (R/W) on the disk.For example if there is a 1MB file and reclen is 256KB then the file is divided into 4 chunks of 256KB each and each of these 256 KB is written/read during one IO Operation .

nikhil
  • 1