Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Raoul Bhoedjang

dblp:b/RaoulBhoedjang · also R. A. F. Bhoedjang · DBLP profile ↗
← Back
9ranked-venue papers
3as first author
0since 2021 · last 2004
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 9 · 3 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
5 papers
Interconnection networks and networks-on-chip · 35% Parallel and multicore computing · 29% Memory systems · 21%
Software engineering, system software, and programming languages
1 paper
Compilers and program optimization · 100%

Topics — the 12 heaviest of 14, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Memory systems › shared memory
distributed shared memory
0.122001
Source-level global optimizations for fine-grain distributed shared memory systems · PPoPP 2001
Performance Evaluation of the Orca Shared-Object System · ACM Trans. Comput. Syst. 1998
Interconnection networks and networks-on-chip
cluster interconnect
0.012004
Cluster communication protocols for parallel-programming systems · ACM Trans. Comput. Syst. 2004
Parallel and multicore computing › parallel programming models and runtimes
parallel programming frameworks
0.022004
Evaluating Design Alternatives for Reliable Communication on High-Speed Networks · ASPLOS 2000
Cluster communication protocols for parallel-programming systems · ACM Trans. Comput. Syst. 2004
Parallel and multicore computing
parallel programming models
0.012001
Source-level global optimizations for fine-grain distributed shared memory systems · PPoPP 2001
Interconnection networks and networks-on-chip
network interface
0.012000
Evaluating Design Alternatives for Reliable Communication on High-Speed Networks · ASPLOS 2000
Parallel and multicore computing › parallel computing › parallel communication
user-level communication
0.012000
Evaluating Design Alternatives for Reliable Communication on High-Speed Networks · ASPLOS 2000
High-performance computing › collective communication
MPI collective communication
0.011999
MagPIe: MPI's Collective Communication Operations for Clustered Wide Area Systems · PPoPP 1999
Memory systems › cache coherence
cache coherence protocol
0.011998
Performance Evaluation of the Orca Shared-Object System · ACM Trans. Comput. Syst. 1998
Distributed systems › fault tolerance
reliable communication
0.012000
Evaluating Design Alternatives for Reliable Communication on High-Speed Networks · ASPLOS 2000
Distributed systems
grid computing
0.011999
MagPIe: MPI's Collective Communication Operations for Clustered Wide Area Systems · PPoPP 1999
Distributed systems
group communication
0.011998
Performance Evaluation of the Orca Shared-Object System · ACM Trans. Comput. Syst. 1998
Distributed systems › distributed coordination
message ordering
0.011998
Performance Evaluation of the Orca Shared-Object System · ACM Trans. Comput. Syst. 1998

Methods — techniques the papers use, named apart from their topics

microbenchmarking · 0.1static analysis · 0.1object-graph aggregation · 0.1computation migration · 0.1access-check batching · 0.1execution-driven simulation · 0.0latency-optimal algorithm design · 0.0bandwidth-aware communication · 0.0performance measurement · 0.0
YearPublicationVenuePosition
2004 Cluster communication protocols for parallel-programming systems
abstract
Clusters of workstations are a popular platform for high-performance computing. For many parallel applications, efficient use of a fast interconnection network is essential for good performance. Several modern System Area Networks include programmable network interfaces that can be tailored to perform protocol tasks that otherwise would need to be done by the host processors. Finding the right trade-off between protocol processing at the host and the network interface is difficult in general. In this work, we systematically evaluate the performance of different implementations of a single, user-level communication interface. The implementations make different architectural assumptions about the reliability of the network and the capabilities of the network interface. The implementations differ accordingly in their division of protocol tasks between host software, network-interface firmware, and network hardware. Also, we investigate the effects of alternative data-transfer methods and multicast implementations, and we evaluate the influence of packet size. Using microbenchmarks, parallel-programming systems, and parallel applications, we assess the performance of the different implementations at multiple levels. We use two hardware platforms with different performance characteristics to validate our conclusions. We show how moving protocol tasks to a relatively slow network interface can yield both performance advantages and disadvantages, depending on specific characteristics of the application and the underlying parallel-programming system.
Kees Verstoep, Raoul Bhoedjang, Tim Rühl, Henri E. Bal, Rutger F. H. Hofman
ACM Trans. Comput. Syst.2
2003 Run-time optimizations for a Java DSM implementation
abstract
Abstract Jackal is a fine‐grained distributed shared memory implementation of the Java programming language. Jackal implements Java's memory model and allows multithreaded Java programs to run unmodified on distributed‐memory systems. This paper focuses on Jackal's run‐time system, which implements a multiple‐writer, home‐based consistency protocol. Protocol actions are triggered by software access checks that Jackal's compiler inserts before object and array references. To reduce access‐check overhead, the compiler exploits source‐level information and performs extensive static analysis to optimize, lift, and remove access checks. We describe optimizations for Jackal's run‐time system, which mainly consists of discovering opportunities to dispense with flushing of cached data. We give performance results for different run‐time optimizations, and compare their impact with the impact of one compiler optimization. We find that our run‐time optimizations are necessary for good Jackal performance, but only in conjunction with the Jackal compiler optimizations described by Veldema et al. As a yardstick, we compare the performance of Java applications run on Jackal with the performance of equivalent applications that use a fast implementation of Java's Remote Method Invocation instead of shared memory. Copyright © 2003 John Wiley & Sons, Ltd.
Ronald Veldema, Rutger F. H. Hofman, Raoul Bhoedjang, Henri E. Bal
Concurr. Comput. Pract. Exp.3
2001 Source-level global optimizations for fine-grain distributed shared memory systems
abstract
This paper describes and evaluates the use of aggressive static analysis in Jackal, a fine-grain Distributed Shared Memory (DSM) system for Java. Jackal uses an optimizing, source-level compiler rather than the binary rewriting techniques employed by most other fine-grain DSM systems. Source-level analysis makes existing access-check optimizations (e.g., access-check batching) more effective and enables two novel fine-grain DSM optimizations: object-graph aggregation and automatic computation migration.
Ronald Veldema, Rutger F. H. Hofman, Raoul Bhoedjang, Ceriel J. H. Jacobs, Henri E. Bal
PPoPP3
2000 Evaluating Design Alternatives for Reliable Communication on High-Speed Networks
abstract
We systematically evaluate the performance of five implementations of a single, user-level communication interface. Each implementation makes different architectural assumptions about the reliability of the network hardware and the capabilities of the network interface. The implementations differ accordingly in their division of protocol tasks between host software, network-interface firmware, and network hardware. Using microbenchmarks, parallel-programming systems, and parallel applications, we assess the performance impact of different protocol decompositions. We show how moving protocol tasks to a relatively slow network interface yields both performance advantages and disadvantages, depending on the characteristics of the application and the underlying parallel-programming system. In particular, we show that a communication system that assumes highly reliable network hardware and that uses network-interface support to process multicast traffic performs best for all applications.
Raoul Bhoedjang, Kees Verstoep, Tim Rühl, Henri E. Bal, Rutger F. H. Hofman
ASPLOS1
1999 MagPIe: MPI's Collective Communication Operations for Clustered Wide Area Systems
abstract
Writing parallel applications for computational grids is a challenging task. To achieve good performance, algorithms designed for local area networks must be adapted to the differences in link speeds. An important class of algorithms are collective operations, such as broadcast and reduce. We have developed MAGPIE, a library of collective communication operations optimized for wide area systems. MAGPIE's algorithms send the minimal amount of data over the slow wide area links, and only incur a single wide area latency. Using our system, existing MPI applications can be run unmodified on geographically distributed systems. On moderate cluster sizes, using a wide area latency of 10 milliseconds and a bandwidth of 1 MByte/s, MAGPIE executes operations up to 10 times faster than MPICH, a widely used MPI implementation; application kernels improve by up to a factor of 4. Due to the structure of our algorithms, MAGPIE's advantage increases for higher wide area latencies.
Thilo Kielmann, Rutger F. H. Hofman, Henri E. Bal, Aske Plaat, Raoul Bhoedjang
PPoPP5
1998 Efficient Multicast on Myrinet using Link-Level Flow Control
abstract
This paper studies the implementation of efficient multicast protocols for Myrinet, a switched, wormhole-routed Gigabit-per-second network technology. Since Myrinet does not support multicasting in hardware, multicast services must be implemented in software. We present a new, efficient, and reliable software multicast protocol that uses the network interface to efficiently forward multicast traffic. The new protocol is constructed on top of reliable, flow-controlled channels between pairs of network interfaces. We describe the design of the protocol and make a detailed comparison with a previous multicast protocol. We show that our protocol is simpler and scales better than the previous protocol. This claim is supported by extensive performance measurements on a 64-node Myrinet cluster.
Raoul Bhoedjang, Tim Rühl, Henri E. Bal
ICPP1
1998 Optimizing Distributed Data Structures using Application-Specific Network Interface Software
abstract
Network interfaces that contain a programmable processor offer much flexibility, which so far has mainly been used to optimize message passing libraries. We show that high performance gains can be achieved by implementing support for application-specific shared data structures on the network interface processors. As a case study, we have implemented shared transposition tables on a Myrinet network, using customized software that runs partly on the network processor and partly on the host. The customized software greatly reduces the overhead of interactions between the network interface and the host. Also, the software exploits application semantics to obtain a simple and efficient communication protocol. Performance measurements indicate that applications that run application-specific code on the network interface are up to 2.5 times as fast as those that use generic message-passing software.
Raoul Bhoedjang, John W. Romein, Henri E. Bal
ICPP1
1998 Performance Evaluation of the Orca Shared-Object System
abstract
Orca is a portable, object-based distributed shared memory (DSM) system. This article studies and evaluates the design choices made in the Orca system and compares Orca with other DSMs. The article gives a quantitative analysis of Orca's coherence protocol (based on write-updates with function shipping), the totally ordered group communication protocol, the strategy for object placement, and the all-software, user-space architecture. Performance measurements for 10 parallel applications illustrate the trade-offs made in the design of Orca and show that essentially the right design decisions have been made. A write-update protocol with function shipping is effective for Orca, especially since it is used in combination with techniques that avoid replicating objects that have a low read/write ratio. The overhead of totally ordered group communication on application performance is low. The Orca system is able to make near-optimal decisions for object placement and replication. In addition, the article compares the performance of Orca with that of a page-based DSM (TreadMarks) and another object-based DSM (CRL). It also analyzes the communication overhead of the DSMs for several applications. All performance measurements are done on a 32-node Pentium Pro cluster with Myrinet and Fast Ethernet networks. The results show that Orca programs send fewer messages and less data than the TreadMarks and CRL programs and obtain better speedups.
Henri E. Bal, Raoul Bhoedjang, Rutger F. H. Hofman, Ceriel J. H. Jacobs, Koen Langendoen, Tim Rühl
ACM Trans. Comput. Syst.2
1997 Performance of a High-Level Parallel Language on a High-Speed Network
Henri E. Bal, Raoul Bhoedjang, Rutger F. H. Hofman, Ceriel J. H. Jacobs, Koen Langendoen, Tim Rühl, Kees Verstoep
J. Parallel Distributed Comput.2