Benchmark results part 1: caching features

This'll go over a few posts, just due to the nature of the data and how I'm analyzing it.

Without going into detailed analysis of the data, a certain structure leaps out. Both CIFS-on-NetWare and NCP-on-Linux show clear signs of a local caching mechanism in use. This is odd, since I could have sworn I had NCP-on-NetWare enabled for local caching, but the data does not support that. What I have found is a sort of rule for caching.

For file operations on files 32MB or less, and in nibbles of 256K or less, the caching features strongly affect performance.

For file operations on files between 32MB and 64MB, and in nibbles of between 256K and 512K, caching features weakly affect performance.

For file operations on files larger than 64MB, or in nibbles of 1MB or larger, caching features do not affect performance.

Caching does not improve performance on all tests. Two tests very clearly show no influence of the caching mechanism. The Reader test, and the Backward Reader test. The Reader is the initial read of a file, so that makes sense that the caching would not affect performance. The Backward Reader test reads a file backwards, which is something that the caching mechanisms do not seem to pick up.

When you look at the rules and compare then to file-system statistics, you very clearly see that caching should improve performance on almost all operations the average user will perform. Inventories of our User-directory volumes show that 70% of files, by file-count, are 64K or smaller. Files larger than 32MB are a tiny, tiny percentage of files.

The situation on our big FacStaff shared volume is a little different. There 66% of files are 64K or smaller. In both cases, files larger than 64K consist of the majority of the data on the volumes. In the case of the shared volume, there are more files, as a percentage of total files, larger than the 32MB caching cut-off.

The conclusion you can draw from the above data is that NCP-on-Linux will be perceived as faster than NCP-on-NetWare. NCP-on-NetWare didn't show any caching behavior, so it suffers a major setback when compared to NCP-on-Linux which did exibit that behavior. The above data does not show what the 'true performance' of the two setups are. That'll come later, and the first-look data is that NCP-on-NetWare performs better in a no-caching state than NCP-on-Linux does.

Part 2: CIFS