How to find out bottleneck if system is taking long time in gzip

Dear All,

OS = Solaris 5.10
Hardware Sun Fire T2000 with 1 Ghz quode core

We have oracle application 11i with 10g database. When ever i am trying to take cold backup of database with 55GB size its taking long time to finish. As the application is down nobody is using the server at all except the below command.

Here is the command

tar cEf - . | gzip -c > /u03/bkp/test.tar.gz

We have test application with same configuration on another intel i3 virtual machine with redhat linux, but the same command on this vm is taking only half the time of our sun server.

How can i find out the issue with the sun server and get a solution to solve the issue

Regards,
Yoonus

the issue is the cpu. single threaded processes just take a long time... if you need a sparc server to do the work, a M3000 would be nice to replace the T2000. maybe a new T4 is also a good replacement.

1 Like

Thanks Duke. Hope you can help me have better understanding.

              extended device statistics                    tty         cpu
device    r/s    w/s   kr/s   kw/s wait actv  svc_t  %w  %b  tin tout  us sy wt id
sd1       0.7    4.6  111.2  185.5  0.0  0.1   22.9   0   3    0   28   0  0  0 99
sd1       2.1    4.2 1955.2 1837.4  0.0  0.1   21.7   0   8    0    0   6  1  0 93
sd1       2.3    9.8 1998.4 1839.8  0.2  0.3   38.2   1   8    0   11   6  1  0 93
sd1       7.8    2.6 1774.5  363.9  0.0  0.1   11.6   0   6    0   11   6  0  0 93


The above output is from iostat when the gzip process was processing, through out the process i was getting id 93 but on the virtual machine i was getting 99. can you just clarify to have a better understanding. I am finding it very difficult to read and understand iostat output.

id = idle

Understanding iostat (The dot in ... --- ...)

i understand id is idle, what my question here is through out the process the cpu is 93% idle so what my understanding was that increasing cpu speed is not going to solve the problem. can you just explain to me what are the elements you are looking at to recommend a server with higher cpu speed.

It will be very helpful if you could tell me what utilities i can use to compare the two servers.

pardon me if i am asking something that i am not supposed to be , i am newbie in system performance area

the performance sector is realy a wide field... you should have a look at the output of "mpstat" on the T2000. the cpu in this server uses many cores/threads to manage the workload. but it just uses one thread to do a "single threaded" workload (like a tar operation). so the cpu might be seen mostly "idle" but it is working just one thread which is realy busy... "mpstat" should give you some hints...

i got an advice on how to utilize our server to get it done faster. So I used pbzip2 and it was doing the work in just 75 minutes which used to be 300 minutes with gzip

1 Like

To elaborate on DukeNuke2 answer, the maths here are quite simple.
You are using a quad core CPU with four threads each. That means 16 virtuals CPUs.
You are running a single threaded process (gzip).
The maximum load attainable under that configuration would be 100/16=6.25%, i.e. 93.75% idle, which is precisely what you are observing.
Your process is CPU bound.

You can also use pigz if you want to create .gz or .zip files with parellel threads.

pigz - Parallel gzip