Vijay Tatkar's Blog

All | Benchmarks | Business | Cloud Computing | General | Hardware | Linux/Unix | Performance | Software | Solaris | Sun | Sun Studio
« Previous page | Main | Next page »
20080814 Thursday August 14, 2008

Chalk Talk at Intel Developer Forum '08 SF
I'm giving a Chalk Talk at Intel Developer Forum Fall '08 (San Francisco, Moscone Center, August 19-21), titled:
Multi-threaded Development on OpenSolaris* and Linux* using Sun  Studio*

The talk will focus on Sun Studio tools, including compilers that help with MT applications, especially targetted towards multi-core chips. It will focus on four aspects that are basic to Sun Studio's value proposition:

Chalk talks are a fun way to introduce technology, show a demo and deepdive into many interesting areas of upcoming development. I'll talk about Data Race Detection (and the Thread Analyzer tool which helps in this quest), MT debugging, DTrace and profiling tools, and emerging technologies like Transactional Memory .

My session is on Tuesday, August 19th at 9:45AM. Hope you can join me there!

Posted by tatkar ( Aug 14 2008, 09:46:44 AM PDT ) Permalink Comments [0]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080813 Wednesday August 13, 2008

Whats New for Compilers in Sun Studio Express 7/08
After discussing Whats New in IDE, D-light and DTrace GUI and Documentation  for Sun Studio Express 7/08,  I'd like to cover compilers.

Additionally, these options have been EOLed and removed from this release: -xsb, -xsbfast. There is a newer, improved and easier way to browse data in the IDE than by this classic (and legacy) method.

Disclosure Statement:
SPEC, SPECfp, SPEComp reg tm of Standard Performance Evaluation Corporation. Results from www.spec.org as of 07/14/08. Sun results submitted to SPEC.
Sun SPARC Enterprise M9000 (256 cores, 64 chips, 192/256 OMP threads, 2.52GHz) 1456653 SPECompM2001, 1250890 SPECompMbase2001.
Linpack HPC, results from http://www.netlib.org/benchmark/index.html as of 07/01/08. Sun SPARC Enterprise M9000 (SPARC64 VII @2.52, 64 chips,256 cores), 2.023 TFLOPS.
Sun SPARC Enterprise M8000 Server(SPARC64 VII 2.5GHz) 28.8 SPECfp2006, 25.8 SPECfp_base2006.



Posted by tatkar ( Aug 13 2008, 03:18:02 PM PDT ) Permalink Comments [0]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080808 Friday August 08, 2008

New Places to look for Sun Studio Documentation
Sun Studio Documentation is now accessible in a new location: the Sun Microsystems Documentation Center. Click on Sun Studio which takes you to the Sun Studio Documentation Center: this is the center for having technical papers, reference material, documentation, screenshots, tutorials, demo videos, etc.
Here you will find three tabs:


The documentation folks are also starting a new experiment by including details about a release for all the components (compilers, debugger, IDE, analyzer, etc..) on a new, but more comprehensive and upto-date Sun Studio Express Wiki site.

Besides these two new locations, the standard places of reference continue to be the docs.sun.com information center site featuring Sun Studio Collectionand the Sun Developer Network site for Sun Studio.


Posted by tatkar ( Aug 08 2008, 10:56:12 AM PDT ) Permalink Comments [0]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080806 Wednesday August 06, 2008

New DTrace GUI + Chime Plugin article on NetBeans site
The ink had barely dried on my previous posting which included a reference to DTrace GUI features that are new in Sun Studio Express 7/08 , when Nasser Nouri, who created the DTrace GUI plugin in NetBeans, brought to my attention this newly published article on it at the NetBeans site.
The article describes how the DTrace GUI works, how to use D Scripts packaged in the DTrace Toolkit, how to download, install and run the Plugin.
A new feature added to the Plugin that gives it additional appeal is the inclusion of Chime, a graphical tool for visualizing DTrace aggregations. Users like it for its ability to display data as it is streaming in, but an interesting feature is the way it can be extended for new displays(yes, the article has a section on Adding New Chime Displays as well!).
There are also some nice screenshots there. You can download the DTrace GUI from the NetBeans Update Center.
Good work, Nasser!

Posted by tatkar ( Aug 06 2008, 11:43:52 PM PDT ) Permalink Comments [1]

Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080801 Friday August 01, 2008

IDE, D-light and DTrace GUI Features in Sun Studio Express 7/08
This blog entry focusses on some new functionality in the latest Sun Studio Express 7/08. There is more to follow; here, I'd like to focus on three aspects of this Express.

IDE
The IDE in this Sun Studio Express release is based on NetBeans IDE 6.1, and includes the following new features:

sunstudio Command Options changes:
The following changes have been made to the options of the sunstudio command:
D-Light Tool
The objective of the D-Light tool is to make sophisticated application and system profiling, more accessible for casual users. There are many tools that profile applications and there are other tool that profile the system stack, but there are few tools that can join these views into an easy to use interface. For the first time, you can optimize your application and system environment by visualizing performance bottlenecks and resource contention up and down the application system stack.
Using an intuitive drag and drop interface, the D-Light tool provides an extensible library of instruments that represent the latest advances of profiling technology, including Solaris Dynamic Tracing (DTrace). With instruments like CPU accountant and Sampler, developers can use the interactive GUI to quickly profile and peer into the runtime behavior of their applications.
For more information on using the D-Light tool, refer to the Project D-Light Tutorial .
The D-Light Tool now premieres on Linux platforms with two instruments, including a Clock Profiler. Its just the start of a more meaningful offering on Linux (and a nod to building instruments other than those based on DTrace.

DTrace GUI Plug-in
The NetBeans DTrace GUI plug-in is a Graphical User Interface (GUI) for running DTrace scripts, even those that are embedded in shell scripts. In fact, the DTrace GUI plug-in runs all of the scripts that are packaged in the DTraceToolkit. The DTraceToolkit is a collection of useful documented scripts developed by the OpenSolaris DTrace community.
In its own manner, DTrace GUI Plug-in has proved to be a popular tool in the NetBeans inventory, with many thousands (indeed 10's of thousands) of downloads.
For documentation for the 0.2 version of the plugin that is included in this Express release, see http://www.netbeans.org/kb/60/ide/NetBeans_DTrace_GUI_Plugin.html
The 0.4 version of the plugin, which includes the Chime graphical tool for visualizing DTrace aggregations, is now available for download from the NetBeans Plugin Portal. To download and install this version, choose Tools->Plugins in the Sun Studio IDE, and select DTrace from the Available Plugins list.

Posted by tatkar ( Aug 01 2008, 09:48:50 AM PDT ) Permalink Comments [0]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080731 Thursday July 31, 2008

Using Sun Studio Express 7/08 on OpenSolaris 2008.05
A note to add if you are using OpenSolaris and want to use Sun Studio Express 7/08 with it:
OpenSolaris 2008.05 has a mechanism that lets you point it to the latest repository. The facility is usually:
# pkg set-authority opensolaris.org
 If you use it to update packages to the latest builds, there is a chance that you might run into a mismatch between various packages that might cause dbx to not work. The problem manifests itself while debugging 32bit MT applications with  messages like:
dbx: warning: could not initialize thread debugging library -- debugger service failed
dbx: warning: thread related commands will not be available
Or a message such as:
ld.so.1: ld: fatal: libld.so.4: version `SUNWprivate_4.2' not found
This is usually due to a mismatch between ld and liblddbg.so in packages such as SUNWtoo and SUNWcsr
If you run into this problem, or better still to avoid this problem, the advice is to stay on the OpenSolaris 2008.05 version and not upgrade to the latest builds.
Alternately, at least at this stage, updating the entire system also works (since everything stays in sync), but there is no guarantee that this will continue to always be the case, so its best to avoid doing this upgrade.

Posted by tatkar ( Jul 31 2008, 08:14:10 AM PDT ) Permalink Comments [2]

Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080730 Wednesday July 30, 2008

Sun Studio Express 7/08 is now available on Solaris and Linux
Sun Studio Express 7/08  is now available for  Solaris 10, OpenSolaris and Linux (RHEL and SuSE). We are looking for you to preview the new features and give us feedback. Listening to this feedback is a prime motivation for exposing these features, so please be sure to sign in and use the Sun Studio Forums to give us your comments, suggestions, (gripes?), etc

The new release is loaded with features. Some of the big bullets are:

You can find the Express Readme here.
For more detail on these features, see the Express Details wiki pages. I will also highlight features in each of these topics in subsequent blogs.

Additional note:
Several others have blogged about it as well. Heres a few that you might want to visit to get other aspects of this release:
On the Record: http://blogs.sun.com/ontherecord/entry/sun_studio_express_07_08
Richard Friedman :http://blogs.sun.com/rchrd
OpenMP: http://openmp.org/
HPC at Sun:  http://hpc.sun.com/
Yuan Lin here: http://blogs.sun.com/yuanlin
Josh Simons: http://blogs.sun.com/simons/category/HPC
Kuldip Oberoi here:  http://koberoi.com/

Posted by tatkar ( Jul 30 2008, 11:11:33 AM PDT ) Permalink Comments [1]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080722 Tuesday July 22, 2008

Clarifying Sun Studio Patch Policy: Patches continue to be free
Many of our users apparently do not download the latest Sun Studio patches because they do not know about a SunSolve policy change over the past years. Please note that Sun Studio patches continue to be free; the only change is that users need to get a sunsolve online account (which is free) in order to download it.
To drive this point home, our support team has added the following text to all of our patch downloading pages :

Sunsolve is a proprietary online database of software patches, patch information, tools, technical articles and troubleshooting documents. Access to SunSolve requires you to have a Sun Online Account and accept the updated License Agreement. Getting new account at sunsolve is free and does not require a service contract at https://reg.sun.com/register?program=ssu&goto=http://sunsolve.sun.com. If you have an existing SunSolve Sun Online Account, and you have not already accepted the new Software License Agreement, the next time you login and access SunSolve Online, you will be prompted to accept the new Software License Agreement. This is stored on a cookie on your system. If you clear the cookie you will be asked to re-accept this license agreement.

All the pages are now live with this updated wording clarifying the policy:

http://developers.sun.com/sunstudio/downloads/patches/ss12_patches.jsp
http://developers.sun.com/sunstudio/downloads/patches/ss11_patches.html
http://developers.sun.com/sunstudio/downloads/patches/ss10_patches.html
http://developers.sun.com/sunstudio/downloads/patches/ss9_patches.html
http://developers.sun.com/sunstudio/downloads/patches/ss8_patches.html
http://developers.sun.com/sunstudio/downloads/patches/s1s8cc_patches.html
http://developers.sun.com/sunstudio/downloads/patches/s1s7ee_patches.html
http://developers.sun.com/sunstudio/downloads/patches/s1s7cc_patches.html
http://developers.sun.com/sunstudio/downloads/patches/fd6u2_patches.html
http://developers.sun.com/sunstudio/downloads/patches/fd6u1_patches.html
http://developers.sun.com/sunstudio/downloads/patches/fd6_patches.html
http://developers.sun.com/sunstudio/downloads/patches/sw5_patches.html
Posted by tatkar ( Jul 22 2008, 04:07:41 PM PDT ) Permalink Comments [2]

Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080721 Monday July 21, 2008

New Sun Studio Article: Accelerate Builds with Dmake
Sun Studio's dmake utility can accelerate complex application builds by building components in parallel. Learn how to configure a distributed build environment and get guidelines on makefile customization. This new article on the Sun Studio Developer Portal explains this in easy steps.
As a point of reference, when we turned this loose on Solaris (in the Solaris 9 timeframe), on a 4-CPU machine, it accelerated build times by roughly 3.6x (reducing ON builds from approximately 12 hours to a little over 3 hours). Those numbers: 12 hours down to 3-ish hours, tell the real story of a direct benefit to developers and integrators, not just to buildmasters or release engineers.
Dmake is also the default for builds in the project system that the Sun Studio IDE uses, so you get this benefit without having to think about it.
Posted by tatkar ( Jul 21 2008, 12:50:09 PM PDT ) Permalink Comments [0]

Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080527 Tuesday May 27, 2008

Sun Studio FAQ: Runtime Libraries/object licenses
Q: What are the concerns/license restrictions around Sun Studio Runtime libraries, modules, etc. I remember that in previous releases, we were allowed to use libraries in 3rd party code; now that its free, are we still allowed to do that?
Answer: Yes, this hasnt changed. The list of objects/modules/libraries that users generally require or request to have such permission for, has been modified (mostly added to), over the years, but the license is essentially the same.For more information and details and a list of which objects are included in this, here this RunTime Libraries Licensing Agreeement.
Hint: we try to make this as convenient as possible for others to use our software. Our SW at this stage is not fully  and freely redistributable, but >99% of it is. In particular, the IPS packages that are part of OpenSolaris 2008.05 release (go to package manager and type in sunstudioexpress in search) is now fully redistributable.
Posted by tatkar ( May 27 2008, 03:41:48 PM PDT ) Permalink Comments [2]

Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080513 Tuesday May 13, 2008

OpenMP 3.0 APIs released
The final specifications for the new version of OpenMP (version 3.0) have now been published and uploaded to the official OpenMP site (here)
The draft was open to review from October through January; the completed version is now official.

What is OpenMP?
The OpenMP Application Program Interface (API) supports multi-platform shared-memory parallel programming in C/C++ and Fortran. OpenMP is a portable, scalable model with a simple and flexible interface for developing parallel applications on platforms from the desktop to the supercomputer. The core elements of OpenMP are the constructs for thread creation, work load distribution (work sharing), data environment management, thread synchronization, user level runtime routines and environment variables. These are expressed as directives in Fortran and as #pragmas in C and C++
This is a multivendor, multiple platform vendor-driven industry standard. Members include Sun, AMD, Intel, Cray, Fujitsu, HP, IBM, NEC, PGI and SGI as vendors (permanent members) and auxilliary members such as ASC/LLNL,  cOMPunity,  EPCC,  NASA, RWTH Aachen University.
You can get more info on OpenMP at this official site (here). You can also read a more detailed description at this Wikipedia site.
The first standard came out in October 1997; an update (v2.0) in 2000 (for Fortran) and 2002(for C, C++)  and a combined languages revision (v2.5) in 2005.
There is also a SPEC standard benchmark, called SPEC OMP, that represents typical industry application/usage of OpenMP. Sun has dominated SPEC submissions on the lower end of the scale (less 8,16 nodes).

Whats New in OpenMP3.0?
There are several new features in OMP 3.0. A short enumeration of these:

Uses of OpenMP3.0
The OpenMP model (shared memory programming) is often debated vs the MPI (message passing interface) model (a distributed, cluster programming model), which is also a vendor-driven industry standard. Both are aspects of  the parallel programming model, which aim at extracting parallelism from an existing application. OpenMP is an incremental model that works at the high-level language level, whereas MPI is a low-level and difficult to use. This section in the Wikipedia has an interesting set of Pros and Cons contrasted between OMP and MPI. The MPI model grew in popularity in the past decade because clusters became easier to buy and assemble and the increasing power of the x86 single-node servers ensured that such clusters could be built cheaply and still deliver good performance. However, now with the multi-core revolution upon us, there is fresh interest in making each of these "nodes" parallelizable as well and so there is fresh interest in OpenMP.
Of course, time will tell, which paradigm, or any derivative of these will ultimately see large-scale adoption. In the meantime vendors are busy working to ensure that they have good, high performing OpenMP implementations that can be used to exploit the increasing number of cores in a single node.
Sun, of course, has been in this game from Day 1. We've had compilers that have supported every OMP standard, immediately after it came out (and no later than any other vendor).
The same will be true with OMP3.0; we are working on getting an implementation of this out very soon now.



Posted by tatkar ( May 13 2008, 09:58:20 AM PDT ) Permalink Comments [0]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080509 Friday May 09, 2008

Sun/Intel Threading Building Blocks Videos now posted
Intel has now posted/hosted Sun/Intel Threading Building Blocks videos. Here they are:

Looking good, Deep!

Posted by tatkar ( May 09 2008, 02:24:37 PM PDT ) Permalink Comments [0]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080508 Thursday May 08, 2008

Intel Threading Building Block library now available on Solaris + Sun Studio
Sun and Intel are collaborating to bring Intel TBB (Threading Building Block) software to the Solaris platform using the Sun Studio compilers. Today's the official launch of this collaborative effort. There is a lot of demand in the field for Intel SW (currently available on Linux and Windows) to be ported to Solaris, and this port nicely fills in one of the interesting gaps. One of my engineers worked collaboratively with Intel to make this happen; the success of this venture will encourage us to collaborate on other things as well. I welcome whole-heartedly this innovative problem solving technique to the Solaris platform; particularly with Sun Studio compilers. Parallelism is a critical area in SW development in our bold new future (together I might venture to add, for Intel and Sun). Sun Studio attempts to provide various high performance solutions; Solaris is a wonderful base to build this on with its built-in Multi-Threading support (from day 1 of Solaris 1.0) and the MT-safe libraries that form the bedrock of a parallel programming base. Intel's TBB complements this solution space nicely by offering a unique approach to simplifying parallelism for a certain kind of C++ problem set.

What is Intel Threading Building Block?
Intel invented Threading Building Block (TBB) as a leading-edge, open-source runtime library with a rich set of templates to significantly lower the effort required to express parallelism in C++ programs. The opensource site is here. Some of the benefits of Intel TBB are:

Solving the parallelism problem for C++ is a tricky one; unlike Fortran programs that are loop-intensive and thus lend themselves to automatic parallelization under certain general programming characteristics, C++ templates pose a level of difficulty with iterators and pointers that optimizers find hard to analyze. TBB is a solution that up-levels the problem, at least for certain problem sets, to a level of abstraction for software writers where low-level parallelism details are automatically handled.
Intel TBB was available for Linux  and Windows from Intel's product website (here).
A version of TBB that can run on the Solaris platform (x86) is now being . This version of TBB can be built using the latest Sun Studio Express compilers and tools(download a copy from here).
The code changes required to make this work on Solaris using Sun Studio have been putback to the opensource site.

Downloading TBB:
You can download TBB (http://threadingbuildingblocks.org). Remember to choose the stable version of TBB.
Download both the source version and the Sun binaries available at the TBB download site.
Use gunzip to unzip the tbb source archive and then extract from the tar archive, using gtar. A directory named tbb20_010oss_src is created.
Similarly extract the sun binaries and place them adjacent to the src directory of the source distribution.

Building TBB for Solaris:
% cd tbb20_010_oss_src
% gmake
This builds the TBB library and places it in the build directory, for example,
tbb20_010oss_src/build/SunOS_ia32_suncc_cc5.9_kernel5.10_release.
This directory contains the files libtbb.so and libtbbmalloc.so.
The TBB build also generates two files, tbbvars.csh and tbbvars.sh. These two files contain useful settings of environment variables such as LD_LIBRARY_PATH, which are needed for building an example.
If you downloaded the sun binaries for TBB, the shared objects for the library will be available in the
directory tbb20_20080408oss_src/sun/ia32/cc3.4.3_kernel5.10/lib and the tbbvars.csh and tbbvars.sh scripts will
be in the directory tbb20_20080408oss_src/sun/ia32/cc3.4.3_kernel5.10/bin.
You will find more information on TBB at the Sun Studio Developer Tools Portal,, in particular check out this introductory article on TBB .
Heres raising a toast to the happy introduction of this collaborative effort! Congratulations, Intel!!
This could be the start of something new and wonderful together!


Posted by tatkar ( May 08 2008, 09:53:41 AM PDT ) Permalink Comments [1]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080205 Tuesday February 05, 2008

Interesting Plugins for NetBeans C/C++ Developers
NetBeans C/C++ Development Pack is getting richer for C/C++ Developers every day. The base NB6.0 (and NB6.1) is also improving constantly, most recently with features such as:

There is now a set of plugins that are interesting and I thought I'd share them here:

Dtrace Plugin Graphical User Interface (GUI) for running DTrace scripts that can  be installed into the Sun Studio IDE or NetBeans IDE 5.5x, 6.0 http://www.netbeans.org/kb/dtracegui_plugin/NetBeans_DTrace_GUI_Plugin.html

Assembler Plugin as part of Netbeans C/C++ Developer Pack  http://asm.netbeans.org/
C++ Experimental Call Graph at: http://plugins.netbeans.org/PluginPortal/faces/PluginDetailPage.jsp;jsessionid=8522d48195740742ef32c4e3b02a1?pluginid=5079

MPI: This  allows application developers to access Netbeans platform to develop, test, debug MPI applications for the Sun Grid Compute Utility. [Not listed on the NetBeans Plugin portal]  https://mpiplatform.dev.java.net/

TeamWare, ClearCase, VSS support to NetBeans,  at: http://wiki.netbeans.org/FaqVSSProfile
Posted by tatkar ( Feb 05 2008, 12:09:54 PM PST ) Permalink Comments [0]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

20080201 Friday February 01, 2008

New Sun Studio "refresh" in SXDE 1/08 release
SXDE 1/08 is out and contains a new Express release of Sun Studio based on sources more recent than version 12 release. There are a number of improvements, features, components in this that were not in either Sun Studio 12 or in previous SXDE-bundled Sun Studio. Here is a list:

Performance improvements:

New C/C++ features:
x86/x64Assembler: New Sun Studio IDE  is now based on NetBeans 6.0 IDE (download here). and includes these features:
Posted by tatkar ( Feb 01 2008, 01:27:36 PM PST ) Permalink Comments [6]
Like this post?  del.icio.us  bookmark it   |   submit to dig digg.com digg it   |   slashdot slashdot it   |   technorati Technorati it

Who Am I?

Calendar

RSS Feeds

Search

Links

Presentations

Latest TechDays Presos

Navigation

Referers