Table of Contents
Fetching ...

A new metric for evaluating the performance and complexity of computer programs: A new approach to the traditional ways of measuring the complexity of algorithms and estimating running times

Rares Folea, Emil-Ioan Slusanschi

TL;DR

The paper introduces r-Complexity, an architecture-aware refinement of Bachmann–Landau complexity that aims to provide finer feedback within the same $Θ(g(n))$ class. It formalizes notations $Θ_r(g(n))$, $O_r(g(n))$, $Ω_r(g(n))$ and their small variants, along with conversion rules, and then develops interval-based time estimators $T(n_{min}, n_{max})$ (RM1, RM2, ERM1, ERM2) to analyze bounded-input performance. Through matrix multiplication and chess use-cases, the authors illustrate how r-Complexity can reveal finite-size performance trade-offs (e.g., Strassen vs. cache-friendly cubic methods) and demonstrate automated estimation pathways when the traditional BL class is known or unknown. The framework emphasizes practical relevance by accounting for architectural factors, memory usage, and finite input sizes, enabling more nuanced comparisons and guiding algorithm selection in real-world systems. Overall, r-Complexity offers a principled, architecture-sensitive approach to quantifying and comparing algorithmic performance beyond classic asymptotic analysis, with potential extensions to network latency and cache-miss metrics.

Abstract

This paper presents a refined complexity calculus model: r-Complexity, a new asymptotic notation that offers better complexity feedback for similar programs than the traditional Bachmann-Landau notation, providing subtle insights even for algorithms that are part of the same conventional complexity class. The architecture-dependent metric represents an enhancement that provides better sensitivity with respect to discrete analysis.

A new metric for evaluating the performance and complexity of computer programs: A new approach to the traditional ways of measuring the complexity of algorithms and estimating running times

TL;DR

The paper introduces r-Complexity, an architecture-aware refinement of Bachmann–Landau complexity that aims to provide finer feedback within the same class. It formalizes notations , , and their small variants, along with conversion rules, and then develops interval-based time estimators (RM1, RM2, ERM1, ERM2) to analyze bounded-input performance. Through matrix multiplication and chess use-cases, the authors illustrate how r-Complexity can reveal finite-size performance trade-offs (e.g., Strassen vs. cache-friendly cubic methods) and demonstrate automated estimation pathways when the traditional BL class is known or unknown. The framework emphasizes practical relevance by accounting for architectural factors, memory usage, and finite input sizes, enabling more nuanced comparisons and guiding algorithm selection in real-world systems. Overall, r-Complexity offers a principled, architecture-sensitive approach to quantifying and comparing algorithmic performance beyond classic asymptotic analysis, with potential extensions to network latency and cache-miss metrics.

Abstract

This paper presents a refined complexity calculus model: r-Complexity, a new asymptotic notation that offers better complexity feedback for similar programs than the traditional Bachmann-Landau notation, providing subtle insights even for algorithms that are part of the same conventional complexity class. The architecture-dependent metric represents an enhancement that provides better sensitivity with respect to discrete analysis.

Paper Structure

This paper contains 18 sections, 12 theorems, 22 equations, 6 figures, 1 table.

Key Result

Theorem 2.1

Big r-Theta conversion:

Figures (6)

  • Figure 1: Various prediction boundaries based on accommodated training dataset using multiple relations $g$$\Rightarrow$ ($n^1, n^2, n^3$). Training data are obtained for different input size for a naive matrix multiplication algorithm in $\mathbb{O}(n^{3})$
  • Figure 2: Regression lines corresponding to each of the matrix-multiplication algorithms.
  • Figure 3: Regression lines corresponding to Cache-friendly loop ordering matrix multiplication and Strassen's algorithm.
  • Figure 4: Predictions for Cache-friendly loop ordering matrix multiplication algorithm and Strassen's algorithm.
  • Figure 5: Allocated and peak memory usage for the considered algorithms.
  • ...and 1 more figures

Theorems & Definitions (28)

  • Definition 2.1
  • Definition 2.2
  • Definition 2.3
  • Definition 2.4
  • Remark 1
  • Definition 2.5
  • Remark 2
  • Theorem 2.1
  • Corollary 2.1.1
  • Theorem 2.2
  • ...and 18 more