When running multiple e-Business server applications simultaneously on the same hardware, inappropriate CPU sharing may endanger the performance stability for individual applications. Robustness and manageability are critical for Java server applications on emerging multi-processing hardware platforms. This paper investigates the performance implications of multiprocessing (including SMP and CMP) systems on highly parallel Java server applications. It also evaluates the feasibility and benefits of partitioning the processor cores among multiple applications. By experimenting the JGF benchmark, a comparison is provided to the synchronization behaviors in different primitives, on different hardware configurations. Cache contention, thread migration are all factors to be considered when perform thread affinity setting. The feasibility of enhancing dependability of each server application is experimented with a pseudoJBB benchmark. The performance evaluation and analysis show that it is practical of avoiding performance interferences among highly parallel, CPU-intensive server applications by restricting thread migration. Effective performance isolation can be achieved along with performance gain.
['Qi Ming Teng', 'Xiao Zhong', 'Ying Li', 'Ying Chen']
Performance Implications of Next-Generation Multi-processing Platforms on e-Business Server Applications