Beingamanforever

Median O(n) benchmarking script

Jan 22nd, 2026
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Octave 0.82 KB | None | 0 0
  1. function bench_median ()
  2.   rand ("state", 0);
  3.  
  4.   sizes = [1e4, 1e5, 5e5, 1e6];
  5.   nreps = 5;  # Number of repetitions for timing
  6.  
  7.   printf ("\nVector median\n");
  8.   for n = sizes
  9.     x = rand (n, 1);
  10.     tic;
  11.     for r = 1:nreps
  12.       median (x);
  13.     endfor
  14.     t = toc / nreps;
  15.     printf ("n = %d : %.6f s\n", n, t);
  16.   endfor
  17.  
  18.   printf ("\nMatrix column median\n");
  19.   for n = sizes
  20.     x = rand (n, 100);
  21.     tic;
  22.     for r = 1:nreps
  23.       median (x, 1);
  24.     endfor
  25.     t = toc / nreps;
  26.     printf ("n = %d x 100 : %.6f s\n", n, t);
  27.   endfor
  28.  
  29.   printf ("\nWith NaNs (omitnan)\n");
  30.   for n = sizes
  31.     x = rand (n, 100);
  32.     x(1:10:end) = NaN;
  33.     tic;
  34.     for r = 1:nreps
  35.       median (x, 1, "omitnan");
  36.     endfor
  37.     t = toc / nreps;
  38.     printf ("n = %d x 100 : %.6f s\n", n, t);
  39.   endfor
  40. end
  41.  
Advertisement
Add Comment
Please, Sign In to add comment