In this paper, we introduce a Java implementation of the Bulk Synchronous P
arallel (BSP) model. JBSP (a Java-based BSP system) uses a two-daemon archi
tecture which makes a clear separation Of the computation and communication
involved in parallel programs. Java threads are used in the implementation
of the JBSP system to realize User defined JBSP tasks as well as to carry
out system activities. The JBSP library provides programmers with both expl
icit message-passing and remote memory access communication methods. In add
ition, a set of benchmark experiments was also carried out to compare the p
erformance of JBSP with that of BSPlib. Results show that there is consider
able overhead in communications in the Current implementation of JBSP due t
o the use of Java's Object Serialization. It was also found that although B
SPlib outperforms JBSP in all the cases, JBSP is more scalable in terms of
the BSP machine-parameters. (C) 2001 Academic Press.