simit

by simit-lang

simit-lang / simit

A language for computing on sparse systems

435 Stars 49 Forks Last release: Not found Other 2.7K Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

Simit is a new programming language designed to make it easy to write high-performance code to compute on sparse systems. For more information see simit-lang.org.

Build Simit

To build Simit you must install CMake 2.8.3 or greater and LLVM 3.7 or greater. You must then make sure llvm-config is available in your path.

If you want to build LLVM yourself you can check it out using SVN:

svn co https://llvm.org/svn/llvm-project/llvm/branches/release_37 llvm3.7

then build it:

cd llvm3.7
mkdir build
cd build
cmake -DLLVM_ENABLE_TERMINFO=OFF -DLLVM_TARGETS_TO_BUILD="X86;NVPTX" -DLLVM_ENABLE_ASSERTIONS=ON -DLLVM_ENABLE_RTTI=ON -DCMAKE_BUILD_TYPE=Release ..
make -j8

then point Simit to it:

export LLVM_CONFIG=/build/bin/llvm-config

To perform an out-of-tree build of Simit do:

cd 
mkdir build
cd build
cmake ..
make -j8

To run the test suite do (all tests should pass, but ignore disabled tests):

cd 
./build/bin/simit-test

To check a Simit program:

cd 
./build/bin/simit-check 

For example:

./build/bin/simit-check apps/springs/isprings.sim

To make the Simit bin directory part of your PATH:

cd 
export PATH="$PATH:`pwd`/build/bin"

To build Simit's documentation:

cd 
doxygen

This will create a doc directory containing HTML documentation. Open

doc/index.html
in your browser.

License

Simit is under a permissive MIT license. We encourage you to use it for research or commercially!

If you do use it, we'd greatly appreciate a note saying what you use it for! (However, we stress that you're under no obligation to do so.)

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.