The use of multithreading can enhance the performance of a software system. However, its excessive use can degrade the performance. For example, a thread-per-job approach might lead to a large amount of threads with increased associated overheads. In this paper we explore the use of the Parallelism Viewpoint to support one possible strategy to reduce the number of threads, namely finding candidate threads that can be replaced by thread pooling. Thread pooling reduces the large number of threads by reusing threads from an existing pool. As an example we analyze the threads of a precision critical parallelism-intensive electron microscope software system. Results show that the viewpoint provides a profound insight into the threading structur...
By programming in parallel, large problem is divided in smaller ones, which are solved concurrently....
Considerable research has produced a plethora of efficient methods of exploiting parallelism on dedi...
It is possible to reduce the computation time of data parallel programs by dividing the computation ...
The use of multithreading can enhance the performance of a software system. However, its excessive u...
The use of parallelism enhances the performance of a software system. However, its excessive use can...
The use of parallelism enhances the performance of a software system. Its excessive use, however, ca...
The use of parallelism enhances the performance of a software system. However, its excessive use can...
Multithreaded processors are an attractive alternative to superscalar processors. Their ability to h...
Multicore systems have emerged as a cost-effective option for the growing demands for high-performan...
Parallel hardware1 has become a ubiquitous component in computer processing technology. Uniprocessor...
Multithreading has emerged as a leading paradigm for the development of applications with demanding ...
To achieve high performance, contemporary computer systems rely on two forms of parallelism: instruc...
The traditional single-core processors are being replaced by chip multiprocessors (CMPs) where sever...
We exploit the existence of distant parallelism that future compilers could detect and characterise ...
Considerable research has produced a plethora of efficient methods of exploiting parallelism on dedi...
By programming in parallel, large problem is divided in smaller ones, which are solved concurrently....
Considerable research has produced a plethora of efficient methods of exploiting parallelism on dedi...
It is possible to reduce the computation time of data parallel programs by dividing the computation ...
The use of multithreading can enhance the performance of a software system. However, its excessive u...
The use of parallelism enhances the performance of a software system. However, its excessive use can...
The use of parallelism enhances the performance of a software system. Its excessive use, however, ca...
The use of parallelism enhances the performance of a software system. However, its excessive use can...
Multithreaded processors are an attractive alternative to superscalar processors. Their ability to h...
Multicore systems have emerged as a cost-effective option for the growing demands for high-performan...
Parallel hardware1 has become a ubiquitous component in computer processing technology. Uniprocessor...
Multithreading has emerged as a leading paradigm for the development of applications with demanding ...
To achieve high performance, contemporary computer systems rely on two forms of parallelism: instruc...
The traditional single-core processors are being replaced by chip multiprocessors (CMPs) where sever...
We exploit the existence of distant parallelism that future compilers could detect and characterise ...
Considerable research has produced a plethora of efficient methods of exploiting parallelism on dedi...
By programming in parallel, large problem is divided in smaller ones, which are solved concurrently....
Considerable research has produced a plethora of efficient methods of exploiting parallelism on dedi...
It is possible to reduce the computation time of data parallel programs by dividing the computation ...