to get cpu usage percentage that matches results from utilities like top, i had to divide the cpu total time over a time period with number of cpus, after doing that, cpu usage percentage starts to match top.
the idea is that cpu percentage should not go above 100 percent. if a process hogs up two cpus on a 4-cpu box, then cpu percentage may be over 100 per cent when the box may still be able to take care of other work.
cpu percentage is calculated based on cpu time over elapsed time.
however, i noticed that top utility on solaris does this division by number of cpus, while top utility on linux does not do it.