Skip to content

Load-balance Level Coarsening (LBC) is a scheduling algorithm for making sparse matrix loops parallel. It can be used within code generators or libraries. For more information see Sympiler website

License

Notifications You must be signed in to change notification settings

ShujianQian/lbc

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Load-balance Level Coarsening (LBC)

Load-balance Level Coarsening is a scheduling algorithm for making sparse matrix loops parallel. It can be used within code generators or libraries. For more information see Sympiler website.

Install

Linux

LBC library does not have any dependency. However, if you want to run the triangular solve example, you need to install METIS. If METIS is installed in the system path, CMAKE will resolve the dpendency otherwise you need to set CMAKE_PREFIX_PATH to the root directory of metis, i.e., where the cmakelists file exists. For installing METIS in Ubuntu you can also use

sudo apt install metis

Then install LBC by following commands:

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make

Mac

Setting the C and CXX compilers to GCC and then follow the Linux instructions.

Example

As an example, sparse triangular solver example, CSR is turned into a parallel code using the LBC algorithm.

About

Load-balance Level Coarsening (LBC) is a scheduling algorithm for making sparse matrix loops parallel. It can be used within code generators or libraries. For more information see Sympiler website

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 97.1%
  • CMake 2.9%