Running this test, with and the framp phase has been running for 3 days?
This config looks like it should run for 20 minutes, am I missing
something. My polymix-4-guts.pg is below.
Cheers,
Jay
/*
* PolyMix-4 workload (the details)
*
*/
/* modifications in this file cause non-compliance with PolyMix rules
* all user-specified parameters are in polymix-4.pg */
#include "contents.pg"
Server S = {
kind = "PolyMix-4-srv";
contents = [ cntImage: 65%, cntHTML: 15%, cntDownload: 0.5%,
cntOther ];
direct_access = [ cntHTML, cntDownload, cntOther ];
xact_think = norm(2.5sec, 1sec);
pconn_use_lmt = zipf(16);
idle_pconn_tout = 15sec;
abort_prob = 0.1%;
addresses = serverAddrs(asPolyMix4, TheBench);
http_versions = [ "1.0" ]; // newer agents use HTTP/1.1 by default
};
AddrMap Map = {
zone = "bench.tst";
addresses = S.addresses;
names = ipsToNames(addresses, zone);
};
// popularity model for the robots
PopModel popModel = {
pop_distr = popUnif();
hot_set_frac = 1%; // fraction of WSS (i.e., hot_set_size / WSS)
hot_set_prob = 10%; // prob. of req. an object from the hot set
bhr_discrimination = 90%; // revisit smaller files more often
};
// set DNS resolver timeout (the servers are set by the user)
Resolver.timeout = 5sec;
// compute fraction of requests that should produce hits if repeated
// account for cachable basic requests
float HitIfRepeat = 80%;
// describe PolyMix-4 robot
Robot R = {
kind = "PolyMix-4-rbt";
recurrence = 55%/HitIfRepeat; // recurrence is not hit ratio
embed_recur = 100%;
interests = [ "public": 75%, "private" ];
pop_model = popModel;
req_types = [ "Basic", "Ims200": 5%, "Ims304": 10%, "Reload" : 5% ];
req_methods = [ "GET", "POST" : 1.5%, "HEAD" : 0.1% ];
abort_prob = 0.1%;
req_rate = TheBench.client_side.max_agent_load;
pconn_use_lmt = zipf(64);
open_conn_lmt = 4;
dns_resolver = Resolver;
origins = Map.names;
addresses = robotAddrs(asPolyMix4, TheBench);
http_versions = [ "1.0" ]; // newer agents use HTTP/1.1 by default
};
/* phases */
time platDur = 4hour; // plateau phases duration (except idle
phase)
time rampDur = platDur/12; // ramp phases duration (and idle phase)
// limit the growth of the URL "working set" size (WSS)
int clientHostCount = clientHostCount(TheBench);
float fillable_ratio = HitIfRepeat; // fraction of cachable misses
rate peak_fill_rate = TheBench.peak_req_rate * 0.45 * fillable_ratio;
int wsc = int(peak_fill_rate * platDur); // number of objects in the WS
working_set_cap(wsc / clientHostCount);
float smallFactor = 1.0/count(R.addresses);
Phase phFRamp = {
name = "framp";
goal.duration = rampDur;
recur_factor_beg = 5%/55%;
special_msg_factor_beg = 0.1;
populus_factor_beg = smallFactor;
populus_factor_end = FillRate/TheBench.peak_req_rate;
};
Phase phFill = {
name = "fill";
goal.fill_size = 2*ProxyCacheSize / clientHostCount;
wait_wss_freeze = yes; // will finish only if WSS is frozen
};
Phase phFExit = {
name = "fexit";
goal.duration = rampDur;
recur_factor_end = 1;
special_msg_factor_end = 1;
populus_factor_end = smallFactor;
};
Phase phInc1 = {
name = "inc1";
goal.duration = rampDur;
populus_factor_end = 1;
};
Phase phTop1 = { name = "top1"; goal.duration = platDur; };
Phase phDec1 = { name = "dec1"; goal.duration = rampDur;
populus_factor_end = 0.1; };
Phase phIdle = { name = "idle"; goal.duration = rampDur; };
Phase phInc2 = { name = "inc2"; goal.duration = rampDur;
populus_factor_end = 1.0; };
Phase phTop2 = { name = "top2"; goal.duration = platDur; };
Phase phDec2 = { name = "dec2"; goal.duration = rampDur;
populus_factor_end = 0; synchronize = false; };
/* collect stats samples in the middle of plateau phases */
StatsSample topSample = { capacity = 10000; };
StatsSample fillSample = { capacity = int(10% * topSample.capacity); };
phFill.stats_samples = [ fillSample ];
phTop1.stats_samples = [ topSample ];
phTop2.stats_samples = [ topSample ];
// build schedule using some well-known phases and phases defined above
schedule(
phFRamp, phFill, phFExit,
phInc1, phTop1, phDec1,
phIdle,
phInc2, phTop2, phDec2
);
// commit to using these objects
use(S, R);
use(Map);
use(TheBench);
// do not forget to configure network level delay and packet loss!
// client side: no delays or packet loss
// server side: 40msec delay and 0.05% packet loss in both directions
Received on Sat Mar 10 2007 - 21:29:38 MST
This archive was generated by hypermail 2.2.0 : Sun Mar 11 2007 - 13:00:07 MDT