OREGON STATE UNIVERSITY
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 (135 projects)
Abyss OS An experimental distribution that aims to provide a flexible ecosystem based on pure-llvm and musl userland
AlmaLinux An Open Source, community-governed and forever-free enterprise Linux distribution, focused on long-term stability, providing a robust production-grade platform. AlmaLinux OS is 1:1 binary compatible with RHEL and pre-Stream CentOS.
Alpine Linux For the past year, I've been working on porting the .NET framework to musl based platforms like Alpine Linux. While aarch64, armv7 and x86_64 and s390x are now well supported, ppc64le is still needing some work and optimizations. As I don't have access to a ppc64le machine, it is very hard for me to diagnose issues.
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 Camel Camel is an Open Source integration framework that empowers you to quickly and easily integrate various systems consuming or producing data.
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
Bazel Build and test software of any size, quickly and reliably.
Blockchain Continuous intergration for IBM Blockchain hyperledger fabric code for POWER
BlueMika An open source library that searches in files/web pages/documents/etc and give you the results
cdxgen An open source cli tool for calculating a software Bill-of-Materials built with plugins for extensibility on the POWER architecture.
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
Chimera Linux Chimera is a general-purpose Linux system based on FreeBSD core userland utilities, the LLVM toolchain, musl libc and the apk package manager. The goal is to provide a system that is simple and clean yet fully-featured, and to improve the portability and quality of software across the Linux stack. It is currently available on aarch64, ppc64le, riscv64 and x86_64 architectures, with a big emphasis on portability.
Cinc Project ppc64le builds for various Cinc Project packages (Cinc Client primarily)
ClickHouse Make the best open-source analytics DBMS
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
Delve Delve is a debugger for the Go programming language. The goal of the project is to provide a simple, full featured debugging tool for Go.
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 Matrix A Docker image for Matrix, an open federated Instant Messaging and VoIP communication server
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
DotFile-HPC Our goal is to help PhD students, researchers, open-source contributors and enterprise employees overcome the challenges of working with unfamiliar high-performance computing (HPC) architectures. Setting up a development environment on an unknown architecture can take months and be a frustrating experience. Our mission is to save time and make the process more enjoyable - just like Python does. By providing a user-friendly development environment, we aim to help our users focus on their work and enjoy a better life.
EasyBuild EasyBuild is a software build and installation framework that allows you to manage (scientific) software on High Performance Computing (HPC) systems in an efficient way.
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
Eclipse Platform Provides a foundation for building arbitrary tools and applications, especially IDEs
EESSI The European Environment for Scientific Software Installations (EESSI, pronounced as “easy“) is a brand new collaboration between different European HPC sites & industry partners, with the common goal to set up a shared repository of scientific software installations that can be used on a variety of systems
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
ELENA LANG ELENA is a general-purpose language with late binding. It is multi-paradigm, combining features of functional and object-oriented programming. Rich set of tools are provided to deal with message dispatching : multi-methods, message qualifying, generic message handlers, run-time interfaces
Envoy sidecar binary used by the most popular service mesh in the microservice space (istio)
Falco Falco is a cloud-native security tool designed for Linux systems. It employs custom rules on kernel events, which are enriched with container and Kubernetes metadata, to provide real-time alerts. Falco helps you gain visibility into abnormal behavior, potential security threats, and compliance violations, contributing to comprehensive runtime security.
Fedora Copr An easy-to-use automatic build system providing a package repository as its output
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 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
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
grommunio Delivering 100% open source Microsoft Exchange alternative with native protocol support (MAPI/HTTP, EWS, ...)
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.
heyoka heyoka is a C++ library for the integration of ordinary differential equations (ODEs) via Taylor's method and LLVM.
Hortonworks Data Platform A secure, enterprise-ready open source Apache Hadoop distribution based on a centralized architecture (YARN) now on POWER
INRIA Updating the HACL* Cryptographic Library to build on POWER
Istio Supports compiling and testing Istio, a platform for microservice management, on POWER
Julia/LLVM ppc64el port of the Julia language to LLVM-6.0
jupyter/base-notebook Provides docker image of jupyter/base-notebook on POWER
Kubeflow A project dedicated to making deployments of machine learning (ML) workflows on Kubernetes simple, portable and scalable
LDC Supports project specific porting efforts for the the LLVM-based D compiler
libGD GD is an open source code library for the dynamic creation of images by programmers.
libjpeg-turbo Supports project specific porting efforts of POWER8 ppc64/ppc64le
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 (bugfixing on linux-next) Fixing a bug on powerpc in linux-next
Linux Kernel (powerpc arch development) PowerPC Linux Kernel testing
Linux Kernel (Various Kernel Developers) Testing issues with RCU_SCALE_TEST parameter
Linux NFSD testing and development Cross platform development and testing of Linux in-kernel NFS server (knfsd)
Linux Standard Base Tests for and maintains compatibility between Linux distributions
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.
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
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
Maple Tree Oracle Linux kernel POWER architecture troubleshooting: remove mmap_sem
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
Moonjit Builds and functionality testing
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
.Net Support IBM efforts to port to PPC64le
MULTOVL Multiple Overlap of Genomic Regions
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
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 and OpenJFX Snaps To create verifiable JDK and JavaFX builds for Linux from source in the form of Snap packages. The packages are built for the 'ppc64el' Debian architecture in addition to five other architectures.
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
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)
OpenSearch Project The POWER is used to build and assemble the OpenSearch software for ppc64le architecture
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
OpenZFS OpenZFS is an advanced file system and volume manager which was originally developed for Solaris and is now maintained by the OpenZFS community.
OrientDB Multi-Model NoSQL database management system that supports graph, document, key/value and object models. Uses PowerCI infrastructure for regression tests
ORNL Research Cloud Container and software development and testing for Oak Ridge National Laboratory Summit Supercomputer. Compile testing, container builds, and general compatibility testing for several open source software stacks.
Perfbook Provides education on parallel programming, and availability of a ppc64le system will help ensure that this education is not x86-centric.
Persistent SI-HTM Enable the use of hardware transactions, on Power machines, with snapshot isolation consistency.
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
Project Quay Builds, stores, and distributes Docker containers
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
RDKit Open source toolkit for cheminformatics
RocksDB Building the fastest key/value database, PPC port for CI and testing
Rocky Linux A community-driven effort to bring you enterprise-grade, production-ready Linux.
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
Ruby A dynamic, open source programming language with a focus on simplicity and productivity
Rust Exploit Mitigations The Rust Exploit Mitigations PG maintains and improves the existing, implements, and research new exploit mitigations for the Rust compiler
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.
sire Sire is a molecular modelling framework that provides extensive functionality to manipulate representations of biomolecular systems.
Snappy A fast compressor/decompressor
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
Spack Spack is the “App store” for running scientific software on supercomputers by drastically reducing deployment time and delivering the best possible performance of the software
sqlite modernc.org/sqlite is a Go port of the SQLite C project.
Strimzi Strimzi provides a way to run an Apache Kafka cluster on Kubernetes in various deployment configurations. The goal is to enable IBM Power arch (ppc64le) arch in upstream Jenkins CI setup for strimzi-kafka-operator.
Swift Fast and highly comprehensible programming language for Unix-based operating systems. Supports objects-oriented, protocol-oriented, and functional programming paradigms.
tcpdump/libpcap A packet analyzer for UNIX-like OSes
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
trivy Scanner for vulnerabilities in container images, file systems, and Git repositories, as well as for configuration issues and hard-coded secrets
VideoLan Updates the Altivec code in x264 and x265 to VSX and makes sure it works correctly on POWER8le
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
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.
Xenia Xenia is an experimental emulator for the Xbox 360. The goal of the project is to experiment, research, and educate on the topic of emulation of modern devices and operating systems.
Academic Partners (11 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.
NYU Langonne Health P10 Hybrid Classical Quantum AI Model Training and Inferencing
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 Alberta Our goal is to evaluate the support for and experiment with accessing application profiling information during runtime. In particular we are looking to evaluate the performance overhead of accessing the perf APIs during runtime.
University of Campinas Conduct research with IBM partners for the MMA Power10 architecture.
University of Colorado Denver Provide support for the Numerical Linear Algebra package in LINPACK on POWER architectures
OpenPOWER GPU Projects (33 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.
Haystack Haystack is our open-source NLP solution for Question Answering workloads. We are planning to provide support for users running the compute-intensive application on the POWER architecture. In order to develop and test the builds and deployment, we would like to have access to a VM.
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
TardisDB The combination of the POWER9 architecture with NVLink capable GPUs offers promising new features as well as superior bandwidth and latency guarantees concerning CPU-GPU Interconnects. TardisDB aims to become a full code generating based RDBMS which also includes native tuple versioning capabilities.
Tensorflow on POWER Community builds of the TensorFlow Open Source project automatically built on POWER.
Tensorflow Ted Chang is building and testing the latest source on POWER because is not a supported architecture of Tensorflow.
Texas A&M Jian Tao from Texas A&M is interested in testing the performance of the POWER8 systems.
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.
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.