Re: quad or dual core Intel CPUs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Kenji,

On 13-2-2007 20:46 Kenji Morishige wrote:
Here is the full specification of the new box I hope to build and run FreeBSD
6.X and PostgreSQL on:

- SuperMicro Dual Xeon X7DBE+ motherboard
+ 2 x Quad Core X5355 2.66Ghz OR + 2 x Dual Core 5160 3.0Ghz
- 8 x 1GB PC2-4200 fully buffered DIMM

- LSI MegaRAID SAS 8408E w/BBU 256MB

- 16 x 73GB SAS disk

If this is in one of those 4U cases, make very, very sure it can properly exhaust all the heat generated and has more than adequate power supply. When going for a similar machine, we got a negative advice on such a set-up from a server vendor who built such machines themselves. Don't forget that the FB-dimms run pretty hot and they need sufficient cooling. As you can see on these pictures Fujitsu thought it necessary to add fan-ducts for the memory:
http://tweakers.net/reviews/646/7

Our own Dell systems have similar ducts. But a third-party server builder we tested did not include those, and the machine ran very hot (I couldn't touch the bottom for more than a short time) in a not-too-good-ventilated, but mostly empty, server rack. Although that was a 2U machine, but it didn't include any disks. Currently we have had good experience with our new Dell 1950 (2x 5160, PC5300 FBD) combined with a Dell MD1000 SAS disk unit (15x 15k 36G disks) described in the second review linked below. HP offers similar options and there are probably several other suppliers who can build something like that too. Seperate SAS-JBOD disk units are available from other suppliers as well.

So, question #1, to go dual core or quad core?  Quad core in theory seems to
scale the machine's processing potential by almost a factor of two.

I can partially answer that question, but than for linux + postgresql 8.2. In that case, postgresql can take advantage of the extra core. See our review here:
http://tweakers.net/reviews/661

This includes comparisons between the X5355 and 5160 with postgresql on the seventh page, here: http://tweakers.net/reviews/661/7

But be aware that there can be substantial and unexpected differences on this relatively new platform due to simply changing the OS, like we saw when going from linux 2.6.15 to 2.6.18, as you can see here:
http://tweakers.net/reviews/657/2

Our benchmark has relatively little writing and a smallish dataset (fits in 4GB of memory), so I don't know how much use these benchmarks are for you. But the conclusion was that the extra processor power isn't fully available, possibly because there is less memory bandwidth per processor core and more communication overhead. Then again, in our test the dual quad core was faster than the dual dual core.

And lastly, up till now, I've only have experience configuring SCSI RAID
controllers.  I believe this LSI MegaRAID unit has a dual channel setup, but
when it comes to SAS drives, I don't know what kind of flexibility this
provides.  How should the disks be partitioned for maximum PostgreSQL
performance?

I'm thinking about keeping it simple assuming that the hot spare can only be
utilized one per channel leaving me only 14 disks to utilize.

In that Dell 1950 we use the Dell PERC5/e SAS-controller for the database, which is based on that same LSI controller, although it has 2 external sas connections (for 4 channels each). Afaik it supports global hot spares. But we use the full set of 15 disks as a 14+1 disk raid 5, so I haven't looked at that too well. For the OS we have a seperate PERC5/i "internal" raid controller with two internal disks. My colleague also tested several raid set-ups with that equipment, and we choose a raid5 for its slightly better read-performance. If you can make something of these dutch pages, you can have a look at those results here:
http://tweakers.net/benchdb/test/122

Play around with the form at the bottom of the page to see some comparisons between several raid set-ups. The sas configurations are of course the ones with the "Fujitsu MAX3036RC 36GB" disks and "Dell PERC 5/E" controller.

If I am not able to utilize both channels to create a 12 disk RAID1+0 array,
then it might be better to create 2 seperate data partitions, one for
WAL/pg_xlog and the rest for the data store.

I'm not too sure how you can connect your disks and controller to a SAS-expander (which you need to connect more than 8 disks to a controller). I believe it is possible to use a 24-port expander, allowing communication between the 16 disks and 8 ports of your controller. A SAS-expander comes normally with the enclosure/disk unit, but I have no idea about the details. Our own testing was done using just a single 4-port connector, which can handle 1.2GB/sec (afaik this B is for bytes) and we believe that's sufficient for our 15 disks.

Please comment on any issues you may see with this box and my assumptions.
Also any FreeBSD kernel issues or tweaks you could recommend.

Have a very good look at your heat production and exhaust and power supply. It was one of the reasons we decided to use seperate enclosures, seperating the processors/memory from the big disk array.

Best regards and good luck,

Arjen van der Meijden


[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux