Integrating polling, interrupts, and thread management

  • Authors:
  • K. Langendoen;J. Romein;R. Bhoedjang;H. Bal

  • Affiliations:
  • -;-;-;-

  • Venue:
  • FRONTIERS '96 Proceedings of the 6th Symposium on the Frontiers of Massively Parallel Computation
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

Many user-level communication systems receive network messages by polling the network adapter from user space. While polling avoids the overhead of interrupt-based mechanisms, it is not suited for all parallel applications. This paper describes a general-purpose, multithreaded, communication system that uses both polling and interrupts to receive messages. Users need not insert polls into their code; through a careful integration of the user-level communication software with a user-level thread scheduler, the system can automatically switch between polling and interrupts. We have evaluated the performance of this integrated system on Myrinet, using a synthetic benchmark and a number of applications that have very different communication requirements. We show that the integrated system achieves robust performance: in most cases, it performs as well as or better than systems that rely exclusively on interrupts or polling.