Skip to content

A miniaturized Sandpile Model, used as an subject of experiments to work on compilation, HPC, SIMD and MIMD improvements. Made by @inescipullo and @ZimmSebas

License

Notifications You must be signed in to change notification settings

InconsistentSand/tiny-manna

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tiny Manna

A miniaturized Sandpile Model was used as a subject of experiments on optimization, including compilation, HPC, SIMD, and MIMD improvements.

This is currently a work in progress for the parallel computing elective subject by @inescipullo and @ZimmSebas.

The Original folder only has experiments with flags and a couple of improvements over the code.

The SIMD folder has an intrinsic approach using 256 bits vector instructions (a pack of 16 shorts).

The MIMD folder has a combination of SIMD with intrinsics and OpenMP parallelization.

How to run

For a naive run, you can use:

make
./tiny_manna

But for more efficiency, you can specify compilator and flags, something like:

make CXX=g++ CXXFLAGS="-std=c++17 -O3 -march=native -mavx2"
./tiny_manna

See the Makefile for more options

Original version

The original code for this project comes from here

About

A miniaturized Sandpile Model, used as an subject of experiments to work on compilation, HPC, SIMD and MIMD improvements. Made by @inescipullo and @ZimmSebas

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •