Mar 292017

Watch your memory configuration! You can’t just throw RAM in a physical server and expect it to work right. Depending on your DIMM configuration, you might have accidentally slowed down your memory speed, which will surely slow down your application servers. This speed decrease is virtually undetectable from the OS. Anything that leverages lots of RAM to function, including a database server, can take a substantial performance hit on performance.

An example of this is if you wish to configure 384GB of RAM on a new server. The server has 24 memory slots. You could populate each of the memory slots with 16GB sticks of memory to get to the 384GB total. Or, you could spend a bit more money to buy 32GB sticks of memory and only fill up half of the memory slots. Your outcome is the same amount of RAM. Your price tag on the memory is slightly higher than the relatively cheaper smaller sticks.

In this configuration, your 16GB DIMM configuration runs the memory 22% slower than if you buy the higher density sticks. Check out page 63 of the server build guide for an HPE Proliant DL380 Gen9 server. The fully populated 16GB stick configuration runs the memory at 1866 MHz. If you only fill in the 32GB sticks on half the slots, the memory runs at 2400 MHz.

Database servers, both physical and virtual, use memory as an I/O cache, improving the performance of the database engine by reducing the dependency on slower storage and leveraging the speed of RAM to boost performance. If the memory is slower, your databases will perform worse. Validate your memory speed on your servers, both now and for upcoming hardware purchases. Ensure that your memory configuration yields the fastest possible performance. Your applications will thank you!

Mar 202017

On Thursday, March 23rd, at 2pm Eastern, I will be hosting a webinar with Argenis Fernandez from Pure Storage where we will talk about infrastructure challenges as organizations start to adopt SQL Server’s in-memory features, such as In-Memory OLTP and Columnstore Indexes.

Details: The in-memory features that accompany modern versions of SQL Server, such as In-Memory OLTP and columnstore indexes, are some of the most ground-breaking and exciting enhancements to SQL Server in recent memory. However, have you explored these features and found that the performance boosts are not quite as great as advertised? The dependencies on a blazing fast infrastructure underneath SQL Server have never been higher. While these features are lightning fast when used appropriately, the speed of the infrastructure underneath, mostly CPU, memory, and storage, can hold back the performance of these features. Join David Klee, Heraflux Technologies, and Argenis Fernandez, Pure Storage, to learn how to leverage these features to boost your database performance, detect and diagnose any infrastructure performance issues that might exist, and learn about possible long-term improvements to your infrastructure that can safeguard your performance for years!

Register for this exciting webinar here! I look forward to seeing you all there!

May 222015

memory-ramA few weeks ago, while at the incredible SQL Saturday Madison, I had a great discussion with a few of the other speakers about SQL Server VM-level memory counters and their (lack of) validity on the actual memory usage properties of the SQL Server engine. A while back, I blogged about this but I want to revisit it here.

VM-level memory counters simply cannot be trusted for SQL Server workloads at this time. Period. VM memory counters are not application aware, and as a result, are not aware of the way that in-guest applications use memory.

Continue reading »