Skip to content

NationalSecurityAgency/openflame

Repository files navigation

OPENFLAME

OPENFLAME is a set of tools designed to ease the burden of writing distributed and multi-threaded programs in C. It includes the following packages.

  • Actimer: A library for timing portions ("activities") of a C program and accumulating and reporting the timings.
  • Cases: A simple preprocessing script for C source files that supports optimization by specialization of variables.
  • Chase: A fast implementation of a Gray code with certain nice properties for stepping through k-subsets of an n-set.
  • Convey: A library that provides efficient, scalable mechanisms for many-to-many communication in distributed-memory programs.
  • Heap: Header files that implement heap-like data structures.
  • Loom: A multithreading framework to support high-performance parallel libraries and applications.
  • Mfile: Offers convenient access to binary files by means of mmap().
  • MppUtil: An extensive framework for writing distributed-memory applications based on either SHMEM or MPI.
  • USort: An optimized multithreaded library for sorting small fixed-sized items.
  • Vis: Provides an interactive way to explore profiling data collected by Vprof.
  • Vprof: A library for collecting profile data for visualization.

In addition, OPENFLAME includes the following four standalone header files.

  • bitops.h: Defines macros and inline functions for bit manipulation and other low-level operations.
  • micro64.h: Largely a legacy header, but still needed by bitops.h, it defines fixed-width integer types.
  • multisort.h: A supermacro that can define a sorting function for any user-specified structure type.
  • xorspp.h: Defines a fast, lightweight pseudorandom number generator via inline functions.

Using OPENFLAME

OPENFLAME provides a module file, CMake packages, and pkg-config files to help projects make use of OPENFLAME libraries and headers. For details, see the extended README file.

Installation

Instructions for installing and testing OPENFLAME are stored in a separate document.

About

No description, website, or topics provided.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors