Friday, September 30, 2011

OpenWorld and Solaris reunion

I'm going to San Francisco and Oracle OpenWorld now. In the coming week will dig into the details of Solaris 11 and the new SPARC T4 processor among other things. Mark Hurd will probably deliver an updated roadmap for Solaris and SPARC, perhaps we will even get some kind of confirmation on the release date of Solaris 11.

Joyent will also host a Solaris family reunion event on tuesday:

"There’s been a lot of news in the past few months about the progeny of Solaris: Illumos, SmartOS, OpenIndiana, and the forthcoming Oracle Solaris 11. Since many of our old friends/colleagues will be in town for Oracle Open World, we of the Illumos / SmartOS / OI community thought it would be a nice opportunity to get together, hoist a few beers, talk about old times, and maybe share our visions of the future."

Solaris family reunion
Oracle OpenWorld

Tuesday, September 27, 2011


Besides the new core and cache layout the SPARC T4 is very similar to the SPARC T3 in I/O and memory design. It also supports 16 DDR3 DIMMs with two controllers, built on 40nm technology, uses 6 * 9.6GB/s coherency links, Dual PCIe Gen2 interface and dual on-chip 10GbE interfaces.

The new S3 core is whats sets the SPARC T4 apart from previous T-processors. It has several features that greatly improves the performance compared to the T2/T3:
  • Out-oforder execution
  • Dual instruction issue
  • Data/instruction prefetch
  • Deeper pipeline
  • MMU Page size up to 2GB
  • Level 3 cache
"All of these characteristics in the SPARC T4 have yielded improvements in single-thread performance by 5X while retaining networking and throughput performance equal to that of previous multicore processors from Sun/Oracle."

The crypto graphic units (SPU, previously MAU) have also been moved into the pipeline so there is no longer any need to managed crypto units be individually. They provide high performance crypto acceleration for the supported algorithms:

"The SPU is designed to achieve wire-speed encryption and decryption on the processor’s 10 GbE ports. "
"These accelerators support 16 industry standard security ciphers and enable high speed encryption at rates 3 to 5 times that of competing processors."

The T4 has the ability to execute critical threads exclusively on a core. This is done by issuing a system call but it can also be handled from the command line by raising the thread priority to above 60. This means that existing applications can take advantage of this feature without rewrite. Applications that depend on a single high performance thread this thread can be declared as critical while other threads can take advantage of the highly threaded design of the T4 allowing great throughput while still providing the needed single-thread performance.

(I think what they should have been more specific in the first sentence by writing Oracle Solaris 10 and 11)
"Oracle 10 now and 11 (initial release) will have the ability to permit either a user or programmer to allow the Oracle Solaris Scheduler to recognize a 'critical thread' by means of raising its priority to 60 or above through the use of either the Command Line Interface or system calls to a function. If this is done, that thread will run by itself on a single core, garnering all resources of that core for itself. The one condition that would prevent this single thread from executing on a single core is when there are more runnable threads than available CPUs. This limit was put into place to prevent resource starvation to other threads. There will be further enhancements to Critical Thread Optimization done for Oracle Solaris 11 initial release)."

For many organization the high single thread performance of the T4 will enable the T-series to be used as a general platform for SPARC virtualization. Previously you could mix zones or dynamic domains on the M-series with LDOM on the T-series but there was not good solution for general workloads due to the weaker performance of the T2/T3 cores. Solaris zones are still useful tool for virtualization that has it advantages but the built-in virtualization in the T-series can provide better separation and live migration between hosts (which in turn can contain zones).

Besides the new processor the SPARC T4 systems comes pretty much the same chassis as the T3, they do however support the double amount of memory using 16GB DIMMs.

Oracle announces SPARC T4 servers

Oracle have now announced the new line of servers based on the T4 processor. They come in three configuration ranging from 1 CPU/8cores with up to 256GB memory to 4 processors and up to 1TB of memory. There is also a blade version which has one processor and up to 256GB memory. The T4-1 and T4-2 processors are running at 2.85GHz and processors in the T4-4 are running at 3.0GHz.

Oracle claims a 5 times increase in single thread performance compared to previous T-processors while keeping the same high thread count and cryptographic acceleration. All the new systems support Oracle VM for SPARC, previously known as Logical domains (LDOMs). LDOMs will finally be an option for general workloads, and the supported version 2.1 also support live migration.

Supported Solaris releases are Solaris 10 8/11, Solaris 11 or Solaris 10 9/10,10/09 with 10 8/11 Patch Bundle.

SPARC T-Series
Oracle's SPARC T4-1, SPARC T4-2, SPARC T4-4, and SPARC T4-1B Server Architecture
SPARC T4 announcement

Wednesday, September 21, 2011

T4 focus in new S10 8/11 KUP

As expected Oracle is focusing on the yet to be released SPARC T4 processor in maintenance patches for Solaris 10 8/11. The recently released kernel patch has several changes specific for the new platform. All we need now is the hardware itself.

From patch 147440-02:
6994535: watchdog timeouts seen on small subset of T3/T4 systems
7014100: Solaris cpu-mondo queue filling up on T3/T4 systems
7040407: T4 should not advertise cspare hwcap
7045829: libc_psr memmove needs to avoid use of block init store for T4
7045836: memcpy on T4 could run substantially faster
7047568: perf counter changes for T4 1.2
7079983: T4 memcpy triggers compiler CR 7076485

Patch details 147440-02 - SunOS 5.10: Solaris kernel patch

Friday, September 16, 2011

Solaris 10 8/11 released

Solaris 10 8/11 (update 10) has now been released and is available for download.

A short summary of some of the changes since last update besides support for the SPARC T4:
  • Support for Two-Terabyte Memory Systems
  • You can install Oracle Solaris on systems with more than 2 TB of memory.
  • ZFS Enhancements such as ZFS diff, ZIL synchronicity, RADIZ/mirror hybrid allocator and read-only import.
  • diskinfo Utility
  • The diskinfo command-line utility enables system administrators to see the relationship between logical disk names (cXtYdZ) and bays in a JBOD or blade chassis.
  • Shared Memory Enhancements
  • Changes in creating, locking, unlocking, and destroying Intimate Shared Memory (ISM) and Dynamic Intimate Shared Memory (DISM) have resulted in significant performance improvement in the startup and shutdown of the Oracle database.
  • SPARC: Support for Fast Reboot
  • The integration of the Fast Reboot feature of Oracle Solaris on the SPARC platform enables the -f option to be used with the reboot command to accelerate the boot process by skipping certain POST tests.
  • libmtmalloc Improvements
  • libmtmalloc has undergone a performance improvement that specially targets 64-bit applications with a large number of threads.
  • LDAP Name Service
  • This section summarizes enhancements that have been made to the LDAP name service in this release. LDAP name service stand-alone support – This enhancement enables the LDAP name service tools ldapclient, ldapaddent, and ldaplist to populate and test an LDAP directory without having to configure the name service switch to use LDAP.
  • Samba Upgrade to Version 3.5.8
    Samba, which provides file and print services to SMB/CIFS (Server Message Block/Common Internet File System) clients, has been upgraded to version 3.5.8.

Update: This release could provide better ZFS performance besides the new features, around 7-20% for reads and 10-15% for writes. The tests where done with a few simple dd(1) instances but interesting anyway, read more here.

What's New in the Oracle Solaris 10 8/11 Release
Oracle Solaris Downloads
Solaris 10 update 10 ZFS refresh
Solaris 10 update 10 update
Solaris 10 update 10

Thursday, September 15, 2011

Solaris 11 EA

A much updated pre-release of Solaris 11 is now available on OTN, it is supposed to contain all the final functionality of Solaris 11. Text installer for SPARC/X64 is available. live-CD for X64 as well as repository images.

This release should work all the same (64-bit) X86 systems as Solaris 11 Express, but on for SPARC you must have a T or M-series class machine, support for older UltraSPARC based system has been removed.

Thanks to Craig S. Bell for pointing this out in previous comments, I did not expect any new release before Oracle World.

Update: The build of this release is snv_171, the Solaris 11 Express release was based on snv_151a.

Solaris 11 Early Adopter Program

Wednesday, September 14, 2011

OpenIndiana 151a released

The free successor to the OpenSolaris distribution have released OpenIndiana 151a, exactly one year after their first release. The new release is based on illumos and has the new KVM, several ZFS enhancements and support for new hardware.

It's sill considered a development release, I have however found it quite stable for my private storage node which has been running build of 151a for well over a month. A stable released based on 151a is expected later this year.

Monday, September 12, 2011

Solaris 10 8/11 KUP

The first sustaining kernel patch for Solaris 10 8/11 (update 10) is now available: 147440-01. But Solaris 8/11 is yet to be released, they could be waiting until Oracle world for the release or they are having trouble with the release. The patch does not contain many changes but another interesting patch that requires the update 10 kernel patch was also just released:

147159-01: T4 crypto performance patch
7030953: AES CBC mode code path spends 50% time in non-encryption operations
7032670: AES-128-ECB 16KB encryption on T4 can be significantly better
7032698: AES-128-CFB128 16KB encryption (via ucrypto API) on T4 can be significantly better
7033814: assertion failure in OpenSSL speed RSA-4096 test via pkcs11 engine on T4
7036405: heavy mutex contention in libumem results in negative scaling of multi-threaded RSA test
7048794: 64-bit libsoftcrypto not enabled for T4
This is is the second proof that Solaris 10 will indeed support the new SPARC T4 processor.

Update: The final release of Solaris 10 8/11 have the the first sustaining kernel patch already installed (147440-01/147441-01).