GRAPE - An Industrial Distributed System for Computer Vision

  • Authors:
  • David Minor;Shmuel Rippa

  • Affiliations:
  • Orbotech Algorithms Infrastructure Group;Orbotech Algorithms Infrastructure Group

  • Venue:
  • IPDPS '05 Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Workshop 4 - Volume 05
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

GRAPE (Graph Processing Environment) is an industrial distributed computer vision system currently in use in Orbotech's Automated Optical Inspection (AOI) machines. These machines are designed for the automatic detection of defects in Flat Panel Displays (FPD), Printed Circuit Boards (PCB) and Ball Grid Arrays (BGA). The GRAPE system is designed to be easy to use for algorithm and systems engineers with little or no special training in parallel or distributed systems. Algorithms are written in standard C++ and joined together in a visual dataflow graph. The user then partitions the graph into "contexts" which are used by the system to automatically parallelize the computation. The underlying execution model of GRAPE is based on a large-grained dynamic data-flow paradigm. In contrast to traditional dataflow engines GRAPE algorithms can hold "state" over multiple executions while also making use of data parallelism. This is useful for computer vision applications, which typically need to assemble and process data collected over many execution cycles. In this paper we present an overview of the GRAPE system with its context oriented parallelism and synchronization.