Number of processors and mutilple cores performance

  • I have been asked for a recommendation from a client for a spec on a new server box to run SQL 2000. The operating system will be Server 2003 , and the SQL edition will be SQL Standard.

    The SQL Server will be running the Great Plains database, some other minor databases, and be running (Publisher) Replication.

    They have basically just asked me to give an indication on the processors. They are looking at 2 options :

    2 x dual core 2.6 GHz

    2 x QUAD core 1.8 GHz

    I have no idea which way to lean in terms of this recommendation.

    From some documentation i found, SQL Standard on Server 2003 supports 4 processors, how do the cores fit in ? Are they seen a separate processors for SQL ? I.e. Does 2 X Quad Core = 8 processors ?

    And how does the quad core at a slower speed relate in performance terms to a dual core at a higher speed ?

    My gut feel is that they are not going to get a great deal of parallelism from any queries they are running, so I would guess that the faster processors would perform better in general, but as I said, thats a guess at best.

    Any pointers would be great.

    Thanks.

  • As far I know Microsoft handles a dual core as one physical processor. The OS recognize the dual core (we have a few installed in our company).

    In my opinion you should evaluate the load of the server before. Two other important points are Memory and Disks. The performance of the server is done be the right mix of these elements.

    Download this document

    http://download.microsoft.com/download/f/1/e/f1ecd771-cf97-4d98-9a1b-b86e3f24e08f/multicore_hyperthread_brief.doc

  • licensing is per socket - the number of cores doesn't count. ( I'm not so sure about HT however )

    as to what you choose - most DBA's go for the most bang they can get. The quad cores aren't "proper" quads in as much as intel has stuck two duals on a chip , not quite the same, however you will get benefits.

    To assume you won't suffer from parallelism, or any issues in this direction is maybe optimistic and you should monitor to be sure. That said with 8 cores and HT you could always set parallelism to a lesser number.

    [font="Comic Sans MS"]The GrumpyOldDBA[/font]
    www.grumpyolddba.co.uk
    http://sqlblogcasts.com/blogs/grumpyolddba/

  • Don't forget RAM - Server 2003 Standard can use 4GB, but SQL Server 2000 Standard will use 2GB of this at most.

  • however 2005 std follows o/s memory so can use more than 2gb.

    You may find the differences between std and enterprise significant, remember many features run single threaded in STD edition so your cores are in effect wasted.

    [font="Comic Sans MS"]The GrumpyOldDBA[/font]
    www.grumpyolddba.co.uk
    http://sqlblogcasts.com/blogs/grumpyolddba/

  • First of all I would consider going with sql 2005 & not 2000 as the std edition of 2005 has many more features that std 2000 and you could see gains of about 12-20% improvement.

    Also multi-core processors can only be used if the applications support multi-threading, i know 2005 does and almost sure that 2000 does but you better check this yourself.

    Like above I would also consider using Windows2003Ent so you can utilize more memory, i feel this is the biggest hardware gain in relation to sql server performance.

  • If we're going this route then the advice should be to move to 64bit where std 2005 has unlimited memory ( well actually to o/s limit )

    But it's all very well us making these suggestions but enterprise costs much more and budget may not stretch. Do consider the 64bit move to sql 2005 though.

    [font="Comic Sans MS"]The GrumpyOldDBA[/font]
    www.grumpyolddba.co.uk
    http://sqlblogcasts.com/blogs/grumpyolddba/

  • I tend to agree with Colin on the v2005 and 64bit if you can swing it. Even if your box only support 4GB or 8GB, if you're on 64-bit, then it's easier to port to a box with 64GB of ram that's 64-bit.

  • I would like to re-ask one of the original questions:

    "And how does the quad core at a slower speed relate in performance terms to a dual core at a higher speed ?"

    I am in the same sort of quandry. I have multiple databases (10+) on the same server and am looking to purchase a new server. Should I go with a high GHz Dual-core or a lower GHz Quad-Core? Where is the bang for the buck?

    Thanks

     

  • The factor to remember with the cores is the per socket licensing cost, with sql enterprise this is significant. However a quad core ( which isn't a true quad but two duals on a chip ) is also more expensive, but not as much as a socket license. Yup lower speed is a factor, same as the dual core, a dual doesn't = 2 singles ( usually ) likewise a quad doesn't = 4 singles , BUT, if you think licenses then it's a different matter althogether.

    One factor to consider with the cores is the issue of parallelism and threads, too many cores can actually run you out of worker threads ( and kill your server ) if you have bad parallelism.

    Many of the advantages of using lots of cores only apply to enterprise edition, even more so with 2005, so think that too. For a low cost solution on enterprise I'd say 1 quad would be more cost effective than 2 duals, you could use the license revenue saved to buy extra memory or disks, at £12k per socket a 2005 ent license can buy an external array box or quite a chunk of memory and having say 16gb of ran vs 4gb can bring significant performance gains.

    To quote an oft used term - "It just depends"

    [font="Comic Sans MS"]The GrumpyOldDBA[/font]
    www.grumpyolddba.co.uk
    http://sqlblogcasts.com/blogs/grumpyolddba/

  • Actually I am looking a costs. Currently I am running SQL Server 2000 standard on a dual processor Xeon (old version) @ 3.2 GHz and am looking to upgrade to 2005 Standard 64bit.  Due to budget, I am looking at a new single processor server. The choices that I have are a Xeon 5140 (dual core @ 2.33 GHz) or a Xeon 5320 (quad core @ 1.86 GHz). There is only a $100 difference between the two.

    Like I said in the previous post I am running multiple databases on the server (10 minimun). I have looked at as many places as possible to find out which way to go as far as the dual vs. quad but the only thing I can find people talking about is licensing cost. I am really looking for what the performance difference will be. Will having the extra cores outway the slower clock speed?

     

     

  • the problem with that question is most of us don't get enough hardware and time to do that type of analysis. I suspect the quad will perform better. The amount of proc cache is more a factor than raw speed.

    [font="Comic Sans MS"]The GrumpyOldDBA[/font]
    www.grumpyolddba.co.uk
    http://sqlblogcasts.com/blogs/grumpyolddba/

Viewing 12 posts - 1 through 11 (of 11 total)

You must be logged in to reply to this topic. Login to reply