: Executable Extensions of the Bookshelf Igor Markov University of Michigan, EECS DARPA.

Slides:



Advertisements
Similar presentations
Snejina Lazarova Senior QA Engineer, Team Lead CRMTeam Dimo Mitev Senior QA Engineer, Team Lead SystemIntegrationTeam Telerik QA Academy SOAP-based Web.
Advertisements

Bookshelf.EXE - BX A dynamic version of Bookshelf –Automatic submission of algorithm implementations, data and benchmarks into database Distributed computing.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
CIM2564 Introduction to Development Frameworks 1 Overview of a Development Framework Topic 1.
ManageEngine TM Applications Manager 8 Monitoring Custom Applications.
Technical Architectures
March 2002 update for GSRC Igor L. Markov University of Michigan.
DARPA Bookshelf For VLSI CAD Algorithms: Progress and Future Directions Andrew E. Caldwell, Andrew B. Kahng and Igor L. Markov.
DUSD(Labs) GSRC bX update December 2002 Aaron Ng, Marius Eriksen and Igor Markov University of Michigan.
Web Services Andrea Miller Ryan Armstrong Alex. Web services are an emerging technology that offer a solution for providing a common collaborative architecture.
“Bookshelf.exe”: Executable Extensions of the Bookshelf Igor Markov University of Michigan, EECS DARPA.
DUSD(Labs) GSRC bX update March 2003 Aaron Ng, Marius Eriksen and Igor Markov University of Michigan.
Web Service Testing Solution Accelerator
Jun Peng Stanford University – Department of Civil and Environmental Engineering Nov 17, 2000 DISSERTATION PROPOSAL A Software Framework for Collaborative.
End-to-End Design of Embedded Real-Time Systems Kang G. Shin Real-Time Computing Laboratory EECS Department The University of Michigan Ann Arbor, MI
70-291: MCSE Guide to Managing a Microsoft Windows Server 2003 Network Chapter 14: Troubleshooting Windows Server 2003 Networks.
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
Charlie Crocker Vice President Farallon Geographics, Inc. An Overview of Internet Mapping Technology.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
.NET, and Service Gateways Group members: Andre Tran, Priyanka Gangishetty, Irena Mao, Wileen Chiu.
February Semantion Privately owned, founded in 2000 First commercial implementation of OASIS ebXML Registry and Repository.
INTRODUCTION TO WEB DATABASE PROGRAMMING
© R.A. Rutenbar 2005 Early Research Experience With OpenAccess Gear : An Open Source Development Environment For Physical Design Zhong Xiu*, David A. Papa.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Central Online Grading System COGS Dec15-21 dec1521.sd.ece.iastate.edu.
 Cloud computing  Workflow  Workflow lifecycle  Workflow design  Workflow tools : xcp, eucalyptus, open nebula.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Framework for Automated Builds Natalia Ratnikova CHEP’03.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Robert Fourer, Jun Ma, Kipp Martin Copyright 2006 An Enterprise Computational System Built on the Optimization Services (OS) Framework and Standards Jun.
Flexibility and user-friendliness of grid portals: the PROGRESS approach Michal Kosiedowski
第十四章 J2EE 入门 Introduction What is J2EE ?
® IBM Software Group © 2007 IBM Corporation J2EE Web Component Introduction
Horizontal Benchmark Extension for Improved Assessment of Physical CAD Research Andrew B. Kahng, Hyein Lee and Jiajia Li UC San Diego VLSI CAD Laboratory.
International Telecommunication Union Geneva, 9(pm)-10 February 2009 ITU-T Security Standardization on Mobile Web Services Lee, Jae Seung Special Fellow,
Web Services based e-Commerce System Sandy Liu Jodrey School of Computer Science Acadia University July, 2002.
CHAPTER TEN AUTHORING.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Tool Integration with Data and Computation Grid GWE - “Grid Wizard Enterprise”
Slide 12.1 Chapter 12 Implementation. Slide 12.2 Learning outcomes Produce a plan to minimize the risks involved with the launch phase of an e-business.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Framework for MDO Studies Amitay Isaacs Center for Aerospace System Design and Engineering IIT Bombay.
NA-MIC National Alliance for Medical Image Computing UCSD: Engineering Core 2 Portal and Grid Infrastructure.
ABone Architecture and Operation ABCd — ABone Control Daemon Server for remote EE management On-demand EE initiation and termination Automatic EE restart.
Experiment Management System CSE 423 Aaron Kloc Jordan Harstad Robert Sorensen Robert Trevino Nicolas Tjioe Status Report Presentation Industry Mentor:
SWGData and Software Access - 1 UCB, Nov 15/16, 2006 THEMIS SCIENCE WORKING TEAM MEETING Data and Software Access Ken Bromund GST Inc., at NASA/GSFC.
SOAP-based Web Services Telerik Software Academy Software Quality Assurance.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
NOVA A Networked Object-Based EnVironment for Analysis “Framework Components for Distributed Computing” Pavel Nevski, Sasha Vanyashin, Torre Wenaus US.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Tool Integration with Data and Computation Grid “Grid Wizard 2”
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
“Bookshelf.exe”: Executable Extensions of the Bookshelf Marius Eriksen and Igor Markov University of Michigan, EECS.
March 2004 At A Glance The AutoFDS provides a web- based interface to acquire, generate, and distribute products, using the GMSEC Reference Architecture.
OpenAccess Gear David Papa 1 Zhong Xiu 2, Christoph Albrecht, Philip Chong, Andreas Kuehlmann 3 Cadence Berkeley Labs 1 University of Michigan, 2 Carnegie.
C.A.D.: Bookshelf June 18, 8:00am-11:00am. Outline Review: [some of] bookshelf objectives Where we want to go vs what we have now Invited presentations.
5/29/2001Y. D. Wu & M. Liu1 Content Management for Digital Library May 29, 2001.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
A Semi-Automated Digital Preservation System based on Semantic Web Services Jane Hunter Sharmin Choudhury DSTC PTY LTD, Brisbane, Australia Slides by Ananta.
SDN controllers App Network elements has two components: OpenFlow client, forwarding hardware with flow tables. The SDN controller must implement the network.
The Holmes Platform and Applications
Chapter 8 Environments, Alternatives, and Decisions.
CAD-IP Reuse via the Bookshelf for Fundamental VLSI CAD Algorithms
Self Healing and Dynamic Construction Framework:
The Improvement of PaaS Platform ZENG Shu-Qing, Xu Jie-Bin 2010 First International Conference on Networking and Distributed Computing SQUARE.
Module 01 ETICS Overview ETICS Online Tutorials
ICCAD-2002 Open Source Panel Andrew B
Reportnet 3.0 Database Feasibility Study – Approach
Presentation transcript:

: Executable Extensions of the Bookshelf Igor Markov University of Michigan, EECS DARPA

Outline A three-slide version of the talk –motivations + proposal + how it will help Basic use models –users and interfaces –restrictions Existing VLSI CAD Bookshelf Efforts related to our proposal Details of the proposal Sample flows, screenshots and conclusions

Motivation Experiences from education –e.g., undergraduate courses on algorithms and architecture –infrastructure for evaluation: auto-graders Infrastructure for collaborative research –can also benefit from automation –must support sharing, modularity and reuse –must scale, must be industry-compatible Modularity in implementation platforms

Bookshelf.exe Dynamic version of the [existing] Bookshelf –Implementations+benchmarks = algo evaluations? –Flow composition and high-level scripting Related efforts –SatEx, PUNCH, NEOS, OmniFlow Proposed solution: ``Bookshelf.exe’’ (bX) –Application Service Provider –Interfaces Online reporting of simulation results Support for optimization-specific concepts Power versus ease-of-use and modularity

Why We Need Bookshelf.exe? Design flow prototyping SW maintenance: automation (cf. SourceForge) HW/SW incompatibilities, lack of CPU cycles –Standardization, consolidation and sharing Many published results cannot be reproduced –Simplified sharing and CAD IP re-use Lack of high-level, large-scale experiments –Web-based scripting, distributed execution –Open-source flows (with or w/o o.-s. components)

Basic Use Models Users (over the Web) –“anonymous” –registered (more features) User interfaces –HTML forms (including downloads, uploads, high-level scripting and job control) – notification –XML-RPC for contributed remote CPUs and data –NFS (where available) for file sharing

Restrictions Uploaded files must match existing formats –Interface for adding new formats Execution in a “sandbox” –Cannot make network connections –Visible file-system restricted by the chroot() call –Configurable resource limits (memory, etc) Access permissions –Registered users can keep their results private –Benchmarks or solvers behind firewalls

The VLSI CAD Bookshelf Contents fairly popular: downloads & contributions –benchmarks, implementations and comparisons –algorithm descriptions and analyses –evaluation methodologies (in English) New slots, benchmarks, codes added regularly ICCAD, DAC, ISPD publications use the bookshelf IEEE Design and Test, May/June 2002 A static collection –Manual addition of material –No automatic evaluation, reporting of results

Other Efforts Related to “.exe” SatEx –Specialized in satisfiability problems PUNCH –Very broad selection of software (from StarOffice to Capo) –Local to Purdue NEOS –Open-source, distributed architecture –Used primarily for linear and non-linear optimization OmniFlow: DAC 2001, Brglez and Lavana – –Distributed Collaborative Design Framework for VLSI –GUI-based flow control, chaining of design tools

SatEx Continual evaluation and ranking of codes –Results produced and posted automatically –Intuitive interface Popular –93,707 hits March, 2000 – September 2001 –23 SAT provers, 32,610 runs – September 2001 Limited scalability –One workstation (2yrs of CPU time) –Specialized to one application

Very general execution framework –From VLSI CAD to GUI-based office applications –Custom-designed file-system (Purdue hosts only) –241,458 runs in 5 years (8,152 in VLSI CAD ) –20+ publications Only maintainer can add executables No support for eval’n and chaining (flows) –No stats for results of runs (cf. SatEx top 20) –No MIME-like data types –Difficult to use when multiple tools are involved

Open-source, distributed framework Wide use, solid code base Adding new implementations requires maintainer intervention (< on PUNCH) –Each new code must come with a host –Distributed maintenance Loose data typing –No type system for data and implementations Compare to MIME

NEOS: what can be improved Independent eval. and verification of results –e.g., PUNCH offers a WL-eval. from the bookshelf Real-time on-line reporting of results + stats High-level scripting and flow design –Scripts to control the execution and evaluation flows Pairing solvers with benchmarks –SatEx-like evaluation, but for multiple data types

OmniFlow Context: collaborative VLSI Design –sharing computational resources, but not results Distributed over multiple hosts Provides GUI-based flow control –supports chaining of design tools –several hard-coded conditions for flow control –no support for execution conditional on results –no scripting language; limited by GUI Cannot dynamically add hosts

Bookshelf.exe (1) Best of SatEx, PUNCH, NEOS and OmniFlow –Reporting style similar to SatEx (+ alternatives) –The versatility of PUNCH –Scalability and distributed nature of NEOS (or better) –Flow control as in OmniFlow or better New features –MIME-like data types and optimization-specific concepts –Automatic submission of binaries and source code –Chaining of implementations; scripting for flow control –Support for use models with proprietary data or code

Bookshelf.exe (2) Scalability –Computation is distributed (unlike in SatEx) –Maintenance is automated (unlike in NEOS) Support for multiple use models –“adapts to users” –Multiple levels of expertise –Multiple levels of commitment –Sharing of public data –Hiding/protection of proprietary data –“Screen-saver” mode, cf. Entropia, etc

Sample Scenario (IWLS 2002 Focus Group 3) Question: is it possible to massage the logic of the netlist to improve routing congestion? Proposed research infrastructure: –IWLS benchmark API (Andreas Kuehlman) –Interface to Bookshelf formats –Layout generation (available in the Bookshelf) –Placement (several placers available in the B.) –Congestion maps (next slide)

Interface Issues Transparent error diagnostics –Greatly improve learning curve Ownership, privacy, resource limits: sample policy questions –Chaining jobs owned by different users –What jobs can be launched anonymously? Script composer versus programming –Flexibility versus learning curve –GUI implemented using HTML forms (converts clicks and fill-in-the-blanks to scripts)

Script Composer Built on top of a scripting language –Based on PERL (PERL functions available) Basic flows designed with HTML forms –Start with one ‘step’ and add more steps –API funcs: e.g.,“run ‘optimizer 2’ + store results” –Support for conditionals and iteration Scripts sent to back-end for execution as jobs Scripts can be saved, posted, reused

Language-Level Support Type system for submissions, results and intermediate data –Algorithm implementations Deterministic and randomized optimizers, etc. –Input data, results, status info (runtime, memory,…) –Common benchmarks Rules for matching submission types –E.g., match a placer with a LEF/DEF benchmark –Violations are reported to user as fatal errors

Data Models Consistent data models needed for serious data flows and high-level experiments –e.g., integrated RTL-to-layout implementation Plan to use OpenAccess 2.0 –Specs published in April 2002 –Implementation and source expected next year Adjustments within bookshelf expected in terms of open-source design flows –E.g., for industry SP&R integration

bX: Structure bX front-end: mostly Web-based (+ ) bX back-end –Main server (job scheduling, reporting of results, etc) –Client software on computational hosts Network communications: XML RPC –RPC standard –XML data encoding –HTTP network transport –Compatible with C/C++, Perl, Python, etc.

Implementation Status So far main focus on the back-end Back-end ver 0.1 functional on Linux –BX state maintained in a database –Persistence, etc –Simple one-job demo (1 binary & 1 benchmark) Security features and basic policies –Sandbox execution and data type checks Front-end supports one-job demo Next mile-stone: “10X10” demo (cf SAT 2002) –Jobs automatically distributed and results posted

Conclusions Bookshelf: popular, but can be improved Bookshelf.exe: executable extensions Goals –Automate routine operations –Create open-source flows –Facilitate high-level, large-scale experimentation We plan to assimilate best features from related works + add new ones Started bottom-up implementation –Basic version of bX is working

If we missed anything important, let us know Thank you