The Synthetix Specialization and Feedback Toolkits

    Department of Computer Science and Engineering
    Oregon Graduate Institute

    and

    University of Rennes / IRISA

    Overview

    This web page presents the first release of two toolkits we are developing at OGI and IRISA. The Synthetix specialization toolkit provides the assistance operating systems developers need in order to make specialization a usable optimization technique. The feedback toolkit provides a set of reusable components that aid in the development of systems and applications that can adapt to dynamic environments and workloads.

    This is an alpha release of the toolkits. All of the tools have been tested and are known to work in our environment, but have not been thoroughly tested outside OGI or IRISA. We look forward to receiving feedback from you.

    The Synthetix Specialization Toolkit

    Specialization has been recognized as a powerful technique for optimizing operating systems. However, specialization has not been  broadly applied beyond the research community because the current techniques, based on manual specialization, are time-consuming and error-prone. The Synthetix specialization toolkit should help broaden the applicability of specializing operating systems by assisting in the automatic generation of specialized code and guarding the specialized code to ensure the specialized system continues to be correct.

    Specialization Toolkit Components

    The following pages describe the individual tools in the toolkit:
     
    • TypeGuard
      Slides from TypeGuard presentation in pdf and PowerPoint
    • MemGuard
      Slides from MemGuard presentation in pdf and PowerPoint
    • Replugger
      Slides from Replugger presentation in pdf and PowerPoint

    (The Tempo partial evaluator is not available yet. When it is, it will be linked to here.)

    Specialization Toolkit Tutorial

    This is an in-depth walkthrough of the specialization toolkit in action. We take you step-by-step through the process of specializing the Linux operating system's signal delivery mechanism.

    The Feedback Toolkit

    Our Software Feedback Toolkit provides a framework for building software feedback loops, and provides several common feedback components such as a lowpass filter or a sifter. The toolkit allows programmers to incorporate software feedback techniques into systems or applications to enhance their ability to adapt to diverse and ever-changing environments. We are pleased to present the initial release of the Software Feedback Toolkit (SWIFT) as both C++ and Java libraries. Please visit the SWIFT pages to read more about the toolkit and download the software

    The Synthetix Toolkit Workshop

    We held a workshop to unveil the Synthetix toolkits on June 20th at OGI. This page describes the event and includes the slides from the presentations.

    Back to the Synthetix Project Page