An efficient fork/join application should maximize parallelism while minimizing overheads, and maximize locality while minimizing contention. However, there is no unique optimal implementation that best resolves such tradeoffs and failing in balancing them may lead to fork/join applications suffering from several issues (e.g., suboptimal forking, load imbalance, excessive synchronization),...
|
In: Autonomous Agents and Multi-Agent Systems, 2006, vol. 12, no. 2, p. 219-237
|
In: International Journal on Software Tools for Technology Transfer, 2011, vol. 13, no. 2, p. 167-179
|
Middleware for Web service compositions, such as BPEL engines, provides the execution environment for services as well as additional functionalities, such as monitoring and self-tuning. Given its role in service provisioning, it is very important to assess the performance of middleware in the context of a Service-oriented Architecture (SOA). This paper presents SOABench, a framework for the...
|
Effective parallelization of fine-grained tasks, such as in dynamic program analysis, is challenging because thread communication overheads may outweigh the benefits of parallelism. In this paper, we address this issue with deferred methods, a novel Java framework that aggregates invocations of analysis methods in thread-local buffers and processes them altogether when a buffer is full. The...
|