Our client is using SQL Server 2008 R2 SP3 on Windows Server 2008 R2 Enterprise SP1. I download their MDF.
Their server is:
- Intel XEON E5-4620 2.20Ghz 128 GB RAM (SQL Server using 64GB, 20% free).
- 64 cores on 4 processors.
- RAID SSD I/O system (but doesn't matter because physical reads is 0).
My computer is:
- Intel i7 5700HQ 2.7GHz 16 GB RAM (SQL Server using 8GB).
- 4 cores on one processor.
I query simple
Select * from StokKart. Table has 68k rows and 20 columns.
Client server results
(68648 row(s) affected) Table 'StokKart'. Scan count 1, logical reads 3854, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. SQL Server Execution Times: CPU time = 640 ms, elapsed time = 4013 ms.
My laptop results
(68600 row(s) affected) Table 'StokKart'. Scan count 1, logical reads 3847, physical reads 0, read-ahead reads 0, lob logical reads 0, lob physical reads 0, lob read-ahead reads 0. SQL Server Execution Times: CPU time = 187 ms, elapsed time = 1742 ms.
I installed a fresh SQL Server on my machine using the client's backup and Windows 7. Client's Server always 4-4.5 seconds. Windows 7 machine under 2 seconds. Client always complains about a slow application. All indicators are normal. No I/O bottleneck, full RAM, or high CPU usage.
I tested the server at night when nobody was using the system. I use SQL Server Activity Monitor and Windows Resource Monitor for monitoring.
Query plans are exactly the same.
I tried SQL Server 2014 on same server. Still 4000 ms and mine 1600-1700 ms.
Changing the query to
Select Count(*) from Stokkart, the results are:
- Server : CPU time = 16 ms, elapsed time = 11 ms.
- My Laptop : CPU time = 0 ms, elapsed time = 3 ms.
I tested the server using its own local SSMS (local); my laptop, my SSMS, so not a network issue.