JavaScript QuickSort update

The code in this post was a quicksort that used the less than operator for comparison. Here are some times of quicksort using a comparison function the same way the Array.sort works.

The times are quite a bit slower, and I need to dig into it further. These are the means of five runs each on one million values. Some of the cases (triangular, random) had a very large variation between runs.

Timing results on 1 million values (in seconds)
data type qsort2 Array.sort qsort2cmp
random double 0.14 0.95 0.38
sawtooth [1] 0.07 0.06 0.08
triangular [2] 0.14 0.71 0.42
ordered 0.03 0.46 0.13
reversed 0.03 0.59 0.10
shuffled 0.13 0.65 0.28
[1] The values in the array are 0, 1, 2, 3, 0, 1, 2, 3, … the whole way to the end of the array.
[2] The value in the array are 0, 1, …, N/2-1, N/2, N/2-1, …, 1,0

What does this tell us? Not much yet. I have a lot to learn about the performance of JavaScript engines.