home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / comp / unix / bsd / 8674 < prev    next >
Encoding:
Internet Message Format  |  1992-11-10  |  3.8 KB

  1. Path: sparky!uunet!news.tek.com!vice!enky!espace!implode!agora!davidg
  2. From: davidg@agora.rain.com (David Greenman)
  3. Newsgroups: comp.unix.bsd
  4. Subject: iozone bogusness
  5. Message-ID: <BxE8q0.Czn@agora.rain.com>
  6. Date: 8 Nov 92 10:49:11 GMT
  7. Organization: Open Communications Forum
  8. Lines: 79
  9.  
  10. Sorry for the "late" response here, but the first attempt at posting this
  11. never made it through the net. Anyway...
  12.  
  13. >I only use iozone 1, just to be consistent and make the test more realistic.
  14. >Most applications do not need more than 1 Megabyte of sequential access..
  15.  
  16.    I don't know what you mean by 'realistic'; your results certainly aren't. 
  17. Using iozone with a larger value is necessary because, on most machines, the
  18. filesystem cache is at least 1MB and using a test size of less than the cache
  19. size will generate useless results. 
  20.  
  21.    To illustrate my point, here is what I get for write performance when I
  22. do the same thing:
  23.  
  24. Writing the 1 Megabyte file, 'iozone.tmp'...0.483333 seconds
  25. ...
  26.         2169467 bytes/second for writing the file
  27.  
  28.  
  29. >Writing the 1 Megabyte file, 'iozone.tmp'...3.333333 seconds
  30. >Reading the file...2.483333 seconds
  31. >
  32. >IOZONE performance measurements:
  33. >    314573 bytes/second for writing the file
  34. >    422245 bytes/second for reading the file
  35. >
  36. >The test completed too quickly to give a good result
  37. >You will get a more precise measure of this machine's
  38. >performance by re-running IOZONE using the command:
  39. >
  40. >Julian's machine, 486/50, Bustek SCSI-2 1.3G hard-disk(?)
  41. >
  42. >IOZONE performance measurements:
  43. >        683854 bytes/second for writing the file
  44. >        499322 bytes/second for reading the file
  45. >
  46.  
  47.    It also seems pretty obvious by your read results that your filesystem
  48. parameters have not been optimized; you are getting one 8K block per
  49. revolution? I would guess that you have the 'rotdelay' filesystem parameter
  50. set at 4ms (the default), which is less then optimal for today's CPUs and
  51. disks. If your disk(s) have a read-ahead buffer, a 'rotdelay' parameter of
  52. 0ms will yield much better read results.
  53.    Here are the results of a 600MB Wren-5 (SCSI on 1542B) with read-ahead
  54. cache enabled and 'rotdelay' set to 0ms:
  55.  
  56. Writing the 10 Megabyte file, 'iozone.tmp'...26.200000 seconds
  57. Reading the file...9.333333 seconds
  58.  
  59. IOZONE performance measurements:
  60.         400219 bytes/second for writing the file
  61.         1123474 bytes/second for reading the file
  62.  
  63.    I get the same figures on both a 386SX/25 and a 486DX/50 with either
  64. Julian's SCSI code or the originaly SCSI driver.
  65.  
  66.    Note that the results will vary depending on filesystem fragmentation and
  67. other factors. The theoretical for this disk should be about 1500KB/sec; the
  68. difference in the case of writes is due to writing only 8k/revolution (which
  69. is expected when rotdelay is set to zero). I could possibly improve write
  70. performance by optimizing rotdelay for writes, but this would be at the
  71. expense of read performance. Since the number of sequential reads far exceeds 
  72. the number of sequential writes on my machine (and most machines), 0ms yields
  73. the best overall results for disks with a readahead buffer/cache.
  74.    If your disk(s) don't have a read-ahead buffer, then a rotdelay setting of
  75. between 1 and 3ms would be more appropriate. This will require some experi-
  76. mentation. See the manual page for newfs, tunefs, and dumpfs. Changing this
  77. parameter on a filesystem that is already full of files will have no affect.
  78. rotdelay affects how blocks are allocated for new files. If your disk(s) are
  79. mostly full already, than the remaining blocks might be too fragmented to
  80. see much benefit. It is best to set this parameter before any files are
  81. created on the filesystem.
  82.    Also note that the write results will be only half this if the filesystem
  83. block size is 4KB rather than 8KB, which is one of several reasons why you
  84. should always use 8KB blocks unless you are extremely short on disk space.
  85.  
  86. ---
  87. David Greenman
  88. davidg%implode@percy.rain.com
  89.