Discussion

Ask HN: Is it possible to do idempotent microbenchmarks?

Given a program with a fixed input and output. Is it possible to do a microbenchmark in an idempotent unit related to the work performed to compute the output?

In other words, If you run the same program multiple times with the same input, the benchmark should always result in the same value.

For instance, this node.js program. I want to run it multiple times and have the same benchmark value.

  // Brute force: O(n^2) | O(1)
  function twoSum(nums, target) {
    for (let i = 0; i < nums.length - 1; i++) { // O(n^2)
      for (let j = i + 1; j < nums.length; j++) { // O(n)
        if (nums[i] + nums[j] === target) {
          return [i, j];
        }
      }
    }
    return [];
  }

  console.log(twoSum(Array(1e7).fill(2), 4));
1 points adriansky 6 years ago 0 comments

No comments yet

Be the first to share your thoughts.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton