GraalBench Benchmark Suite v1 Downloads


More details about GraalBench can be found in our LCTES 2004 paper:
I. Antochi, B.H.H. Juurlink, S. Vassiliadis, P. Liuha, GraalBench: A 3D Graphics Benchmark Suite for Mobile Phones, Proceedings of the 2004 ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools, pp. 1-9, Washington, DC, USA, June 2004. Download PDF

If you find GraalBench traces usefull for your research and publish results based upon them then please acknowledge it.

GraalBench Traces

Quake 3 Low Res Download (31MB)
Quake 3 High Res Download (31MB)
Tux Racer Download (16MB)
AWadvs Download (4.7MB)
Graz 3D Download (2.7MB)
Austrian National Library Download (2.8MB)
Dino Download (1.8M)

Each trace was compressed using the RAR archiver. Traces need to be decompressed first from the rar archives in order to be used as input to the trace player. Since the uncompressed size of some traces is quite large (up to 2GB), please make sure you have enough space to uncompress them.

Trace Player

In order to play the traces, a slightly modified version of the the Stanford GLtrace player is required. You can download the original GLtrace (glt-20030224.tar.gz) source archive from the GLTrace homepage at Stanford. You also need to download and apply the changes from the following patch archive in order to play some of the traces (e.g Tux).

Other Required Resources

A software OpenGL implementation such as Mesa or OpenGL drivers for hardware OpenGL accelerators.

Compilation and Installation Instructions for Linux

  1. Unpack the GLtrace archive into a directory of your choice. You should find a glt directory created in your chosen directory. From the patch file copy the flags file over the glt/perl/shared/flags file and the glimpl.c.sp file over the glt/trace/glimpl.c.sp file.
  2. Read the README file from the glt directory
  3. in the glt directory issue the make command
  4. If there were no compilation errors then you should find a glplay executable file in the ltools directory. A list of some possible compilation errors and solutions is located here.
  5. You can play a (.tlg) trace file by using the
    glplay trace.tlg
    command, where trace.tlg is a trace in the ".tlg" format.

Compilation Errors

  1. file.c:109:55: pasting "glt_warn" and "(" does not give a valid preprocessing token
    You might need to update the macro definition of the glt_mesg_va macro. In the glt/lib/glt.h.pl file change the line
    print("#define glt_mesg_va(f,p) __glt_if(__glt_debug & (f),glt_warn##p)\n");
    into
    print("#define glt_mesg_va(f,p) __glt_if(__glt_debug & (f),glt_warn p)\n");
    followed by issuing make veryclean ; make in the glt directory.

  2. glimpl.c:2972: error: conflicting types for `glEdgeFlagPointer'
    You might need to update the definition and the declaration of the glEdgeFlagPointer function. In the glt/perl/shared/glheaders.h file change the last parameter of the line containing the glEdgeFlagPointer function
    extern void glEdgeFlagPointer (GLsizei stride, const GLboolean *pointer);
    into
    extern void glEdgeFlagPointer (GLsizei stride, const GLvoid *pointer);
    followed by issuing make veryclean ; make in the glt directory.

  3. timer.c: In function `timer_reset':
    timer.c:32: error: `NULL' undeclared (first use in this function)
    timer.c:32: error: (Each undeclared identifier is reported only once
    In file glt/tools/timer.c you might need to add an #include<stdlib.h> line after the #include"timer.h" line.
    followed by issuing make in the glt directory.


GraalBench HomePage


This page is under construction, any suggestions are welcome.
Last modified: Nov. 4, 2004 by Iosif ANTOCHI