Jetstress 2013 has several noticeable differences from its predecessor, Jetstress 2010. One of the differences is in that the thread count now becomes global, rather than per-database (see Fig. 1). What this means is that threads are managed at the global level, rather than the per-database level. So, the number of threads now applies to all databases together, not to each individual database separately.
Figure 1. Jetstress 2013 thread count becomes global.
For instance, Figure 1 shows there are 7 threads in a global pool, which are used by the 7 databases shown in Figure 2.
Figure 2. Number of databases setting.
Microsoft stated that this change “improves the granularity of thread tuning and enables automatic tuning to work more effectively.” To see the impact of the change to the test results, I ran a quick Jetstress 2013 test. The parameters used in the test are listed below.
Figure 3 shows the header and configuration portion of the Jetstress 2013 report. The green rounded rectangle highlights the fact that the database count is 7 and the thread count is also 7.
Figure 3. Database count and thread count.
Figure 4 shows a fragment of the result portion of the Jetstress 2013 report. We can make the following observations by focusing on the columns inside the green rounded rectangle:
Figure 4. Jetstress 2013 performance test results: the per-database latencies and IOPS.
In summary, the global threads seem to do the job. Further tests will be needed in order to see how it actually improves the granularity of thread tuning.
Thanks for reading.