Article Figure 1 Figure 2 Figure 3 Listing 1
Listing 2 Sidebar mar2004.tar

Polyfill-2

The important parts of Polyfill-2 (shown in Listing 2) are as follows:

Line 11: In this line, a file is included in our workload file. Those files contain some standard data used in many benchmarks. It is useful to have them in one place so that changes to them happen only once.

Line 15: This line defines the cache size of the proxy server. Depending on the server, this may vary from a few megabytes for home servers to several hundred gigabytes for large servers. This will also affect the duration of the benchmark.

Line 39: Here, the IP addresses of the server processes (polysrv) are defined. In this occasion, two server processes are created with the same IP but on different ports. According to the available machines, we define the server IP addresses and ports.

Line 40: This line defines the polyclt IPs. In our case, five different polyclt processes are defined with 10.100.123.123 as their IP address.

Line 59: A benchmark can contain many phases, each one doing a different thing. This line defines a phase named "warm" that warms up the proxy cache for 2 minutes before starting the real cache filling.

Line 60: This line defines another phase, called "meas". It is the main phase, which tells that it will have to fill twice the cache size that was defined in line 15 before ending.

Line 63: This line says that not only must the phases be defined but a schedule must also be made. phCool phase is defined in file phases.pg and is common in all the benchmarks.