// Copyright 2026 Rose Hogenson // // This file is part of imgutil. // // Imgutil is free software: you can redistribute it and/or modify it under the // terms of the GNU General Public License as published by the Free Software // Foundation, either version 3 of the License, or (at your option) any later // version. // // Imgutil is distributed in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS // FOR A PARTICULAR PURPOSE. See the GNU General Public License for more // details. // // You should have received a copy of the GNU General Public License along with // imgutil. If not, see . package main import ( "cmp" "math/rand/v2" "testing" ) func BenchmarkQuickSelect(b *testing.B) { rng := rand.New(rand.NewPCG(0, 0)) myTestCase := make([]int, 3840*2160) for b.Loop() { b.StopTimer() for i := range myTestCase { myTestCase[i] = rng.Int() } b.StartTimer() quickSelect(myTestCase, len(myTestCase)/2, cmp.Compare) } }