Center for Applied Systems & Software »

OSU Open Source Lab

Current Powerdev Projects

Below are a list of currently hosted OpenPOWER projects and our OpenPOWER academic partners.

FOSS Projects

Academic Partners

OpenPOWER GPU Projects

FOSS Projects (105 projects)
Abyss OS An experimental distribution that aims to provide a flexible ecosystem based on pure-llvm and musl userland
Anaconda Installation program used by Fedora, RHEL, and others; uses POWER support for Continuous Integration and development
Ansible Molecule Framework for testing Ansible roles and playbooks
Apache Bigtop An Apache Foundation project for Infrastructure Engineers and Data Scientists looking for comprehensive packaging, testing, and configuration of the leading open source big data components; supports a wide range of components/projects, including, but not limited to, Hadoop, HBase and Spark
Apache CouchDB Seamless multi-master sync, that scales from Big Data to Mobile, with an Intuitive HTTP/JSON API and designed for Reliability.
Apache Software Foundation Supports POWER builds for CouchDB and possible other ASF projects in the future; currently working to support Cloudant on POWER
Apache Spark / Arrow Apache Arrow is an in-memory columnar to exchange data among AI frameworks such as Apache Spark
BearSSL An SSL/TLS library, with a focus on a clean, secure implementation of protocol, up-to-date with the latest research; POWER8 systems writes specific implementations of AES/GCM and other cryptographic algorithms that leverage the specific opcodes offered by the CPU, for better performance
Blockchain Continuous intergration for IBM Blockchain hyperledger fabric code for POWER
Blosc PowerPC testing for Blosc, a high performance compressor optmized for binary data
checkpoint-restore Implements checkpoint-restore functionality for Linux on POWER architecture; functionality can be used for wide range of use-cases, including live migration, ‘suspend’ and ‘resume’ operations on containers, reboot-less kernel upgrades
Cinc Project ppc64le builds for various Cinc Project packages (Cinc Client primarily)
Cloud Foundry Supports porting on POWER, continuous integration and builds integration
conda-forge community-led collection of recipes, build infrastructure and distributions for the conda package manager
CRIU Supports project specific porting efforts of POWER8 ppc64/ppc64le
Debian A universal operating system composed entirely of free software, and packaged by the Debian Project
Debian-CI Provide a system available to Debian community to enable debuging of problems
Deeplearning4j Makes deep learning simple and accessible to enterprises. The project uses POWER VMs at OSL for compile builds, performance testing, architecture troubleshooting, including CUDA
Docker 4 Power Enrich the PowerPC container ecosystem by providing both a platform for developers to create docker containers, and for the PowerPC community to find docker images.
Docker Open Source An open platform for developers and sysadmins to build, ship, and run distributed applications on laptops, data center VMs, or the cloud; provides build system to the Docker community to share Docker images built on this system; system is used on demand builds
Eclipse Platform Provides a foundation for building arbitrary tools and applications, especially IDEs
Eclipse OMR Build an enterprise caliber technology foundation for language runtimes within cloud platforms.
Eclipse OpenJ9 Provides high performance Java Virtual Machine capabilities for the POWER platform
Eigen A C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms.
Elastic Beats Part of the Elastic stack (Elasticsearch, Kibana, Logstash, Beats). Manual testing and checking that the Beats are working on POWER platform
Elephant Shed Provides ppc64le build and performance testing for Elephant Shed, a bundle of PostgreSQL tools and web UI for easy administration of PostgreSQL servers
Envoy sidecar binary used by the most popular service mesh in the microservice space (istio)
EQueue an efficient lock-free queue for pipeline parallelism on multi-core architectures
Fedora Provide a location for developers to port their Fedora projects to the POWER architecture
FFmpeg Supports optimization of software scaling in FFmpeg running on POWER systems
Firefox Ports Mozilla Firefox to POWER8
Flathub Provide support for ppc64le on all Flatpaks currently available on Flathub
FRRouting Free routing stack (BGP, OSPF, ISIS, RIP, EIGRP, PIM, etc)
GCC/Clang Contributes to improved support of GCC and Clang projects on POWER machines by working on IBM Linux Technology Center items on bountysource.com
GCC Fortran Compiler optimizations and bug fixing for POWER port of GCC fortran compiler
Gentoo PowerPC Project Part of Gentoo Linux and is responsible for porting Gentoo to PowerPC architecture of all flavors
Glasgow Haskell Compiler (GHC) state-of-the-art open source compiler and interactive environment for the functional language Haskell
Ginga Middleware ISDB middleware for interactive DTV. Supports project in porting to POWER8
glibc The GNU C Library project provides the core libraries for the GNU system and GNU/Linux systems
Go Language Supports project specific porting efforts of POWER8 ppc64/ppc64le
Hadoop_Spark CI environment powered by a Jenkins server running Hadoop and Spark builds for including POWER into the Hyperledger fabric community to perform Continuous Integration for IBM Hyperledger fabric codebase.
Hortonworks Data Platform A secure, enterprise-ready open source Apache Hadoop distribution based on a centralized architecture (YARN) now on POWER
Istio Supports compiling and testing Istio, a platform for microservice management, on POWER
Jellyfish A fast multi-threaded k-mer counter. POWER infrastructure is being used to compile builds, performance testing, architecture troubleshooting
juju-charms Adds ppc64el support to appliance image for building/interfacing with juju, the juju charm store, and assembling charms
Julia/LLVM ppc64el port of the Julia language to LLVM-6.0
jupyter/base-notebook Provides docker image of jupyter/base-notebook on POWER
LAPACK The Numerical Linear Algebra package project tests builds on IBM architecture and with IBM compiler and also uses it to fix bugs with IBM xlf
LDC Supports project specific porting efforts for the the LLVM-based D compiler
libjpeg-turbo Supports project specific porting efforts of POWER8 ppc64/ppc64le
libpod a library for applications looking to use the Container Pod concept, popularized by Kubernetes
libvpx Adds VSX optimizations for libvpx on POWER architecture
LIBXSMM LIBXSMM is a library for specialized dense and sparse matrix operations as well as for deep learning primitives such as small convolutions. Enabling POWER JIT-code generation and optimization.
Linux Kernel Allows maintainer of Linux kernel features to test on ppc64le
Linux Standard Base Tests for and maintains compatibility between Linux distributions
LLVM Supports project specific porting efforts of POWER8 ppc64/ppc64le to run buildbot instances; these instances build LLVM and run the test suites when patches are checked in to ensure they run properly on the POWER architecture
LLVM Memory Order Loads Handling The C standard currently specifies that that memory_order_consume loads feed into carries a dependency, however, no known implementation does anything other than promote memory_order_consume to memory_order_acquire. C users therefore avoid memory_order_consume loads in favour of volatile loads, inline assembly, and other subterfuge. There has been considerable work within the C++ standards committee to address similar issues in C++, however, the current proposals involve C++ templates, which have no reasonable C equivalent. We proposes a new _Dependent_ptr type qualifier to provide this functionality in the C language. We are implementing the same in LLVM.
LTTng Supports project specific porting efforts of POWER8 ppc64/ppc64le
Machine Learning/Deep Learning Enable and optimize frameworks of OpenBLAS, NVIDIA/Caffe, BVLC/Caffe, Torch, TensorFlow, Theano, DIGITS for IBM POWER Platform
Mesos API’s for resource management and scheduling across entire datacenter and cloud environments. OSL hosts the CI infrastructure on POWER platform for this project
microbench Carefully measure the performance of the bandwidth between different system compenents on POWER systems to understand their influence on application development
Mozilla Supports Mozilla projects in testing builds, running automated functionality tests, and debugging architecture-specific bugs.
Multiple LLVM/HHVM/* Contributes towards FOSS software, optimizations for POWER arch; specifically contributes towards HHVM JIT, LLVM and other FOSS projects on POWER8
Netty Non-blocking network framework for the JVM
Node.js Supports project specific porting efforts of POWER8 ppc64/ppc64le; provides stable POWER releases for community builds of Node.js
NumPy Numerical computing in Python, now on POWER
Nvidia-docker Uses images agnostics of the NVIDIA driver to make Docker images portable while still leveraging NVIDIA GPUs
OCaml A modern, functional programming language with support for fast native code compilation on POWER
OCM Observationally Cooperative Multithreading: provides a 'kinder gentler' form of concurrency, allowing programmers to imagine that a single thread runs on the machine at any one time; uses POWER8 hardware transactional memory to run multiple threads at the same time while appearing to be running only one at a time
ONNX Open Neural Network Exchange, ONNX provides an open source format for AI models, both deep learning and traditional ML
OpenBLAS Optimizes BLAS 1/2 double precision for POWER8 VSX
OpenBMC Open source BMC firmware, which supports PowerPC hosts
OpenCV Implements POWER8 and POWER9 VSX SIMD optimizations for OpenCV
OpenJDK Supports project specific porting efforts of POWER8 ppc64/ppc64le; provides support for Java 7 and 8 which is being consumed by most major distributions
OpenLibm PowerPC support for OpenLibm, a high quality, portable, standalone C mathematical library
OpenMandriva Building an easy to use, yet powerful and state of art, Linux distribution aimed primarily at desktop use
OpenQuake An Open Source Engine for seismic hazard and risk assessment uses the infrastructure to try porting to POWER architecture and see how a different architecture affects the numerical tests (the code is covered by numerical, functional and qa tests)
OpenShift Test builds of OpenShift for Continuous Integration
OpenWhisk Supports building ppc64le Docker images for OpenWhisk, a programming service that provides event based execution of functions
OrientDB Multi-Model NoSQL database management system that supports graph, document, key/value and object models. Uses PowerCI infrastructure for regression tests
Perfbook Provides education on parallel programming, and availability of a ppc64le system will help ensure that this education is not x86-centric.
pgSphere Provides ppc64le builds for pgSphere, a PostgreSQL extension for spherical geometry
postgreSQL Allows the postgres database system to build and troubleshoot on pp64le architecture on various distributions.
PowerPC Notebook Supports development and compiling efforts for Debian on PowerPC. The goal is to design an Open Hardware notebook motherboard based on the Power Architecture NXP T2080 CPU
Presto Supports efforts of a POWER8 ppc64le port of Presto, a distributed SQL query engine for running interactive analytic queries against big data sources
Primerclip Supports efficient trimming of primer sequences from next-generation sequencing reads sequenced from libraries which use PCR to amplify the target DNA
PVECLIB A library of useful vector functions for POWER
PyTorch Python framework for tensors and deep neural networks. Uses POWER8 for continuous integration and functional testing
qiskit-sdk-py Python tools for running quantum information experiments
RocksDB Building the fastest key/value database, PPC port for CI and testing
RPM Fusion A community driven third party repository for Fedora and Enterprise Linux. They use a dedicated VM as a builder connected to their main infrastructure for building packages for ppc64le platform
SFTPGo SFTPGo is a fully featured and highly configurable SFTP server with optional FTP/S and WebDAV support, written in Go. It can serve local filesystem, S3 or Google Cloud Storage. POWER Docker image testing.
SHA-3 Ensures support and viability of Secure Hash Algorithm 3 on POWER, including POWER8 specific optimizations
Snowpatch An open source tool which provides CI testing for open-source projects which use a traditional patches + email system for accepting contributions; improves the state of continuous integration for a number of open source projects which are critical to the OpenPOWER community, providing automated test capabilities, similar to work already being done on the x86 architecture
Swift Fast and highly comprehensible programming language for Unix-based operating systems. Supports objects-oriented, protocol-oriented, and functional programming paradigms.
Tesseract-OCR Offers a POWER8 testing platform for Google's optical character recognition library, Tesseract OCR
Travis CI Continuous Integration using Travis and Power
Travis/Rust/Swift Provides access to the POWER8 architeture for Travis, Rust, or Swift project developers
TripleO CI Continuous Integration and Delivery for RedHat OpenStack Platform
VideoLan Updates the Altivec code in x264 and x265 to VSX and makes sure it works correctly on POWER8le
VSXSIMD SIMD Optimization Bountys
Wazuh Wazuh is a free, open source and enterprise-ready security monitoring solution for threat detection, integrity monitoring, incident response and compliance.
WebM Dedicated to developing a high-quality, open video format for the web that's freely available to everyone
Whonix Anonymity, privacy, security online
X265 HEVC Encoder Explores POWER8-specific optimizations for x265 including, but not restricted to, assembly optimizations and thread-related optimizations
X2Go A Remote Desktop and Remote Application Solution. Originally developed on x86/x64 hardware platforms, the server and client components are also available for ARM (Raspbian) and POWER (big and little endian). In short, it's for Linux what Citrix is for Windows.
Zarafa Supports project specific porting efforts of POWER8 ppc64/ppc64le
Academic Partners (9 projects)
BLCR Berkeley Lab Checkpoint/Restart for LINUX is a kernel-level checkpointer implemented via a loadable kernel module and a userspace library. They use the system to compile, test and debug kernel modules against a range of linux kernels.
Harvard Provide a set of tools that help Linux kernel developers understand Linux-kernel memory-ordering restrictions.
Harvey Mudd College Observationally Cooperative Multithreading (OCM) provides a "kinder gentler" form of concurrency, allowing programmers to imagine that a single thread runs on the machine at any one time. With POWER8 hardware transactional memory, it becomes possible to actually run multiple threads at the same time while appearing to be running only one at a time.
Oregon State University The goal of this project is to apply mutation testing technique on RCU module of Linux Kernel. They run RCUtorture on Linux kernel for extended period of time and also step-wise increase the testing time on POWER platform.
Oswego State University of NY Uses POWER infrastructure to develop concurrency support components for OpenJDK
Portland State University Test out different configurations of tickless kernel on PPC64
Scuola Superiore Sant'Anna (SSSUP) The Linux kernel exposes subtle and informally specified relaxed-memory semantics to programmers. To understand them and to develop formal models to use in verification, we adopt an empirical approach by testing what results parallel kernel code can actually produce when executed on the hardware. The purpose of this project is to develop and execute a key ingredient of our approach, a tool which takes small 'litmus tests' and generates Linux kernel modules to run them for many iterations, collecting statistics of their behavior.
Technische Hochschule Nürnberg Implements native code generation on PowerPC 64-bit little endian for 'The Glorious Glasgow Haskell Compilation System' and as a pre-release for openSUSE and SUSE Linux Enterprise on POWER8 servers
University of Colorado Denver Provide support for the Numerical Linear Algebra package in LINPACK on POWER architectures
OpenPOWER GPU Projects (31 projects)
APMA2822B Students taking a course on Parallel Computing at Brown University experimenting with the AC922 servers
Brookhaven National Lab Development of Singularity containers for distributed machine learning (Horovod) to be run on Summit supercomputer at OLCF.
CADA CADA - CUDA Accelerated DNA Assembly is being developed by Ryan Kitchen to change the way genome assembly uses hardware resources.
CASHX Pipeline Sequence alignment tools CASHX and pipeline were ported to work on the IBM POWER8 to take full advantage of higher thread count machines. CASHX is one of the few non-BWA based high throughput genome alignment tools.
CASSA CASSA - CUDA Accelerated Scalable Sequence Aligner. The CGRB is working with Ryan Kitchen to develop this new alignment tool.
Cryo-EM Frank Liu and Suvadip Paul are using GPU Acceleration on POWER8 and POWER9 architecture to build, debug, and test software used to examine and model highly detailed microscopic structures such as proteins gathered using Cryo-EM technology.
Cuttlefish denovo DNA Eric Aker at PacBell is using the POWER8 platform to test the denovo assembly of the Cuttlefish genome.
Deeplearning4j Deeplearning4j is a Java-based toolkit for building/training/deploying deep neural networks. POWER architecture is one of the main platforms that Deeplearning4j project is going to support.
Diabetic Retinopathy train a cnn based on a dataset of retinal images which are very large in size (4500 x 3500)
DIAMOND Sequence Alignment Tool Benjamin Buchfink - creator of the DIAMOND Sequence alignment tool - helped port this software onto the IBM POWER8 architecture based on requests from the research community. DIAMOND is a sequence aligner for protein and translated DNA searches and it functions as a drop-in replacement for the NCBI Basic Local Alignment Search Tool.
FBPIC and Numba Rémi Lehe is working on installing Numba and FBPIC on an OpenPower platform. Once the code is working they plan to run the test suite that we routinely use for Continuous Integration.
GeneMark Mark Borodovsky and Alexandre Lomsadze from GeneMark are currently working on porting tools onto the POWER8 platform. GeneMark and its associated tools are used throughout the genomics field for gene prediction.
Gene Prediction Analysis in Salvia hispanica Genome Assembles and annotates the Salvia hispanica (Chia) genome to help identify candidates for providing neutraceutical and human health benefits.
GPGPUSim+Ramulator Simulator Yunfan Li at Oregon State is using POWER to calibrate a cycle accurate GPU simulator with a real GPU chip.
Julia Language Collaboration between IBM, OSU, and Julia Language mathematical software community enabled developers to use graphics processing unit (GPU) technology. This made the software ready for the new CAPI and NVLink acceleration technologies. This was an instrumental step in getting independent software vendors to port to POWER.
Lecture Video Summarization There are large number of educational videos on YouTube and other platforms. However the lack of any content based access to the videos make them very difficult to be queried. A students has to watch the full video or jump or fast forward to see whether the video is of his/her interest or not. This summarization tool aims to make such videos more useful and interactive along with a content based index.
Patagonia Natural Iron Fertilization.
PointR Demonstrate PowerAI Vision Training with PointR edge wireless mesh edge infrastructure, Applies to multiple industrial use cases
PyTorch Freddie Mendoza is working on PyTorch on the POWER8 systems.
PyTorch Using GPUs on POWER to demo running sample AI workloads based on TensorFlow & PyTorch for a workshop event.
Rust Continuous integration and development of core Rust language projects on ppc64le + NVIDIA GPU environments.
Singularity (Horovod) Development of Singularity containers for distributed machine learning (Horovod) to be run on Summit supercomputer at OLCF
The Street-based Environmental Exposure Project The Street-based Environmental Exposure Project is using POWER8 for compiling builds and performance testing. Their project is working to understand links between built environment exposures and human health.
Tensorflow Ted Chang is building and testing the latest source on POWER because is not a supported architecture of Tensorflow.
Tensorflow on POWER Community builds of the TensorFlow Open Source project automatically built on POWER.
Texas A&M Jian Tao from Texas A&M is interested in testing the performance of the POWER8 systems.
UNICAMP Rodrigues de Sousa Faria is studying for a masters in Electrical Engineering at the University of Campinas and is using machine learning on POWER to develop solutions for his thesis.
UNIVA The UNIVA team is working on a version of UGE that will support POWER8-9 architectures for cross platform integration.
Virginia Tech James McClure is looking at IBM POWER8 and developing tools on the platform.
VSEARCH Torbjørn Rognes and Tomas Flourithe creators of VSEARCH are using the POWER8 platform to build and provide binaries for their tool.
Xiaoli Fern Lab OSU Xiaoli Fern lab is working on identification of bird sounds using GPU technology. They are currently testing tools on the POWER8 platform with the P100 GPU on the board for increased performance.