Measuring and Optimizing Distributed Array Programs

نویسندگان

  • Mingxing Zhang
  • Yongwei Wu
  • Kang Chen
  • Teng Ma
  • Weimin Zheng
چکیده

Nowadays, there is a rising trend of building array-based distributed computing frameworks, which are suitable for implementing many machine learning and data mining algorithms. However, most of these frameworks only execute each primitive in an isolated manner and in the exact order defined by programmers, which implies a huge space for optimization. In this paper, we propose a novel array-based programming model, named KASEN, which distinguishes itself from models in the existing literature by defining a strict computation and communication model. This model makes it easy to analyze programs’ behavior and measure their performance, with which we design a corresponding optimizer that can automatically apply high-level optimizations to the original programs written by programmers. According to our evaluation, the optimizer of KASEN can achieve a significant reduction on memory read/write, buffer allocation and network traffic, which leads to a speedup up to 5.82×.

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

ثبت نام

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

منابع مشابه

Array Operation Synthesis to Optimize HPF Programs

An increasing number of programming languages, such as Fortran 90, HPF, and APL, are providing a rich set of intrinsic array functions and array expressions. These constructs which constitute an important part of data parallel languages provide excellent opportunities for compiler optimizations. The synthesis of consecutive array operations or array expressions into a composite access function ...

متن کامل

Distributed Shared Memory Management for Java

Jackal is a fine-grained distributed shared memory system that can run multithreaded Java programs on distributedmemory systems. The Jackal compiler generates an access check for every use of an object field or array element. The overhead of the access checks is reduced using compiler optimizations. The runtime system uses a homebased consistency protocol that manages (and caches) objects and a...

متن کامل

A Unified Framework for Optimizing Locality, Parallelism, and Communication in Out-of-Core Computations

ÐThis paper presents a unified framework that optimizes out-of-core programs by exploiting locality and parallelism, and reducing communication overhead. For out-of-core problems where the data set sizes far exceed the size of the available in-core memory, it is particularly important to exploit the memory hierarchy by optimizing the I/O accesses. We present algorithms that consider both iterat...

متن کامل

Optimizing Data Locality by Array Restructuring

It is increasingly important that optimizing compilers restructure programs for data locality to obtain high performance on today's powerful architectures. In this paper, we focus on array restructuring , a technique that improves the spatial locality exhibited by array accesses in nested loops. Speci cally, we address the following question: Given a set of such accesses, how should the array e...

متن کامل

A Unified Framework for Optimizing Communication in Data-Parallel Programs

This paper presents a framework, based on global array dataow analysis, to reduce communication costs in a program being compiled for a distributed memory machine. We introduce available section descriptor, a novel representation of communication involving array sections. This representation allows us to apply techniques for partial redundancy elimination to obtain powerful communication optimi...

متن کامل

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


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

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

ثبت نام

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

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

دوره 9  شماره 

صفحات  -

تاریخ انتشار 2016