[LLVMdev] Need help on SPEC 95 "standard" commandlines

Long Fei lfei at ecn.purdue.edu
Thu Jul 21 20:51:35 PDT 2005


Some of the run commandlines don't seem to be the *default ref* 
configuration. For instance, in 099.go, what's in the script is:

LEVEL = ../../../..
BM=099.go

ifeq ($(RUN_TYPE),test)
STDIN_FILENAME  = /dev/null
STDOUT_FILENAME = null.out
RUN_OPTIONS     = 40 19
else
STDIN_FILENAME  = 2stone9.in
STDOUT_FILENAME = 2stone9.out
RUN_OPTIONS     = 50 9
endif
include ../../Makefile.spec95
Makefile (END)

which suggests the compiling command:
gcc -DSPEC_CPU95 -O2 -o spec_go g2.c g22.c g23.c g25.c g26.c g27a.c 
g27b.c g28.c g29.c g2eye.c g2jlib2.c g2jos.c g2list.c g2reas.c g2s2.c 
g2s3.c g2shp.c
and the running commandline:
./spec_go 50 9 2stone9.in
< are these correct ? >

This must be a shrinked problem size, since 2stone9.in is in the 
training set, not the ref set. < There are two input files in ref 
subdirectory. Which one is the default config ? and are 50 and 9 the 
default settings ? >

So I was asking if you can tell me what the *default ref* configurations 
are. In particular, 099.go, 129.compress, 130.li, 132.ijpeg.
I agree that they use the same compiling commandline, but the running 
commandline is still a remaining problem.


thanks,
--Long


Chris Lattner wrote:

> On Thu, 21 Jul 2005, Long Fei wrote:
>
>> Does anyone know the "standard" commandline to compile and run spec95 
>> benchmarks ?
>>
>> I found some scripts in llvm test suite (External/SPEC/CINT95), but I 
>> am not sure if they are the *default ref* configurations. <Some of 
>> them seem to use smaller problem sizes.> SPEC95 was retired many 
>> years ago, so few people around me know how to compile and run them.
>>
>> I am building from sourcefile without installation. so I expect 
>> commandlines like:
>> <gcc -Dflag1 -Dflag2 -O2 -o spec_go aaa.c bbb.c ... nnn.c -lm>
>> and then
>> <./spec_go param_1 param_2 ...>
>>
>> For instance, in SPEC2000 175.vpr, we have:
>> 1) gcc -DNDEBUG -DNO_GRAPHICS -O2 -o spec_vpr main.c util.c 
>> read_netlist.c read_arch.c place.c route.c draw.c graphics.c stats.c 
>> segment_stats.c rr_graph.c rr_graph2.c rr_graph_sbox.c 
>> rr_graph_util.c rr_graph_timing_params.c rr_graph_area.c 
>> check_rr_graph.c check_route.c hash.c read_place.c -lm
>> 2) ./spec_vpr net.in arch.in place.out dum.out -nodisp -place_only 
>> -init_t 5 -exit_t 0.005 -alpha_t 0.9412 -inner_num 2
>>
>> I am particularly interested in the following CINT95 benchmarks:
>> 099.go, 129.compress, 130.li, 132.ijpeg
>>
>> can anyone tell me the "standard" commandline to compile and run 
>> these benchmarks with the default ref configurations ?
>
>
> All of this is defined by the Spec subdirectory of the test in the 
> SPEC distribution.  Note that different problem inputs 
> (test/ref/train) are not different compile-time options, they are 
> different input files and command line arguments.  If you look at the 
> LLVM llvm-test makefiles, this information is also encoded.  From the 
> 126.gcc makefile, for example, you'll see:
>
> RUN_OPTIONS := -quiet -funroll-loops -fforce-mem -fcse-follow-jumps 
> -fcse-skip-blocks -fexpensive-optimizati
> ons -fstrength-reduce -fpeephole -fschedule-insns -finline-functions 
> -fschedule-insns2 -O -o -
>
> ifeq ($(RUN_TYPE),test)
> STDIN_FILENAME = cccp.i
> STDOUT_FILENAME = cccp.s
> else
> STDIN_FILENAME = amptjp.i
> STDOUT_FILENAME = amptjp.s
> endif
>
> Note that llvm-test compiles the benchmarks a file at a time (with 
> -c), not all at once.
>
> -Chris
>




More information about the llvm-dev mailing list