PolyDocs: Client Options

Web Polygraph

Documentation has been synchronized with Poly 2.1.0.

usage: polyclt [--option] ...
options:
help list of options
version package version info
host_type package build environment information
verb_lvl <int> console verbosity level
dump <list> dump request/replies/errors headers/bodies to console
prn_reqs <bool> dump request headers to console
prn_reps <bool> dump reply headers to console
prn_errs <bool> dump detailed message info for every xaction error
notify <addr> send notifications to a [remote] monitoring program
label <str> run label
fd_limit <int> decrease default fd limit
config <file> configuration file name
cfg_dirs <list> directories to search for cfg files
console <file> redirect console output
log <file> detailed binary log file
log_size <size> binary log size limit
stats_cycle <time>statistics cycle length
linger_tout <time>linger on socket close
nagle <bool> use Nagle alg
xact_think <time>pause on xaction start
pconn_use_lmt <int>number of requests on a single connection
goal <int> total completions
file_scan <poll|select> system call to use for scanning ready files
fake_hosts <list> use given addresses, do not lookup real interfaces
idle_tout <list> exit after inactivity timeout
rng_seed <int> general purpose seed
unique_world <bool> use URL set that is unique across runs
origin <addr> origin host
proxy <addr> proxy host
abs_urls <bool>generate absolute urls
ports <port_range> use explicit port binding
conn_pool <int> [initial] connection pool capacity
conn_pool_dyn <bool>dynamically adjust the size of a conn pool
launch_win <time>interval to start all robots
cool_phase <time>minimal cool-off phase duration
robots <int> number of robots
req_rate <rate> robot request rate
maximize_req_rate <bool> adjust req_rate run-time to find maximum
ign_bad_cont_tags <bool>ignore bad content tags
ign_false_hits <bool>ignore false hits
prn_false_misses <bool>dump rep headers of false misses
do_ios <bool> do socket ios
world_type <str>part of a URL
world_id <str> part of a URL
world_urls <file>file with URLs
unique_urls <int>append unique suffix (counter) to URLs
recur <ratio> recurrence (prob of revisiting a URL)
order <int> request order
rep_cachable <ratio>portion of cachable replies
dhr <ratio> document hit ratio
pop_model <model>popularity model
tmp_loc <distr> distances distr for temporal locality
tmp_loc_delta <int>fuzziness of temporal locality choices
tmp_loc_depth <int>max depth of tmp locality plan
prefilled_cnt <int>number of already cached oids

Name:--verb_lvl
Type:integer
Default:0

Verb_lvl specifies how much info will be printed to the console. Normally, level zero will have only a couple of lines per run. Level one will allow for interval and phase stats to be printed. A negative level will disable any output.

Most errors are reported with level zero.

Regardless of verb_lvl setting, all console messages are duplicated in the log.

Name:--dump
Type:list of strings
Default:no default
Version:2.2.0 and up

The --dump option controls what messages and what parts of messages should be printed on the console. Possible message types are: req[uest], rep[ly], and err[or]. Possible message parts are hdr (for ``header'') and body. Dumping of message bodies is not supported at the time of writing.

For example, to dump all request headers, one may use:

polysrv --dump req-hdr
To dump the headers of all requests and the headers of erroneous messages, use:
polyclt --dump req-hdr,err-hdr
Finally, to dump everything about errors, consider:
polyclt --dump err

and to dump all headers, use:
polyclt --dump hdr

Note that sometimes Polygraph does not have the required data at the time of dump. Polygraph will try to at least provide some meta information about the message then.

If a message part matches both negative (error) and positive (reply or request) type masks, the part may be printed twice.

This option obsoletes --prn_reqs, --prn_reps and --prn_errs options.

Name:--prn_reqs
Type:boolean
Default:no

When prn_reqs is set, Poly will print the request line and HTTP headers of each request. The requests are dumped to standard output.

Note that the output will not be logged.

This mode is very useful both for debugging benchmarking setup and for understanding Poly traffic model.

Name:--prn_reps
Type:boolean
Default:no

When prn_reps is set, Poly will print the status line and HTTP headers of each reply. See --prn_reqs option for details.

Name:--prn_errs
Type:boolean
Default:no
Version:2.1.0 only

When prn_errs is set, Polygraph will attempt to dump the status/request line and HTTP headers of each message that led to a xactions error. For some errors, a part of a message content is also printed. See --prn_reqs option for details.

Name:--notify
Type:host:port
Default:no default
Version:1.3.1 and up

The notify option instructs Poly to send status messages to a daemon on the specified host. The messages are small (about 100 bytes) and are sent using UDP protocol ensuring negligible overhead. The messages are emitted every 20 seconds.

Polygraph distribution comes with a listening daemon (udp2tcpd) and an interactive monitoring program (polymon).

Monitoring capabilities are very handy if you want to watch your experiments closely, but do not want to create extra load on the poly-machines. Polymon is also very helpful in maintaining several independent experiments.

Name:--label
Type:string
Default:no default
Version:1.3.1 and up

The label option allows you to assign a string label to a run. The label gets logged (as any other option value) and is also included into notification messages (see --notify). The latter is useful if you running several experiments and want polymon to distinguish them by a short ``name''.

Note that notification messages truncate labels to 15 characters, and polymon usually displays 6 first characters.

Name:--fd_limit
Type:int
Default:no default
Version:1.0p4 and up

Polygraph determines the maximum level of available file descriptors using getrlimit(RLIMIT_NOFILE) system call. It then attempts to set the current level to that maximum using the setrlimit(RLIMIT_NOFILE) system call. The return value of the latter (actually about 97% of it) is then used as a Polygraph internal FD limit.

Polygraph will not attempt to create more TCP sockets than its internal limit. However, some OSes are known to be unhappy when a process is close to the limit. In a non-production benchmarking environment, there may be also a competition for file descriptors with other processes. The fd_limit option can be used to lower the internal limit even further.

Polygraph will quit if it reaches its internal FD limit. In most cases, the log (if enabled using the --log option) will be flushed/saved before program termination.

One cannot raise the FD limit using the fd_limit option! The original limit is reported by the operating system and must be changed first. Different OSes will require different techniques for raising the file descriptor limits. Some well-known hacks can be found elsewhere.

Finally, note that two Polygraph header files (src/include/config.h and src/xstd/include/xstd.h are #defining FD_SETSIZE to be 4096. If you intend to use more file descriptors, you probably should increase that value. FD_SETSIZE is a system ``constant'' that is used for select(2) related calls on some OSes.

Name:--config
Type:filename
Default:no default
Version:2.0 and up

The --config option specifies configuration file for polygraph clients and/or servers. See Polygraph Language documentation for details on how to write a configuration file.

Root configuration file as well as #include files are searched for using the --cfg_dirs option.

Name:--cfg_dirs
Type:comma-separated list of directory names
Default:``./'' or current directory
Version:2.0 and up

The --config option specifies the list of directories that are searched for root configuration file as well as #include files. See --config option for how to specify a root configuration file. See Polygraph Language documentation for details on #include statements and how to write a configuration file.

Name:--console
Type:filename
Default:standard output (``-'')

Console option allows you to redirect console output into a file. The file must be reachable from the current directory.

Name:--log
Type:filename
Default:no default

This option enables preserving detailed stats in a log file.

Name:--log_size
Type:size
Default:10MB

All log content is kept in memory until the end of a run. This option allows you to specify the maximum log buffer size to hold that info. When logging module runs out of buffer space, it stops logging completely.

Logging must be enabled with the --log option first. If no --log option was specified, a small 10KB log is kept in memory and is discarded at the end of a run.

Polygraph versions 1.0p5 and earlier will exit when run out of log buffer space. These versions are using memory resident log buffer regardless of the --log option presence.

Name:--stats_cycle
Type:time
Default:5sec
Version:2.1.0 and up

Stats_cycle specifies the duration of Interval stats cycle. Shorter cycles give more precise statistics but result in larger binary logs.

Name:--linger_tout
Type:time
Default:no default
Version:discontinued in 2.0

Linger_tout is an equivalent of the SO_LINGER socket option. Omitting the option or specifying a special none value results in the default TCP behavior. In Poly releases after 1.0p0, setting timeout to zero is equivalent to setting SO_LINGER to "disabled" (see below).

     SO_LINGER controls the action taken when unsent messages are
     queued on socket and a close(2) is performed.  If SO_LINGER
     is set, the system will block the process on the close(2)
     attempt until it is able to transmit the data or until it
     decides it is unable to deliver the information within the
     specified timeout. If SO_LINGER is set to "disabled" and a
     close(2) is issued, the system will process the close in a
     manner that allows the process to continue as quickly as
     possible.

Name:--nagle
Type:boolean
Default:true
Version:discontinued in 2.0

Nagle is an equivalent of the TCP_NODELAY protocol option. See Unix Socket FAQ for more info.

Name:--xact_think
Type:TimeDistribution
Default:no default
Version:discontinued in 2.0

Xact_think specifies the ``think time'' for each transaction.

On the server side, a transaction will sleep right after a connection is accepted and before reading the request.

On the client side, a transaction will sleep right before opening a connection and sending a request.

Name:--pconn_use_lmt
Type:NumDistribution
Default:no default
Version:1.1p0 and up; discontinued in 2.0

When first created, an HTTP connection is assigned the number of transactions it should be used for. That number is drawn from the distribution specified using the pconn_use_lmt option. A usage limit of 2 transactions or more implies a persistent connection (if the other side cooperates).

Pconn_use_lmt makes sense on both server and client sides. By default, all connections are used only once.

Poly-client or poly-server will close a connection if either the other side has sent ``Connection: close'' header or the connection usage limit has been reached. ``Proxy-Connection:'' headers are also honored. Polygraph indicates its intention to keep or close a connection by sending the appropriate Connection:'' header with every request.

Note: The Nagle algorithm may need to be turned off using the --nagle option. Otherwise, TCP ack packets are delayed for about 200msec resulting in 5req/sec throughput for a single TCP connection.

Name:--goal
Type:Goal
Default:no default
Version:discontinued in 2.0

Use the goal option to specify the termination conditions for an experiment. A termination condition can be experiment duration, number of successful transactions, or number of errors. At least one condition must be specified. Conditions are ORed together.

The order of conditions is flexible. The following simple heuristics are used to guess the actual order:

  1. first number if any is ``number of successful transactions''
  2. second number if any is ``number of errors''
  3. time if any is ``experiment duration''

Conditions are separated with a column (:). For example:

polyclt --goal -1:1hour:1000 ...
would mean to stop an experiment in 1 hour or after 1000 errors. The number of successful transactions is unlimited.

Note that goal settings are also used to determine the termination condition for experiment phases.

Poly does not yet support termination based on number of xaction errors.

Name:--file_scan
Type:poll | select
Default:poll if supported; select otherwise
Version:1.3.0 and up

Most Unix operating systems have at least two system calls to detect ``ready'' file descriptors: poll(2) and select(2). The --file_scan option allows you to control which method to use. See manual pages for your OS for details about these system calls.

File scanning method may affect performance of Polygraph under heavy loads or when working with large number of file descriptors. The effect is probably limited to how fast Polygraph can scan all ready files. The ``best'' system call to use depends on the OS and the load on Polygraph. We suspect that performance differences are marginal in many general cases. Experiment if you want to double check your environment.

If you are still using Polygraph 1.x, and your OS does not support poll(2) system call, you have to add -DLACK_POLL to the DEFINES variable in src/xstd/Makefile. Otherwise, Polygraph will not compile. Recent versions of Polygraph do not have this problem. Also, Polygraph 1.x uses select(2) by default.

Name:fake_hosts
Type:comma-separated list of IPs
Default:no default
Version:2.0 and up

Polygraph configuration file binds robots and servers to specific IP addresses. Normally, polyclt and polysrv scan the list of network interfaces available on the host to determine which robots and servers to start. However, the default scan relies on semi-portable system calls and might not work correctly.

To disable the network interface scan, use the --fake_hosts option. The specified list of IP addresses will be used instead of the one obtained from the operating system.

Name:--idle_tout
Type:time
Default:infinity

By default, Polygraph will stop simulation when all phases reach their goals. Sometimes a phase has a goal that cannot be reached. Sometimes network or other external conditions stall all pending transactions. In these and similar situations it is often desirable to stop the simulation even if not all phases are completed.

The --idle_tout option is used to specify a finite time the server should wait for some network activity. If no network activity happens within the specified time, Polygraph will stop the simulation with an ``inactivity timeout'' message.

For Polygraph prior to version 2.0, the inactivity timeout could be specified on server side only.

Name:--rng_seed
Type:integer
Default:1

Rng_seed is used to initialize all random number generators. By varying the seed, one can test how susceptive to random noise the simulation is.

Name:--unique_world
Type:boolean
Default:false

If set to true, unique_world instructs Polygraph use only the random generator seed when generating URLs. By default, Polygraph will use other random factors such as time and process ID to make sure that the URLs do not repeat from one test to another. Use this option if you are trying to preserve the set of URLs across several (similarly configured) runs or across several (similarly configured) polysrv processes of the same test.

Unique_world is essentially a hack that you should avoid unless you know what you are doing. The option's name is unfortunate. It used to be called repeat, but that was even more confusing.

Name:--origin
Type:NetAddress
Default:127.0.0.1:8080
Version:discontinued in 2.0

The origin address is used to connect directly to the origin server when no --proxy option is given. The absence of the --proxy option implies direct connection and causes generation of ``relative'' URLs (i.e., URLs without an http://host:port prefix).

The origin address is always copied to the Host: HTTP header.

If the port value is 80, it is not included in URLs, but is included in Host: headers.

In Poly 1.0, the host part of an address is not interpreted. Earlier versions of Polygraph used the --proxy option to determine the actual destination of a request. See also --abs_urls option for generating ``relative'' URLs in Poly 1.0.

Name:--proxy
Type:NetAddress
Default:no default
(127.0.0.1:8080 in Poly 1.0)

If --proxy option is given, Polygraph assumes proxied connection and generates absolute URLs (i.e., URLs with am http://host:port prefix). The requests are sent to the specified proxy address. See also --origin option.

The host part of the address must be an IP address; FQDNs are not yet supported.

In Poly 1.0, all requests are sent to the address specified in the proxy option. To send requests directly to Polyclient, use Polyclient's address. See also --abs_urls option for generating ``relative'' URLs in Poly 1.0.

Name:--abs_urls
Type:boolean
Default:yes
Version:prior to 1.1

This option is obsolete, see --origin option. The old description is left below for users of Poly 1.0.

By default, Polygraph client will generate absolute URLs. Relative URLs (i.e., URLs without the http://host:port part) are useful for testing transparent proxies.

The affect of specifying relative URLs (--abs_urls no) can be illustrated by the following example:

        http://host:port/whatever        --- absolute URL
        /http:/host:port/whatever        --- relative URL
Disabling absolute URLs have no effect on HTTP headers.

Name:--ports
Type:port range
Default:use ephemeral ports

The ports option instructs Polygraph to explicitly bind(2) a socket to a specific port before making a connect(2) request. The actual port is selected from the specified range, using LRU approach. If the bind(2) call fails, the port is marked as ``used'' and is never tried again unless there are no ``good'' ports left. Poly keeps a map of the ports it is currently using to avoid binding to the same port twice.

In version prior to 2.0, a special value of `ephemeral' instructs Polygraph to leave binding to the operating system. The latter is the default behavior.

The default port range used by OSes for ephemeral ports is often rather small. Thus, an application is likely to run out of available ports if request rate is high and explicit binding is not used.

To reduce the number of run-time conflicts, Polygraph versions starting 1.3.0 pre-scan the given port range to find invalid ports. The scan may add a couple of seconds to polyclt start time.

Name:--conn_pool
Type:integer
Default:no default
Version:discontinued in 2.0

The conn_pool option activates the Connection Pool. The value of the option is the [initial] size of the pool. See also the --conn_pool_dyn option.

Name:--conn_pool_dyn
Type:boolean
Default:no
Version:discontinued in 2.0

The conn_pool_dyn option allows the Connection Pool to grow and shrink on-demand.

Name:--launch_win
Type:time
Default:0
Version:discontinued in 2.0

All Robots are started within the specified ``launch window''. The actual starts are uniformly distributed in [0, launch_win) interval.

When the number of robots is large, starting them at the same time may cause staggering behavior with many transactions effectively ``synchronized''. Specify an appropriate non-zero launch_win to avoid that.

Name:--cool_phase
Type:Time
Default:none
Version:discontinued in 2.0

The cool_phase option specifies the duration of a cool-off phase.

Cool-off phase is usually very short or nonexistent. However, there are cases when it is required to continue to generate traffic some time after the measurement phase. For example, a presence of a cool-off phase helps when several clients are executed concurrently and one want to guarantee that all measurement phases will stop before any of the clients quits.

Name:--robots
Type:integer
Default:no default
Version:discontinued in 2.0

The robots option specifies the number of concurrent Robots to simulate.

Name:--req_rate
Type:Rate
Default:no default
Version:discontinued in 2.0

The req_rate option tells Polyclient to emit HTTP requests at a constant rate. Each Robot will submit requests at a given rate without waiting for responses from the server.

The workload is modeled using Poisson streams. In other words, requests inter-submission times are distributed exponentially.

This option is currently mutually exclusive with the --xact_think option.

Name:--maximize_req_rate
Type:bool
Default:do not
Version:1.3.0 and up
Version:discontinued in 2.0

The maximize_req_rate option enables ``maximum request rate'' searching mode. The option must be used together with the --req_rate option which specifies initial rate. The search is done by incrementing or decrementing actual request rate depending on the reply rate. Verbose level of 4 or higher will display some run-time information about the algorithm at decision points.

Support for this mode is rudimental, and more work is needed.

Name:--ign_bad_cont_tags
Type:boolean
Default:no

The --ign_bad_cont_tags option tells robots to ignore bad content tags that they may find inside response bodies. Polygraph uses semi-custom markup tags to identify embedded opjects (similar to <img> tags in HTML). When the content contains tags that confuse Polygraph (e.g., realistic content simulation is enabled on the server side), you might want to use this option.

Name:--ign_false_hits
Type:boolean
Default:yes (`no' prior to 2.0)

Polygraph knows what objects it has requested during current test. If Poly detects a hit on an object that was requested only once (the current request), it complains about a ``false hit''and registers a transaction error.

However, there are situations when false hits are not really ``false''.

For example, consider situation when objects from previous runs are to be requested again. In such cases, since Poly does not keep any state info between tests, it is likely to complain about false hits. If set, the ign_false_hits option will prevent Polygraph from noticing false hits.

Another example is when two requests for a previously unseen object are submitted very close to each other. If a proxy or poly-server reorders the replies, Polygraph will think that the first reply is a false hit. Because of this, you may want to disable false hit detection after you have verified that your setup is working correctly.

Name:--prn_false_misses
Type:boolean
Default:no

Polygraph knows what objects it has requested during current test. If Poly detects a miss on an object that was requested before, it detects a ``false miss''. False misses are not errors, but an indication that a proxy did not cache an object when it had a chance to do it or purged a cached object.

If set, the prn_false_misses option instructs Polyclt to dump Object Id and reply headers of false misses. The latter is often very helpful for debugging a proxy or workload.

Name:--do_ios
Type:boolean
Default:yes
Version:discontinued in 2.0

Setting do_ios to ``no'', will disable most I/O operations on sockets. The latter may be useful in conjunction with the --prn_reqs option to get a request stream dump without a running server.

Support for this option is experimental.

Name:--world_type
Type:string
Default:Polygraph

The world_type option can be used to modify the world_type part of generated URLs.

Name:--world_id
Type:string
Default:a unique id

World_id specifies the world_id part of generated URLs.

A special value of `unique' can be used to instruct Poly to generate a unique string (which is also the default behavior).

World Ids are often used to prevent (or ensure) overlapping of the requested URLs between runs.

Name:--world_cap
Type:integer
Default:2147483647 or 2^31-1
Versions:1.0p2 and earlier

World_cap specifies the number of unique Objects in the simulated World.

Name:--world_urls
Type:string
Default:no default

The world_urls option instructs Poly to read the set of URLs (actually URL paths to be precise from the specified file. All URLs are read and stored in memory before the first request is generated.

The file format is as follows:

To form a complete URL, pre-loaded URL paths are appended right after the ``host:port'' part of a URL.

World Capacity is not affected by this option! Pre-loaded URLs (say, N of them) correspond to first N Object Ids. If URLs with higher Object Ids are needed, they are auto-generated.

Name:--unique_urls
Type:integer
Default:no default

A positive unique_urls value instructs Polyclient to append a unique suffix to all generated URLs. The suffix is simply a ``counter'' that starts at the offset specified by Unique_urls. Hence, uniqueness is not guaranteed across Polyclient executions.

This option is handy for generating miss-only workloads. An offset is usually set to 1, unless you want to resume an interrupted experiment from a certain point.

Name:--recur
Type:ratio
Default:no default
Versions:2.0.0 only

Note: Starting Polygraph version 2.1.0, recurrence is specified on per-robot basis using PGL.

Recurrence ratio specifies the probability that a URL is revisited by a Robot. Assuming ideal proxy scenario, revisit to a URL results in a ``hit'' iff the corresponding object is cachable.

Note that robots do not know cachability status of the objects they request which makes it impossible to specify Document Hit Ratio as a stand-alone parameter. However, if cachable objects have the same popularity as uncachable ones, DHR can be computed as recurrence ratio divided by cachability ratio. Thus, you can select recurrence to give you a desired hit ratio.

Recurrence ratio is a part of the popularity model. That model is undergoing significant renovation at the time of writing.

Name:--order
Type:integer
Default:no default
Versions:suspended in 1.0p4

When a positive order is specified, Polyclient will pre-generate all Object Ids using some default order and then permutate the generated set. Thus, one is guaranteed that the same set of Object Ids will be used for all experiments that differ only in order settings.

This option is handy for simulating a hit-only workload: All ``passes'' are done with a --unique_urls option and different values of --order option. The first ``pass'' will have all misses. Consecutive passes will have high hit ratios.

The value of 1 is likely to correspond to the order of Object Ids when --order is not specified. However, this behavior may change in the future.

Name:--rep_cachable
Type:Ratio
Default:0
Versions:1.0p4 and up; discontinued in 2.0

The rep_cachable option specifies the portion of cachable replies (not unique Object Ids!) as seen on the client side.

A cachable reply will include

	Cache-Control: public,max-age=31536000
	Expires: a date about one year from ``now''

while an uncachable reply will have

	Cache-Control: private,no-cache
	Pragma: no-cache

Cachability is determined at random. However, the objects (identified by their Object Ids), preserve their status across accesses. In other words, ``once [un]cachable, always [un]cachable''. The status may be preserved across experiments as long as the value of the rep_cachable option and other traffic parameters stay the same, but we are not positive.

The rep_cachable option was moved from Polyserver to Polyclient in 1.0p4.

Name:--dhr
Type:Ratio
Default:0
Versions:1.0p4 and up;
discontinued in 2.0.0 (see --recur instead)

The dhr determines document (object) hit ratio. Hit Ratio Model keeps he ratio stable regardless of other traffic conditions if at all possible.

The ratio is calculated as if an ideal proxy is in use. Hence, the request stream (in terms of hit ratio) does not depend on the actual proxy under test.

A proxy may decide not to cache some of the cachable replies, and it may delete old cachable replies. These and perhaps other proxy actions may lead to a smaller measured hit ratio compared to the offered ratio.

Name:--pop_model
Type:PopModel
Default:zipf
Versions:1.0p4 and up

Pop_model selects the Object Popularity Model to use and allows to specify model parameters if any.

Name:--tmp_loc
Type:Distribution
Default:no default
Versions:1.0p4 and up

The tmp_loc option specifies an inter-request distance distribution to use with the Temporal Reference Locality Model. If a special none distribution is specified, the Temporal Locality Model is disabled and has no effect on traffic generation.

A number of research studies suggested that using lognormal distribution for inter-request distances is appropriate for Web traffic.

Note that inter-request distances are measured in requests, not time units. Thus, no scale factor should be specified for distribution parameters.

Name:--tmp_loc_delta
Type:Integer
Default:1
Versions:1.0p4 and up

The Temporal Reference Locality Model selects one or more candidate slots for the next request to an Object Id. The selected slots are centered around the slot chosen by the locality distribution (see --tmp_loc). The tmp_loc_delta option specifies how many slots to the left and right of the chosen position are to be included in the selection.

For example, a tmp_loc_delta value of 0 means that a selection will include only one slot (the chosen one). A tmp_loc_delta value of 1 will include 3 slots (including the chosen one) into a selection.

Tmp_loc_delta value is also used to select the best Object Id to request next among the first 2*Tmp_loc_delta slots.

To disable temporal locality module, do not use negative tmp_loc_deltas, use none for --tmp_loc_delta instead.

Name:--tmp_loc_depth
Type:Integer
Default:500000
Versions:1.0p4 and up

To support Temporal Reference Locality, Polyclt keeps a schedule or plan of Object Ids to be requested. The tmp_loc_depth option can be used to explicitly specify the plan ``capacity'' or ``depth''.

As a rule of thumb, tmp_loc_depth should be close to the maximum request distance Temporal Locality Model can generate.

Name:--prefilled_cnt
Type:Integer
Default:no default
Versions:none (yet)

Advise Poly that the first prefilled_cnt cachable objects where already requested and should be cached by the proxy.

Polygraph will use the specified Ids to generate hits. It will also warm-up the Temporal Locality plan (with the specified Ids) if the latter is enabled.

Note that Polyclt process may ``pause'' for a second or two to warm-up its plan before issuing the first request.



$Id: cltopts.sml,v 1.17 1999/10/12 19:20:33 rousskov Exp $