📄 readme.cheetah
字号:
[Greetings, this is the README and man pages from the original Cheetah release by Rabin A. Sugumar and Santosh G. Abraham. All cheetah sources are contained in the directory "libcheetah/". The simulator "sim-cheetah" interfaces to the cheetah engine, and supports most of the options described below.]Cheetah is a cache simulation package which can simulate various cacheconfigurations in a single pass through the address trace.Specifically, Cheetah can simulate ranges of set-associative,fully-associative or direct-mapped caches. Here are answers to somecommon questions.Why a package for cache simulation ?It is fairly trivial to write a cache simulator which simulates onecache at a time and outputs the miss ratio. However, cache simulatorsare typically used to simulate traces on several configurations, andsingle cache simulators are inefficient and difficult to manage forsuch purposes.Cheetah uses extremely efficient single-pass algorithms to simulatemultiple cache configurations. These algorithms exploit inclusion andother properties that hold between cache configurations. Therefore,Cheetah has the potential to speed-up the cache evaluation processsignificantly.Additionally, Cheetah can simulate caches under OPT replacement [2].Cache simulators for OPT are difficult to develop. Cheetah uses newalgorithms that we developed to perform single-pass simulation ofcaches under OPT replacement efficiently.How does Cheetah differ from other cache simulation packages like'Dinero III' (developed by Mark Hill, and distributed with theHennessy-Patterson book on architecture) and 'Tycho' also developed byMark Hill ?Dinero III (V3.3) simulates one set-associative cache configuration ata time. In contrast, Cheetah simulates a range of set-associative orfully-associative cache configurations at a time. Further, Cheetahcan simulate OPT as well as LRU replacement; Dinero III can simulateLRU, random and FIFO. However, Dinero III simulates sub-blockplacement, prefetch strategies and write effects. Currently, Cheetahcannot simulate these features. Tycho is a single pass simulator for multiple LRU set-associativecaches. Tycho's capabilities are a subset of those of Cheetah.Further, the algorithm [1] that Cheetah uses to do the set-associativecache simulation is more efficient both in terms of simulation timeand memory requirements than the one used in Tycho. Typically, on atrace generated using the pixie tool (available on workstations basedon the MIPS processor), Cheetah is about six times faster than Tycho,partly due to algorithmic improvements (2X) and partly due toformatting overheads (3X).The following publications describe the various algorithms used inCheetah in greater detail:[1] Rabin A. Sugumar and Santosh G. Abraham, ``Efficient simulation of caches using binomial trees,'' Technical Report CSE-TR 1991.[2] Rabin A. Sugumar and Santosh G. Abraham, ``Efficient simulation of caches under OPT replacement with applications to miss characterization,'' in the proceedings of the 1993 ACM SIGMETRICS conference.What are the conditions of use ?You are free to use this package as you wish. You should understand,however, that although we have tried hard to ensure that the simulatoris accurate, we do not guarantee anything, and that this package isdistributed with absolutely no warranty.You are also free to modify and distribute this package as you wish aslong as it is not for commercial gain. We ask that you retain ourcopyright notice and make clear what your modifications were.If you use the simulator extensively in any of your publications,please reference one of the relevant papers above.Also, if you use the simulator, we would like to hear from you to have arough idea of where it is being used. We could then inform you aboutbug fixes and new versions of the package. We would also like to hearany comments you have on the simulator, and about any improvements youmake so that we can incorporate them in future releases.We can be reached by email at rabin@eecs.umich.edu or sga@eecs.umich.edu .***********************************************************************************Files in the directory COPYRIGHT Copyright notice README This file VERSION Version number Makefile Make file main.c Common user interface saclru.c LRU set-associative cache simulator. faclru.c LRU fully-associative cache simulator. sacopt.c OPT set-associative cache simulator. facopt.c OPT fully-associative cache simulator. ppopt.c Preprocessor for OPT simulators. dmvl.c Variable line size direct-mapped cache simulator. ascbin.c Conversion program. ASCII to basic binary format. pixie.c Routine that converts pixie format to simulator format. din.c Routine that converts DIN format to simulator format. utils.c Some common functions used by the simulators. orig_results Result file used to test installation. trace.ccom.Z A sample trace in ASCII format. To run this on cheetah uncompress trace.ccom ascbin < trace.ccom > trace_file cheetah -Fbasic -ftrace_file [other options] cheetah.1 Man page. To view: 'nroff -man cheetah.1' .Installation 'make cheetah' will make the simulator. 'make test' will make the simulator and also test it on the sample trace.-- cheetah(1) cheetah(1) NAME cheetah - Single-pass simulator for direct-mapped, set- associative and fully associative caches. SYNTAX cheetah [ -options ] DESCRIPTION cheetah is a cache simulation package which can simulate various cache configurations. It is a collection of single-pass simulators which simulate ranges of direct- mapped, set-associative and fully-associative caches. The input to cheetah is a memory address trace in one of three formats: (i) A binary format where the trace is a sequence of four byte addresses. This is the format that is actually used in the simulator, and hence no internal conversion step is required. If the trace format you have is not among those supported by cheetah it is most efficient to convert it to the binary format for use with cheetah. (ii) The pixie format, where the trace is as output by the pixie tool available on MIPS processor based workstations. (iii) The DIN format, developed by Mark Hill, and used by earlier cache simulators such as Tycho and Dinero III. cheetah outputs the miss ratios of the various caches simulated. cheetah uses efficient single-pass simulation algorithms, and so in each simulation run it can determine the miss- ratios of a range of cache configurations. It exploits inclusion and other relations that hold between cache configurations to significantly speedup the simulation. When many cache configurations need to be simulated on several traces the use of cheetah should greatly improve the efficiency of the process over running a large number of simulations with simple one-cache-at-a-time simulators. Tycho (Mark Hill 1989) is an earlier cache simulation package that also used single-pass simulation algorithms for simulating multiple LRU set-associative caches. The capabilities of cheetah are a superset of those of Tycho. Further, the algorithm that cheetah uses to simulate set- associative caches is more efficient both in terms of simulation time and memory requirements that the one used in Tycho. cheetah can simulate caches under LRU and OPT replacement strategies. With OPT replacement the set-associative simulators permit cache bypass. That is, on a miss the Page 1 (printed 1/21/97) cheetah(1) cheetah(1) referenced line is installed in cache only if its priority is high enough. OPT replacement is done by doing a limited look-ahead in the trace and fixing errors in the stack using a stack repair procedure. For further details on the algorithms used in cheetah please see the publications referenced below. OPTIONS (If the option is not specified, the corresponding parameter takes a default value in all cases.) cheetah has four major options which set the replacement strategy, the cache configuration, the trace format and the trace type. -R repl Used to specify the replacement strategy. Replacement policies that are currently supported are lru and opt. (default lru ) -C config Used to specify the configuration. Configuration can be one of fa Simulate fully-associative caches. sa Simulate set-associative caches. dm Simulate direct-mapped caches. Direct-mapped should be specified only if direct-mapped
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -