590 likes | 926 Vues
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. Outline Overview of a grid system Problem statement
E N D
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 .. Network 2 Task n 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 Compute Servers Task 1 Task 2 Task 3 Task .. Task n Network Fairfield University
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 PC is still Inactive Terminate CS Screensaver Yes Fairfield University
Lookup Server Execute Job Send Answer CS Yes Jobs to execute Send Job 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 • This process is a platform-specific activity. • SaverBeans Screensaver SDKframework, under the Java.net group. User Inactivity Processing Idleness User Activity 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 Register with LUS Invoke CS Fairfield University
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 Join the grid • Resource restoration to its initial state. • Cleanup and communication with LUS. Processing Idleness Processing Jobs User Activity 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 CS 1 Task 1 CS 2 Task 2 CS 3 Task 3 CS 4 Task 4 CS .. Task .. CS n Task n Fairfield University
Intrusion Minimization Leasing Process: Send job Processing Job Available Job Completion Send signal Dead Available Busy/Avail. Send response No response Fairfield University
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 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