With the release of Platform Update 5 a small feature called ‘Performance test’ was introduced as part of the System Administration module. To date, I have not found any official documentation that provides any information on this feature. That’s why I thought it could be helpful to write a blog about this feature.
So, hidden in plain sight in the System Administration module, you will find two menu items. One is the ‘Run performance tool’, under the Periodic tasks section, and the other is the ‘Configure performance tool’ under the Setup section. I believe the menu item to set the configuration was introduced in a later update, but have no older environment available to validate this.
Wow, a performance test feature!
At first glance, you would expect a lot of a feature called ‘Performance test’. However, this feature only allows you to perform a quick performance check on all of the common database actions, such as inserting, updating, deleting or querying records, and should therefore just be regarded as another tool in the toolbox of the (technical) consultant or system administrator. The functionality does not allow you to test specific parts of the application or test custom code but can be used just to do a quick check on an environment.
Configure performance tool
The ‘Configure performance tool’ menu option allows you to set the server and database name and optionally enter user credentials. The ‘Validate’ option allows you to validate the database connection, of which the output is shown in this form allowing you to validate if the connection can be made. Nothing more.
Running the performance tool
When navigating to the ‘Run performance test’ menu item, you will find the following form. It gives you a lot of options to set test options, most of them to either include or exclude a specific test scenario, such as inserting, updating or deleting records as part of the data manipulation tests, or querying cluster indexes or non-unique indexes as part of the query test. You are also able to turn on or off the use of TempDB or InMemory tables.
As per standard, all options are enabled and there is a standard value of 1000 in the ‘Record count to test’ field. You can manipulate this value anywhere from 1 to 100.000, which is the maximum. Mind you that the average running time of 1000 record in the test will be around one minute, so testing with a record count of 100.000 records could take up around 100 minutes, which is over 1 1/2 hour.
After having changed any of the values, or not, you can start the performance test. The results of each of the test steps will be appended to the results section in the same form. After the performance test run has been completed, it will look somewhat like this:
For each of the test option a single line will be appended to the results log, showing the test result information.