The RSTM package is now available as a Google code project. We welcome your comments, suggestions, and contributions. Future releases will occur through the Google code mechanism.
The information hosted here is accurate with respect to the fifth release, and the initial Google code release. The STM Implementations and STM Primer pages will continue to be relevant, but we expect the RSTM-specific information hosted at the University of Rochester to become rapidly out-of-date.
We have successfully built and tested RSTM in the following environments:
The timing code and atomic operations necessary to run RSTM on OpenBSD and FreeBSD are available in the latest release. There is also experimental support for Itanium processors. You will also see POWER related fencing, however we do not officially support POWER platforms in this release.
If you successfully build RSTM in another environment, please let us know!
There are 5 top-level folders:
alt-license/
- code not owned by the University of
Rochester Department of Computer Science, such as parts of the
Loki library, Win32 GetOpt,
and rand_r() for Win32.VisualStudio/
- projects for building in Windowslibstamp/
- bindings to build a librstm.a
library that can be used with
the STAMP benchmark suitestm/
- all library codemesh/
- Delaunay triangulation codebench/
- data structure microbenchmarksswarm/
- OpenGL 3D rendering applicationhashing/
- extensible hashing benchmarksVisualStudio/
for platform specific
information.
make stmconfig ./stmconfig
make all
-e
flag when building stmconfig
. If you
have gcc-4.2
installed as g++-4.2
, you can use
this by configuring with
make stmconfig -e CXX=g++-4.2
LLVM-2.5
in a whole-program optimization mode
using the configuration command
CXX=llvm-g++ make stmconfigThis is slightly different than passing
-e
flag because the
compiler used to compile stmconfig
is
actually llvm-gcc
, which is what we need to trigger the
correct configuration.
Please note that the makefiles are written for GNU make. On Solaris machines, use 'gmake'.
To build these benchmarks, you must first configure and build the stm library using the above instructions. Then enter the appropriate directory and type 'make'.
The swarm benchmark requires the GL Utility
Toolkit GLUT
, which may or may not be preinstalled in your
system. See the swarm README for more detailed information.
Please note that the mesh has not yet been ported to Microsoft Windows.