Path: utzoo!utgpu!watmath!maytag!water!wlrush From: wlrush@water.waterloo.edu (Wenchantress Wench Wendall) Newsgroups: ont.events,uw.talks,uw.cs.grad,uw.lang Subject: PROGRAMMING LANGUAGES SEMINAR Keywords: Mr. Richard Stroobosscher, a graduate student of the Dept. of Computer Science, University of Waterloo, will do a Master's Presentation on ``Light Weight Processes in a Shared Memory Multiple Processor Environment.'' Message-ID: <2295@water.waterloo.edu> Date: 5 May 89 14:55:09 GMT Distribution: ont Organization: U of Waterloo, Ontario Lines: 51 DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF WATERLOO SEMINAR ACTIVITIES PROGRAMMING LANGUAGES SEMINAR -Monday, May 8, 1989 Mr. Richard Stroobosscher, a graduate student of the Dept. of Computer Science, University of Waterloo, will do a Master's Essay Presentation on ``Light Weight Processes in a Shared Memory Multiple Processor Environment.'' TIME: 1:30 p.m. ROOM: DC 1304 ABSTRACT Light-weight processes are a mechanism for expressing medium-grain concurrency. When the cost of manipulating light-weight processes approaches the cost of manipulating procedures, they become a viable alternative to procedures. Light-weight processes have the added benefit of being able to take advantage of any parallelism in the hardware on which they are implemented. This talk discusses an engineering exercise in the implementation of light-weight processes for the C programming language. The light-weight processes are provided through a library of functions called the uSystem. The uSystem is designed to be portable across various flavours of the UNIX operating system. On single processor machines, the uSystem time-slices light- weight processes, but on multiple processor machines, the uSystem executes light-weight processes in parallel. The single processor uSystem is implemented on various VAXen, Sun 68020s, a Symmetry 80386 and two MIPS processors. The uSystem is capable of passing 16 byte messages between processes at 120 microseconds on some of these machines. The multiple processor uSystem is implemented on a Symmetry with 6 80386 processors. Program execution has shown linear improvement with the addition of more processors.