Latency-driven programming of computer networks

Volker Strumpen · Repository for Publications and Research Data (ETH Zurich) · 1995

Two properties of computer networks impose major constraints on distributed parallel programming: communication latencies, and permanently changing loads.We propose a technique that faces these problems by combining asynchronous message passing for latency hiding and message continuations for message-driven scheduling of threads.The key to these mechanisms is a portable multithreaded runtime system that can be interpreted as an extension of the TCP/IP protocol suite.This runtime layer utilizes idle times of the underlying protocol layers.Experiments show t h a t u p t o 8 0 p e r c e n t of useful computational power can be squeezed out of the CPU while communicating with TCP/IP via an Ethernet and almost 90 percent while communicating across the Internet.First-class message continuations are provided to cope with desynchronization and message delays.A message continuation is executed after a message is sent or received.This dependency on communication latency coined the name latency-driven programming model.

Read the paper · More papers on PaperTik