Benchmark results part 2: CIFS performance


Because caching was a big difference between the CIFS-on-NetWare and CIFS-on-Linux runs, analysis is a bit difficult. CIFS-on-NetWare had local caching involved, so clearly apparent performance will be better for most usages when connected to CIFS-on-NetWare. True performance is another story, and that's what I'm trying to define in this section.

There were a couple of tests that don't involve the cache mechanism. The "Reader" and the "Backward Read" tests. IOZONE documentation defines the tests as:
Reader: This test measures the performance of reading an existing file.

Backward Read: This test measures the performance of reading and writing a file with accesses being made to random locations within the file. Again the performance of a system under this type of activity can be impacted by several factors such as: Size of operating systemÂ’s cache, number of disks, seek latencies, and others. This test is only available in throughput mode. Each thread/process runs either the read or the write test. The distribution of read/write is done on a round robin basis. More than one thread/process is required for proper operation.

CIFS Reader comparisonReader Test, Comparing NetWare vs. Linux performance. The value is the multiplier that NetWare is better than Linux performance. Units in KB

As you can see from the graph, Record Size is the key determiner of performance for this test. For smaller record sizes, NetWare is clearly better than Linux at CIFS performance. This is on the first read, the 're-read' test had caching enabled and CIFS-on-NetWare was vastly better than CIFS-on-Linux as a result.

For record-sizes larger than 64K, CIFS-on-Linux provided an average improved performance of about 7%.
CIFS Backward Read comparisonBackward Read Test,comparing NetWare vs Linux performance. The value is the multiplier that NetWare is faster than Linux. Units in KB.

As you can see from the graph, it is file-size that determines performance. Not the record size. Thecorrelationn here is less clear than it was for the Reader test, but it is present. For large files, performance on Linux is somewhat better then that on NetWare. When the chart is rotated to present the RecordSize view, there is some improvement for small records but only at really small file-sizes.

For file sizes larger than 8MB, CIFS-on-Linux provided about 14% better performance.

For the tests that do involve the cache-mechanism, we can only compare results for the data-sets that don't involve the cache. Specifically, large file-sizes and large record-sizes. For the 'Record Rewrite' test, which rewrites sub-sets of larger files, Linux provides about 10% improvement over the same test on NetWare. For the 'Random Write' test, which writes to random locations within the file, the improvement for Linux is also about 10%. For the 'Writer' test, which just lays down the file, the improvement is about 15% over NetWare. In all three cases, as the sub-range increases in size the better Linux performs over NetWare.

In the end, for the data most likely to be used by an end-user at WWU, CIFS-on-NetWare is the better choice of the two. Larger Access databases, big Power Point slideshows, and GIS maps may perform slower, but for most file-access it'll be faster.

Part 3: NCP