# syntax is param_name=value1,[value2,...] # value can be string for some parameters, or numerical for the rest # numerical is: # - single number: 500 # - range: 1-20 (with default linear step 1) # - range with linear step: 0-20/4 (means 0,4,8,12,16,20) # - range with exponential step: 1-8^2 (means 1,2,4,8) # all numbers can have suffix 'k' or 'm' # rib will benchmark all possible combinations of parameter values ## common parameters for all benchmarks # warmup results to throw away before each collected sample (not used in cache_lzw) warmup_count=10 # samples to collect for each combination of parameters samples_count=50 # optional, list of performance events to measure # see http://icl.cs.utk.edu/projects/papi/presets.html for supported events # currently implemented in: cache_artifical, cache_fft papi_events=PAPI_L1_DCM,PAPI_L1_ICM,PAPI_L2_DCM,PAPI_L2_ICM ## cache trashing parameters - common to cache_* benchmarks # cache trashing method # 1 - linear sweep of trashing area # 2 - pointer-based random permutation count (trashes in random order) # for cache_artifical requires cnt_method=1 || no count/trash area overlap || (cnt_step > 1 && tsh_step > 1) ); # so the pointers for trashing and counting dont mix up tsh_method=1 # start of area for trashing relative to allocated buffer size (bytes) tsh_shift=0k-512k/4k # size of trashing area (bytes) tsh_size=512k # how much of memory trash (bytes), must be >=tsh_size # for linear trash - the begining of trashing area of tsh_length is swept # pointer-based trash - determines how many pointers to follow tsh_length=512k # step when advancing to next array element (bytes, aligned to sizeof(uint)) tsh_step=16 # amount of L1 instruction cache trashing, before performing general L2 trashing (bytes) tshic_length=32k # benchmark/thrashing procedure type # - cache_artifical - measured workload is making sum of integers array # - cache_lzw - measured workload is lzw based on ncompress # - cache_fft - measured workload is fft # - cache_ray - raytracing benchmark benchmark=cache_artifical thrashing=cache_fft [benchmark] [thrashing] ## following parameters are for cache_artifical only # 1 - old linear count of array containing random integers # pointer-based - each integer in array is also treated as pointer to next integer # 2 - pointer-based linear count # 3 - pointer-based random permutation count cnt_method=1 # start of area for counting relative to allocated buffer size (bytes) cnt_shift=0 # size of counting area (bytes) cnt_size=512k # step when advancing to next array element (bytes, aligned to sizeof(uint)) cnt_step=1 ## following parameters are for cache_lzw only # name of file to compress compress_file=something.tar # maximal code length -> affects max dictionary size, valid values are 9 to 16 compress_maxbits=9-16 # compress reads input / writes output by 8k blocks, following parameters control after how many reads/writes trashing occurs tsh_read_rate=4 tsh_write_rate=4 ## cache_fft specific # 1 = fft.c benchmark, 2 = fftw fft_method=2 # fft_method = 1 => total memory allocated for fft (bytes) = 2*size of input data # fft_method = 2 => size of input data (bytes) fft_size=512k ## cache_ray specific # complexity of raytraced scene ray_levels=9 # x and y dimension of result (pixels) ray_size=512