Mind the Defaults – UD 5.0 Benchmarks – Part 1
There is a lot of excitement around the release of the Universal Driver 5.0 and it’s new features. This article will be the first of several that analyzes the performance and operation of the new product against the current Universal Driver 4.7.
Manufacturer benchmarks are a black art with comparisons done to test the product under the best possible circumstances to highlight product superiority. The benchmark test in this article is independent of the manufacturer and designed not to introduce un-needed complexity or variables. Default options are selected whenever possible during setup and the test is run directly on the server.
The test will focus on the number of records read and written each second by the test routine as it processes through all the records in a table and making a minor change to each record. This behavior would be similar to a maintenance or end of day task.
- OpenInsight 9.4 fresh installation.
- Sample data is PERSON_INFO_TEST table. 1 million rows sequentially keyed records with an average size of 383 bytes.
- Universal Driver 4.7 and Linear Hash service (lh47srvc.exe)
- Universal Driver 5.0 and Linear Hash v5.0 service (revlhsrvc64nul.exe)
- Windows Server 2012 R2 with all patches installed.
- Dell 1950 with 2 E5410 Xeon 2.33Ghz CPUs and 16 GB RAM. No RAID configured.
- Intel Pro 2500 SSDSC2BF120H501 Enterprise Solid State Drive.
All tests were run directly from the server. Two copies of OpenInsight 9.4 were installed and each was attached to a separate copy of the PERSON_INFO_TEST table. The first copy of OpenInsight was setup to exclusively use the Universal Driver 4.7. The second copy of OpenInsight was installed with the Universal Driver 5.0 using the default settings.
The benchmark routine is a latent select of the PERSON_INFO_TEST table with a readnext/modify record/write record loop to benchmark performance. The number of records read and written every 5 seconds was averaged and recorded for comparison. The modify record processes added a date time stamp to the end of the record causing records to gradually get larger with each loop. No locking was performed and no indexing was added to the table. The test routine was run 3 sequential times in each system.
The first 9 samples were dropped from the results to allow for test ramp-up and the following 30 samples were charted.
UD 5.0 and 4.7 Comparison Test Results
The three UD 4.7 tests averaged 9160 records/sec while the three UD 5.0 tests averaged 2613 records/sec. The chart below shows the performance of of the three benchmark routines for each UD.
The UD 5.0 has very consistent performance with almost no peaks or valleys in the result but it’s 72% slower than the UD 4.7.
Upon examination the the substantial difference in performance is attributed to the UD 5.0 shipping with encryption activated as the default configuration. The option was set during the server setup program at the connection details screen.
Let’s see how the benchmarks change if we deviate from the defaults and disable encryption. Encryption can be disabled by following these 3 steps:
- Change the REVPARAM files from Secure=1 to Secure=0.
- Edit the registry and change the Secure key to 0 in the branch HKEY_LOCAL_MACHINE\SOFTWARE\Revsoft\Revelation Universal Driver\5.0. (Note: Wow6432 isn’t in the registry branch as in past Universal Driver versions when run on 64-bit servers because the UD 5.0 is 64-bit.)
- Restart the LinearHash 5.0 service.
After making these changes the PERSON_INFO_TEST was reloaded back to a fresh copy. Let’s see what the results look like now.
UD 5.0 Benchmark Without Encryption
Re-running the UD 5.0 benchmarks with encryption turned off results in an average of 9379 records/sec putting it slightly ahead of the UD 4.7. Re-comparing the previous UD 4.7 results with the new UD 5.0 benchmarks is shown in the chart below.
The UD 5.0 performance has the same peaks and valleys as the UD 4.7. Both Universal Drivers perform equally well in the benchmark routine.
Out of the box the UD 5.0 option to use encryption severely impacts performance by more than half. When encryption is disabled performance is comparable to the UD 4.7.
Revelation Software has taken a lot of steps to ship products with secure default configurations over the past few years and I’m glad to see security turned on by default but the impact to performance should be evaluated before deploying the UD 5.0 on a large scale. The UD 5.0 isn’t advertised as being more efficient than previous Universal Drivers but it does have a number of very attractive features that enterprise customers will find useful. I’ll be diving into those features in subsequent articles about the Universal Driver 5.0.