Skip to content

mallocMC: Memory Allocator for Many Core Architectures

License

Notifications You must be signed in to change notification settings

slizzered/mallocMC

 
 

Repository files navigation

mallocMC

mallocMC: Memory Allocator for Many Core Architectures

This project provides a framework for fast memory managers on many core accelerators. Currently, it supports NVIDIA GPUs of compute capability sm_20 or higher through the ScatterAlloc algorithm.

On the ScatterAlloc Algorithm

This library implements the ScatterAlloc algorithm, originally forked from the ScatterAlloc project, developed by the Managed Volume Processing group at Institute for Computer Graphics and Vision, TU Graz (kudos!).

From http://www.icg.tugraz.at/project/mvp/downloads :

ScatterAlloc is a dynamic memory allocator for the GPU. It is
designed concerning the requirements of massively parallel
execution.

ScatterAlloc greatly reduces collisions and congestion by
scattering memory requests based on hashing. It can deal with
thousands of GPU-threads concurrently allocating memory and its
execution time is almost independent of the thread count.

ScatterAlloc is open source and easy to use in your CUDA projects.

Original Homepage: http://www.icg.tugraz.at/project/mvp

Our Homepage: https://www.hzdr.de/crp

Branches

branch state description
master Build Status Master our latest stable release
dev Build Status Development our development branch - start and merge new branches here
tugraz n/a ScatterAlloc "upstream" branch: not backwards compatible mirror for algorithmic changes

Install

Installation notes can be found in INSTALL.md.

Literature

Just an incomplete link collection for now:

  • Paper by Markus Steinberger, Michael Kenzel, Bernhard Kainz and Dieter Schmalstieg

  • 2012, May 5th: Presentation at Innovative Parallel Computing 2012 by Bernhard Kainz

  • Junior Thesis DOI by Carlchristian Eckert (2014)

License

We distribute the modified software under the same license as the original software from TU Graz (by using the MIT License). Please refer to the LICENSE file.

About

mallocMC: Memory Allocator for Many Core Architectures

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 82.0%
  • Cuda 15.4%
  • CMake 2.6%