[httperf] Why does httperf take extra time even after completion
dkrishna at ucalgary.ca
Fri Jul 7 09:24:25 PDT 2006
As Martin suggested, your tests are not running "cleanly".
1) The server seems to be overloaded. (significant number of socket
timeouts, 51 seconds to open a connection with the server, 16 seconds
to receive reply from the server)
2) httperf is not able to find enough unused file descriptors to
achieve the connection rate you have specified - there is a significant
number of fails on fd-unavail. It looks like your client machine has a
limit of 1024 for the maximum number of file descriptors - you can
notice that the max # of concurrent connections that could be opened was
1022. You can fix this problem by referring to the following link:
Prakhar Goyal wrote:
>Thankyou very much for your prompt reply. I am sorry that I could not
>reply early as I was materialising the data.
>Here is the report given by httperf in one of my expts, which involves the
>performance analysis of web server:
>httperf --server servername --port 80 --uri /model_prakhar/scene1.php
>--rate 22 --num-conns 2000
>httperf --client=0/1 --server=kahn.cse.iitb.ac.in --port=80
>--uri=/model_prakhar/scene1.php --rate=22 --send-buffer=4096
>--recv-buffer=16384 --num-conns=2000 --num-calls=1
>Maximum connect burst length: 1
>Total: connections 1799 requests 1627 replies 1623 test-duration 266.972 s
>Connection rate: 6.7 conn/s (148.4 ms/conn, <=1022 concurrent connections)
>Connection time [ms]: min 307.8 avg 53450.4 max 142786.6 median 36645.5
>Connection time [ms]: connect 51866.2
>Connection length [replies/conn]: 1.000
>Request rate: 6.1 req/s (164.1 ms/req)
>Request size [B]: 94.0
>Reply rate [replies/s]: min 0.0 avg 6.1 max 9.4 stddev 3.8 (53 samples)
>Reply time [ms]: response 16056.6 transfer 0.0
>Reply size [B]: header 206.0 content 504.0 footer 2.0 (total 712.0)
>Reply status: 1xx=0 2xx=1623 3xx=0 4xx=0 5xx=0
>CPU time [s]: user 5.44 system 261.53 (user 2.0% system 98.0% total 100.0%)
>Net I/O: 4.8 KB/s (0.0*10^6 bps)
>Errors: total 377 client-timo 0 socket-timo 172 connrefused 0 connreset 4
>Errors: fd-unavail 201 addrunavail 0 ftab-full 0 other 0
>The client is a normal P4 machine having 2 CPUs.
>The errors indicate that some connections failed.I had fixed the timeout
>to be 100 secs.
>The service time of the web server is 112 ms.
>But after the web server finishes the handling requests,( ie, the machine
>on which web server is deployed, shows 0% cpu usage), then also upto 1
>minute(in this test case shown above), httperf continues running.
>I think that this affects the request rate and the thruput too.
>I know the 'request rate' shown by the htperf is diff from actual arrival
>rate. I had read this in your mailing list archive. :)
>Please reply to this matter soon as per your convenience.
>I will be happy to provide you any other information required.
>Waiting for the reply,
>Thanks & Regards,
>>without knowing anything about the test you were running, or about the
>>configuration of the client, it is difficult to know what was happening.
>>I expect that your test did not run cleanly in some way; e.g., some
>>connections failed, or httperf had trouble getting file descriptors at
>>some point during the test. However, without knowing more about the test
>>or the httperf output from the test this is just speculation.
More information about the httperf