Separation Constraint Partitioning - A New Algorithm for PartitioningNon - strict Programs into Sequential

نویسندگان

  • Klaus E. Schauser
  • David E. Culler
  • Seth C. Goldstein
چکیده

In this paper we present substantially improved thread partitioning algorithms for modern implicitly parallel languages. We present a new block partitioning algorithm, separation constraint partitioning, which is both more powerful and more exible than previous algorithms. Our algorithm is guaranteed to derive maximal threads. We present a theoretical framework for proving the correctness of our partitioning approach, and we show how separation constraint partitioning makes interprocedural partitioning viable. We have implemented the partitioning algorithms in an Id90 compiler for workstations and parallel machines. Using this experimental platform, we quantify the eeectiveness of diierent partitioning schemes on whole applications.

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

ثبت نام

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

منابع مشابه

Partitioning Non-strict Functional Languages for Multi-threaded Code Generationy

In this paper, we present a new approach to partitioning, the problem of generating sequential threads for programs written in a non-strict functional language. The goal of partitioning is to generate threads as large as possible, while retaining the non-strict semantics of the program. We deene partitioning as a program transformation and design algorithms for basic block partitioning and inte...

متن کامل

Separation Set Partitioning: Algorithm to Partition Nonstrict Programs into Sequential Threads

In this paper, we propose separation set partitioning algorithm for partitioning nonstrict programs into threads using participation set and separation set and extened it to global partitioning. Separation set partitioning algorithm can merge threads which dependence set and demand set partitioning algorithm may fail to merge. It deals with certain indirect depdendences and potential indirect d...

متن کامل

Partitioning Non-strict Functional Languages for Partitioning Non-strict Functional Languages for Multi-threaded Code

In this paper, we present a new approach to partitioning, the problem of generating sequential threads for programs written in a non-strict functional language. The goal of partitioning is to generate threads as large as possible, while retaining the non-strict semantics of the program. We deene partitioning as a program transformation and design algorithms for basic block partitioning and inte...

متن کامل

Strict Constraint Qualifications and Sequential Optimality Conditions for Constrained Optimization

Sequential optimality conditions for constrained optimization are necessarily satisfied by local minimizers, independently of the fulfillment of constraint qualifications. These conditions support the employment of different stopping criteria for practical optimization algorithms. On the other hand, when an appropriate strict constraint qualification associated with some sequential optimality c...

متن کامل

Partitioning non-strict languages for multi-threaded code generation

In a non-strict language, functions may return values before their arguments are available, and data structures may be defined before all their components are defined. Compiling such languages to conventional hardware is not straightforward; instructions do not have a fixed compile time ordering. Such an ordering is necessary to execute programs efficiently on current microprocessors. Partition...

متن کامل

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


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

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

ثبت نام

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

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

دوره   شماره 

صفحات  -

تاریخ انتشار 1995