Thread assignment of multithreaded network applications in multicore/multithreaded processors
Rights accessOpen Access
European Commisision's projectHIPEAC - High Performance and Embedded Architecture and Compilation (EC-FP7-287759)
The introduction of multithreaded processors comprised of a large number of cores with many shared resources makes thread scheduling, and in particular optimal assignment of running threads to processor hardware contexts to become one of the most promising ways to improve the system performance. However, finding optimal thread assignments for workloads running in state-of-the-art multicore/multithreaded processors is an NP-complete problem. In this paper, we propose BlackBox scheduler, a systematic method for thread assignment of multithreaded network applications running on multicore/multithreaded processors. The method requires minimum information about the target processor architecture and no data about the hardware requirements of the applications under study. The proposed method is evaluated with an industrial case study for a set of multithreaded network applications running on the UltraSPARC T2 processor. In most of the experiments, the proposed thread assignment method detected the best actual thread assignment in the evaluation sample. The method improved the system performance from 5 to 48 percent with respect to load balancing algorithms used in state-of-the-art OSs, and up to 60 percent with respect to a naive thread assignment.
© 2013 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.
CitationRadojkovic, P., Cakarevic, V., Verdú, J., Pajuelo, M.A., Cazorla, F., Nemirovsky, M., Valero, M. Thread assignment of multithreaded network applications in multicore/multithreaded processors. "IEEE transactions on parallel and distributed systems", Desembre 2013, vol. 24, núm. 12, p. 2513-2525.