Damien Farnham's Weblog

« Previous page | Main
Wednesday Jun 01, 2005

Solaris Express Install Workarond

/tmp/damienf/dtrace Solaris Express Pains

We install all Sun unbundled software and many ISV applications like Oracle on each build of
Solaris and over the last 12 months we had 10 cases where the install failed directly or indirectly
becuase of changes to the output from uname.  Hard to beleive

10 times we have had to put work around in place, never hard, but time
consuming and not adding a lot of value to the customer ( and boring )

So I am very very happy to see Angelo Rajadurai and Jon Hasalam
have between them come up with a d script to change the uname output
on the fly. Install your software and then change it back :)

Over a number pints in a famous old Dublin Pub ( that doesn't really narrow the search
a lot )  I reminded Bryan that dtrace isn't just for Performance it can help solve
so many QA problems too. dtrace is for everyone not just performance people

 Angelo and Jon wrote it !



#!/usr/sbin/dtrace -Cs
#include<sys/systeminfo.h>

#pragma D option destructive

syscall::uname:entry
/ppid == $1/
{
self->addr = arg0;
}

syscall::uname:return
/ppid == $1/
{
copyoutstr("SunOS", self->addr, 257);
copyoutstr("PowerPC", self->addr+257, 257);
copyoutstr("5.10", self->addr+(257*2), 257);
copyoutstr("Generic", self->addr+(257*3), 257);
copyoutstr("PPC", self->addr+(257*4), 257);
}
syscall::systeminfo:entry
/arg0==SI_ARCHITECTURE/
{
self->arch = arg1;
}

syscall::systeminfo:return
/self->arch && ppid == $1/
{
copyoutstr("PowerPC", self->arch,257);
self->arch=0;
}

syscall::systeminfo:entry
/arg0==SI_PLATFORM && ppid == $1/
{
self->mach = arg1;
}

syscall::systeminfo:return
/self->mach && ppid == $1/
{
copyoutstr("APPL,PowerBook-G4", self->mach,257);
self->mach=0;
}

Tuesday May 24, 2005

I'll never live this down


I have been given the honor of being part of Sun's 2nd "Change Agents" poster campaign. While I greatfull for this honor ( I'll get you Darrin if it takes years ) my choice as a "poster boy" is rather strange as I'm far from Brad Pitt. I reckon that all the good looking folks were used first time round.

My team mates have, showing their usual level of respect honored me further by creating their own version of the poster including a rather nice picture of me in China. ( Brutus I'll get you too. )

My Intro

b

Day two with an Blog I should really introduce myself.

I manage the Performance QA team in Sun. We're in sunny Dublin ( sunny for the
next 10 minutes anyway ) 4 other members of the team have blogs and I finally
given in.  Fintan Ryan has a couple of excellent blogs that describe what we do here
http://blogs.sun.com/roller/page/fintanr/20050426

Basically we champion the "Performance Lifestyle".  Sounds like marketing ?
It's not, it is something that grew from the ground up,  first setting performance
criteria for out of the box performance on each releases, not just focusing on TPC-C
benchmark specials,  then implementing a continuous improvement model until it
becomes natural behavior for developers.

Our role is one of a catalyst. We make it so easy to test performance
properly, effectively and cheaply that engineers do. From Sun's view we can afford
to because instead of 20 imperfect SPECweb2005 rigs that are 20% used we have
10 90% used, better return on capital .  Development teams save time and energy
because the developers write code and do not waste time learning how to configure
benchmarks, find and configure the hardware etc..

The good engineers ( the majority thankfully ) use us

    *     To tune their code
    *     Select the algorithm
    *     Check 2nd order effects on platform they do not have access to.
    *     Run against a wide range of  workloads, one size does not fit all
             "Performance is in the eye of the customer"

That not so good ( mostly those that need training and a few well.....)

    *      Make sure they do not eat into gains made by the good guys
    *      Ensure that poor code is noticed and fixed early
    *      Show them its easy to do it right next time :)

The best
    *    People hand over their resources for us to manage and provide
         a service to all Sun.
    *    People outside our organizations provide us with Millions of
         dollars from their budgets in capital and head count ! putting
          their money where their mouth is. ( Darrin take a bow )
    *    Train us on the latest technology thanks Sunay, Bryan, Brian.

Lastly we ensure that the results are visible to management, so those that
do the right thing are noticed i.e. reward the right behavior.

This is not bums on seats engineering, we're a small focused 10 people team
which provides massive ROI to Sun  and its customer base, you've heard
how much faster Solaris 10 and hopefully even seen it for yourself we're
proud to be part of that.

More important if you have cases where Solaris 10 is slower please
drop me a line and we'll try to add your code to the expanding test metric
of over 100+ benchmarks, many of which came from customers.

Interested in developing OpenSoalris ? We'll be there to help you too :)
on http://opensolaris.org





Monday May 23, 2005

access woes


I had the displeasure of breaking Solaris 10 on my Acer Ferrari 3200
( not its fault tried to BFU to the latest nevada build with a Solaris 10
BFU script ) so I could not use our ip sec based remote secure access service.

For those that like me choose to shoot themselves in the foot from time
to time I suggest you use frkit to upgrade your systems. See just how
good Solaris performs on a laptop, opensolaris.org has or will have shortly
frkit it saves you from yourself.

This meant I needed to go looking for my DES card to use VPN, Of course
I look high and low with no joy, then I see it looking at me thru the
window of the washer !

I have learned 3 important things from this.

1) I do not like windows, nothing religious just Solaris 10
   is better, punchin is much better than VPN !
2) My 4 year old daughter can reach about 4 inches higher than
   I taught ( which is how the DES card ended up in the washer )
3) The DES card worked fine after it dried out ;)