120 likes | 238 Views
Rewiev of Lab Manual for Parallel Processing Systems. Emina I. Milovanović, Vladimir M. Ćirić. Chapters. Parallaxis Synchronization and communication in MIMD systems BACI concurrency simulator. Chapter 1: Parallaxis.
E N D
Rewiev of Lab Manual for Parallel Processing Systems Emina I. Milovanović, Vladimir M.Ćirić
Chapters • Parallaxis • Synchronization and communication in MIMD systems • BACI concurrency simulator
Chapter 1: Parallaxis • Parallaxis is structured programming language for data-parallel programming (SIMD systems) • Developed by Thomas Brunl in 1989 • Based on Modula-2 extended with machine-independent parallel constructs • Parallaxis simulation environment allows studying of data parallel fundamentals on single processor systems and development of parallel programs which can later be executed on real SIMD systems
In Parallaxis one can define “virtual machine” with: • arbitrary number of PEs • arrangement of PEs • connections between the PEs • This manual contains a full description of Parallaxis language: • data types • specification of virtual processors and connections • control statements • parallel data transfer • working with subroutines
Manual contains a lot of examples for most common interconnection networks (linear, mesh, hexagonal, binary tree, torus, hypercube) • At the end of the chapter, 7 groups of assignments for students are given • The student have to define • required network topology • arrangement of processors in the system • solve the problem on defined system
Chapter 2: Synchronization and communication in MIMD systems • critical sections • Semaphores • Monitors • Message passing
Chapter 3:BACI concurrency simulator(Ben Ari Concurrency Interpreter) • Developed at William and Mary College by Bill Bynum and Tracy Camp • David Strite from the University of Pennsylvania developed GUI for BACI in Java (jBACI) which is portable over all platforms • BACI simulator consists of Pascal (or C) compiler and interpreter • Pascal and C compilers support binary and counting semaphores and Hoare monitors
The manual contains the description of: • concurrency constructs (cobegin-coend, semaphores, monitors, built-in functions,…) • Instructions for using BACI compiler and interpreter • Three groups of assignments for students
When executing the program, the window is divided into two areas: • The left area contains the process table with process number and name, process status (active or suspended) • Process windows, one for each process
After this cycle of lab exercises, the student should be able to deeply understand mechanisms of interprocessor synchronization and communication in multiprocessor systems. • At the end of lab exercises students have a colloquia which contributes with 20% in the exam.