Performance of a static code analyzer is a very important parameter. The faster it takes an analyzer to check code, the more often people will use it. We ran another benchmark the other day to measure our analyzer's speed on different computers, and this is what we are going to tell you about in this article.
So, we have two computers to measure the analyzer's performance:
The first computer (a desktop):
The second computer (a laptop):
Those familiar with Intel processor markings understand that although the numbers in the models' names (2500 and 2467M) are very close, the laptop's processor is in fact somewhat more ordinary.
When carrying out this test, we were interested to find out to what extent the processor itself affects the speed of code analysis. The fact that an SSD disk helps enhance performance pretty much was obvious to us long ago. We mentioned this in Tips on speeding up PVS-Studio, as well as the idea that more processor cores imply a faster analysis.
The fact that our laptop had only 4 Gbytes of RAM didn't affect the analysis speed much, for both the computers had 4 processor cores, and the ratio 1 Gbyte per core is a very good configuration for PVS-Studio.
Those fond of Windows Experience Index, here you are the figures (obviously, the desktop has a higher index):
Now a few words about the benchmark methodology. We have a test suite of 80 small and medium projects. A special utility (the tester) opens these projects, checks them and saves the report. It is the time it takes the tester to finish its work that we measure, i.e. the "astronomical" time.
Analysis ran for one hour ten minutes (1:10) on the desktop and three hours thirteen minutes (3:13) on the laptop. The difference is almost three times (2.75, to be exact).
So, if you use a static code analyzer regularly - whether it is PVS-Studio, Cppcheck or Clang's analyzer, - make sure you have a high-performance processor. It will make you happier - sometimes almost three times as much.