Eecient Shared-memory Support for Parallel Graph Reduction

نویسندگان

  • Andrew J. Bennett
  • Paul H. J. Kelly
چکیده

This paper presents the results of a simulation study of cache coherency issues in parallel implementations of functional programming languages. Parallel graph reduction uses a heap shared between processors for all synchronisation and communication. We show that a high degree of spatial locality is often present and that the rate of synchronisation is much greater than for imperative programs. We propose a modiied coherency protocol with static cache line ownership and show that this allows locality to be exploited to at least the level of a conventional protocol, but without the unnecessary serialisation and network transactions this usually causes. The new protocol avoids false sharing, and makes it possible to reduce the number of messages exchanged, but relies on increasing the size of the cache lines exchanged to do so. It is therefore of most beneet with a high-bandwidth interconnection network with relatively high communication latencies or message handling overheads.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Sharing and Contention in Coherent - cache Parallel

Parallel graph reduction is a model for parallel program execution in which shared memory is used under a strict access regime with single assignment and blocking reads. We present the design of an eecient and accurate multiprocessor simulation scheme and the results of a simulation study of the pattern of access of a suite of benchmark programs.

متن کامل

Simulation of Multicache Parallel Graph Reduction

Parallel graph reduction is a simple model for parallel program execution which uses the shared-memory abstraction for all communication and synchronisation between processors. Shared memory is used under a strict access regime with single assignment and blocking reads. In this paper we present the design of an eecient and accurate multiprocessor simulation scheme suitable to work with a parall...

متن کامل

A Parallel Functional Database on GRIP

GRIP is a shared-memory multiprocessor designed for eecient parallel evaluation of functional languages, using compiled graph reduction. This paper investigates the feasibility of processing persistent data on GRIP, and presents results obtained from a pilot implementation. A database implemented in a pure functional language must be modiied non-destructively, i.e. the original database must be...

متن کامل

GRIP - A high-performance architecture for parallel graph reduction

GRIP is a high-performance parallel machine designed to execute functional programs using supercombinator graph reduction. It uses a high-bandwidth bus to provide access to a large, distributed shared memory, using intelligent memory units and packet-switching protocols to increase the number of processors which the bus can support. GRIP is also being programmed to support parallel Prolog and D...

متن کامل

Scalable, Shared Memory Parallel Graph Coloring Heuristics

Finding a good graph coloring quickly is often a crucial phase in the development of eecient, parallel algorithms for many scientiic and engineering applications. In this paper we consider the problem of solving the graph coloring problem itself in parallel. We present a simple and fast parallel graph coloring heuristic that is well suited for shared memory programming and yields an almost line...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1996