Thread: Problem Report: Question about FETCH_PROBABILITY behavior.
Status: Alpha
Brought to you by:
coroberti
From: David H. <dho...@is...> - 2009-01-23 18:25:11
|
CURL-LOADER VERSION: 0.47, December 2, 2008 HW DETAILS: CPU/S and memory are must: 4 core CPU in single physical slot, 16636588 kB RAM LINUX DISTRIBUTION and KERNEL (uname -r): 2.6.18-53.el5PAE GCC VERSION (gcc -v): gcc version 4.1.2 20070626 (Red Hat 4.1.2-14) COMPILATION AND MAKING OPTIONS (if defaults changed): COMMAND-LINE: curl-loader -f test.conf CONFIGURATION-FILE (The most common source of problems): Place the file inline here: =-=-=-=-= Configuration without FETCH_PROBABILITY: BEGIN =-=-=-=-=-= ########### GENERAL SECTION ################################ BATCH_NAME= test CLIENTS_NUM_MAX=1 CLIENTS_NUM_START=1 INTERFACE=eth0 NETMASK=255.255.240.0 IP_ADDR_MIN= 10.56.1.1 IP_ADDR_MAX= 10.56.15.254 CYCLES_NUM=10 URLS_NUM=3 ########### URL SECTION #################################### URL=http://localhost:8080/one.html URL_SHORT_NAME="one" REQUEST_TYPE=GET TIMER_AFTER_URL_SLEEP=200 URL=http://localhost:8080/two.html URL_SHORT_NAME="two" REQUEST_TYPE=GET TIMER_AFTER_URL_SLEEP=200 URL=http://localhost:8080/three.html URL_SHORT_NAME="three" REQUEST_TYPE=GET TIMER_AFTER_URL_SLEEP=200 =-=-=-=-= Configuration without FETCH_PROBABILITY: END =-=-=-=-=-= =-=-=-=-= Configuration with FETCH_PROBABILITY: BEGIN =-=-=-=-=-= ########### GENERAL SECTION ################################ BATCH_NAME= test CLIENTS_NUM_MAX=1 CLIENTS_NUM_START=1 INTERFACE=eth0 NETMASK=255.255.240.0 IP_ADDR_MIN= 10.56.1.1 IP_ADDR_MAX= 10.56.15.254 CYCLES_NUM=10 URLS_NUM=3 ########### URL SECTION #################################### URL=http://localhost:8080/one.html URL_SHORT_NAME="one" REQUEST_TYPE=GET TIMER_AFTER_URL_SLEEP=200 URL=http://localhost:8080/two.html URL_SHORT_NAME="two" REQUEST_TYPE=GET TIMER_AFTER_URL_SLEEP=200 FETCH_PROBABILITY=10 URL=http://localhost:8080/three.html URL_SHORT_NAME="three" REQUEST_TYPE=GET TIMER_AFTER_URL_SLEEP=200 =-=-=-=-= Configuration with FETCH_PROBABILITY: END =-=-=-=-=-= DOES THE PROBLEM AFFECT: COMPILATION? No LINKING? No EXECUTION? Yes OTHER (please specify)? Have you run $make cleanall prior to $make ? Yes DESCRIPTION: Using the FETCH_PROBABILITY tag has counter-intuitive side effects. When the configuration file for a single client to run ten cycles, for three urls, and contains no FETCH_PROBABILITY tags, each url is requested 10 times. Final screen for the first configuration file: Operations: Success Failed Timed out URL0:one 1 10 0 0 0 0 URL1:two 1 10 0 0 0 0 URL2:three 1 10 0 0 0 0 When a single FETCH_PROBABILITY with a value of "10" is introduced for any single url-subsection, the number of requests for all URLs is reduced and the url-subsection containing the FETCH_PROBABILITY tag is requested more times relative to the subsections that do not contain a tag. In addition, the value of the FETCH_PROBABILITY does not seem to predict the actual number of requests for the URL in that subgroup. For, example I would expect that CYCLES_NUM=10 and FETCH_PROBABILITY=10 would result in approximately 1 request, instead I often see 4-10. Final screen for the second configuration file w/ FETCH_PROBABILITY=10 defined for "URL1:two": Operations: Success Failed Timed out URL0:one 3 3 0 0 0 0 URL1:two 4 4 0 0 0 0 URL2:three 1 1 0 0 0 0 The same thing happens if the other subsections are tagged with FETCH_PROBABILITY=100. QUESTION/ SUGGESTION/ PATCH: Is the observed behavior the intended outcome? or should the expected request frequencies be something like this: URL0: 10 requests URL1: ~1 request(s) URL2: 10 requests for the second configuration? |
From: Robert I. <cor...@gm...> - 2009-01-25 17:18:02
|
Hi David, On Fri, Jan 23, 2009 at 8:24 PM, David Hotchkiss <dho...@is...>wrote: > CURL-LOADER VERSION: 0.47, December 2, 2008 > > > > ########### URL SECTION #################################### > > URL=http://localhost:8080/one.html > URL_SHORT_NAME="one" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > URL=http://localhost:8080/two.html > URL_SHORT_NAME="two" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > URL=http://localhost:8080/three.html > URL_SHORT_NAME="three" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > =-=-=-=-= Configuration without FETCH_PROBABILITY: END =-=-=-=-=-= > > =-=-=-=-= Configuration with FETCH_PROBABILITY: BEGIN =-=-=-=-=-= > > ########### GENERAL SECTION ################################ > BATCH_NAME= test > CLIENTS_NUM_MAX=1 > CLIENTS_NUM_START=1 > INTERFACE=eth0 > NETMASK=255.255.240.0 > IP_ADDR_MIN= 10.56.1.1 > IP_ADDR_MAX= 10.56.15.254 > CYCLES_NUM=10 > URLS_NUM=3 > > ########### URL SECTION #################################### > > URL=http://localhost:8080/one.html > URL_SHORT_NAME="one" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > URL=http://localhost:8080/two.html > URL_SHORT_NAME="two" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > FETCH_PROBABILITY=10 > > URL=http://localhost:8080/three.html > URL_SHORT_NAME="three" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > > > QUESTION/ SUGGESTION/ PATCH: > Is the observed behavior the intended outcome? or should the expected > request frequencies be something like this: > > URL0: 10 requests > URL1: ~1 request(s) > URL2: 10 requests > > for the second configuration? > Thank you for the PRF form filled in due course. Your understanding of the intended behavior is correct. Our documentation does not describe the feature clear enough. What user is supposed to do is to specify several URLs each with FETCH_PROBABILITY, so that the sum of all the probabilities will be 100. For the outcome, that you are expecting, it might be something like: URL1: FETCH_PROBABILITY 45 URL2: FETCH_PROBABILITY 5 URL3: FETCH_PROBABILITY 45 I would measure them using more cycles, at least 100. You might see some usage examples in directory conf-examples -- Truly, Robert Iakobashvili, Ph.D. ...................................................................... www.ghotit.com Assistive technology that understands you ...................................................................... |
From: David H. <dho...@is...> - 2009-01-27 23:05:33
|
Hi Robert, Thanks for your quick response. Per your suggestion, I slightly modified './conf-examples/fetch-probability.conf' as follows: =-=-=-= ########### GENERAL SECTION ################################ BATCH_NAME= fetch-prob CLIENTS_NUM_MAX=5 INTERFACE =eth0 NETMASK=255.255.240.0 IP_ADDR_MIN= 10.56.1.1 IP_ADDR_MAX= 10.56.15.254 CYCLES_NUM= 100 URLS_NUM= 2 ########### URL SECTION #################################### URL=http://localhost:8080/index.html URL_SHORT_NAME="local" REQUEST_TYPE=GET TIMER_URL_COMPLETION = 0 TIMER_AFTER_URL_SLEEP = 1000 FETCH_PROBABILITY = 70 URL=http://localhost:8080/one.html URL_SHORT_NAME="ACE" REQUEST_TYPE=GET TIMER_URL_COMPLETION = 0 TIMER_AFTER_URL_SLEEP = 1000 FETCH_PROBABILITY = 30 =-=-=-= With five clients and 100 cycles, I would expect that out of a potential 500 requests for each URL that the actual requests made during a curl- loader run would be something like this: URL:local ~350 total requests ( (5 clients * 100 cycles) * 0.7) URL:ACE ~150 total requests ( (5 clients * 100 cycles) * 0.3) Here are the results from three different runs: 1) Test total duration was 62 seconds and CAPS average 2: H/F Req:309,1xx:0,2xx:309,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:1ms,D-2xx:1ms,Ti:1362B/s,To:627B/s H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s Operations: Success Failed Timed out URL0:local 6 132 0 0 0 0 URL1:ACE 8 177 0 0 0 0 2) Test total duration was 69 seconds and CAPS average 1: H/F Req:343,1xx:0,2xx:343,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:1ms,D-2xx:1ms,Ti:1360B/s,To:625B/s H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s Operations: Success Failed Timed out URL0:local 0 134 0 0 0 0 URL1:ACE 3 209 0 0 0 0 3) Test total duration was 77 seconds and CAPS average 2: H/F Req:382,1xx:0,2xx:382,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:1ms,D-2xx:1ms,Ti:1356B/s,To:624B/s H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s Operations: Success Failed Timed out URL0:local 5 168 0 0 0 0 URL1:ACE 7 214 0 0 0 0 As you can see, the outcomes are significantly different from what I expected. Can you help shed some light on what is going on? Is the error in my expectations, the configuration, or curl-loader? Thanks, //david On Sun, 2009-01-25 at 19:17 +0200, Robert Iakobashvili wrote: > Hi David, > > On Fri, Jan 23, 2009 at 8:24 PM, David Hotchkiss <dhotchkiss@iso- > ne.com> wrote: > CURL-LOADER VERSION: 0.47, December 2, 2008 > > > > ########### URL SECTION #################################### > > URL=http://localhost:8080/one.html > URL_SHORT_NAME="one" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > URL=http://localhost:8080/two.html > URL_SHORT_NAME="two" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > URL=http://localhost:8080/three.html > URL_SHORT_NAME="three" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > =-=-=-=-= Configuration without FETCH_PROBABILITY: END =-=- > =-=-=-= > > =-=-=-=-= Configuration with FETCH_PROBABILITY: BEGIN =-=-=-=- > =-= > > ########### GENERAL SECTION ################################ > BATCH_NAME= test > CLIENTS_NUM_MAX=1 > CLIENTS_NUM_START=1 > INTERFACE=eth0 > NETMASK=255.255.240.0 > IP_ADDR_MIN= 10.56.1.1 > IP_ADDR_MAX= 10.56.15.254 > CYCLES_NUM=10 > URLS_NUM=3 > > ########### URL SECTION #################################### > > URL=http://localhost:8080/one.html > URL_SHORT_NAME="one" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > URL=http://localhost:8080/two.html > URL_SHORT_NAME="two" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > FETCH_PROBABILITY=10 > > URL=http://localhost:8080/three.html > URL_SHORT_NAME="three" > REQUEST_TYPE=GET > TIMER_AFTER_URL_SLEEP=200 > > > > QUESTION/ SUGGESTION/ PATCH: > Is the observed behavior the intended outcome? or should the > expected > request frequencies be something like this: > > URL0: 10 requests > URL1: ~1 request(s) > URL2: 10 requests > > for the second configuration? > > Thank you for the PRF form filled in due course. > > Your understanding of the intended behavior is correct. > Our documentation does not describe the feature clear enough. > > What user is supposed to do is to specify several URLs each with > FETCH_PROBABILITY, so that the sum of all the probabilities will be > 100. > > For the outcome, that you are expecting, it might be something like: > > URL1: > FETCH_PROBABILITY 45 > > URL2: > FETCH_PROBABILITY 5 > > URL3: > FETCH_PROBABILITY 45 > > I would measure them using more cycles, at least 100. > > You might see some usage examples in directory conf-examples > > -- > Truly, > Robert Iakobashvili, Ph.D. > ...................................................................... > www.ghotit.com > Assistive technology that understands you > ...................................................................... > |
From: Robert I. <cor...@gm...> - 2009-01-27 23:25:32
|
Hi David, On Wed, Jan 28, 2009 at 1:05 AM, David Hotchkiss <dho...@is...>wrote: > Hi Robert, > > Thanks for your quick response. Per your suggestion, I slightly > modified './conf-examples/fetch-probability.conf' as follows: > =-=-=-= > ########### GENERAL SECTION ################################ > > BATCH_NAME= fetch-prob > CLIENTS_NUM_MAX=5 > INTERFACE =eth0 > NETMASK=255.255.240.0 > IP_ADDR_MIN= 10.56.1.1 > IP_ADDR_MAX= 10.56.15.254 > CYCLES_NUM= 100 > URLS_NUM= 2 > > ########### URL SECTION #################################### > > URL=http://localhost:8080/index.html > URL_SHORT_NAME="local" > REQUEST_TYPE=GET > TIMER_URL_COMPLETION = 0 > TIMER_AFTER_URL_SLEEP = 1000 > FETCH_PROBABILITY = 70 > > URL=http://localhost:8080/one.html > URL_SHORT_NAME="ACE" > REQUEST_TYPE=GET > TIMER_URL_COMPLETION = 0 > TIMER_AFTER_URL_SLEEP = 1000 > FETCH_PROBABILITY = 30 > =-=-=-= > > With five clients and 100 cycles, I would expect that out of a potential > 500 requests for each URL that the actual requests made during a curl- > loader run would be something like this: > > URL:local ~350 total requests ( (5 clients * 100 cycles) * 0.7) > URL:ACE ~150 total requests ( (5 clients * 100 cycles) * 0.3) > > Here are the results from three different runs: > > 1) > Test total duration was 62 seconds and CAPS average 2: > H/F Req:309,1xx:0,2xx:309,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:1ms,D-2xx:1ms,Ti:1362B/s,To:627B/s > H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s > Operations: Success Failed Timed out > URL0:local 6 132 0 0 0 0 > URL1:ACE 8 177 0 0 0 0 > > 2) > Test total duration was 69 seconds and CAPS average 1: > H/F Req:343,1xx:0,2xx:343,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:1ms,D-2xx:1ms,Ti:1360B/s,To:625B/s > H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s > Operations: Success Failed Timed out > URL0:local 0 134 0 0 0 0 > URL1:ACE 3 209 0 0 0 0 > > 3) > Test total duration was 77 seconds and CAPS average 2: > H/F Req:382,1xx:0,2xx:382,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:1ms,D-2xx:1ms,Ti:1356B/s,To:624B/s > H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s > Operations: Success Failed Timed out > URL0:local 5 168 0 0 0 0 > URL1:ACE 7 214 0 0 0 0 > > As you can see, the outcomes are significantly different from what I > expected. > > Can you help shed some light on what is going on? Is the error in my > expectations, the configuration, or curl-loader? > > Thanks, > > //david > Looks like something may be broken in this version of curl-loader. Can you try some earlier varsion, e.g. curl-loader stable? Thanks. -- Truly, Robert Iakobashvili, Ph.D. ...................................................................... Assistive technology that understands you ...................................................................... |
From: David H. <dho...@is...> - 2009-01-28 22:18:02
|
Robert, I did a fresh compile of curl-loader v0.44 (aka stable) and got the following results in three consecutive runs: Test total duration was 82 seconds and CAPS average 2: H/F Req:404,1xx:0,2xx:404,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:1ms,D-2xx:1ms,Ti:1346B/s,To:620B/s H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s Operations: Success Failed Timed out URL0:local 0 178 0 0 0 0 URL1:ACE 4 226 0 0 0 0 Test total duration was 68 seconds and CAPS average 2: H/F Req:338,1xx:0,2xx:338,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:1ms,D-2xx:1ms,Ti:1359B/s,To:625B/s H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s Operations: Success Failed Timed out URL0:local 5 141 0 0 0 0 URL1:ACE 8 197 0 0 0 0 Test total duration was 72 seconds and CAPS average 2: H/F Req:355,1xx:0,2xx:355,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:1ms,D-2xx:1ms,Ti:1347B/s,To:620B/s H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s Operations: Success Failed Timed out URL0:local 0 165 0 0 0 0 URL1:ACE 1 190 0 0 0 0 These seem closer to the v0.47 results than the expected frequencies. Shall I test earlier versions? Thanks, //david On Wed, 2009-01-28 at 01:25 +0200, Robert Iakobashvili wrote: > Hi David, > > On Wed, Jan 28, 2009 at 1:05 AM, David Hotchkiss <dhotchkiss@iso- > ne.com> wrote: > Hi Robert, > > Thanks for your quick response. Per your suggestion, I > slightly > modified './conf-examples/fetch-probability.conf' as follows: > =-=-=-= > ########### GENERAL SECTION ################################ > > BATCH_NAME= fetch-prob > CLIENTS_NUM_MAX=5 > INTERFACE =eth0 > NETMASK=255.255.240.0 > IP_ADDR_MIN= 10.56.1.1 > IP_ADDR_MAX= 10.56.15.254 > > CYCLES_NUM= 100 > URLS_NUM= 2 > > ########### URL SECTION #################################### > > URL=http://localhost:8080/index.html > URL_SHORT_NAME="local" > REQUEST_TYPE=GET > TIMER_URL_COMPLETION = 0 > TIMER_AFTER_URL_SLEEP = 1000 > FETCH_PROBABILITY = 70 > > URL=http://localhost:8080/one.html > > URL_SHORT_NAME="ACE" > REQUEST_TYPE=GET > TIMER_URL_COMPLETION = 0 > TIMER_AFTER_URL_SLEEP = 1000 > FETCH_PROBABILITY = 30 > =-=-=-= > > With five clients and 100 cycles, I would expect that out of a > potential > 500 requests for each URL that the actual requests made during > a curl- > loader run would be something like this: > > URL:local ~350 total requests ( (5 clients * 100 cycles) * > 0.7) > URL:ACE ~150 total requests ( (5 clients * 100 cycles) * > 0.3) > > Here are the results from three different runs: > > 1) > Test total duration was 62 seconds and CAPS average 2: > H/F Req:309,1xx:0,2xx:309,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:1ms,D-2xx:1ms,Ti:1362B/s,To:627B/s > H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s > Operations: Success Failed Timed out > > URL0:local 6 132 0 0 0 0 > URL1:ACE 8 177 0 0 0 0 > > 2) > Test total duration was 69 seconds and CAPS average 1: > H/F Req:343,1xx:0,2xx:343,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:1ms,D-2xx:1ms,Ti:1360B/s,To:625B/s > H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s > Operations: Success Failed Timed out > > URL0:local 0 134 0 0 0 0 > URL1:ACE 3 209 0 0 0 0 > > 3) > Test total duration was 77 seconds and CAPS average 2: > H/F Req:382,1xx:0,2xx:382,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:1ms,D-2xx:1ms,Ti:1356B/s,To:624B/s > H/F/S Req:0,1xx:0,2xx:0,3xx:0,4xx:0,5xx:0,Err:0,T- > Err:0,D:0ms,D-2xx:0ms,Ti:0B/s,To:0B/s > Operations: Success Failed Timed out > > URL0:local 5 168 0 0 0 0 > URL1:ACE 7 214 0 0 0 0 > > As you can see, the outcomes are significantly different from > what I > expected. > > Can you help shed some light on what is going on? Is the error > in my > expectations, the configuration, or curl-loader? > > Thanks, > > //david > > > Looks like something may be broken in this version of curl-loader. > Can you try some earlier varsion, e.g. curl-loader stable? > Thanks. > > -- > Truly, > Robert Iakobashvili, Ph.D. > ...................................................................... > Assistive technology that understands you > ...................................................................... > |
From: Robert I. <cor...@gm...> - 2009-01-29 05:00:27
|
Hi David, On Wed, Jan 28, 2009 at 11:50 PM, David Hotchkiss <dho...@is...>wrote: > Robert, > > I did a fresh compile of curl-loader v0.44 (aka stable) Thanks. It seems, that we should fix it. However, I am not sure about the schedule, sorry. Don't use this option in meanwhile. Sincerely, Robert |