Multithreaded programming with Windows NT
Multithreaded programming with Windows NT
Programming with threads
Pthreads programming
Multithreading applications in Win32: the complete guide to threads
Multithreading applications in Win32: the complete guide to threads
SC '98 Proceedings of the 1998 ACM/IEEE conference on Supercomputing
Nanothreads vs. Fibers for the Support of Fine Grain Parallelism on Windows NT/2000 Platforms
ISHPC '00 Proceedings of the Third International Symposium on High Performance Computing
Hi-index | 0.00 |
With the advent of inexpensive multiprocessor PCs, multithreading is poised to play an important role in computationally intensive business and personal computing applications, as well as in science and engineering. However, the difficulty of multithreaded programming remains a major obstacle. Windows NT support for threads is well suited to systems programming, but is too unstructured when multithreading is used for the purpose of speeding up program execution. In this paper, we describe a system for structured multithreaded programming. Thread creation operations are multithreaded variants of blocks and loops, and synchronization objects are based on Boolean flags and integer counters. With this system, most multithreaded program development can be performed using traditional sequential methods and tools. The system is integrated with Windows NT and Microsoft Developer Studio Visual C++. We are developing a variety of applications in collaboration with other researchers, to demonstrate the power of structured multithreaded programming on commodity multiprocessors running Windows NT. In one benchmark application (aircraft route optimization), we achieved better performance on a quad-processor Pentium Pro system than the best results reported on expensive supercomputers.