|
|
|
|
|
|
Figure 5.22
Effect of system activities on miss rate (16-byte line cache). Data
were based on an integrated cache. We assume that indicated data are
applicable to integrated, instruction, and data caches. (See text.) We
also assume that caches with set associativity greater than 4 behave
as 4w set associative. |
|
|
|
|
|
|
|
|
such environments must be analyzed in a separate framework. For our purposes, we distinguish two environments: |
|
|
|
|
|
|
|
|
1. A multiprogrammed environment. In this environment, a system together with several programs is resident in memory. Control is passed from program to program, in round-robin fashion, after a number of instructions have been executed, and eventually returns to the first program. |
|
|
|
|
|
|
|
|
2. Transaction processing. Here, the system is resident in memory together with a number of support programs. Very short applications (transactions) are run through to completion. These programs are brought in on demand. |
|
|
|
|
|
|
|
|
Both of the preceding environments are characterized by passing control from one program to another after executing instructions. Both the transaction environment and the multiprogrammed environment share these common features: |
|
|
|
|
|
|
|
|
An operating system resident in memory and its working set, presumed resident in the cache. |
|
|
|
|
|
|
|
|
A possibly low number of instructions between task switches a relatively low Q factor. |
|
|
|
|
|
|
|
|
This low Q factor causes a higher-than-average miss rate, since misses tend to cluster at the beginning of a task switch as a working set is loaded for a particular task (Figure 5.23). If that task is then not run through to completion, the initial misses caused by loading of the cache working set cannot be amortized over the complete task. The working set must be reloaded |
|
|
|
|
|