Objective quantification of program behaviour using dynamic metrics

In order to perform meaningful experiments in optimizing compilation and runtime system design, researchers usually rely on a suite of benchmark programs of interest to the optimization technique under consideration. Programs are described as numeric, memory-intensive, concurrent, or object-orien...

Full description

Bibliographic Details
Main Author: Dufour, Bruno
Format: Others
Language:en
Published: McGill University 2004
Subjects:
Online Access:http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=81328
id ndltd-LACETR-oai-collectionscanada.gc.ca-QMM.81328
record_format oai_dc
spelling ndltd-LACETR-oai-collectionscanada.gc.ca-QMM.813282014-02-13T04:05:22ZObjective quantification of program behaviour using dynamic metricsDufour, BrunoComputer Science.In order to perform meaningful experiments in optimizing compilation and runtime system design, researchers usually rely on a suite of benchmark programs of interest to the optimization technique under consideration. Programs are described as numeric, memory-intensive, concurrent, or object-oriented, based on a qualitative appraisal, in some cases with little justification.In order to make these intuitive notions of program behaviour more concrete and subject to experimental validation, this thesis introduces a methodology to objectively quantify key aspects of program behaviour using dynamic metrics. A set of unambiguous, dynamic, robust and architecture-independent dynamic metrics is defined, and can be used to categorize programs according to their dynamic behaviour in five areas: size, data structures, memory use, polymorphism and concurrency. Each metric is also empirically validated.A general-purpose, easily extensible dynamic analysis framework has been designed and implemented to gather empirical metric results. This framework consists of three major components. The profiling agent collects execution data from a Java virtual machine. The trace analyzer performs computations on this data, and the web interface presents the result of the analysis in a convenient and user-friendly way.The utility of the approach as well as selected specific metrics is validated by examining metric data for a number of commonly used benchmarks. Case studies of program transformations and the consequent effects on metric data are also considered. Results show that the information that can be obtained from the metrics not only corresponds well with the intuitive notions of program behaviour, but can also reveal interesting behaviour that would have otherwise required lengthy investigations using more traditional techniques.McGill University2004Electronic Thesis or Dissertationapplication/pdfenalephsysno: 002187874proquestno: AAIMR06391Theses scanned by UMI/ProQuest.All items in eScholarship@McGill are protected by copyright with all rights reserved unless otherwise indicated.Master of Science (School of Computer Science.) http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=81328
collection NDLTD
language en
format Others
sources NDLTD
topic Computer Science.
spellingShingle Computer Science.
Dufour, Bruno
Objective quantification of program behaviour using dynamic metrics
description In order to perform meaningful experiments in optimizing compilation and runtime system design, researchers usually rely on a suite of benchmark programs of interest to the optimization technique under consideration. Programs are described as numeric, memory-intensive, concurrent, or object-oriented, based on a qualitative appraisal, in some cases with little justification. === In order to make these intuitive notions of program behaviour more concrete and subject to experimental validation, this thesis introduces a methodology to objectively quantify key aspects of program behaviour using dynamic metrics. A set of unambiguous, dynamic, robust and architecture-independent dynamic metrics is defined, and can be used to categorize programs according to their dynamic behaviour in five areas: size, data structures, memory use, polymorphism and concurrency. Each metric is also empirically validated. === A general-purpose, easily extensible dynamic analysis framework has been designed and implemented to gather empirical metric results. This framework consists of three major components. The profiling agent collects execution data from a Java virtual machine. The trace analyzer performs computations on this data, and the web interface presents the result of the analysis in a convenient and user-friendly way. === The utility of the approach as well as selected specific metrics is validated by examining metric data for a number of commonly used benchmarks. Case studies of program transformations and the consequent effects on metric data are also considered. Results show that the information that can be obtained from the metrics not only corresponds well with the intuitive notions of program behaviour, but can also reveal interesting behaviour that would have otherwise required lengthy investigations using more traditional techniques.
author Dufour, Bruno
author_facet Dufour, Bruno
author_sort Dufour, Bruno
title Objective quantification of program behaviour using dynamic metrics
title_short Objective quantification of program behaviour using dynamic metrics
title_full Objective quantification of program behaviour using dynamic metrics
title_fullStr Objective quantification of program behaviour using dynamic metrics
title_full_unstemmed Objective quantification of program behaviour using dynamic metrics
title_sort objective quantification of program behaviour using dynamic metrics
publisher McGill University
publishDate 2004
url http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=81328
work_keys_str_mv AT dufourbruno objectivequantificationofprogrambehaviourusingdynamicmetrics
_version_ 1716645035442700288