Monday, October 13, 2008

T5440

4x chips, 8-cores in each chip, 8 strands per each core = 256 virtual CPUs and 32x built-in HW crypto accelerators, up-to 512GB RAM, 8x PCI slots, 4x on-board GbE, 4x internal disk drives, all in 4U.

Allan Packer has posted more info on the beast.

If you consolidate applications which can easily take advantage of many threads you can get really good throughput for reasonable money - in some cases you will get better performance than 3x IBM p570 and it will cost you MUCH less.

Interesting application of the T5440 would be a 2-node cluster utilizing Solaris 8, Solaris 9 and native SOlaris 10 zones - that allows you quick and easy consolidation and migration of old environments. I did something similar in a past but utilizing T5220 servers.

T5440 PCI-E I/O Performance
T5440 Architecture Overview
T5440 Photos

Tuesday, October 07, 2008

Niagara2+ ssh improvements

Recently ssh/openssl changes have been integrated into ssh so if runing on Niagara-2 CPUs ssh will automatically, take advantage of buitl-in HW Crypto. So let's see what improvement we can expect.

Below is a chart of total time it took to transfer over ssh about 500MB using different ciphers.


As you can see there is a very nice improvement and it's out of the box - no special configs, no tuning - it just works.


Details below.


Solaris 10 5/08

# time dd if=/dev/zero bs=1024k count=500 | ssh root@localhost 'cat >/dev/null'

real 0m52.635s
user 0m48.256s
sys 0m4.195s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c blowfish root@localhost 'cat >/dev/null'

real 0m39.705s
user 0m34.744s
sys 0m3.884s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c arcfour root@localhost 'cat >/dev/null'

real 0m34.551s
user 0m29.169s
sys 0m4.273s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c aes128-cbc root@localhost 'cat >/dev/null'

real 1m5.420s
user 0m54.914s
sys 0m3.963s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c aes128-ctr root@localhost 'cat >/dev/null'

real 0m52.227s
user 0m47.970s
sys 0m3.937s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c 3des root@localhost 'cat >/dev/null'

real 2m27.648s
user 2m23.886s
sys 0m4.071s


Open Solaris build 99

# time dd if=/dev/zero bs=1024k count=500 | ssh root@localhost 'cat >/dev/null'

real 0m20.478s
user 0m12.028s
sys 0m6.853s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c blowfish root@localhost 'cat >/dev/null'

real 0m43.196s
user 0m38.136s
sys 0m4.031s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c arcfour root@localhost 'cat >/dev/null'

real 0m20.443s
user 0m11.992s
sys 0m6.923s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c aes128-cbc root@localhost 'cat >/dev/null'

real 0m20.500s
user 0m12.008s
sys 0m7.054s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c aes128-ctr root@localhost 'cat >/dev/null'

real 0m21.372s
user 0m12.013s
sys 0m7.225s

# time dd if=/dev/zero bs=1024k count=500 | ssh -c 3des root@localhost 'cat >/dev/null'

real 0m21.758s
user 0m12.396s
sys 0m7.513s

Tuesday, September 30, 2008

SSH on Niagara T2

In build 99 of Open Solaris among other new features one is quite interesting - out of the box use of built-in HW acceleration of UltraSparc T2 in ssh. It semms like it can deliver over 2x speed-up for scp. And yes, it's going to be back ported to Solaris 10. You can read more here.

Virtual Consoles in Solaris

One of the missing features of Solaris used to be lack of Virtual Consoles - something we are accustomed so much in Linux. Solaris used to have virtual consoles once.. long long time ago, then they disappeared. Finally, they are coming back into Open Solaris and have been integrated into build 100.

Rock support in Open Solaris

Now, how do I get an access to beta HW with Rock on board?

Tuesday, September 23, 2008

Fast Reboot on x86

What if you have a x86 system with lots of memory and you want to reboot it? It will probably take minutes before your system starts booting. What if you could bypass BIOS and POST testing and go directly to bootloader? Such a nice feature has been just integrated into Open Solaris build 100. See PSARC 2008/382 for more details.

A new "-f" flag has been introduced to the "reboot" command
which allows a faster reboot that bypasses the BIOS and grub.

Thursday, September 18, 2008

MySQL Scalability

NetApp's PAM

NetApp introduced a new feature called PAM - Performance Acceleration Module.
"In the simplest terms, the Performance Acceleration Module is a second-layer cache: a cache used to hold blocks evicted from the WAFL® buffer cache. (WAFL is the NetApp® Write Anywhere File Layout, which defines how NetApp lays out data on disk. The WAFL buffer cache is a read cache maintained by WAFL in system memory.) In a system without PAM, any attempt to read data that is not in system memory results in a disk read. With PAM, the storage system first checks to see whether a requested read has been cached in one of its installed modules before issuing a disk read. Data ONTAP® maintains a set of cache tags in system memory and can determine whether or not a block resides in PAM without accessing the card. This reduces access latency because only one DMA operation is required on a cache hit."
It all sounds very good and is very, very similar to L2ARC feature in ZFS, except that it seems like NetApp only supports very expensive PCI/DRAM cards with relatively small capacity. With ZFS L2ARC not only you can get such functionality for free, but it is also more flexible and allows you to use any block device in a system as L2ARC - so you can provide hundreds of GBs of cache for a fraction of cost of NetApp's cards. And ZFS is open sourced :)

Intel SSD Drives

Intel announced some time ago new line of SSD drives. For a consumer market the X-25M looks very promising. You can read reviews here and here.

Thursday, September 04, 2008

VirtualBox 2.0

Sun has released new version of VirtualBox. Main new features are:

  • 64 bits guest support (64 bits host only)
  • New native Leopard user interface on MacOS X hosts
  • The GUI was converted from Qt3 to Qt4 with many visual improvements
  • New-version notifier
  • Guest property information interface
  • Host Interface Networking on Mac OS X hosts
  • Host Interface Networking on Solaris 10 hosts
  • Support for Nested Paging on modern AMD-V CPUs (major performance gain)
  • Framework for collecting performance and resource usage data (metrics)
  • Clipboard integration for OS/2 Guests
  • Support for VHD images
  • Created separate SDK component featuring a new Python programming interface on Linux and Solaris hosts

Wednesday, September 03, 2008

5 years of DTrace

It's been five years since DTrace has been integrated into Solaris.
It's one of the most important technologies in Operating Systems.

Read Bryan's blog entry on last few hours before integration.

I remember one of my first big dtrace wins - a multi-threaded application, developed in-house by our developers had some scalability problems on multi-cpu servers. They spent about a week looking for an issue without any progress. It was early just after dtrace was made public and I decided to give it a try. At first no real progress... while I was driving home the issue was still in a back of my mind. Suddenly I was 100% sure how to solve the issue with dtrace. First time in a morning I sat down with developers and we have fixed the problem in 5 minutes. We were working on a production code in a production environment. The era of DTrace has began...

Sunday, August 24, 2008

OpenSolaris 2008.05

I've just re-installed Open Solaris on my laptop using LiveCD. I was really surprised (positively) when NWAM detected my WiFi, asked me for WEP and during installation I could brows the Internet. However what really surprised me was that after install finished and I rebooted my laptop into Open Solaris it somehow remembered my password and got my WiFi automatically working without asking any questions - really cool.

Friday, August 22, 2008

End of Service for Solaris 7

From SDN:
"On August 15, 2008, Solaris 7 exited EOSL Phase 2. Except through custom support agreements, all support for Solaris 7 is terminated. On April 1, 2009, Solaris 8 enters EOSL Phase 2. Vintage patch entitlement (for patches developed ON OR after 4/1/09) requires purchase of the Solaris 8 Vintage Patch Service. Learn more."