330 likes | 582 Views
GridNexus: A Graphical User Interface for Grid Computing. UNCW Grid Group Presented by: Ron Vetter and Eric Harris Department of Computer Science. Outline. Background GridNexus Overview The Graphical User Interface The JXPL Scripting Language Demonstration of Sample Workflows
E N D
GridNexus: A Graphical User Interface for Grid Computing UNCW Grid Group Presented by: Ron Vetter and Eric Harris Department of Computer Science
Outline • Background • GridNexus Overview • The Graphical User Interface • The JXPL Scripting Language • Demonstration of Sample Workflows • Conclusions and Future Work
Grid Computing • The term "grid computing" suggests a computing paradigm similar to an electric power grid - a variety of resources contribute into a shared "pool" for many consumers to access on an as-needed basis. • Ideally the user does not know or care where the computing operation is being performed; the process is invisible to the user. • Grid middleware handles security, authentication, authorization, resource selection and routing of input and output seamlessly.
Limitations of Grid Computing • Although efforts are being made to standardize protocols (e.g., Globus toolkit and Avaki), interacting with Grid services remains a complex process. • Creating new clients and services requires programming in a language such as C or Java and using a host of libraries for interacting with Open Grid Services Infrastructure, Grid Security Infrastructure, Web Services Description Language and other standards.
Grid Computing at UNCW • These tools and techniques are useful to a select group of computing specialists; however the only way to make Grid resources accessible to a wide range of users is to provide a relatively simple graphical user interface (GUI). • The UNCW Grid Group has developed a GUI that is easy to use and can access a wide range of applications. • Our goal was to create an interface to Grid computing that accomplishes what browsers did to open up the WWW .
Grid Computing at UNCW • Faculty and computer science undergraduate students, partnered with faculty and students in several “application areas” to develop a graphical user interface (GUI) called GridNexus. • GridNexus serves as a front-end to simplify data manipulations and calculations of various types performed on remote computers over a Grid. • GridNexus is based on JXPL, a new graphical programming language developed at UNCW.
GridNexus • GridNexus allows users to link ‘modules’ that perform various operations into a usable ‘workflow’, then save this workflow for later use. • Once a workflow has been created, only the filename of the data set and the filename for the output file need to be specified. • This greatly simplifies repetitive operations, and takes much of the mystery (and misery) out of remote computing for non-computer science users.
Example: Computational Chemistry • One of the limitations of most computational chemistry software packages is that they do not read or write many different (proprietary) file types, so it is difficult to transfer data from one program to another. • GridNexus allows users to input the most common types of geometry specification (.pdb and .mol files) and use a default set of options to write a Gaussian input file (.dat or .com).
Gaussian 03 under GridNexus This workflow allows input of a .ENT file, reorientation of the structure, and submission for a Gaussian 03 calculation.
GridNexus: The GUI • Workflow construction and execution • “Drag and Drop” environment • Generic Grid and Web service clients • Separation of GUI from execution
GUI Features • Based on Ptolemy II • http://ptolemy.eecs.berkeley.edu/ptolemyII • XML configuration makes it easy to offer specialized tools sets • Composite models let you bundle complex structures inside a single graphical unit
XML Configuration • Hierarchical tool library • Easy to customize • Structure determined by XML configuration files
Composites • Workflows can be complicated • Complex structures can be stored in a Composite object which appears as a single module in other workflows. • Composites can be stored in the user library
Composites Complex Object Composite
Workflow Execution • GUI modules do not execute tasks • GUI produces JXPL script • Script is sent to JXPL processor • Processor • Run on client machine • Remote WSRF service
JXPL Overview • Scripts written in XML • Similar to LISP • User defined functions • Local variables • Supports recursion
JXPL Example <jxpl:list> <jxpl:primitive name=“Arithmetic”> <jxpl:property name=“operation” value=“add”/> </jxpl:primitive> <jxpl:integer value=“1”/> <jxpl:integer value=“2”/> </jxpl:list>
Remote JXPL Access • JXPL scripts can be executed by remote processors accessed in several ways • WSRF service • Remote Method Invocation (RMI) • HTTP • GridNexus can be configured to use either a local or remote JXPL processor
Live Demonstrations • Simple Workflows • Biology Workflows • MFinder • TargetP • Weka • Phylographer • Computational Chemistry Workflows • MolStart • ConvertMol • Gaussian
What’s next for GridNexus? • Establish GridNexus as an Open Source Project (Release 2.1 expected June 2007) • Extend to other application areas: • Animation Rendering • Evolutionary Biology • Image Processing • Include industry and businesses as users and developers.
Creation of Web Services • Visual Method of Building Web Services • Publish User Defined Processes • Bind workflow to a SOAP interface • Deploy workflows as components in a Service Oriented/Distributed Architecture
Benefits • Security • Hide sensitive workflow details from other users • Coded passwords, Application Path • Accessibility • Make workflows available to any Web Service Client Platform • Java, .NET, Perl, C++, etc • Maintainability • Single point from which to update workflow • Flexibility • JXPL
Modes of Operation • Bind and run on Local Machine • Testing • Collaboration • Deploy on a J2EE Application Server • Long term availability of workflow
J2EE Container 1. Author defines workflow in GridNexus 2. Publishes Workflow to WS • 3. Users Invoke Workflow as WS Call • GridNexus WS Client Module • Customized Web Form • Other
Extensibility • Relies upon Apache Axis2 • Modularity • Potential to add-on additional Web Service communication standards • WS Reliable Messaging • WS Security
Future Work • Produce WSRF 1.2 (Grid) services • Globus • Apache Muse • Apache implementation of WSRF
Conclusions • GridNexus: intuitive workflow creation • JXPL • Flexible XML scripting language • Remote data and execution • Together they provide an extensible workflow system that separates GUI from execution.