Thursday Aug 23, 2007

Been meaning to post something about this for a while, but got caught up with other things.
Anyway, if you're running SunStudio 12 with Fedora 7 you probably noticed that the Collector doesn't work. Here's the output for a simple command line call to collect:


[rv@oak bin]$ ./collect
> Unknown Redhat Linux version
> Fedora release 7 (Moonshine)
> WARNING: Linux-32-bit, 2 CPUs, RH_UNK system oak is not supported
> by the Performance tools.
> NOTE: The J2SE[tm] version 1.5.0_09 found at
> /usr/java/jdk1.5.0_09/bin/java (picked by Sun Studio Default) is
> supported by the Performance tools.
> WARNING: Data collection may fail: system is not properly configured or
> is unsupported.

And here's the output if you run it through the IDE:


Running "/opt/sun/sunstudio12/prod/bin/collect -d /home/rv/Documents/HelloBug/nbproject/private/experiments -o test.1.er -A on -p on -S on /home/rv/Documents/HelloBug/dist/Debug/GNU-Linux-x86/test" in /home/rv/Documents/HelloBug

Unknown Redhat Linux version
Fedora release 7 (Moonshine)
WARNING: Linux-32-bit, 2 CPUs, RH_UNK system oak is not supported by the Performance tools.
WARNING: Data collection may fail: system is not properly configured or is unsupported.
Creating experiment database /home/rv/Documents/HelloBug/nbproject/private/experiments/test.1.er ...
Run failed. Exit value 139.

Notice that it fails with exit value 139.

I found a thread (http://forum.java.sun.com/thread.jspa?threadID=5188632) over at the SunStudio forum but they come up with the wrong conclusions.

You see, the documentation lists the supported platforms and Fedora isn't one of them. But that doesn't mean it shouldn't work. I know people who have been using it with Ubuntu and it's working fine.

I managed to get a hold of someone from the development team to check it out and this is now officially a bug. SunStudio is not open source so I can't point you to wherever the bug's listed, but trust me, it's there somewhere.

I hope they come out with a fix for it in the near future.

Thursday May 24, 2007

Earlier today I did a TechTalk about SunStudio at college, the main topics were auto-parallelization, garbage collection (libgc), race condition detection, OpenMP and the Temple of the Sun game.

I wanted to cover the main benefits of Sun's compilers and also take a little tour around the IDE, so I showed how to create projects, compile with different arguments, debug and other basic stuff. I also mentioned the Collaboration Module, I have it installed so it was a cool example of how the Netbeans IDE is used on SunStudio, since it's originally a Netbeans/Java thing.

I always like to show things working and try to prove that it is worth doing it this or that way. I did this by running performance comparisons between optimized code and plain serial code with the "time" command. For instance, on both auto-parallelization and OpenMP demos, I would show some code, explain it, compile without optimizations and run it with "time". Then I would explain how the optimization works, implement or uncomment it and then do the same. The difference was obvious, both auto-p and OpenMP ran at least twice as fast as the serial ones.

The race condition detection part was also cool, I had ran "collect" before hand and saved the experiment file so we didn't have to wait for it. I'd written a little multi-threaded program with three threads writing to the same global variable, so the race condition was evident.

Everything went smoothly, at least 40 people attended, a few grad students and a professor.
I think I gave away like, 35 Temple of the Sun DVD's - the one with SXDE. I also mentioned SAI and promoted our OSUG.

Great turn out considering today's probably the coldest day in the year - so far.

This blog copyright 2009 by rv