Linchi Shea
Performance impact: the cost of NUMA remote memory access
These days if you get a new server-class machine to run SQL Server, you can almost be 100% sure that it’ll be running on NUMA hardware. The recent AMD Opteron and Intel Nehalem-based processors are all built on some form of NUMA architecture. The current...(read more)
Categories: SQL Server Expert Blogs
No respect: NUMA affinity meets query parallelism
What happens when NUMA affinity meets query parallelism? It gets no respect! SQL Server allows you to affinitize a TCP port to a specific NUMA node or a group of NUMA nodes. Books Online has an article on How to: Map TCP/IP ports to NUMA Nodes . And this...(read more)
Categories: SQL Server Expert Blogs
T-SQL stored procedure for finding/replacing strings in a text file. Really?
I know people have been doing all sorts of things with T-SQL, and I have absolutely no issue with people trying to push the limit of what T-SQL can do, or what you can use it to accomplish, especially when it’s for demonstration or pedagogical purposes,...(read more)
Categories: SQL Server Expert Blogs
Performance impact: SQL2008 R2 audit and trace
We are told that SQL Server 2008 R2 Audit (and SQL Server 2008 Audit) has much less performance overhead than SQL Trace when we try to capture the same information. Knowing how SQL Server R2 Audit is implemented (i.e. on top of the extended events infrastructure),...(read more)
Categories: SQL Server Expert Blogs
Performance impact: hyperthreading on Intel Westmere-EP processors (X5690)
Recently, I have been looking into the performance impact of enabling hyperthreading on various platforms with various SQL Server workloads. All the results I have shared so far are from a DL580 G7 with four Westmere-EX (E7-4870) processors. Overall,...(read more)
Categories: SQL Server Expert Blogs
Performance impact: not all is better with hyperthreading
In the comments to my previous post on the performance impact of enabling hyperthreading on reporting queries, Serguei Tarassov indicated that it might be interesting to try different reporting queries, and suggested a specific parameterized test query....(read more)
Categories: SQL Server Expert Blogs
Performance impact: driving up context switches/sec
Too many context switches per second are considered bad for your database performance. But how many is too many has never been clear. With the core count of new servers going up rapidly, it becomes even less clear how we should evaluate this counter to...(read more)
Categories: SQL Server Expert Blogs
Performance impact: hyperthreading for OLTP queries -- II
This is in part a response to a comment by Paul White ( @SQL_Kiwi ) to my previous post on the performance impact of enabling hyperthreading (HT) on OLTP queries , and in part due to my desire to capture a more complete set of test data for future investigation...(read more)
Categories: SQL Server Expert Blogs
Elephant in the room: TPC-E
Over the past few months in several semi-formal occasions, I ran into folks from your well-known vendors (minus Microsoft). Some of the folks were from the vendors’ performance labs and were involved in conducting benchmark tests and publishing benchmark...(read more)
Categories: SQL Server Expert Blogs
Performance impact: hyperthreading for OLTP queries
My previous post focuses on the performance impact of enabling hyperthreading (HT) on a machine with four Intel Westmere-EX processors on reporting queries. Let’s turn our attention to OLTP queries. To oversimplify it, reporting queries are generally...(read more)
Categories: SQL Server Expert Blogs
Performance impact: hyperthreading for reporting queries
There are a lot of questions on hyperthreading, but not a lot of answers. There is no shortage of opinions, but very few are based on significant first hand experience or solid test data. We know that the hyperthreading technology in the older generations...(read more)
Categories: SQL Server Expert Blogs
Evaluating server hardware: a sign of the times
For nearly ten years, I have had success in using a specifically modified version of the TPC-C benchmark for evaluating server hardware running SQL Server. Depending on your purpose, you can evaluate computer hardware in numerous ways with numerous benchmarks....(read more)
Categories: SQL Server Expert Blogs
Where is SQL Server running in a cluster?
There are numerous ways to find where a SQL Server instance is running in a cluster. The most convenient tool was cluster.exe . Unfortunately, I have to say it was the most convenient tool, and no longer is because no single cluster.exe works with all...(read more)
Categories: SQL Server Expert Blogs
Performance impact: a little business logic goes a long way
I’m running into this little performance tuning pattern enough number of times that it is worth a special mention. As it often happens, the app folks complain about a proc call being very slow, and I track it down to a specific line in the proc. The line...(read more)
Categories: SQL Server Expert Blogs
Performance impact: diminishing marginal return on the degree of parallelism
In commenting on my previous post , Greg Linwood and GrumpyOldDBA raised questions about various implications of parallelism. In this post, I’ll look at the impact of different degrees of parallelism on the query performance. I’ll limit my examination...(read more)
Categories: SQL Server Expert Blogs
Creating features for 1% of the users
While at PASS Summit 2011 in Seattle, I had a conversation with an attendee from one of the largest US companies. As expected and like any of the largest US companies, this company has multiple DBMS platforms. The conversation then turned to how SQL Server...(read more)
Categories: SQL Server Expert Blogs
Is the SELECT permission checked in an UPDATE statement?
I was at PASS Summit 2011 in Seattle and had a chat with Jack Richins of Microsoft on the SQL Server audit feature after his presentation. A question came up with regards to whether the SELECT permission should be checked when an UPDATE statement is being...(read more)
Categories: SQL Server Expert Blogs
Fully transparent table partitioning for OLTP
No, this is not something announced at PASS Summit 2011. But it’s something that has been on my wish list for a long time. Table partitioning is a great feature, and overwhelmingly, table partitioning is touted as a data warehousing feature for both sliding...(read more)
Categories: SQL Server Expert Blogs
