"Order Entry" Stress Test: Measuring Enterprise Class Performance

One complaint that we've historically received regarding our Forums database test was that it isn't strenuous enough for some of the Enterprise customers to make a good decision based on the results.

In our infinite desire to please everyone, we worked very closely with a company that could provide us with a truly Enterprise Class SQL stress application. We cannot reveal the identity of the Corporation that provided us with the application because of non-disclosure agreements in place. As a result, we will not go into specifics of the application, but rather provide an overview of its database interaction so that you can grasp the profile of this application, and understand the results of the tests better (and how they relate to your database environment).

We will use an Order Entry system as an analogy for how this test interacts with the database. All interaction with the database is via stored procedures. The main stored procedures used during the test are:

sp_AddOrder - inserts an Order
sp_AddLineItem - inserts a Line Item for an Order
sp_UpdateOrderShippingStatus - updates a status to "Shipped"
sp_AssignOrderToLoadingDock - inserts a record to indicate from which Loading Dock the Order should be shipped
sp_AddLoadingDock - inserts a new record to define an available Loading Dock
sp_GetOrderAndLineItems - selects all information related to an Order and its Line Items

The above is only intended as an overview of the stored procedure functionality; obviously, the stored procedures perform other validation, and audit operations.

Each Order had a random number of Line Items, ranging from one to three. Also randomized was the Line Items chosen for an order, from a pool of approximately 1500 line items.

Each test was run for 10 minutes and was repeated three times. The average between the three tests was used. The number of Reads to Writes was maintained at 10 reads for every write. We debated for a long while about which ratio of reads to writes would best serve the benchmark, and we decided that there was no correct answer. So, we went with 10.

The application was developed using C#, and all database connectivity was accomplished using ADO.NET and 20 threads - 10 for reading and 10 for inserting.

So, to ensure that IO was not the bottleneck, each test was started with an empty database and expanded to ensure that auto-grow activity did not occur during the test. Additionally, a gigabit switch was used between the client and the server. During the execution of the tests, there were no applications running on the server or monitoring software. Task Manager, Profiler, and Performance Monitor were used when establishing the baseline for the test, but never during execution of the tests.

At the beginning of each platform, both the server and client workstation were rebooted to ensure a clean and consistent environment. The database was always copied to the 8-disk RAID 0 array with no other files present to ensure that file placement and fragmentation was consistent between runs. In between each of the three tests, the database was deleted, and the empty one was copied again to the clean array. SQL Server was not restarted.

SQL Stress Results Order Entry Results
Comments Locked

144 Comments

View All Comments

  • ceefka - Thursday, April 21, 2005 - link

    So, would an nForce 3 250 board work with an A64 X2?
  • smn198 - Thursday, April 21, 2005 - link

    #4 "I find it strange why AMD did not release <2.2GHz A64 X2s? Maybe due to manufacturing issues?"

    When you make a dual core CPU, a defect on one of them makes the whole lot worthless. I believe that to try and reduce this, they can increase yield by producing lower clocked parts
  • L3p3rM355i4h - Thursday, April 21, 2005 - link

    #9 you're dreamin' Theres no way that AMD can sell a 1.8ghz chip for sub-$200 when a frickin' venice is retailing for $179. A 1.8ghz chip would be upper $300 to lower $400s.

    But, damn the "X2" performs nicely. Just think, with a stable, higher performing motherboard with decent timings how much better it would get.
  • Shinei - Thursday, April 21, 2005 - link

    Nice, dual-core. AMD's going to be hurt badly by the lack of volume on their X2 units, though, considering that Intel's got the money to post minor losses on each chip sold just to regain their marketshare. I'm surprised AMD hasn't tapped IBM to give them one or two 65nm fabs to prepare for the A64X2 launch later this year...
  • AnnihilatorX - Thursday, April 21, 2005 - link

    hm hope fab36 would increaswe production capacity of AMD and lower the cost down a bit
  • blckgrffn - Thursday, April 21, 2005 - link

    Awesome...I wish we could have seen a 4 socket 8 processor system rocking out with those four way xeons though, that would really illustrates some differences ;)

    I agree with the previous sentiment on the x2's, I hope they bring out a sub $200 1.8 ghz or so model. I will be sticking this in my desktop box, not my gaming box, so if they can't bring anything out under $200 I will probably have to go with Intel. Boo for that ;)

    Nat
  • Zebo - Thursday, April 21, 2005 - link

    It's a wonderful article Anand, always love yours.. very in-depth But you're forgetting mem timings??? Arr.:)
  • Zebo - Thursday, April 21, 2005 - link

    Slobber:P
  • blackbrrd - Thursday, April 21, 2005 - link

    #4 AMD probably wants you to buy their single core cpus instead, as they are much cheaper to produce and easier to produce in quantities. AMD would probably have problems delievering a lower cost dual core in quantities .

    Who doesn't drewl for a A64 X2 after seeing this review??? I certainly do.

    The dual core intel wouldn't be so bad either, except for the amount of heat it produces off.
  • filterxg - Thursday, April 21, 2005 - link

    Nice article. AMD has obviously awoken a sleeping giant, and Intel is fighting back on the pricing front. Hopefully the gamble that AMD single cores can hold their own versus Intel Duallies is true on the mid-low end (at least for the near future). I won't be buying an Intel chip anytime soon (unless I need a laptop).

    Either way I figure I got 2.5 years before I need a dualcore, and by then who knows. So bravo to both companies for this innovation.

Log in

Don't have an account? Sign up now