A machine independent interface for lightweight threads
ACM SIGOPS Operating Systems Review
The SPLASH-2 programs: characterization and methodological considerations
ISCA '95 Proceedings of the 22nd annual international symposium on Computer architecture
A graphic parallelizing environment for user-compiler interaction
ICS '99 Proceedings of the 13th international conference on Supercomputing
Scheduling User-Level Threads on Distributed Shared-Memory Multiprocessors
Euro-Par '99 Proceedings of the 5th International Euro-Par Conference on Parallel Processing
A system for structured high-performance multithreaded programming in Windows NT
WINSYM'98 Proceedings of the 2nd conference on USENIX Windows NT Symposium - Volume 2
Integrating MPI and nanothreads programming model
EUROMICRO-PDP'02 Proceedings of the 10th Euromicro conference on Parallel, distributed and network-based processing
Hi-index | 0.00 |
Support for parallel programming is very essential for the efficient utilization of modern multiprocessor systems. This paper focuses on the implementation of multithreaded runtime libraries used for the fine-grain parallelization of applications on the Windows 2000 operating system. We have implemented and introduce two runtime libraries. The first one is based on standard Windows user-level fibers, while the second is based on nanothreads. Both follow the Nanothreads Programming Model. A systematic evaluation comparing both implementations has also been conducted in three levels: the user-level thread packages, the runtime libraries and the applications level. The results demonstrate that nanothreads outperform the Windows fibers. The performance gains of the thread creation and context switching mechanisms are reflected on both runtime libraries. Experiments with fine-grain applications demonstrate up to 40% higher speedup in the case of nanothreads compared to that of fibers.