Practical programming of FPGAs in the data center and on the edge

A Greater New England RIG project

As modern data center workloads become increasingly complex, constrained and critical, mainstream “CPU-centric” computing can no longer keep pace. Future data centers are moving towards a more fluid model, with computation and communication no longer localized to commodity CPUs and routers. Next generation “data-centric” data centers will “compute everywhere,” whether data is stationary (in memory) or on the move (in network). Reconfigurable hardware, in the form of Field Programmable Gate Arrays (FPGAs), are transforming ordinary clouds into massive supercomputers. This project highlights many ways to deploy FPGAs in a data center node, such as traditional back-end accelerators, tightly coupled off-load processors, Smart NICs, Bump-in-the-Wire, and even in the router itself. 

Cloud/DS

For a user, the cloud is a streamlined experience that hides an extreme degree of complexity. Computer scientists and engineers, however, cannot ignore the enhancements that still need to be made to networking, infrastructure, the ability to support massive scale, which in its turn needs self-awareness, self-healing, and automation to keep it manageable and secure. These are just some of the aspects that our research projects look to address and their “lab” is very successful public-cloud alternatives that host other scientific and academic research projects.

Projects

ProjectSummaryResearch AreaRIGUniversitieshf:tax:righf:tax:partner_university
ICOS: IoT2cloud Operating SystemICOSThe ICOS project aims at covering the set of challenges coming up when addressing this continuum paradigm, proposing an approach embedding a well-defined set of functionalities, ending up in the definition of an IoT2cloud Operating System (ICOS)., , , , brnonational-and-kapodistrian-university-of-athens technische-universitat-braunschweig universitat-politecnica-de-catalunya-upc
StrIoT: functional stream processingStrIoT is a functional stream-processing system written in the Haskell programming language. The StrIoT library provides a set of stream-processing …brnonewcastle-university
Characterizing Microservice ArchitecturesMicroservice architectures are the default method for building distributed applications in industry. Though the basic tenants of this architectural style …, , greater-bostonemory-university tufts-university
Cloud Cost OptimizerThe goal of this project is to design and implement a scalable multi-cloud cost optimizer capable of calculating the best …, tel-avivtechnion
Understanding accuracy decay in online image retrieval systems within the context of open-set classification and unsupervised clusteringImage retrieval systems are extremely useful to political scientists and human rights advocates attempting to understand the scope and spread of disinformation in massive datasets. However, in standard image retrieval tasks the corpus of images is unchanging as time moves forward. When considering online disinformation this is clearly not the case. Image retrieval in an online system can essentially be modeled as an open-set problem, where there is no guarantee that the classes of images seen before will have any correspondence to the classes of images seen at present or in the future., greater-bostonuniversity-of-notre-dame
Advanced proactive caching for heterogeneous storage systemsThis project targets improving the performance of distributed storage systems, such as Ceph and NooBaa, by developing novel caching frameworks …tel-avivben-gurion-university
Characterizing and optimizing reactive systems, a continuum language-runtimeThis research project was kicked off by a paper we published in REBLS 2021. This paper aimed at comparing the costs and benefits of three different reactive streams libraries for Java: do mature and complex libraries implementing involved optimizations perform better than newer libraries sacrificing such optimizations for a simpler codebase?, brno
AI for Cloud OpsThis project aims to address this gap in effective cloud management and operations with a concerted, systematic approach to building and integrating AI-driven software analytics into production systems. We aim to provide a rich selection of heavily-automated “ops” functionality as well as intuitive, easily-accessible analytics to users, developers, and administrators, , greater-bostonboston-university
Creating a global open research platform to better understand social sustainability using data from a real-life smart villageIn this project, a team of BU faculty will team up with Red Hat researchers and with SmartaByar, an organization …, , greater-bostonboston-university
DISL: A Dynamic Infrastructure Services Layer for Reconfigurable HardwareBU faculty member Martin Herbordt will work with Red Hat researchers Uli Drepper and Ahmed Sanaullah to create a generic …, greater-bostonboston-university
Practical Programming of FPGAs with Open Source ToolsThis project has evolved from the Practical programming of FPGAs in the data center and on the edge project. Please see …, greater-bostonboston-university
Near-Data Data TransformationBU faculty members Manos Athanassoulis and Renato Mancuso will work with Red Hat researchers Uli Drepper and Ahmed Sanaullah to create a hardware-software co-design paradigm for data systems that implements near-memory processing., greater-bostonboston-university
OSMOSIS: Open-Source Multi-Organizational Collaborative Training for Societal-Scale AI SystemsThe goal of our project is to develop a novel framework and cloud-based implementation for facilitating collaboration among highly heterogeneous research, development, and educational settings., greater-bostonboston-university
Privacy-Preserving Cloud Computing using Homomorphic EncryptionIn today’s data-driven world, a large amount of data is collected by billions of devices (cell phones, autonomous cars, handheld …, , greater-bostonboston-university
Serverless Streaming Graph AnalyticsIn this project, we will focus on graph streams that can be used to model distributed systems, where workers are represented as nodes connected with edges that denote communication or dependencies., greater-bostonboston-university
Enabling Intelligent In-Network Computing for Cloud SystemsWith the network infrastructure becoming highly programmable, it is time to rethink the role of networks in the cloud computing …, greater-bostonboston-university
Linux Computational CachingIn this speculative work we are attempting to explore a biologically motivated conjecture on how memory of past computing can be stored and recalled to automatically improve a system’s behavior., , greater-bostonboston-university
Foundations in Open Source EducationIn this project we are developing an exemplar set of materials for an introductory computers systems class that exploits, Jupyter, Jupyter Books, OpenShift and the the Mass Open Cloud to develop and deliver a unique educational experience for learning about how computer systems work.greater-bostonboston-university
Intelligent Data Synchronization for Hybrid CloudsThe goal of this project is to design configurable synchronization solutions on a common platform for a wide range of edge computing scenarios relevant to Red Hat. These solutions will be thoroughly validated on a state-of-the-art testbed capable of emulating realistic environments (e.g., smart cities)., , greater-bostonboston-university
Secure cross-site analytics on OpenShift logsThe project aims to explore whether cryptographically secure Multi-Party Computation, or MPC for short, can be used to perform secure cross-site analytics on OpenShift logs with minimum client participation., , greater-bostonboston-university
PHYSICS: oPtimized HYbrid Space-time servIce Continuum in faaSJoin Red Hat Research for the next Research Days event, “PHYSICS EU Project: Advancing FaaS applications in the cloud continuum,” on November 16, 2022, …, , brno tel-aviv
SpotOS – a distributed cloud-based operating system over unreliable resourcesThe aim of this project is to devise and implement a distributed cloud-based operating system that uses unreliable or temporarily …tel-avivtechnion
Kubernetes Optimized Service Discovery Across ClustersThe Submariner project provides an ability to connect multiple Kubernetes clusters into a secure shared network which allows various services to communicate with each other., tel-avivhebrew-university-of-jerusalem reichman-university
Workflow-Centric Tracing for Cloud ApplicationsWorkflow-centric tracing allows traces (i.e., graphs) of requests’ workflows to be constructed by stitching together trace points with the same request context. Three collaboratory projects focus on improving the observability and diagnosability of Red Hat products using this technique., greater-bostonboston-university northeastern-university
Volume Storage Over Object StorageThis project creates a hybrid storage system composed of a high-speed local device (e.g. Optane) to store short term data, along with a write-once object store (e.g, Ceph RGW) to store data blocks permanently., greater-bostonboston-university northeastern-university
Kariz Cache Prefetching and ManagementKariz is a caching system that works closely with analytic frameworks scheduler to find the best caching policy for the current running application., greater-bostonboston-university northeastern-university
OpenInfra LabsOpenInfra Labs is an OpenStack Foundation project connecting open source projects to production to advance open source infrastructure. The project …, , , , , , boston-university northeastern-university umass-amherst
Elastic Secure InfrastructureThis project encompasses work in several areas to design, build and evaluate secure bare-metal elastic infrastructure for data centers., , greater-bostonboston-university
Open Cloud TestbedThe Open Cloud Testbed project will build and support a testbed for research and experimentation into new cloud platforms – the underlying software which provides cloud services to applications. Testbeds such as OCT are critical for enabling research into new cloud technologies – research that requires experiments which potentially change the operation of the cloud itself., , , , , , greater-bostonboston-university northeastern-university umass-amherst
Ceph StorageThis research project is investigating how Ceph compression and erasure coded pools could optimize Prometheus tsdb storage.greater-bostonumass-lowell
Implementing Secure Multi-Party ComputingSecure Multiparty Computation (MPC) is a cryptographic primitive that allows several parties to jointly and privately compute desired functions over secret data. Building and deploying practical MPC applications faces several obstacles, including performance overhead, complicated deployment and setup procedures, and adoption of MPC protocols into modern software stacks. MPC applications expose trade-offs between efficiency and privacy that may be hard to reason about, formally characterize, and encode in a protocol design or implementation., greater-bostonboston-university
An Optimizing Operating System: Accelerating Execution With SpeculationTo optimize performance, Automatically Scalable Computation (ASC), a Harvard/BU collaboration attempts to auto-parallelize single threaded workloads, reducing any new effort required from programmers to achieve wall clock speedup. SEUSS takes a different approach by splicing a custom operating system into the backend of a high throughput distributed serverless platform, Apache OpenWhisk. SEUSS uses an alternative isolation mechanism to containers, called Library Operating Systems (LibOSs)., greater-bostonboston-university
D3N: A Multi-Layer Cache for Data CentersThis project designs and develops D3N, a novel multi-layer cooperative caching architecture that mitigates network imbalances by caching data on the access side of each layer of hierarchical network topology. A prototype implementation, which incorporates a two-layer cache, is highly-performant (can read cached data at 5GB/s, the maximum speed of our SSDs) and significantly improves the performance of big-data jobs., greater-bostonboston-university northeastern-university
Practical programming of FPGAs in the data center and on the edgeFPGAs are now essential components in the data center and on the edge with millions deployed. FPGAs are found in a wide variety of system elements and provide such critical functions as SDN, encryption/decryption, and compression. Yet for nearly all system providers, much less system users, programming these FPGAs is impossible. Our overall goal is to enable FPGA application development by High Level Language (HLL) programmers, especially for the data center and the edge, and exclusively using existing open-source tools., , greater-bostonboston-university
Performance Management for Serverless ComputingServerless computing provides developers the freedom to build and deploy applications without worrying about infrastructure. Resources (memory, cpu, location) specified …greater-bostonboston-university