| Bryan Carpenter, Guansong Zhang, Geoffrey Fox, Xinying Li, and Yuhong Wen. HPJava: Data Parallel Extensions to Java. In Proceedings of ACM Workshop on Java for Science and Engineering Computation, February 1998. |
....written in Java) to convert the directives to calls to a runtime library, which in turns uses the standard Java threads interface. The system is pure Java, and therefore transparently portable. Other approaches to providing parallel programming interfaces for Java include JavaParty [11] HPJava [8], Titanium [13] and SPAR Java [12] These are also in the research phase, and in addition, require genuine language extensions. The remainder of this abstract is structured as follows: in Section 2 we describe the structure and contents of the benchmark suite. In Section 3 we describe the systems ....
Carpenter, B., Zhang, G., Fox, G., Li, X., and Wen, Y. (1998) HPJava: Data Parallel Extensions to Java, Concurrency: Practice and Experience, vol. 10, pp. 873-877.
....means for specifying data distribution and parallel code segments. Compiler and runtime technologies work together to map data parallel constructs to parallel machines. Examples of such languages include HPF [106] and its predecessors Vienna Fortran [58] and Fortran D [108] HPC [88] and HPJava [42]. Data parallel programs scale as long as the problem size is large enough; the performance of programs with small problem sizes may however degrade if a large number of processors is used. This is mainly due to synchronization and communication overheads. Task parallel programs consist of a set ....
....a contiguous, rectangular memory area (as do Fortran arrays) Java represents multidimensional arrays as arrays of arrays which are linked by pointers. Therefore, expensive argument marshaling and unmarshaling is required. However, there are attempts to enrich Java with a viable array concept [42, 145] which would greatly reduce this overhead. The task of data marshaling is taken care of by the Opus compiler which generates appropriate C functions for translating Fortran data to Java as will be described in Chapter 5. The user is relieved from this task, though he has to obey the different ....
[Article contains additional citation context not shown here]
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen. HPJava: data parallel extensions to Java. Concurrency: Practice and Experience, 10(11-13):873--877, 1998.
....Java programs. The distributed framework relies on the standard Java RMI interface and a runtime library that supports remote creation of objects. Java Parallel [3] provides a library, made of standard Java classes 12 using the Java RMI interface, for parallel and distributed computing. HPJava [4] is a Java language extension to support data parallel programming, primarily on message passing and distributed memory systems. HPJava programs are translated to Java code using a special runtime library. DPJ [8] defines a parallel framework through a Java class library for data parallel ....
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen, HPJava: Data Parallel Exten- sions to Java, Concurrency: Practice and Experience, 1998.
....aggressive optimization techniques for Java, targeted at parallel and scienti c computations. javar and javab are compilation systems targeting parallel computing using Java [4] Data parallel extensions to Java have been considered by at least two other projects: Titanium [36] and HP Java [7]. Loop transformations and techniques for removing redundant array bounds checking have been developed [12, 25] Our e ort is also unique in considering persistent storage, complex distributions of data on processors and disks, and the use of a sophisticated runtime system for optimizing ....
Bryan Carpenter, Guansong Zhan, Georey Fox, Yuhong Wen, and Xinyng Li. HPJava: Data-parallel extensions to Java. Available from http://www.npac.syr.edu/projects/pcrc/July97/doc.html, December 1997.
....the specification of parallel algorithms in Java reflect the alternatives that have been proposed for other languages such as Fortran or C. For instance, there have been proposals to implement common message passing standards, such as PVM or MPI, by means of Java classes [7, 9] Other proposals [6] try to make Java a dataparallel language similar to HPF, in which parallelism could be expressed in a more natural way. The extensions allow the definition of data parallel operations, non rectangular or multidimensional arrays or to allow some kind of data locality. The emerging OpenMP standard ....
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen. HPJava: data parallel extensions to Java. Concurrency: Practice and Experience, 10(11-13):873--877, September 1998.
....slave PVM programs. 1 Introduction The importance of Java as a coherent, platform independent, object oriented and network minded language is widely recognized. With these features, it is not surprising that Java has also entered the high performance computing area with projects such as HPJava[2], JPVM[4] Java DSM[10] Spar[8] JAVAR[1] Most of these projects study various ways to achieve a faster execution of Java programs by efficiently expressing the parallelism in the language. Only a few authors[1] investigate the way to automatically detect parallel executable regions in a Java ....
.... public int[ tids; public int slavenum= 1; public int band=0; 2: job information is received constructor initializes job public JptPvmSlave( mytid=jPVM.mytid( parenttid=jPVM.parent( PVM Java data receive jPVM.recv(parenttid,STARTUPMESG) int[ nslavesband=new int[2]; jPVM.upkint(nslavesband,2,1) nslaves=nslavesband[0] band=nslavesband[1] tids=new int[nslaves] jPVM.upkint(tids,nslaves,1) for(int i=0; i tids.length; i ) if (tids[i] mytid) slavenum=i; break; slave entry point public static void main(String[ args) throws ....
[Article contains additional citation context not shown here]
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen. HPJava: Data parallel extensions to java. Concurrency: Practice and Experience, 10(11-13):873--877, 1998.
.... We have chosen Java because the computations we target can be easily expressed using the notion of objects and methods on objects and because a number of projects are already underway for expressing parallel computations in Java and obtaining good performance on scientific applications [4, 7, 15, 16, 22, 21, 37, 54]. Our chosen dialect of Java includes data parallel extensions for specifying collection of objects, a parallel for loop, distribution functions and reduction variables. However, the approach and the techniques developed are not intended to be language specific. Our overall thesis is that a data ....
....expressed as objects and operations on objects. Specifically, Fortran like languages are not suitable for programming these applications. ffl A number of projects are currently in progress for expressing parallel computations in Java and obtaining good performance on scientific applications [4, 7, 15, 16, 22, 21, 37, 54]. While our project includes several new optimization techniques not addressed by these projects, we also believe that leveraging the tools and techniques developed by these projects is critical for the success of our project. Though we propose to use a dialect of Java as the source language for ....
[Article contains additional citation context not shown here]
Bryan Carpenter, Guansong Zhan, Geoffrey Fox, Yuhong Wen, and Xinyng Li. HPJava: Data-parallel extensions to Java. Available from http://www.npac.syr.edu/projects/pcrc/July97/doc.html, December 1997.
.... metacomputers are capable of delivering greater execution performance to an application than is available at any one of their constituent sites [4] Moreover, performance oriented distributed software infrastructures such as Globus [12] Legion [18] Condor [26] NetSolve [7] and HPJava [6] are attempting to knit vast collections of machines into computational grids [13] from which compute cycles can be obtained in the way electrical power is obtained from an electrical power utility. One vexing quality of these ensemble systems is that their performance characteristics vary ....
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen. Hpjava: Data parallel extensions to java. In ACM Workshop on Java for High-Performance Network Computing, 1998. available from http://www.cs.ucsb.edu/conferences/java98/papers/hpjava.pdf.
....recourse to directives, simply by supplying the appropriate class library. Another possible approach, therefore, would be to modify the run time library described here for direct use by the programmer. Other approaches to providing parallel extensions to Java include JavaParty [15] HPJava [3], Titanium [19] and SPAR Java [18] However, these are designed principally for distributed systems, and unlike our proposal, involve genuine language extensions. The current implementations of Titanium and SPAR are via compilation to C, and not Java. The remainder of this paper is organised as ....
B. Carpenter, G. Zhang, G. Fox, X. Li and Y. Wen. HPJava: Data Parallel Extensions to Java. Concurrency: Practice and Experience, 10(11-13):873-877, 1998.
.... metacomputers are capable of delivering greater execution performance to an application than is available at any one of their constituent sites [4] Moreover, performance oriented distributed software infrastructures such as Globus [12] Legion [18] Condor [26] NetSolve [7] and HPJava [6] are attempting to knit vast collections of machines into computational grids [13] from which compute cycles can be obtained in the way electrical power is obtained from an electrical power utility. Supported by NSF grant ASC 9701333 and Advanced Research Projects Agency ITO under contract ....
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen. Hpjava: Data parallel extensions to java. In ACM Workshop on Java for High-Performance Network Computing, 1998.
....classes [7] or some modified version of them [11, 12, 13] These ideas and proposals are oriented to distributed processing, and do not attempt to deal with shared memory parallelism. There are also a number of proposals for making Java a dataparallel language, such as HPJava, Titanium or Spar [3, 4, 15, 16], in which parallelism could be expressed in a more natural way. These proposals, however, imply the modification of the Java language itself (in fact, these extensions become a Java superset or a Java dialect) in order to allow the definition of data parallel operations, non rectangular or ....
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen. Hpjava: data parallel extensions to java. Concurrency, Practice and Experience, 10(11-13):873--877, September 1998.
....that could establish itself as the universal language for creating programs that run on any kind of platform, from a smart card to a PC to a supercomputer. The possible role of Java as a language for high performance computing has been intensively investigated by G. Fox s research group [2, 3] at the University of Syracuse. Other proposals for Java dialects that address the special needs of high performance computing include Titanium [11] and Spar [9] Getov, Flynn Hummel, and Mintchev [5, 6] have developed Java program wrappers for the standard message passing communication interface ....
....is stored on each participating processor. Transfer of array sections. So far, Java does not include array section notation. For the purpose of specification of data transfers involving subsets of array elements, we use the notation introduced by B. Carpenter et al. in their HP Java proposal [2]. Specification of a read or write operation that transfers an array section has the following form: array in repository.read (array identifier, memory filter, repository filter) array in repository.write (array identifier, memory filter, repository filter) where memory filter specifies the ....
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen. HPJava: Data Parallel Extensions to Java, http://www.cs.ucsb.edu/conferences/java98/program.html.
....without recourse to directives, simply by supplying the appropriate class library. Another possible approach, therfore, would be to modify the run time library described here for direct use by the programmer. Other approaches to providing parallel extensions to Java include JavaParty [10] HPJava [2], Titanium [14] and SPAR Java [13] However, these are designed principally for distributed systems, and unlike our proposal, involve genuine language extensions. The current implementations of Titanium and SPAR are via compilation to C, and not Java. The remainder of this paper is organised as ....
B. Carpenter, G. Zhang, G. Fox, X. Li and Y. Wen. HPJava: Data Parallel Extensions to Java. Concurrency: Practice and Experience, 10(11-13):873-877, 1998.
....for high performance computing. JMPP will make it even easier to apply Java to many scientific, engineering, or other applications. There are several valuable applications of Java parallel computing that can make use of JMPP. For example, a high level parallel programming language such as HPJava[2], which is similar to High Performance Fortran (HPF) provides a high level parallel programming framework. This kind of language can be implemented with JMPP. 19 A virtual machine can be created by collecting the computing power of computer clusters, workstations, personal computers, or any ....
B. Carpenter, G. Zhang, and G.C. Fox. Hpjava: Data parallel extensions to java. In ACM Workshop on Java for High-performance Network Computing, pages 873--877, Palo Alto, California, 1998. http://www.npac.syr.edu/projects/pcrc/HPJava/index.html.
.... static Point[2] hipoint = Xdimen 1,Ydimen 1] static RectDomain[2] VMSlide = lowpoint : hipoint] static VMPixel[2d] VScope = new VMPixel[VMSlide] public static void main(String[ args) f Point[2] lowend = args[0] args[1] Point[2] hiend = args[2] args[3 ] int subsamp = args[4]; RectDomain[2] Outputdomain = 0,0] hiend lowend) subsamp] VMPixelOut[2d] Output = new VMPixelOut[Outputdomain] RectDomain[2] querybox ; Point[2] p; foreach(p in Outputdomain) f Output[p] Initialize( g querybox = lowend : hiend] Main Computational Loop foreach(p in ....
.... box) f A[f(p) C[h(p) g (c) foreach (p in box) f A[f(p) B[p] Theta C[g(p) g # foreach (p in box) f T[p] C[g(p) g foreach (p in box) f A[f(p) B[p] Theta T[p] g Figure 2: Examples of Loop Fission Transformations Point[2] lowend = args[0] args[1] int subsamp = args[4]; Point[2] q = p lowend) subsamp ; foreach(p in querybox) f Point[2] q = p lowend) subsamp ; Output[q] Accum(VScope[p] subsamp subsamp) g Figure 4: Slice for Subscript Function (left) and for Aggregation Function (right) 5.2.4 Extracting Aggregation Functions For extracting the ....
[Article contains additional citation context not shown here]
Bryan Carpenter, Guansong Zhan, Geoffrey Fox, Yuhong Wen, and Xinyng Li. HPJava: Data-parallel extensions to Java. Available from http://www.npac.syr.edu/projects/pcrc/July97/doc.html, December 1997.
....a set of strategies to compile data parallel loops on the DVSA machine. Among the data parallel programming languages, HPF can be considered the most important one even if, recently, some interesting proposals for data parallel extensions of Java, based on the HFP model, have also been defined [4]. However, in the remainder of this paper we adopt HPF as the source language of the compiler. We show that most of static analyses defined for a data parallel language on a distributed memory architecture may be adopted for the DVSA as well. Obviously the returned information is exploited to ....
B.Carpenter, G. Zhang, G. Fox, X. Lin, and Y. Wen. HPJava: data parallel extensions to Java. Concurrency: Practice and Experience, 10(11-13), sep-oct 1998.
....as JavaPVM) 10] is an interface written using Java native methods capability which allows Java applications to use the PVM software developed at Oak Ridge National Laboratory. jPVM allows Java applications and existing C, C applications to communicate with one another using the PVM API. HPJava [11] is an extension of Java which provides High Performance Fortran like distributed arrays and some new distributed control constructs to facilitate access to local elements of these arrays. It supports the SPMD programming model where an HPJava program is allowed to make a direct call to MPI or ....
#B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen, "HPJava: Data Parallel Extensions to Java," in Proceedings of ACM 1998 Workshop on Java for High-Performance Network Computing, February 1998.
....Java programs. The distributed framework relies on the standard Java RMI interface and a runtime library that supports remote creation of objects. Java Parallel [3] provides a library, made of standard Java classes using the Java RMI interface, for parallel and distributed computing. HPJava [4] is a Java language extension to support data parallel programming, primarily on messagepassing and distributed memory systems. HPJava programs are translated to Java code using a special runtime library. DPJ [8] defines a parallel framework through a Java class library for data parallel programs. ....
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen, HPJava: Data Parallel Extensions to Java, Concurrency: Practice and Experience, 1998.
....analysis) Besides a clean interface to the PCRC runtime software, the extended language will also be supported by a direct interface to MPI from Java. The de nitions of the HPJava language and the associated HPspmd programming model has been presented at various conferences and workshops [27, 23, 25, 86, 85]. See also [26, 84] The basic Java interface to NPAC kernel library is now operational. Design of the HPJava translator is maturing. Work continues on the implementation of the translator. We have started to assemble a test suite of HPJava programs. Experiments with hand translated HPJava ....
Bryan Carpenter, Guansong Zhang, Georey Fox, Xinying Li, and Yuhong Wen. HPJava: Data parallel extensions to Java. In Fox [49]. To appear in Concurrency: Practice and Experience.
....involving Rice, Maryland, Austin, Indiana, CSC, Rochester and Florida, with NPAC as prime contractor. Achievements included construction of an experimental HPF compilation system [39] delivery of the NPAC PCRC runtime kernel (Adlib) 11] and early work on the design and implementation of HPJava [10]. 3 2 Objective and expected signi cance Our system aims to support a programming model that is a exible hybrid of the data parallel, language oriented, HPF style, and the established and popular, library oriented, SPMD style. We refer to this model as HPspmd. Primary goals of the current ....
....facilitate access to all elements in the locally held section of a particular array (or group of aligned arrays) This is the distributed loop or overall construct. 5 Java, Fortran and C versions. A Java instantiation (HPJava) of the HPspmd language model outlined above has been described in [10, 9]. A brief review is given in section 3.1. HPJava is a superset of the Java language that adds prede ned classes and some additional syntax for dealing with distributed arrays. It also adds three new control constructs, including the overall distributed loop, which is used to traverse local ....
[Article contains additional citation context not shown here]
Bryan Carpenter, Guansong Zhang, Georey Fox, Xinying Li, and Yuhong Wen. HPJava: Data parallel extensions to Java. In ACM workshop on Java for High-performance Network Computing, 1998. To appear in Concurrency: Practice and Experience. Extended version available at http://www.npac.syr.edu/projects/pcrc/doc.
No context found.
Bryan Carpenter, Guansong Zhang, Geoffrey Fox, Xinying Li, and Yuhong Wen. HPJava: Data Parallel Extensions to Java. In Proceedings of ACM Workshop on Java for Science and Engineering Computation, February 1998.
No context found.
Carpenter B, Zhang G, Fox G, Li X, Wen Y. HPJava: data parallel extensions to Java. Concurrency: Practice and Experience 1998; 10(11--13):873--877.
No context found.
Carpenter, B., Zhang, G., Fox, G., Li, X., and Wen, Y. (1998) HPJava: Data Parallel Extensions to Java, Concurrency: Practice and Experience, vol. 10, pp. 873-877.
No context found.
B. Carpenter et. al., HPJava: Data Parallel Extensions to Java, Concurrency: Practice and Experience, 1998. 168
No context found.
B. Carpenter, G. Zhang, G. Fox, X. Li, and Y. Wen, "HPJava: Data Parallel Extensions to Java," Proceedings of ACMWorkshop on Java for Science and Engineering Computation, February 1998.
First 50 documents
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC