• Kubernetes Submit Queue's avatar
    Merge pull request #57215 from misterikkit/topologyBenchmark · 75aaacc5
    Kubernetes Submit Queue authored
    Automatic merge from submit-queue (batch tested with PRs 57215, 57489). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
    
    Add scheduler benchmark tests for PodAntiAffinity rules
    
    **What this PR does / why we need it**:
    This adds a benchmark test that measures the scheduling latency of pods with PodAntiAffinity rules where topologyKey=kubernetes.io/hostname.
    
    Additionally, this PR imposes a minimum `b.N` value to make the test results more meaningful.
    
    The benchmark is needed to validate any performance improvements made for #54189.
    
    
    Command used to invoke:
    ```sh
    make test-integration WHAT=./test/integration/scheduler_perf KUBE_TEST_ARGS="-run=xxxx -bench=."
    ```
    
    Sample output:
    ```
    pkg: k8s.io/kubernetes/test/integration/scheduler_perf
    BenchmarkScheduling/100Nodes/0Pods-40        100          36316838 ns/op
    BenchmarkScheduling/100Nodes/1000Pods-40                     100          69460001 ns/op
    BenchmarkScheduling/1000Nodes/0Pods-40                       100         193755560 ns/op
    BenchmarkScheduling/1000Nodes/1000Pods-40                    100         343451472 ns/op
    BenchmarkSchedulingAntiAffinity/500Nodes/250Pods-40                  250         127236420 ns/op
    BenchmarkSchedulingAntiAffinity/500Nodes/5000Pods-40                 250         478661925 ns/op
    PASS
    ok      k8s.io/kubernetes/test/integration/scheduler_perf       354.008s
    ```
    
    **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
    Fixes #
    
    **Special notes for your reviewer**:
    
    
    **Release note**:
    
    ```release-note
    NONE
    ```
    75aaacc5
Name
Last commit
Last update
..
conformance Loading commit data...
e2e Loading commit data...
e2e_node Loading commit data...
fixtures Loading commit data...
images Loading commit data...
integration Loading commit data...
kubemark Loading commit data...
list Loading commit data...
soak Loading commit data...
utils Loading commit data...
BUILD Loading commit data...
OWNERS Loading commit data...
test_owners.csv Loading commit data...
test_owners.json Loading commit data...