hpjava ppt
TRANSCRIPT
HPJava
L.Indraneel(08P61A1222)
Introduction to Java
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java Platform
Java is currently one of the most popular programming languages in use, particularly for client-server web applications, with a reported 10 million users.
Characteristics of Java
Java is simple
Java is object-oriented
Java is distributed
Java is interpreted
Java is robust
Java is secure
Java is portable
Java’s performance
Java is multithreaded
Java is dynamic
Object Oriented Concepts
Inheritance Polymorphism Encapsulation Abstraction
Why Java?
It’s the current popular languageIt’s almost entirely object-orientedIt has a vast library of predefined objects and
operationsIt’s more platform independent
this makes it great for Web programmingIt’s more secure
Java programs
Two kinds
Applicationshave main()run from the OS prompt
Appletshave init(), start(), stop(), paint(),
update(), repaint(), destroy()run from within a web page
What is HPJava?HPJava stands for “high performance java”
HPJava is a programming language extended from Java to support parallel programming, especially (but not exclusively) data parallel programming on message passing and distributed memory systems, from multi-processor systems to workstation clusters
Difference between Java and
HP JavaJava already provides parallelism through
threads. But that model of parallelism can only be easily exploited on shared memory computers.
HP Java is targeted at distributed memory parallel computers (most likely, networks of PCs and workstations).
HPJava History
Inspired by HPF(high performance Fortran) HPJava project started around 1997
HPJava lifts some ideas directly from HPFSyntax was simpler and there was scope to
extend the features
Features of HPJava
HP Java adds to Java a concept of multi-dimensional arrays called “multiarrays”
To support parallel programming, these multiarrays are extended to “distributed arrays”.
The new distributed datastructures are cleanly integrated into the syntax of the language
Architecture of HP Java
Front-End Architecture
Issues in the language design
1 Extending the Java languageHPJava can bound to other languages like C,
C++ and Fortran. But Java is a convenient base language because it provides full object-orientation convenient for describing complex distributed
It has been noted elsewhere that Java has various features suggesting it could be an attractive language for science and engineering
2 Datatypes in HPJava
In HPJava, variable names are divided into two sets. In general those declared using ordinary Java syntax represent local variables and those declared with [[ ]] represent global variables
3. Programming convenience
The language provides some special syntax for the programmer's convenience
Unlike the syntax for data declaration, which has fundamental significance in the programming model, these extensions are purely provide syntactic conveniences.
Advantages
HPJava adds to Java is a multi-dimensional array, or multiarray, with properties similar to the arrays of Fortran
HPJava supports parallel programming on distributed memory (and shared memory) parallel computers
Any ordinary Java class can be invoked from an HPJava program without recompilation
A translated and compiled HPJava program is a standard Java class file that can be executed by a distributed collection of Java Virtual Machines
Disadvantages
Many of the features of HPJava would be hard or impossible to achieve as Java libraries
The compiler would not be able to perform static analysis and optimizations on them
Software for HPJava
There are two main parts to the software. The HPJava development kit, hpjdk contains the HPJava compiler and an implementation of the high-level communication library, Adlib
For Distributed-memory parallel computers, one should install the second HPJava package mpiJava
Conclusion
Our experience thus far is that Java is a good choice as a base language: it is easy to extend, and its safety features greatly simplify the compiler writer’s task
HPJava will be most helpful for problems that have some degree of regularity
.
Thank You