Extensions to the C Programming Language for SIMD/MIMD Parallelism

نویسندگان

  • James T. Kuehn
  • Howard Jay Siegel
چکیده

A superset of the C programming language that is applicable to the SIMD/MIMD mode processing environment of PASM is described. The language extensions for SIMD mode include the definition of parallel variables, functions, and expressions; a scheme for accessing parallel variables; and extended control structure semantics. Extensions for MIMD mode are realized by defining a preprocessor to convert a generalized CSP-like language to standard C with operating system calls inserted to support the parallelism. Extensions to the libraries of I/O and operating systems functions used in parallel mode are also discussed. The PASM parallel processing system is used as an example target machine.

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

ثبت نام

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

منابع مشابه

Data Management and Control-Flow Aspects of an SIMD/SPMD Parallel Language/Compiler

Features of an explicitly parallel programming language targeted for reconfigurable parallel processing systems, where the machine's -1processing elements (PE's) are capable of operating in both the SIMD and SPMD modes of parallelism, are described. The SPMD (Single Program-Multiple Data) mode of parallelism is a subset of the MIMD mode where all processors execute the same program. By providin...

متن کامل

Parallel Image Processing on Heterogeneous SIMD-MIMD Machines

From a hardware standpoint a heterogeneous architecture such as an SIMD array coupled onto a MIMD system, will yield a powerful solution for real time embedded vision tasks. From a software standpoint there is a need to approach this heterogeneous system in a homogeneous way. We investigated the feasibility of a uniform parallel programming approach on a heterogeneous machine. Using the paralle...

متن کامل

Design and Implementation of the CCC Parallel Programming Language

CCC is a high-level parallel programming language that aims to provide a coherent integration of various parallel programming paradigms. CCC supports both data and task parallelism. In CCC, data parallelism is specified in SIMD model, while task parallelism is specified in MIMD model. Task parallelism in CCC supports both message-passing communication abstraction and shared-variables synchroniz...

متن کامل

Compiling Rewriting onto SIMD and MIMD/SIMD Maschines

We present compilation techniques for Simple Maude, a declarative programming language based on Rewriting Logic which supports term, graph, and object-oriented rewriting. We show how to compile various constructs of Simple Maude onto SIMD and MIMD/SIMD massively parallel architectures, and in particular onto the Rewrite Rule Machine, a special purpose MIMD/SIMD architecture for rewriting. We sh...

متن کامل

Braid: Integrating Task and Data Parallelism]

Archetype data parallel or task parallel applications are well served by contemporary languages. However, for applications containing a balance of task and data parallelism the choice of language is less clear. While there are languages that enable both forms of parallelism, e.g., one can write data parallel programs using a task parallel language, there are few languages which support both. We...

متن کامل

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


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

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

ثبت نام

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

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

دوره   شماره 

صفحات  -

تاریخ انتشار 1985