Giter VIP home page Giter VIP logo

OBPMark (On Board Processing Benchmark)

Current version: v0.3.1

Contact: [email protected] Website: OBPMark.org

What is OBPMark?

OBPMark (On-Board Processing Benchmarks) is a set of computational performance benchmarks developed specifically for spacecraft on-board data processing applications, such as: image and radar processing, data and image compressions, signal processing and machine learning.

The development of OBPMark was driven by the lack of openly available and representative benchmarks for space applications.

OBPMark consists of three main components:

  • A technical note describing the benchmarks, their implementation and result reporting.
  • Reference implementations in C (sequential) and standard parallelisation schemes, such as OpenMP, OpenCL and CUDA.
  • A list of known published performance benchmark results.

OBPMark has been developed in cooperation by the European Space Agency (ESA) and Barcelona Supercomputing Center (BSC). The OBPMark definition and implementation has been made available partially through funding from the ESA “General Studies Programme (GSP)”.

OBPMark is openly available, and contributions from the community are warmly welcome.

Public Beta Version Notice

Please note that OBPMark is currently in "Public Beta" while the implementations and verifications of the benchmarks are being completed.

Expect features and data to be missing. For an overview of the main current issues and missing features, see the "Issues" tab at the top.

In the meanwhile, users are invited to test out the existing implementations (see list below) and report bugs and issues via the github interface.

Changelog

See separate file for changelog.md

Documentation

Detailed technical description of the benchmarks are included in the OBPMark Technical Note.

See Git wiki page for documentation on the software implementations: https://github.com/OBPMark/OBPMark/wiki/

Compilation and Usage

Documentation regarding how to compile and use the software is located in the Git wiki page: https://github.com/OBPMark/OBPMark/wiki/User-Instructions

Contributors

Authors/Chairs:

  • David Steenari, European Space Agency (ESA)
  • Dr. Leonidas Kosmidis, Barcelona Supercomputing Center (BSC)

Contributors:

  • Alvaro Jover-Alvarez, Universitat Politècnica de Catalunya and Barcelona Supercomputing Center (UPC/BSC):
    • Implementation of OpenMP versions.
  • Ivan Rodriguez Ferrandez, Universitat Politècnica de Catalunya, Barcelona Supercomputing Center and European Space Agency (UPC/BSC/ESA):
    • Implementation of Benchmark #1.1 "Image Calibration and Correction"
    • Implementation of Benchmark #2.1 "CCSDS 121.0 Data Compression"
    • Implementation of Benchmark #2.2 "CCSDS 122.0 Image Compression"
    • Verification of implementations.
  • Marc Solé Bonet, Barcelona Supercomputing Centrer (BSC):
    • Implementation of Benchmark #3.1 "AES Encryption"
    • Implementation of Benchmark #1.2 "Radar Image Processing"
  • Sanath Muret, European Space Agency (ESA) :
    • Validation of the implementation
    • Maintainer

Description

This repository contains a set of reference implementations for performing benchmarks on devices and systems on-board spacecraft.

The following folders are in the repository:

config/ 	Build configuration files for all benchmarks compliation formats (C, OpenMP, OpenCL, CUDA). Can be customized if needed.
data/		Input and output/verification data that is to be used during implementation and benchmark exeuction.
docs/		The OBPMark technical documentation.
scripts/	Scripts for running benchmarks with default configuration parameters.
src/		Source files for each of the benchmarks. 
tools/	Contains helper/support tools that are not required for the benchmarking. 

The benchmarks are organised in the following structure ("Public Beta" current status also shown):

src/1.1-image/				-- Available in C (sequential), OpenMP, OpenCL and CUDA.
src/1.2-radar/				-- Available in C (sequential), OpenMP, OpenCL and CUDA.
src/2.1-data_compression/		-- Available in C (sequential), OpenMP, OpenCL and CUDA.
src/2.2-image_compression/		-- Available in C (sequential), OpenMP, OpenCL and CUDA.
src/2.3-hyperspectral_compression/	-- TBA.
src/3.1-aes_encryption/			-- Available in C (sequential), OpenMP, OpenCL and CUDA.
src/4.1-dvbs2x_modulation/		-- TBA.
src/4.2-dvbs2x_demodulation/		-- TBA.
src/common/

The entire set of benchmarks can be built by invoking the Makefile in the top src/ directory, or by invoking the individual Makefiles in each of the src sub-directories.

OBPMark's Projects

obpmark icon obpmark

OBPMark (On-Board Processing Benchmarks)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.