Skip to content

The OpenDwarfs project provides a suite of applications implemented in OpenCL intended for quickly benchmarking different platforms. The first instantiation tested these dwarves on Nvidia and AMD GPUs. This fork adds compatibility for Altera FPGAs and scaled the inputs to longer sequences of larger problems.

License

nz-ocl/OpenDwarfs

 
 

Repository files navigation

OpenDwarfs
=============
The OpenDwarfs project provides a benchmark suite consisting of different
computation/communication idioms, i.e., dwarfs, for state-of-art multicore and
heterogenous systems.  The first instantiation of the OpenDwarfs has been realized in
OpenCL, as described in part in "OpenCL and the 13 Dwarfs: A Work in Progress"
by Feng, Lin, Scogland, and Zhang in the 3rd ACM/SPEC International Conference
on Performance Engineering, April 2012.

This rendition of OpenDwarfs has seen the input sized scaled and the code altered for
compatibility with Altera FPGAs. This process has been completed for sparse-linear-algebra
as well as combinational-logic. However, all dwarfs are included here as development on them
is continuing.


The computation/communication idioms are based on the 13 Berkeley Dwarfs:
(http://view.eecs.berkeley.edu/wiki/Dwarf_Mine).

Requirements
------------

Packages and libraries needed to build and run the applications.

To build:

    opencl >= 1.0 (some apps require 1.1, but we do not yet guarantee support for 1.2 in all applications.)
    autoconf >= 2.63
    autoheader
    automake
    libtool
    gcc
    maker

To run:

    opencl libs

Building
--------

To build all of the included applications for CPU or GPU:

    $ ./autogen.sh
    $ mkdir cpu-build
    $ cd cpu-build
    $ ../configure --with-opencl-sdk=/path/to/desired/sdk CPPFLAGS=-I/path/to/desired/sdk/include
    $ make
    
To build all of the included applications for an Altera FPGA:

	$ ./autogen.sh
    $ mkdir fpga-build
    $ cd fpga-build
    $ ../configure --with-AOCL=/path/to/AOCL CPPFLAGS=-I/path/to/AOCL/host/include
    $ make
    
To build only the applications you select, call configure with the --with-apps
option:

    $ ../configure --with-apps=srad,gem,cfd

To see a full list of options and applications:

    $ ../configure --help

Running
-------

See the application-specific README file in each application's directory.

Acknowledgements
----------------

This project was supported in part by AMD, Air Force Research Lab, Department of
Defense, Harris, Los Alamos National Laboratory, and Xilinx via the NSF Center
for High-Performance Reconfigurable Computing (CHREC) under NSF grant
IIP-0804155 and indirectly by NSF grants CNS-0916719 and MRI-0960081.

About

The OpenDwarfs project provides a suite of applications implemented in OpenCL intended for quickly benchmarking different platforms. The first instantiation tested these dwarves on Nvidia and AMD GPUs. This fork adds compatibility for Altera FPGAs and scaled the inputs to longer sequences of larger problems.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 57.1%
  • C++ 27.2%
  • Shell 14.6%
  • D 1.1%