Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Electrical and Computer Engineering Department Fairfield University MASTERS THESIS DEFENSE Project: The Initium Remote Job Submission Screensaver By Francisco Castellanos Advisor: Professor Douglas A. Lyon, Ph.D. Fairfield University Outline • • • • • • Overview of a grid system Problem statement Approach to solve the problem Execution Project Demonstration Conclusion Fairfield University What is grid computing? • It is a parallel computing model Fairfield University Why use grid computing? • It takes advantage networked computers • It executes tasks in parallel • It is FAST Fairfield University Task 1 Task 2 Network 1 Task 3 Task 4 Task .. Task n Network 2 Fairfield University Basic Research Goal • Make grid computing a little easier Fairfield University What is a screen saver? • A program that wakes up when the computer is idle. • A program that terminates when the computer is busy. Fairfield University Why use a screen saver? • Screensavers are a minimal invasive technology that can be used to volunteer CPU cycles. • Typically, computers are used between 40 and 60 hours out of a 168-hour week. (~ 35% utilization). Fairfield University Outline • • • • • • Overview of a grid system Problem statement Approach to solve the problem Execution Project Demonstration Conclusion Fairfield University Problem Statement • Given a Network Of Workstations (NOW) • Find a way of doing grid computing that is easier • Subject to the constraints: – non-invasive process – Portable solution Fairfield University The Initium RJS System Web Server Lookup Server Task 1 Task 2 Task 3 Task .. Task n Network Fairfield University Compute Servers Problem Statement • Idleness detection • Minimize intrusion into the desktop. • Portable screensaver Fairfield University Lookup Server User PC Yes Inactive Invoke SS No Register with LUS Invoke CS No Screensaver PC is still Inactive Yes Fairfield University Terminate CS Lookup Server CS Execute Job Send Answer Yes Send Job Jobs to execute No Fairfield University Outline • • • • • • • Overview of a grid system Problem statement Motivation Approach to solve the problem Execution Project Demonstration Conclusion Fairfield University Motivation • Use otherwise idle resources • Inspired by SETI • A Java-based screen saver for grid computing is NEW. Fairfield University Outline • • • • • • • Overview of a grid system Problem statement Motivation Approach to solve the problem Execution Project Demonstration Conclusion Fairfield University Approach User-PC quiet time detection Intrusion Minimization Screensaver Portability Screensaver Deployment Screensaver Integration with IRJS middleware Fairfield University Outline • • • • • • • Overview of a grid system Problem statement Motivation Approach to solve the problem Execution Project Demonstration Conclusion Fairfield University User-PC Inactivity Detection User Inactivity Processing Idleness User Activity • This process is a platform-specific activity. • SaverBeans Screensaver SDK framework, under the Java.net group. Fairfield University User-PC Quite Time Detection SaverBeans SDK: • Java-based framework. • Provides native subroutines to invoke Java methods in the screensaver. Fairfield University User-PC Quite Time Detection … public class RJSsaver extends SimpleScreensaver { public void init(){…} public void paint( Graphics g ) {…} public void destroy() {…} … } Fairfield University User-PC Quite Time Detection … public void init() { iCount = iCount + 1; if (iCount < 2){ startComputeServer(); launchLogMonitor(); } } Fairfield University User-PC Quite Time Detection Fairfield University User-PC Quite Time Detection Lookup Server User PC Yes Inactive Invoke SS No Invoke CS Fairfield University Register with LUS User-PC Quite Time Detection Fairfield University User-PC Quite Time Detection Fairfield University Approach User-PC quiescence detection Intrusion Minimization Screensaver Portability Screensaver Deployment Screensaver Integration with IRJS middleware Fairfield University Intrusion Minimization User Inactivity Processing Join the grid Idleness Processing Jobs User Activity • Resource restoration to its initial state. • Cleanup and communication with LUS. Fairfield University Intrusion Minimization SaverBeans SDK destroy method: protected void destroy(){ cal= Calendar.getInstance(); killFile.mkdir(); System.out.println("CS Stoping at "+ cal.getTime().toString()); } Fairfield University Intrusion Minimization Task 1 CS 1 Task 2 CS 2 Task 3 CS 3 Task 4 CS 4 Task .. CS .. Task n CS n Fairfield University Intrusion Minimization Leasing Process: Send job Available Processing Job Job Completion Send signal Available Busy/Avail. Send response Fairfield University Dead No response Approach User-PC quiescence detection Intrusion Minimization Screensaver Portability Screensaver Deployment Screensaver Integration with IRJS middleware Fairfield University Screensaver Portability Macintosh Solution: • Creation of a Objective C program as the screensaver. • Invokes Java Classes. Fairfield University Screensaver Portability (void)animateOneFrame { … if(i==0){ NSLog(@" First time %d SS start now", i); //Call to java class to start CS [NSClassFromString(@"RunCS") newWithSignature:@"(Ljava/lang/String;) ",@"start"]; } Fairfield University Screensaver Portability (void)stopAnimation { //Call to java class to stop CS [NSClassFromString(@"RunCS") newWithSignature:@"(Ljava/lang/String;) ",@"stop"]; NSLog(@"SS stop now %d ", i); } Fairfield University Approach User-PC quiescence detection Intrusion Minimization Screensaver Portability Screensaver Deployment Screensaver Integration with IRJS middleware Fairfield University Screensaver Deployment Involved: • Screensaver Installer • Java Web Start • Configuration Fairfield University Screensaver Deployment Web Server 1 Web Server 2 1 2 Beam over screensaver distributable files, and install and configure SS 1. Download and load JWS screensaver installer User PC / CS 3 Execute screensaver and download and launch JWS Compute Server 4 6 Launch Compute Server and discover to LUS Push computable jobs to be executed Look up Server 5 Pull JNLP links for computable jobs Fairfield University Screensaver Deployment Operating System Identification: public static boolean isWindows(String str) { if (isWindows()) { String os = getOsName().toLowerCase(); if (os.indexOf(str) > -1) return true; } return false; } public static boolean isWindowsXp() { return isWindows("xp"); } Fairfield University Screensaver Deployment Beam Over Screensaver resources: public static void downloadScreenSaverJar(File outputJarFile, String urlStr) throws IOException { URL screenSaverUrl = getResourceUrl(urlStr); UrlUtils.getUrl(screenSaverUrl, outputJarFile); } … Fairfield University Screensaver Deployment Configuration: • Win: Version sensitive directories – For Windows 98: C:/windows/system/. – For Windows NT: C:/winnt/system/. – For other version: C:/windows/sytem32/. • Unix: – Xscreensaver Configuration + User dir • Mac: – Location. (~/Library/Screensavers/) Fairfield University Screensaver Deployment Fairfield University Approach User-PC quiescence detection Intrusion Minimization Screensaver Portability Screensaver Deployment Screensaver Integration with IRJS middleware Fairfield University Screensaver IRJS Integration Submitting Jobs to the IRJS System: • Written in Java • Main() method in class to execute • Independent of user input • Do not use any GUI • Deployed as Java Web Start • Output is written to .jar file. Fairfield University Screensaver IRJS Integration public class FractalsJob_1 { public static void main(String[] args) { Point from = new Point(0, 0); Point to = new Point(400, from.y + 100); Utils.computeStrip(from, to, "Fractals_out1.ppm.jar"); } } Fairfield University Screensaver IRJS Integration Fairfield University Screensaver IRJS Integration Fairfield University Outline • • • • • • Overview of a grid system Problem statement Approach to solve the problem Execution Project Demonstration Conclusion Fairfield University Outline • • • • • • Overview of a grid system Problem statement Approach to solve the problem Execution Project Demonstration Conclusion Fairfield University Conclusion Experimental Results: Experiment # Experiment Desc. Computers Number of Jobs Total Processing Time 1 One CS A 8 2m 53 sec 2 Two CS(s) A, B 8 1m 7 sec 3 Three CS(s) A, B, C 8 1 m 2 sec 4 Four CS(s) A, B, C, D 8 50 sec Fairfield University Conclusion IRJS System Experimental Results . 180 Total Processing Time Sec. 200 160 140 120 100 80 60 40 20 0 1 2 3 Compute Se rv e rs Fairfield University 4 Conclusion Future Work : • Mac implementation with SaverBeans • Tasks-resource matching. Current: firstcome first-serve • Improved interface to submit jobs to IRJS. • Job partitioning. Current: manual Fairfield University Q/A Fairfield University