Monday May 21, 2012

Webinar on May 22nd

I am talking about Oracle Solaris Studio as part of the Solaris Developer Webinar on May 22nd.
The webinar is free for application developers and my talk is part of an ongoing deep-dive series on Solaris. Register here and join me in a discussion about Studio Compilers and Tools.
Its a WebEx webinar, so there will be plenty of opportunity to ask questions.
I will focus on these topics:
  • General rationale and overview
  • Compilers performance
  • Performance Analyzer
  • (New Tool in 12.3) Code Analyzer
  • IDE, Thread Analyzer, DBXtool
  • Remote connectivity

See you all there

Wednesday Nov 09, 2011

Solaris 11 launched today

Amidst much anticipation, Solaris 11 11/11 was launched today (2 days ahead of schedule? since its not 11/11 yet! Cool!).
The newly released Solaris version is the culmination of 7 years of development with a number of exciting features (4000 new features according to its billing), including:
  • Image Packaging System (IPS) along with an Automated Installer and Distribution Constructor to enable ease of administration and Deployment
  • Built in Virtualization with Solaris Zones and network virtualization (each zone has its own Exclusive IP Networking stack)
  • ZFS file system
  • DTrace (needs no more description!)
  • Oracle Enterprise Manager Ops Center and new tools like zonestat for Improved Observability
Of course, these are just the big banner items. Get all the details in this Whats New Document and at this Solaris 11 OTN site.
Personally, I would like to congratulate the Solaris team on a remarkable journey and execution in getting this release done. It is the nicest release to work with and I have it installed on my x86 desktop as well as my laptop now. Upgrading from Solaris 11 Express (Build 151a) was easy and it *just* works! Great job, team!

And of course, I should add that Oracle Solaris Studio 12.2 and 12.3 (ready for release later this year) will be available in their own IPS repositories very soon now (I will announce its availability here separately).

Monday Jan 03, 2011

Happy New Year, folks

Heres wishing everyone around the globe, A Happy, Prosperous and Eventful New Year .

2010 was an eventful year for most of us in the Sun Systems group as we transitioned from Sun into Oracle. The year has turned out to be good for Oracle and for Sun systems, as Oracle capitalized on innovative new technologies from Sun and provided healthy profit margins to the mothership. Today, Oracle and Sun systems stand solidly on a sustainable business model based on robust, performant Engineering systems (eg. Exadata, Exalogic and the newly announced SuperClusters) and we look forward to an equally creative and challenging year and to some exciting new technologies in the year ahead. On the downside, we lost a number of very talented leaders along the way and their creativity and energy will be sorely missed.

On a personal front, I will now be managing several new and interesting technologies, in particular, performance analysis and code analysis products and I hope to share with you my insights into this domain in the year ahead.

Tuesday Nov 23, 2010

Installing Studio on Solaris 11 Express

Fellow blogger Kuldip Oberoi who is also a Sun -and Oracle- friend and colleague, recently wrote about installing Oracle Solaris Studio on newly released Solaris 11 Express.
Highlights: Read about all the details here. A must read for a Studio/Solaris developer

Thursday Nov 18, 2010

Solaris 11 Express announced

Earlier this week, Oracle announced the availability of Solaris 11 Express.
Some things that are worth noting (from my point of view, that is):
Get more information at this site.
The recommended compiler for use on Solaris 11 Express is Oracle Solaris Studio 12.2, which you can get from here.

Wednesday Nov 17, 2010

New Video on Solaris Studio and Solaris 11 Express

Don Kretsch and I talk to Rick Ramsey about Solaris Studio. The parallel event that I presented Studio at was LISA 2010 where Solaris 11 Express was introduced in a full-day summit to SysAdmins (you can find all the slides here) . Don and I talk about optimizing for Oracle Sun systems, being the compiler/tool of choice for a significant part of Oracle stack (DB, Peoplesoft, Siebel, JD Edwards, Hyperion, Java, NetBeans are all built using Studio) and how Studio uses and supports Solaris 11 Express features.

Rick was particularly fascinated about the Application Binary Compatibility Guarantee that Studio + Solaris help to deliver, so we spent quite a bit of time on it. Its unique in the industry that binaries built on several previous releases of Solaris (from Solaris 2.6 and up) and with Studio compilers, will continue to run on newer versions of Solaris. Not only is that invaluable in quickly getting the applications requalified on a new platform- like Solaris 11 Express- but it also provides for a gentler migration path in upgrading to newer version of the OS and/or compilers. The C ABI, of course, hasnt changed since SVR4 adoption and the C++ ABI hasnt changed since the ANSI C++ standard was adopted/ratified. [Good news is that its not likely that the new standard will require incompatibilities to be introduced]

I wanted to add this bit, because of some confusion wrt what constitutes an ABI (as in the comment below, or at least my interpretation of it). For C++, the guarantee is that if you use the earlier versions of the Sun (Studio) C++ compiler and earlier versions of Solaris, you can mix that code with later versions of the Sun Studio C++ compiler and later versions of Solaris. eg. you compile a library with Sun Studio 8 on Solaris 8; you can link that library into applications compiled with Sun Studio 12.2 (latest) and Solaris 11 Express (latest). For Sun Studio, ABI is a combination of compiler and stdlib. For this reason, Sun has not upgraded the default stdlib (still based on Roguewave stdlib2.0.1). This means some features are missing, but it guarantees that applications will continue to work in an upward compatible fashion. In order to offer new features, we recommend STLport4 and the latest Apache Stdlib (STLport4 is part of the compiler release, you can use -library=stlport4 to get to it; in the case of Apache, its in the repository and/or companion CD). Thus users have to make a call: build for compatibility using old library or use the latest features and not have compatible binaries. Most corporate customers and ISVs prefer to stick to the compatible solution. Which is the default.

Monday Sep 27, 2010

Studio Forum is migrating

If you have visit the Sun Studio Forums (semi-) regularly, you will begin to see this message now:

Sun Forums transition

Note the following with this migration:
  • Sun Forums will be integrated with the Oracle Forums at
  • User profiles and history is also moving over.  But not all users are being moved over (the Sun system had over 1 Million users, many of whom were largely read-only)
  • Transition will take a few months, so expect this to be read-only during that period.
  • New forum topics can be created on The Studio area is the Solaris and Linux Development topic.
  • If you want to post comments, suggestions, issues seen with the migration, use this forum.
Make sure to read the FAQ at

Wednesday Sep 22, 2010

Sun technologies announced as Innovations at OOW

These were the top 8 innovation mentioned at Larry Ellison's Oracle OpenWorld keynote:
  • Exalogic Elastic Cloud
  • Exadata X2-8 database machine (follow-on to Exadata v2 announced last year)
  • Java 7, 8 roadmaps (along with SE, EE, ME roadmaps)
  • Unbreakable Enterprise Linux kernel to support Exadata and Exalogic's scale of operations
  • Solaris 11 Express
  • Sun UltraSPARC T3 chip (known to some as Rainbow Falls), the new generation of SPARC microprocessors
  • Fusion built from a common Middleware platform to deliver next generation ERP, CRM
  • MySQL 5.5 with considerable performance improvements
6 out of the 8 (except for Fusion and Linux Kernel) are Sun technologies; how cool is that!
Its terrific to see Oracle finally bringing Sun technologies to their full (sales) potential in the marketplace; this is the balance between innovation and marketing/sales that was missing at Sun. Well-engineering, fully integrated and tested systems together is the kind of dream that Sun engineers always hoped their products would help their company attain. It has been a remarkably successful year for Sun within Oracle and the road ahead looks even more promising!

Friday Sep 17, 2010

Update schedule of Studio events and locations at OOW

Heres the latest:
  • Oracle Sun Systems Developer Pod @  Hilton Hotel Continental Ballroom (HHJ-007)
  • Multi-core Application Programming with Oracle Solaris Studio @ Hotel Nikko/Nikko Ballroom I, Mon 4:00 pm
  • Performance Measurement with Oracle Solaris Studio Performance Tools @ Hotel Nikko/peninsula, Tue 11:30 am
  • Building High-Quality C/C++ Applications @ Hotel Nikko/Nikko Ballroom II, Wed 1:00 pm
  • HPC for the Oil and Gas Industry @ InterContinental, Wed 10:00 am

Come see us at OOW, and give your feedback, advise or just share your experience on Solaris development with us. We would love to hear from you personally.

Tuesday Sep 14, 2010

Studio sessions at Oracle Open World / Develop 2010

Oracle Solaris Studio is presenting at Oracle Develop next week (Oracle Develop, JavaOne and Oracle Open World run from Sunday, Sept 19 - Thursday, Sept 23). Oracle Solaris Studio has three sessions (short abstracts follow):

Sept 20th, 4:00 - 5:00 pm, Multicore Application Programming with Oracle Solaris Studio
Writing correct and fast parallel applications is often considered a hard problem. However, it doesn't need to be that way. This session will describe how Oracle Solaris Studio can be used to produce applications that are both fast and correct. The talk will cover parallelization strategies, implementation details, and common pitfalls. Presenter: Darryl Gove

Sept 21st, 11:30am - 12:30pm, Performance Measurement with Oracle Solaris Studio Performance Tools
In this session, we'll first describe the importance of performance, how tell if there's a problem, and how to triage it. We'll describe the Oracle Solaris Studio Performance Tools and show how they simplify the triaging problem. We'll then present two simple cases of low-handing fruit in applications. Presenter: Marty Itzkowitz

Sept 22nd,2:00 pm-3:00 pm Building High-Quality C/C++ Applications
There are many challenges for native language developers, such as multicore development, heterogeneous OS development, and compatibility. Oracle Solaris Studio delivers a high-performance C/C++ and Fortran tool chain with parallelizing compilers, code-level and memory debuggers, performance and thread analysis tools, optimized math libraries, and support for the latest parallelizing industry standards. Presenter: Don Kretsch

I am listed as a presenter for the first one, but I doubt I will get to do that. In any case, this gets me (as backup speaker) a chance to see the rest of OOW and Develop and JavaOne as one conference for the first time. It should be quite an experience!

So, folks, if you're in that neck of the woods, do drop by to hear our speakers.

Wednesday Jul 14, 2010

Follow up on Solaris Studio TechCast

With 40+ in attendance, I would rate yesterday's TechCast a nice success! Don has a certain knack of connecting with audiences that I've admired over the years and an easy, but effective communication style that gets his message across in a positive way. The overall TechCast was about 20 mins, most of which was spent in Q&A.
Don gave a short introduction to the kind of tools Oracle customers would find useful in Oracle Solaris Studio. He also outlined an important point that while this was the first release (and an Express at that, primarily to get feedback) under the Oracle brand, Studio was already a mature offering with a 20+ year history. The big advantage for Oracle customers with Studio is that Oracle can now offer a product that combined the knowledge of Sun  Systems (Hardware) Design  group and Operating System (Solaris) group with features that exploited the best-and-latest amongst them and made them easily accessible to customers.
Some of the interesting questions that came up:
  • Whats the difference between NetBeans IDE v Studio ? When/Why should I use the latter?
  • What sort of applications can take advantages of multicore?
  • Users typically use the Intel compilers to get the most performance on x86 chips. Why would you recommend Studio to these users? (OK, I asked this one!)
  • What if I'm never done MT programming. Is Studio too advanced for me?
A recording of that VideoCast is now available at:

Other pointers:

Wednesday Mar 31, 2010

New x86 chips: AMD announces Magny Cours (12 cores), Intel announces Nehalex EX

Close on heels of each other, Intel and AMD, traditional rivals for the x86 markets, announced arrival of stunning new chips. Both of these chips take x86 well beyond current capabilities and into markets traditionally held by vendors selling large systems (from 8 CPUs to 128 and up). Each chip has its own unique strengths and the performance is mind blowing, in comparison to numbers touted as World Records just 2-3 years back. Lets look at each, individually:

AMD announced (on Monday, March 29 2010) 12-core Magny-Cours chips under the Opteron 6100 product line with some interesting characteristics:
  • HPC Performance: SPECint_rate of 398 and SPECfp_rate of 318, in a 2-chip server configuration
  • Increased memory throughput: 4 memory channels, HyperTransport™ technology 3.0, a fourth HyperTransport technology link for better processor-to-processor communication in 4P servers
  • Doing away with 4P "tax": the new AMD chip costs the same whether its put in a 2P or 4P configuration (usually customers have to pay a premium for a 4P  capable system) [Note 2P = 2 processor capable system, 4P = 4 processor capable system]

Intel announced (on Tuesday, March 30 2010) Nehalem EX 8-core as part of the Xeon 7500 product line . It features: Just for fun, I thought I would go back and take a look at some of the best numbers from each of these companies from 2 and 3 years back. Here they are: (for comparison, I kept the compare at 2 chips/socket level)
    Intel: Q1 2008. SPECint_rate =  137, SPECfp_rate = 77.8
    AMD: Q1 2008. SPECint_rate = 61, SPECfp_rate = 56
    AMD: Q2 2008. SPECompM2001 = 30275 , SPECompL2001 = 146796
Thats an average gain of 3x to over 6x on these suites of industry-representative benchmarks!

Wow! My congratulations to both AMD and Intel for such stunning improvements in 2 years. During my past years as manager of the x86 compiler backend for Sun, I have had the greatest pleasure of interacting and sharing with technical, engineering staff from both companies and they were some of the nicest (professional) relationships I have had and will cherish. I wish them both continued success along their respective paths!

Monday Mar 15, 2010

Recreating broken links to Studio Performance WRs

There used to be a single place where you could look up all the Sun (Oracle Solaris) Studio SPEC benchmarks, but there does not appear to be one, anymore. There are several possible reasons for this: (a) SDN, where most of the developer material is hosted, is transitioning into OTN (Oracle Technical Network) although the product pages are migrating into and (b) Sun Press releases, which were hosted at no longer exist and are being selectively transitioned to as well. So, Sun Studio advocates who need to use such benchmark information are left dangling. So, I decided to  scour and put a list together that recreates these by Sun System type.

[Note: OK, since there seems to be confusion about when these were originally announced, I have added (later than the original posting) the actual post dates for each of these benchmarks. Where "claimed" , words like World Record or Top are intended to communicate that this is how they were announced at the time/date of announcement and may or may not hold today. As we all know, there is continuous leap-frog of both compilers and HW systems in terms of performance. The intention here is to communicate that Oracle Solaris Studio regularly produces the best code in its category and these releases are in sync with HW systems released by Sun

This list covers the majority of Sun systems currently on its pricebooks; the first five of these are based on x86 (AMD and Intel) , the 6th is based on SPARC64-VII (OPL architecture) and the last one based on Sun UltraSPARC T2 architecture. Some of these lines have multiple benchmark announcements.

As the Sun pages migrate over to OTN, I'm sure the performance pages which used to be collated together at this Solaris Performance site (look for Sun Studio category) will also need to be similarly recreated. In fact, our Performance marketing folks assure me that this is planned under the transition. But until then, perhaps this post is a good intermediate location to get to these World Records (at the time they were published, of course!)

PS. Blogging about SPEC numbers is trickier than you might think; even with the best of intention and reasonably following SPEC's fair-use disclosure rules isnt a guarantee that someone wont object to how these are communicated (after all, for vendors several millions of dollars are at stake based on SPEC numbers). Let me add here that my intention is to follow SPECs policy to the letter and stay true to its intent, and at the same time communicate performance characteristics accurately to Sun systems customers that Sun HW systems and compilers. I have often heard a lot of FUD spread against Sun -performance wise- about performance of the systems and this is intended to set that straight.

Tuesday Feb 16, 2010

Sun Studio renamed

Sun Studio is now rebranded as Oracle Solaris Studio

Sun Studio now has a new name under Oracle: Oracle Solaris Studio. (Follow -> Server and Storage Systems -> Solaris to get here). The pointer actually still takes you back to the same-old Sun Studio Developers page (now, with new Oracle branding look-and-feel). It is  clear that there will be changes, even beyond just the name change. For instance, support will be move to the Oracle model. Patch availability is another important aspect. As these changes are rolled out, I will try to highlight them here as well.

For those of you who are new to this, Oracle Solaris Studio (I have to get used to the new name) or Sun Studio, is a complete set of industry-leading compilers and tools geared towards ease application development of C, C++ and Fortran applications for the Solaris and Linux platforms. Among its value propositions:
  • Performance: Studio compilers provide the best CPU performance optimizations of all industry compilers, and have set World records on all SPEC CPU categories in the past years, both on Sun's SPARC and x86 platforms. World Record categories include SPECint, SPECfp and SPEComp categories, both in SPEED and throughput. If you are looking for the best tuned performance on Solaris or Linux, SPARC or x86, and if you are willing to work on getting it, you will undoubtedly want these compilers.
  • Productivity: Studio comes with a complete set of tools, from a fully-capable Integrated Development Environment(IDE) to debuggers, Profilers (Performance Analyzer), to various program analysis options (lint, static lock detector, runtime checking, datarace detection tool) to libraries (libsunperf, math libs, garbage collection library, etc)
  • Parallelism: From automatic parallelization, vectorization in compilers to Multithreaded to OpenMP to MPI application development tools, these tools are more mature and state of the art than any other vendor tools in the business. As a case in point, Sun's compilers were used in automatic parallelization enabled benchmarks years before any of the other vendors- IBM, HP and Intel included- even ventured into this.
  • Platforms: SPARC and x86. Solaris and Linux. Same tools, same sources, same performance, same libraries, on all these platforms. This kind of uniformity allows developers to write applications that exploit the latest features in chip and systems technology, while keeping their market segments as broad as possible.

Many of the old-time users and application developers are already familiar with the feature set, but I cant make that assumption anymore. Moreover, there are various aspects that are still unknown or are unused by most developers. Did you know for instance that:
  • Sun Studio has a garbage collection library that you can use to keep your memory allocations sane?
  • Sun Studio has the world's leading math libraries and that even the math lib in Linux (libm) is actually based on a free and opensource form of a library that Sun had released more than a decade back?
  • Sun Studio has runtime checking (listen up, all IBM Rational Purify fans) and that its been in the product for 12+ years and has been free all these years?
  • Sun Studio has had a static lock detection tool (lock lint) for 12+ years and is popular among device driver writers (in Solaris land, this tool has a variant called warlock) ?
  • Sun Studio compilers rarely -if ever- change compatibility. The last time they did was when Ansi C++ forced it by language change and that the two options -compat=4 (for pre-ANSI) and -compat=5(default, ANSI behavior) are still in the compilers, more than 10 years later?
  • Sun Studio basic linear algebra library (libsunperf) is better than even Intel and AMD's specialized libraries on their own platform, besides working on Solaris and Linux, and SPARC and x86 both?
  • Sun Studio has an intervals arithmetic capability?
  • Sun Studio has a GCC compatibility set of features that lets developers use most of the GCC constructs while exploiting all of these (above) features ?
  • Sun Studio Performance Analyzer does a large variety of application profile detection metrics(more than I can enumerate even in a reasonable sized blog) from timelines to caller/callee to source/disassembly to threads to Dataspace profiling to hardware counters?
  • Sun works with the Cluster MPI community and releases its own version of Cluster (OpenMPI) library
And this is just a sample. With over 100 binaries and 200 library versions included, there is a lot of material that we can talk about.

Finally, lets get beyond the name change with a footnote: this product has seen so many names over the years that even I may not remember all of them. In reverse order, some of them are: Sun Studio, Sun ONE Studio, Forte Developer, Forte Workshop, Sun WorkShop, SunPro, ProWorks, ProCompilers, SPARCcompilers and some other names that I've probably forgotten! But the truism behind them all has been: the compilers and tools have always delivered the best technology of the time for Performance and Applications Development all these years. And that focus has not changed here.

Developers can continue to look upon this offering to deliver the best performance technologies, the best applications development environment (and tools) and the most robust and mature technology and what is more, with Oracle, it will be backed up by an even more complete and competent support program.

Friday Oct 09, 2009

New SunStudio Screencast on Improving Performance of Parallel Codes

Cool new video from Darryl just showed up on Sun's HPC site. In this video, Sun Studio expert, Darryl Gove, shows how you can use Sun Studio Performance Analyzer to improve performance of a parallel application. Darryl uses the Mandelbrot set application to highlight the features. This screencast is also one of the demos we will run at Oracle OpenWorld that I mentioned in my previous blog.
Take about 15 mins to view it. You will learn something about OpenMP, parallelization and even Mandelbrot sets.


I have worked with Sun and Oracle for 25 years now; in compilers and tools organization for most of these years followed by a couple of years in Cloud Computing. I am now in ISV Engineering, where our primary task is to improve synergy between Oracle Sun Systems and our rich ISV ecosystem


« July 2016
Interesting Links