Scheduler-Conscious Synchronization.

Abstract

Efficient synchronization is important for achieving good performance in parallel programs, especially on large-scale multiprocessors. Most synchronization algorithms have been designed to run on a dedicated machine, with one application process per processor, and can suffer serious performance degradation in the presence of multipre gramming. Problems arise when running processes block or, worse, busy-wait for action on the part of a process that the scheduler has chosen not to run. In this paper we describe and evaluate a set of scheduler-conscious synchronization algorithms that perform well in the presence of multiprogramming while maintaining good performance on dedicated machines. We consider both large and small machines, with a particular focus on scalability, and examine mutual-exclusion locks, reader-writer locks, and barriers. The algorithms we study fall into two classes: those that heuristically determine appropriate behavior and those that use scheduler information to guide their behavior. We show that while in some cases either method is sufficient, in general sharing information across the kernel-user interface both eases the design of synchronization algorithms and improves their performance.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Dec 01, 1994
Accession Number
ADA290021

Entities

People

  • L. I. Kontothanassis
  • M. L. Scott
  • R. W. Wisniewski

Organizations

  • University of Rochester

Tags

Communities of Interest

  • Human Systems

DTIC Thesaurus Topics

  • Abstracts
  • Algorithms
  • Application Software
  • Computations
  • Computer Programming
  • Computer Science
  • Computers
  • Demographic Cohorts
  • Elimination
  • Instructions
  • Lists (Data Structures)
  • Multiprocessors
  • Multiprogramming
  • Operating Systems
  • Scheduling (Production)
  • Standards
  • User Interface

Fields of Study

  • Computer science

Readers

  • Parallel and Distributed Computing.
  • Team-Based Human-Centered Cognitive Task Decision Making and Information Performance.