Giter VIP home page Giter VIP logo

swan_runtime's Introduction

Swan runtime library, based on the
Intel(R) Cilk(TM) Plus runtime library

This runtime library supports Swan, a Cilk extension with dataflow
dependencies. The remainder of this README is unmodified as the
default build instructions apply. Use in conjunction with
the Clang compiler at github.com/hvdieren/swan_clang

Index:
1. BUILDING
2. USING
3. DOXYGEN DOCUMENTATION
4. QUESTIONS OR BUGS
5. CONTRIBUTIONS

#
#  1. BUILDING:
#

To distribute applications that use the Intel Cilk Plus language
extensions to non-development systems, you need to build the Intel
Cilk Plus runtime library and distribute it with your application.

To build the libcilkrts.so runtime library component, you need the
autoconf and automake packages, which are available through your
favorite package manager.  You also need a C/C++ compiler that
supports the Intel Cilk Plus language extensions, since the runtime
uses Intel Cilk Plus features internally.  Use either the Intel(R)
C++ Compiler (icc command) v12.1 or later, or in GCC 4.9 or later
(gcc command).

Once you have the necessary prerequisites installed, you can use the
following commands to create the library:

% libtoolize
% aclocal
% automake --add-missing
% autoconf
% ./configure
% make
% make install

This will produce the libcilkrts.so shared object.  To install the
library in a custom location, set the prefix while running the
configure script:

% ./configure --prefix=/your/path/to/lib

It is also possible to use CMake if the above method does not apply
well in your environment. Instruction is available in CMakeLists.txt.

#
#  2. USING:
#

The Intel(R) C++ Compiler will automatically try to bring in the
Intel Cilk Plus runtime in any program that uses the relevant
features.  GCC requires explicit linking of both the library and
its dependencies (libpthread, libdl).  For example:

% gcc foo.c -lcilkrts -lpthread -ldl

#
#  3. DOXYGEN DOCUMENTATION:
#

The library source has Doxygen markup.  Generate HTML documentation
based on the markup by changing directory into runtime and running:

% doxygen doxygen.cfg

#
#  4. QUESTIONS OR BUGS:
#

Issues with the Intel Cilk Plus runtime can be addressed in the Intel
Cilk Plus forums:
http://software.intel.com/en-us/forums/intel-cilk-plus/

#
#  5. CONTRIBUTIONS:
#

The Intel Cilk Plus runtime library is dual licensed. The upstream copy
of the library is maintained via the BSD-licensed version available at:
http://cilkplus.org/

Changes to the Intel Cilk Plus runtime are welcome and should be
contributed to the upstream version via http://cilkplus.org/.

Thanks to Tobias Burnus for showing us the magic to make gcc and g++
automatically include the Cilk Plus runtime.

------------------------
Intel and Cilk are trademarks of Intel Corporation in the U.S. and/or
other countries.

swan_runtime's People

Contributors

bmtannen-intel avatar hansangbae avatar hvdieren avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

project-asap

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.