The best performance analysis tool is the one between your ears.
Use Glance and learn to use it well. It will quickly allow you to zero in on the bottlenecks. Post some of the Glance output along with kmtune output and maybe we can see something. Because this is oracle, always make sure that noone has set timeslice to 1.
My rule of thumb is that if a 2x performance boost will make things "ok" then I'll look at the OS but if it's beyond that (and very seldom does tuning improve things by more than 20% unless your box/disks were absolutely terribly set up) then it's time to dig into the SQL.
One of the most important SQL tuning metrics is "how fast do things get bad". If you plot the time required for an operation vs the number of rows, you can begin to see what's wrong. If as I suspect, you have a curve rather than a linear function then plot the logarithm of time vs. number of rows. The slope of this line will indicate the "degree" of the equation. If 2 then you have an n^^2 problem; if 4 then an n^^4 problem. Problems of this nature generally point to very poor joins. If you have a problem that is degrading an any exponential rate then no amount of OS tuning, 'slicing and dicing disks', or waving magic wands is going to fix it. You then have to look at the SQL code.
If it ain't broke, I can fix that.