### What happened?

https://github.com/kubernetes/kubernetes/pull/119779 added some map queries and creations that add non-negligible latency.

The pprof reveals the following lines inside `findNodesThatFitPod` as too expensive:
- 22.2% https://github.com/kubernetes/kubernetes/blob/44bd04c0cbddde69aaeb7a90d3bd3de4e417f27f/pkg/scheduler/schedule_one.go#L492
- 21.7% https://github.com/kubernetes/kubernetes/blob/44bd04c0cbddde69aaeb7a90d3bd3de4e417f27f/pkg/scheduler/schedule_one.go#L489

![image](https://github.com/kubernetes/kubernetes/assets/1299064/d82a658e-ae01-4bcd-9e0d-6ab892bee6c2)


### What did you expect to happen?

Scheduler to keep a throughput of 300 pods/s

### How can we reproduce it (as minimally and precisely as possible)?

Schedule 5k daemonset pods giving 300 qps to the scheduler

### Anything else we need to know?

_No response_

### Kubernetes version

<details>

```console
$ kubectl version
# paste output here
```
v1.30
</details>


### Cloud provider

<details>
GKE
</details>


### OS version

<details>

```console
# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here
```

</details>


### Install tools

<details>

</details>


### Container runtime (CRI) and version (if applicable)

<details>

</details>


### Related plugins (CNI, CSI, ...) and versions (if applicable)

<details>

</details>

Throughput degradation scheduling daemonset pods
This is a GitHub Issue
repo:kubernetes
owner:kubernetes
Title : Throughput degradation scheduling daemonset pods
Issue date:

--- start body ---
### What happened?

https://github.com/kubernetes/kubernetes/pull/119779 added some map queries and creations that add non-negligible latency.

The pprof reveals the following lines inside `findNodesThatFitPod` as too expensive:
- 22.2% https://github.com/kubernetes/kubernetes/blob/44bd04c0cbddde69aaeb7a90d3bd3de4e417f27f/pkg/scheduler/schedule_one.go#L492
- 21.7% https://github.com/kubernetes/kubernetes/blob/44bd04c0cbddde69aaeb7a90d3bd3de4e417f27f/pkg/scheduler/schedule_one.go#L489

![image](https://github.com/kubernetes/kubernetes/assets/1299064/d82a658e-ae01-4bcd-9e0d-6ab892bee6c2)


### What did you expect to happen?

Scheduler to keep a throughput of 300 pods/s

### How can we reproduce it (as minimally and precisely as possible)?

Schedule 5k daemonset pods giving 300 qps to the scheduler

### Anything else we need to know?

_No response_

### Kubernetes version

<details>

```console
$ kubectl version
# paste output here
```
v1.30
</details>


### Cloud provider

<details>
GKE
</details>


### OS version

<details>

```console
# On Linux:
$ cat /etc/os-release
# paste output here
$ uname -a
# paste output here

# On Windows:
C:\> wmic os get Caption, Version, BuildNumber, OSArchitecture
# paste output here
```

</details>


### Install tools

<details>

</details>


### Container runtime (CRI) and version (if applicable)

<details>

</details>


### Related plugins (CNI, CSI, ...) and versions (if applicable)

<details>

</details>

--- end body ---
