#!/bin/bash
#
# simlarge.runconf - file containing information necessary to run a specific
#                    program of the PARSEC benchmark suite
#
# Copyright (C) 2007 Princeton University
# Written by Christian Bienia

# This is the information which we need to run the program. Each package of the
# benchmark suite has such a file with information that will be added to the
# global configuration. All variables set in the global configuration files can
# be referenced here.


# Binary file to execute, relative to installation root
run_exec="bin/bodytrack"

# Arguments to use
run_args="sequenceB_4 4 4 4000 5 0 ${NTHREADS}"

