| |||
Home Call for Participation Register Program Tutorials List of Papers List of Posters People Java Grande Charter Related Links Old: CFP (TXT) Paper Submissions page |
Sunday, Nov. 3, 2002
Title: Programming the Grid with Java COG, Web Services and Component
Software
Intended audience:
Prerequisites:
Description:
This tutorial will describe how to build Grid applications using three closely related technologies:
Lecture outline:
Brief CVs:
Gregor von Laszewski is an Assistant Computer Scientist at Argonne National Laboratory, a Fellow of the Computation Institute at University of Chicago and a Visiting Professor at Illinois Institute of Technology. He is the chief architect of the Commodity Grids Toolkit (COG). Madhusudhan Govindaraju is a Postdoctoral Scientist at Indiana University. He is the co-designer and developer of the XSOAP C++ system and the XCAT distributed component system. Sriram Krishnan is a Ph.D. student in Computer Science at Indiana University. He has designed large scale distributed applications using XCAT and the XCAT Science Portal. Alek Slominski is a Ph.D. student in Computer Science at Indiana University. He is the co-designer of XSOAP, XMP - the XML pull parser and has worked on a variety of Web Services technology while at IBM Watson Research Labs. Title: Java for High Performance Computing
Intended audience:
Prerequisites:
Description:
Benefits:
Lecture outline:
INTRODUCTION TO HIGH-PERFORMANCE COMPUTING * History * Parallel programming paradigms * High-performance and distributed computing challenges * Current trends in the high-performance computing community JAVA NUMERIC ISSUES * Introduction to Java for numerical computing * Bit-wise reproducibility of floating-point results * Multi-arrays * Complex numbers * Transcendental functions * Numerical libraries * Performance analysis * Comparison with C/C++ and Fortran * Optimizing BLAS kernels * Java numeric benchmarks * General performance improvements OPTIMIZING COMPILER TECHNOLOGY * Java vs. Fortran array data structures * The Array package for Java * Compiler optimizations * Performance results JAVA FOR DISTRIBUTED COMPUTING Distributed programming with message based libraries * MPI * openMP * JMS Brief CVs:
Roldan Pozo, National Institute of Standards and Technology
Dr Pozo received his PhD in Computer Science from the University of Colorado in 1991, and in 1997 was awarded the Presidential Early Career Award from the US White House for his contributions in object-oriented linear algebra software and computing. Currently, he is investigating portable high-performance computing with Java and is co-chair of the Java Numerics Group. Dr. Pozo is also an Associate Editor of the ACM Transactions on Mathematical Software. Title: C# and .NET for Java Programmers
Intended audience:
Description:
This tutorial looks at the best features of C# and how they can be incorporated seamlessly into programs, even those that are currently based on Java. Language features covered include value and reference types, overloaded operators, collections and the foreach loop. Several advanced oops features are implemented in C# in a novel way, and make life easier for the programmer. Those mentioned here are properties, reflection and serialization on the net via XML and SOAP. Several examples will be examined and source code will be made available to the attendees. C# comes along with the .NET environment which has to be taken into account as soon as one moves to net-centric computing. .NET is based on server side processing, and the central role of the Common Language Runtime (similar to Java's JVM) means that languages outside it could well be excluded in the future. Java is outside the CLR and therefore Java programs must either be converted to Microsoft's J# language or be linked to other .NET programs. We have investigated how such linkage can be accomplished. We show how C# can be used to mimic the client side processing of an applet and how it can be called from Java. Reference is made to work on a platform independent XML-based GUI generator (available for both C# and Java), which can free programmers from additional Microsoft software, i.e. the forms designer of Visual Studio. Some of the examples are run on Microsoft's Open Source C#, called Rotor, which is available on FreeBSD Unix in addition to Windows XP. Lecture outline:
Brief CVs:
R Nigel Horspool: Professor and Head of Department of Computer Science, University of Victoria, Canada. Author of two books on C and Unix. Immediate past chairman of Compiler Construction 2002. Author of over 60 papers, member of 2 program committees: Compiler Construction 2003 and Component Deployment 2002. Bishop and Horspool are authors of an upcoming book on C# to be published by Addison-Wesley in March 2003, and are holders of a Microsoft Research Rotor Grant. Title: Process Oriented Design for Java: Concurrency for All
Intended audience:
Description:
A process-oriented design pattern for concurrency is presented with a specific binding for Java. It is based on the algebra of Communicating Sequential Processes (CSP) as captured by the JCSP library of Java classes. No mathematical sophistication is needed to master it. The user gets the benefit of the sophistication that underlies CSP simply by learning the patterns and using the library. Those benefits include simplification wins for design and implementation that concurrency ought always to have made possible, but with the approaches used before somehow did the opposite. And we don't lose the performance wins for grand-challenge and reactive systems that have been our traditional reasons for going parallel. Although the Java binding to CSP mechanisms is new, fifteen years of working with students at Kent have shown that the ideas within process-oriented design can be quickly absorbed and applied. Getting the ideas across as soon as possible pays dividends - the later it's left, the more difficult it becomes to wean people off those serial ways of thought that fit many applications so badly. Concurrency for all (and for everyday use) in the design and implementation of complex, maintainable and scaleable computer systems is both achievable and necessary. This tutorial will also introduce the JCSP Network Edition, which extends the same CSP concurrency model to networked systems. This enables the dynamic distribution and connection of JCSP processes with no central or pre-planned control (although that is easy to impose when necessary). Details of the underlying network fabric and control (such as multiplexing, flow-control, network addresses) are hidden from the JCSP programmer, who works entirely at the application level using CSP communication and synchronisation primitives. Indeed, processes themselves need not be aware that they are networked, which enables simple re-configuration and load balancing. The seamless unification of external and internal concurrency mechanisms, the dynamic construction (and de-comstruction) offered for networked applications and the formal compositional basis of the underlying CSP model (which may be ignored by users or employed directly for formal analysis and/or model checking) are significant (we argue) advances on the current state of the art.
Key URLs:
Brief CV:
He was appointed Professor of Parallel Computing at the University of Kent at Canterbury (England) in 1989). He led the UK-funded "occam-for-all" project (1995-97) which has ported the CSP-derived occam multiprocessing language to a variety of modern parallel architectures. occam, because of its simplicity, security, lightness and formal semantics, remains a key research tool with relevance to the Java community as it struggles to come to terms with the problems and opportunities of multithreading. Professor Welch is one of the leading advocates for the transfer of technical knowledge from the mature CSP community into the wider world of parallel computing, where the lack of basic theory and tools is an admitted problem and a serious obstacle to practice. Title: Network and Java Security Concepts
Intended audience:
Prerequisites:
Description:
This session will discuss the basics of network security, the variety of infrastructural support and the choice of ready solutions in Java towards building secure products. The mission of this session is to drive home the point that developers need to understand security, and surprisingly, the concepts are quite simple. The following topics will be covered with some very simple code samples. Lecture outline: Network security concepts 45 mins. - Message Digests - Digital signatures - ciphers and - Public Key Infrastructure (PKI) Java Security - Evolution 10 mins. - Java security tools 10 mins. - Java Applet Security and code signing - code signing using standard CAs 20 mins. - code signing using test CAs 10 mins. - Java Optional packages - Java CertPath 10 mins. - JCA/JCE 15 mins. - JSSE 15 mins. - JAAS/JGSS 10 mins - XML Security 15 mins. - Futures 5 mins. - Q&A 15 mins. Brief CV:
Rags brings with him about 15 years of software development experience. He worked for Digital Equipment Corporation before joining Sun. He has worked on several technology areas, including internals of VMS, Unix and NT. Rags holds a Masters degree in Computer Science from the Center of Advanced Computer Studies at the University of Southwestern Louisiana. He enjoys running, hiking and eating spicy food. Publications: http://www.cs.uml.edu/~raghavan/publications |
||
|