Archive for March, 2008

Neat Multiprocessing Links and Papers

Intel Threading Building Blocks –
“A primary benefit of TBB is that applications using the library automatically scale to utilize the available processing cores, with no changes to the source code or the executable program file. In other words, the same executable will create threads that utilize one core on a single core machine, two cores on a dual-core machine, four cores on a quad-core machine, etc. No recompilation of the application is required, because the library itself detects the hardware architecture and uses that information to determine how to break up the tasks for assignment to each core.” – From the Wiki Entry

The MIT ‘Adaptive Scheduling of Parallel Jobs’ Project –“In this project, we are investigating adaptive scheduling and resource allocation in the domain of dynamic multithreading. Most existing parallel programming systems are nonadaptive, where each job is assigned a fixed number of processors. This strategy may lead to a poor use of available resources. For example, if the job’s parallelism changes while the job is executing, or if the resources available in the system change, the job is still forced to run with the same number of processors as it was allotted when it started executing. A more attractive model would be an adaptive model, where processors allotted to a job change according to the job’s parallelism and the system environment.”

Some papers associated with this project:

Provably Efficient Two-level Adaptive Scheduling

Adaptive Task Scheduling with Parallelism Feedback

Adaptive Work Stealing with Parallelism Feedback

An Empirical Evaluation of Work Stealing with Parallelism Feedback

Dynamic Processor Allocation for Adaptively Parallel Work-Stealing Job

The Landscape of Parallel Computing Research: A View from Berkeley

If anyone has any others they’d like to mention, please feel free to leave a message in the comments section.