Title | ||
---|---|---|
Parallelizing a discrete event simulation application using the Habanero-Java multicore library |
Abstract | ||
---|---|---|
Discrete event simulation (DES) has been widely adopted for simulating communication systems such as computer networks. As the network size and complexity of communication patterns increases, the complexity of simulation tools and the execution time of DES also increases. Parallelizing DES programs using multiple processing units reduces the overall execution time; however, unlike regular programs, data dependencies in DES are usually determined at run-time, which makes exploiting potential parallelism in the program very challenging. In this paper, we build a parallel version of a DES program written in Java using the Habanero-Java library (HJlib), which is a lightweight and programmer-friendly parallel Java 8 library. While the DES problem benefits greatly from HJlib's support for lightweight tasks and efficient parallelism based on work stealing, it also pushed the boundaries of the standard primitives available in HJlib. In particular, our study motivated the addition of fine-grained locking to the Habanero execution model, in a manner that still preserves Habanero's deadlock freedom guarantees. This extension in turn led to additional optimizations of the DES implementation relative to the original Galois implementation. Our initial results are encouraging, and point to further opportunities for exploiting parallelism in challenging applications like DES on manycore hardware platforms in the future, especially as the system being simulated increases in size and complexity. |
Year | DOI | Venue |
---|---|---|
2015 | 10.1145/2712386.2712402 | PMAM@PPoPP |
Keywords | Field | DocType |
discrete event simulation,parallel programming,habanero java,java,irregular program,simulation,performance | Computer science,Parallel computing,Deadlock,Communications system,Work stealing,Execution model,Execution time,Java,Multi-core processor,Discrete event simulation,Distributed computing | Conference |
Citations | PageRank | References |
0 | 0.34 | 22 |
Authors | ||
3 |
Name | Order | Citations | PageRank |
---|---|---|---|
Wei-Cheng Xiao | 1 | 0 | 0.34 |
Jisheng Zhao | 2 | 480 | 24.34 |
Vivek Sarkar | 3 | 4318 | 409.41 |