UNIX Consulting and Expertise
Golden Apple Enterprises Ltd. » Archive of 'Feb, 2010'

Professor Steven Furber interviewed by Sun’s David Brown Comments Off on Professor Steven Furber interviewed by Sun’s David Brown

An excellent article is up at the Association of Computing Machinery’s website – David Brown interviews Steven Furber on the design of the low power, high performance ARM processor.

If those two names don’t have you instantly clicking links, shame on you. Steven Furber was one of the original team at Acorn who came up with the legendary BBC Micro, and who went on to design the Acorn RISC Machine processor.

David Brown worked with Andy Bechtolsheim to design the original Sun workstation, and was one of the ‘dream team’ who worked with Jim Clarke to form Silicon Graphics. These guys really are rockstars of the computing world.

The interview covers the early adventures of the BBC Micro, how that lead on to the development of the ARM CPU, and the design decisions needed to build power-efficient processors.

Energy efficient computing is becoming a really hot topic (if you’ll pardon the pun) and I think it would be excellent to see the legacy of Acorn live on if ARM processors start making inroads to the data centre. With OpenSolaris being ported to the latest ARM Cortex designs this could be happening sooner than we think.

Read the full article at http://queue.acm.org/detail.cfm?id=1716385

Sun Studio compiler options – a beginners guide Comments Off on Sun Studio compiler options – a beginners guide

Over at Sun’s HPC blog, Thierry Manfe has a nice blog up looking at compiler optimisation flags in the Sun Studio compiler. I try and use Sun Studio when building stuff on Solaris, because not only does it aid performance, but if you know what you’re doing you can use it to really optimise for your processor.

And that’s the problem – there are a whole raft of command line options, and if you’re just starting out you’re presented with a dizzying array of possible optimisations.

Theirry’s post discusses some of the obvious ‘quick win’s you can make, as well as covering their potential downsides. It covers such gems as -fast:

If you are in a rush, you can use the -fast option. What it really does is triggering a set of other options for maximum runtime performance.

Head on over to this page and have a read through the full post – it’s very handy and has some useful tips on building some really optimised code.

New home for orphaned Sun projects Comments Off on New home for orphaned Sun projects

There was always going to be some fallout from the Oracle takeover of Sun – projects that were still in the development phase, technologies that weren’t making enough money – and there have been questions about how the open source casualties would continue.

Izumo Shinohara, a recently ex Sun employee, has setup a new site – Red Giant Phase – which aims to provide a new home for these orphaned projects.

Currently listed are projects like Wonderland, Dark Star, and Project DReaM, amongst others.

It’ll be interesting to see what happens to these open sourced projects now that they’re outside Sun – I wish them all the best.

Installing OpenSolaris with the Automated Installer Comments Off on Installing OpenSolaris with the Automated Installer

One of the new features of OpenSolaris is AI – the Automated Installer. If you were hoping to use your existing Jumpstart setup to install OpenSolaris over the network, get ready for some disappointment – it won’t work.

AI replaces Jumpstart for network installs. If you’re deploying OpenSolaris from scratch, this is fine – build one machine manually, set it up as an AI server, and roll out the rest. If you’ve got an existing Solaris infrastructure, however, this becomes a pain of a pain. An additional issue to take into account is that AI can only deploy OpenSolaris to SPARC machines which support WANBoot – so you’ll need to check your OBP versions.

This is the current matrix of what can be installed and how:

OS Install methods OS that can be installed
Solaris Jumpstart
Jumpstart + JET
Solaris SPARC
Solaris x86
OpenSolaris AI
Jumpstart
Jumpstart + JET (4.7)
Solaris SPARC
Solars x86
OpenSolaris SPARC
OpenSolaris x86

I’m sure lots of people are in no hurry to migrate their Jumpstart server to OpenSolaris – especially as it’s probably a SPARC box.

The big advantage of AI is that it’s very easy to get going. I’m going to work through deploying AI to demonstrate how simple it is. In this environment, the OpenSolaris machine that will be used as an AI server is also my workstation. I’ve got a Netra T1 running a complex Jumpstart + JET setup with lots of customisations – I don’t want to replace that, but I do want to use it’s DHCP server.

AI is managed via the installadm tool. It’s probably not installed on your OpenSolaris machine by default, so you’ll need to add it:

pfexec pkg install SUNWinstalladm-tools

Once you’ve got the tools in place, you need to setup the install server. Download an OpenSolaris image – but be careful! The Live CD ISO cannot be used to setup an AI server, you have to download the AI version of the ISO.

Head on over to http://hub.opensolaris.org/bin/view/Main/downloads to grab the relevant ISO.

Once you’ve got the ISO, you can setup the install server. It works based on services – each OS release for each platform is treated as a different service. The you add clients, and tell the client which service it will use to boot from.

I’m going to be sticking AI under /export – the traditional place in Solaris for shared filesystems. I just want to create one install service for OpenSolaris 06/09 x86, which I’ll call 0609×86.

The full command line is:

installadm create-service -n (service_name) \
	-s (source_AI_ISO) (AI_service_data_directory)

Here’s the full command line along with the output:

root@grond:/export# /usr/sbin/installadm create-service -n 0609x86 \
	-s /export/torrents/osol-0906-ai-x86.iso \ 
	/export/aiserver/osol-0906-ai-x86
Setting up the target image at /export/aiserver/osol-0906-ai-x86 ...
Registering the service 0609x86._OSInstall._tcp.local

Detected that DHCP is not set up on this server.
If not already configured, please create a DHCP macro
named dhcp_macro_0609x86 with:
   Boot server IP (BootSrvA) : 192.168.13.100
   Boot file      (BootFile) : 0609x86
   GRUB Menu      (GrubMenu) : menu.lst.0609x86
If you are running Sun's DHCP server, use the following
command to add the DHCP macro, dhcp_macro_0609x86:
   /usr/sbin/dhtadm -g -A -m dhcp_macro_0609x86 -d :BootSrvA=192.168.13.100: \
	BootFile=0609x86:GrubMenu=menu.lst.0609x86:

Additionally, if the site specific symbol GrubMenu
is not present, please add it as follows:
   /usr/sbin/dhtadm -g -A -s GrubMenu -d Site,150,ASCII,1,0

Note: Be sure to assign client IP address(es) if needed
(e.g., if running Sun's DHCP server, run pntadm(1M)).
Service discovery fallback mechanism set up

Helpfully, installadm tells us what commands to run on our DHCP server. First we’ll need to add the GrubMenu symbol (it won’t exist by default) and then we can add in the DHCP macro for the service. Just copy and paste the two commands on your Jumpstart server.

With that out of the way, we can now setup a client. In this case, I have a Sun v20z with a MAC address of 00:09:3d:12:ff:80 on bge0.

We need to run installadm to create the client, giving it the MAC address and telling it which install service to use. The command line is:

installadm create-client -e (MAC_address) -n (AI_service_name_to_use) \
	-t (AI_service_data_directory)

Here’s the full command line with the output:

root@grond:/export# /usr/sbin/installadm create-client \
	-e 00:09:3d:12:ff:80 -n 0609x86 \
	-t /export/aiserver/osol-0906-ai-x86
Setting up X86 client...
Service discovery fallback mechanism set up

Detected that DHCP is not set up on this server.
If not already configured, please create a DHCP macro
named 0100093D12FF80 with:
   Boot server IP (BootSrvA) : 192.168.13.100
   Boot file      (BootFile) : 0100093D12FF80
If you are running Sun's DHCP server, use the following
command to add the DHCP macro, 0100093D12FF80:
   /usr/sbin/dhtadm -g -A -m 0100093D12FF80 -d :BootSrvA=192.168.13.100: \
	BootFile=0100093D12FF80:GrubMenu=menu.lst.0100093D12FF80:

Note: Be sure to assign client IP address(es) if needed
(e.g., if running Sun's DHCP server, run pntadm(1M)).

Once again installadm will helpfully tell us what commands we need to run on our DHCP server to add the macros for this client.

Over on the Jumpstart server, here’s the output of dhtadm showing us the configured macros on the Sun DHCP server (with some line breaks to make it a bit more readable):

bash-3.00# dhtadm -P
Name                    Type            Value
==================================================
dhcp_macro_0609x86      Macro           :BootSrvA=192.168.13.100: \
	BootFile=0609x86:GrubMenu=menu.lst.0609x86:
0100093D12FF80          Macro           :BootSrvA=192.168.13.100: \
	BootFile=0100093D12FF80:GrubMenu=menu.lst.0100093D12FF80:
v20z                    Macro           :BootFile=0100093D12FF80: \
	BootSrvA=192.168.13.101:
192.168.13.0            
GrubMenu                Symbol          Site,150,ASCII,1,0

I’ve removed all of the other stuff that Jumpstart puts in there to clearly show the AI macros that have been added.

At this stage, we can just SSH into the V20z’s ILOM, power on the chassis, and go into the BIOS to change the boot order. PXEboot will then send out a DHCP request, and we’ll then see the OpenSolaris grub menu.

From that point onwards it’s a hands-off install. For more details on the entire process, have a read through the OpenSolaris Automated Installer Guide.

Having played around with AI for a bit now, I’m not that impressed to be honest. I can see that it could be easier for new users who’ve never touched Solaris before – as you can see, it doesn’t take much to setup an install server and configure clients.

However, there’s a big installed base of Solaris users out there, and they’ve all got Jumpstart. AI lacks the features, flexibility and power of Jumpstart – it’s not ready as a replacement just yet. So being forced to use it to be able to deploy OpenSolaris just means many existing Solaris shops won’t bother – integration with Jumpstart for OpenSolaris could well speed up it’s acceptance and adoption.

With so many Solaris users out there I think that OpenSolaris needs a lot of work to become a credible upgrade or migration path. Both AI and the new IPS packaging system show promise, but they’re a long way from being usable replacements to existing Solaris technologies.

Sun and Oracle – aftermath of the big event Comments Off on Sun and Oracle – aftermath of the big event

Last week Oracle held a marathon 5 hour webcast session, where they laid out their plans for Sun and their technologies. Sun’s website now redirects to Oracle, and although all the old Sun website links are still live, it’s now Oracle through and through.

The webcast held no surprises, really. As I mentioned previously about the Sun/Oracle merger and Larry’s talk on Oracle’s use of Sun technology, Oracle weren’t going to ditch Sun’s hardware line. The analysts were full of hysterics and gloom, but I’ve yet to meet an analyst who has the slightest clue of what’s going on. They’re paid to make noise and sell ‘research’, not to know what they’re talking about.

As predicted, there’s more investment in Sun’s hardware line, including lots more tasty new CMT processors, and a scaling up of the line to larger multi-socket machines. The high end gear will continue, as will the partnership with Fujitsu. SPARC continues to get a lot of investment and love, and will be a big focus going forwards. Amen to that.

Pretty much all of the software stack will stay and get integrated with Oracle’s offerings. I note with distaste that Oracle’s crappy Internet Directory remains the ‘enterprise’ offering for LDAP and identity management, with Sun’s LDAP products being pushed at smaller deployments. On the OS side, it’s a bit of Linux, and Solaris, Solaris, Solaris – Oracle recognise it’s the best commercial UNIX currently on the market, and that the feature set is unmatched.

Storage lives on, with Sun’s excellent Amber Road Storge 7000 Unified Storage boxes becoming ZFS appliances. Particularly exciting is their integration into OEM – imagine simple management of RMAN backups to ZFS appliances, giving low level snapshots and all sorts of goodness. I can see a lot of places going for that in a big way.

The big question for me was around OpenSolaris. No mention of it at all. It’s Open Source – that particular cat is out of the bag, and it’s not going away. So the question is what sort of effort will Oracle put behind it? Lots of new, OpenSolaris specific features – the new IPS packaging system and the Automated Installer – have potential, but aren’t up to scratch yet, and quite frankly don’t play well with existing Solaris infrastructure.

My bet is we’ll see less effort in re-inventing the wheel, and more focus on making OpenSolaris a more palatable Solaris 11. There’s a big Solaris installed base out there, and the focus on x86 and new features has so far meant that OpenSolaris isn’t really a credible upgrade path.

As I expected when I first heard the news, Oracle are going to be leveraging Sun’s technology and services and own and optimise the entire stack, from the silicon up to the application. This gives them a chance to really tune everything and to go head to head with IBM. May you live in interesting times, as they say.

Obviously there’s more, lots more. Oracle have handily posted up each section of the webcast so you can pick and choose which session you want to watch here. There are also a series of special short webcasts which focus on specific product areas – you can view them all here.

PS: as a side note, Thomas Kurian, who presented the Software Strategy webcast, managed to give one of the dullest presentations I’ve seen. Seriously, that was a really important session, but I almost nodded off a couple of times. Dire.

Top of page / Subscribe to new Entries (RSS)