Suitability of Ada for Real-Time Model Based Vision Applications

Abstract

The purpose of this study was to establish a baseline for assessing the execution efficiency of Model Based Vision (MBV) algorithms coded in both the Ada and C programming languages. To facilitate this study a key algorithm used in The Analytic Science Corporations's (TASC) laboratory MBV system called Fast Pairwise Nearest Neighbor (FASTPNN) was recoded from its original C form to Ada, and benchmarked on both a VAX 11/780 and MIPS MAGNUM 3000 computer system. Comparisons of C execution efficiency versus Ada execution efficiency as well as MIPS MAGNUM 3000 execution efficiency versus VAX 11/780 execution efficiency were made. The benchmark results indicate that when Ada run-time checks are suppressed, Ada and C are roughly equivalent in terms of inherent execution efficiency. Differences between Ada and C execution efficiency can be attributed to deviations in a particular compiler's maturity. Ada run-time checks impose between a 43% and 65% execution penalty when compared with Ada executing with all run-time checks suppressed. Depending on whether C or Ada was the language of interest, the MIPS MAGNUM 3000 demonstrated between a 9 (Ada) to 22 (C) times throughput advantage over the VAX 11/780.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Nov 01, 1991
Accession Number
ADA245710

Entities

People

  • Phillip B. Hanselman
  • Robert Kaplan

Organizations

  • Wright Laboratory

Tags

Communities of Interest

  • Air Platforms
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Air Force
  • Algorithms
  • Arrays
  • Avionics
  • C Programming Language
  • Central Processing Units
  • Classification
  • Compilers
  • Computer Programming
  • Computer Programs
  • Computers
  • Data Sets
  • Language
  • Lists (Data Structures)
  • Programming Languages
  • Signal Processing
  • Synthetic Aperture Radar

Fields of Study

  • Computer science

Readers

  • Computational Modeling and Simulation
  • Regression Analysis.
  • Software Verification and Validation.