This Blog will provide information about running SAP applications on SQL Server and Windows. The Blog is written by folks of Microsoft who are working with SAP and SQL Server for more than a decade.
We usually don’t use this site to promote every benchmark which we conduct and finish with one of our trusted hardware partners. However for a benchmark we released on Friday 21st of June together with HP, we want to make an exception. In summer 2012, HP and Microsoft decided to invest into a 3-Tier SAP SD benchmark using Windows Server 2012. However well understanding the current technology trends, we didn’t want to just produce another 3-Tier benchmark running SQL Server SAP instances on bare metal. What we wanted to do is to really show that Hyper-V of Windows Server 2012 supports more than 4 Virtual Processors (VPs), but could also scale to more than four Virtual Processors. Just to refresh the changes between Hyper-V of Windows Server 2012 compared to Hyper-V of Windows Server 2008R2, here a short list of the limitations of Windows Server 2012 Hyper-V (values in parenthesis refer to Windows Server 2008 R2 limitations) :
Therefore we decided to take 12 x HP 460C blades for the SAP application tier plus one additional blade of the same type as DBMS tier. These blades were equipped with Intel Xeon E5-2680 @ 2.70GHz processors which then resulted in 2 processors, 16 cores and 32 CPU threads or Logical Processors (LPs) per blade. Each blade did use as well 256GB of RAM. As storage the choice was to go with the HP 3PAR Storage. Advantage of the HP Blade framework was that we could configure multiple network channels to the DBMS blade using HP’s Virtual Connect technology. In order to support our goal of proofing that Hyper-V VMs can scale, we decided to configure a DBMS VM of 32 VPs and 196GB RAM as DBMS server. No doubt we also used Hyperthreading which proved as adequate to increase throughput of the VMs
On the application side we decided to run 2 VMs with 16 VPs each. Since we ran multiple SAP instances in each of those VMs, one certainly could have configured smaller VMs. However using 16 VPs seemed to be around the size a lot of customers would like to use to run larger SAP instances, hence our choice was 16 VPs.
At the end we could achieve a great result of 42,400 SAP Standard SD Benchmark users with this configuration. All in all the configuration achieved 231,580 SAPS (see benchmark details at the end of the article). Besides that, the benchmark represents
Hence all in all a great demonstration of the abilities of Hyper-V in virtualizing SAP environments. Also an awesome engineering exercise. Results out of this exercise already had impact on current HP products as well as into Windows Server 2012 R2.
On the network side, Dynamic Virtual Machine Queues (D-VMQ) were used as network optimization/accelerator on all of the host servers and VMs. This enabled a more efficient handling of the network traffic. More details on D-VMQ can be found here: http://www.windowsnetworking.com/go/?link=http%3A%2F%2Fdownload.microsoft.com%2Fdownload%2F7%2FE%2F6%2F7E63DE77-EBA9-4F2E-81D3-9FC328CD93C4%2FWS%25202012%2520White%2520Paper_Networking.pdf
SQL Server also took advantage of another new functionality of Hyper-V called vNUMA (Virtual NUMA). Today Hyper-V VMs can cover more than one NUMA node on the host server in cases where the # of VPs configured exceeds the number of LPs in one NUMA node. If such situations occur, Hyper-V will distribute the number of VPs in an even manner over multiple host NUMA nodes. Hyper-V also will try to allocate the memory of the VM evenly over multiple host NUMA nodes. This fact will be reflected into the Virtual Machine. SQL Server running in the VM will, as on bare metal, detect that it runs on a NUMA architecture (though a virtual one) and hence will subsequently will allocate its own memory, caches and structures accordingly as if it would run on a bare-metal NUMA architecture. vNUMA represents one optimization of Hyper-V which is essential for scaling up SQL Server workload within a Virtual Machine.
Detailed benchmark data:
HP received certification from SAP AG of the results of the ProLiant BL460c Gen8 Server on the three-tier SAP SD standard application benchmark (certification #2013016), performed in Houston, TX, USA on June 8, 2013. The server achieved 42,400 SAP SD benchmark users, 231,580 SAPS, and a response time of 0.99 seconds. The platform ran Microsoft Windows Server 2012 Datacenter on Windows Server 2012 Hyper-V operating system, Microsoft SQL Server 2012 database, and SAP EHP 5 for SAP ERP 6.0.
Application tier: 12 x ProLiant BL460c Gen8 Servers with 2 VMs each composed of 16 virtual processors with Intel Xeon E5-2680 @ 2.70GHz (2 processors/16 cores/32 threads), HP Smart Memory 16GB 2Rx4 PC3-12800R (256GB), 1 x Onboard Smart Array P220i Controller with 512MB FBWC to 2 x internal drives (2 x 300GB 10K 6G SAS SFF) and 1 x HP Ethernet 10Gb 2-port 560FLB Adapter
Database tier: 1 x BL460c Gen8 Server with 1 VM composed of 32 virtual processors, Intel Xeon E5-2680 @ 2.70GHz (2 processors/16 cores/32 threads), HP 16GB 2Rx4 PC3-12800R (256GB), 1 x Onboard Smart Array P220i Controller with 512MB FBWC to 2 x internal drives (2 x 300GB 10K 6G SAS SFF), 1 x HP Flex10 10Gb 2-port 530FLB Adapter and 1 x QLogic QMH2572 8Gb FC HBA for HP BladeSystem c-Class