Benutzerhandbuch Datenschutzhinweis Impressum Kontakt





Developing a practical parallel multi-pass renderer in Java and C++: Toward a Grande application in Java


Yamauchi,  Hitoshi
Computer Graphics, MPI for Informatics, Max Planck Society;

Externe Ressourcen
Es sind keine Externen Ressourcen verfügbar
Volltexte (frei zugänglich)
Es sind keine frei zugänglichen Volltexte verfügbar
Ergänzendes Material (frei zugänglich)
Es sind keine frei zugänglichen Ergänzenden Materialien verfügbar

Yamauchi, H., Maeda, A., & Kobayashi, H. (2000). Developing a practical parallel multi-pass renderer in Java and C++: Toward a Grande application in Java. In Proceedings of the ACM 2000 Java Grande Conference (JAVA-00) (pp. 126-133). New York, USA: ACM.

In the area of parallel processing, performance has been the primary goal, and parallel software writers historically paid less attention to software portability. However, as software is becoming more complex, cost for developing and maintaining parallel applications is rapidly increasing. Reusable and portable software is certainly needed even in the parallel processing area. Java appeared on the scene, advertising portability as its largest advantage. Java Grande Forum was established to achieve two goals; portability and high-performance. Current Forum discussions seem to concentrate on optimization of Java programs, elements of numerical libraries, message passing interface for Java, etc. Few implementations of practical applications are presented so far. To find out obstacles in writing Grand Challenge applications in Java, empirical studies of large and practical applications are strongly desired. As an example of practical distributed parallel applications, we have implemented a parallel multi-pass rendering system, which is a combination of radiosity and ray-tracing methods, in both Java and C++. These implementations, about 56,000 lines in total, are publicly available at \texttt{}. These two programs are based on the identical algorithm and are directly comparable in terms of performance and efficiency. Experimental results on Sun Enterprise with JDK 1.2.1 and gcc 2.7.2 show that compared to the C++ version, the performance of the Java version is about three to five times slower with requiring approximately four to seven times more memory space. We further discuss some problems encountered in developing practical parallel distributed applications in Java.