Li Benchmark Specifications 1. GENERAL 1.1. Classification Li is a CPU intensive integer benchmark written in C. The benchmark performs minimal I/O. 1.2 Description Li is a Lisp interpreter written in C. We measure the time Li takes to solve the 9-queens problem [ref. Winston & Horn Chapter 11]. The input file to the interpreter contains Lisp code that defines the 9-queens problem. 1.3 Source/Author This benchmark has been developed at Sun Microsystems and is based on XLISP 1.6 written by David Michael Betz. XLISP is a small implementation of Lisp with object-oriented program- ming. 1.4 Version/Date Benchmark Version 1.0, Date 11/22/88. 1.5 Other Information We have successfully run this benchmark on all Sun machines, Micro VAX II, SGI IRIS-4D/80 GT, DECstation 3100, and MIPS M2000. 2. PERFORMANCE 2.1. Metrics The metric used is the elapsed (real) time as output by /bin/time. On a Sun-4/280 the elapsed time is about 675 seconds. 2.2. Elapsed Time As above. The reference time (to 3 sig. fig. ) is 6210 seconds. 2.3. Reports The output of /bin/time is directed to a file called "time.out". The output of the XLISP interpreter is directed to "result.out" under normal circumstances. We recommend that at least 5 runs be made. 2.4 Additional Performance Considerations Variations of the elapsed time between runs should not be more than 5% under normal circumstances. This benchmark should be run on an idle machine or one in single-user mode since elapsed time is sensitive to other activities on the machine. 2 3. SOFTWARE 3.1 Language The XLISP interpreter is written in C. 3.2 Operating System The benchmark runs on a variety of UNIX-based systems. Some support files for MS-DOS, etc. are provided by the author of XLISP but have not been tried out yet. 3.3 Portability The benchmark has been run on both 4.2 BSD and System V based machines. No OS dependencies (e.g. BSD or System V specific include files) are known to exist so porting it should be easy. 3.4 Vectorizability/Multi-Processor Issues Non Vectorizable. 3.5 Miscellaneous Software None needed for execution of the benchmark. 3.6 Known Bugs None. 3.7 Additional Software Considerations None. 4. HARDWARE 4.1 Memory The performance of this benchmark is not memory dependent. It has been run on 4 MB systems. 4.2 Disks No special requirements. 4.3 Communication None. 4.4 Special Hardware None. 4.5 Additional Hardware Considerations None 3 5. OPERATIONAL 5.1 Disk Space Total disk space required is < 4MB. Size of executable is about 150 KB. 5.2 Installation Retrieve "li" directory using shar or tar (or appropriate utilities). No special installation procedures required. 5.3 Execution Compile at the highest level of optimization possible. The script executes the following command: % /bin/time xlisp li-input.lsp > result.out 2> time.out 5.4 Correctness Verification Correctness validation is performed as follows: % diff result.ref/result.out result/result.out 5.5 Additional Operational Considerations Since the amount of program output is small (< 20 KB). 5.6 Run The input file to be used is call "li-input.lsp". In the normal mode of execution the program output is directed to "result.out". However, if the program output is directed to standard-output, the output would be as follows: % /bin/time xlisp li-input.lsp XLISP version 1.6, Copyright (c) 1985, by David Betz ; loading "li-input.lsp" ((1 1) (2 3) (3 6) (4 8) (5 2) (6 4) (7 9) (8 7) (9 5)) ((1 1) (2 3) (3 7) (4 2) (5 8) (6 5) (7 9) (8 4) (9 6)) ((1 9) (2 5) (3 8) (4 4) (5 1) (6 7) (7 2) (8 6) (9 3)) ---- ---- ---- ((1 9) (2 6) (3 8) (4 2) (5 4) (6 1) (7 7) (8 5) (9 3)) ((1 9) (2 7) (3 2) (4 4) (5 1) (6 8) (7 5) (8 3) (9 6)) ((1 9) (2 7) (3 3) (4 8) (5 2) (6 5) (7 1) (8 6) (9 4)) ((1 9) (2 7) (3 4) (4 2) (5 8) (6 6) (7 1) (8 3) (9 5)) _6_7_5._4 _r_e_a_l _6_7_0._1 _u_s_e_r _5._3 _s_y_s