Wojciech Tyczyński
3030f660a8
Graduate APIListChunking to GA
...
Kubernetes-commit: 6acfa3cb4ac876e46ead5ba4772ba18e480435ce
2023-07-21 11:35:21 +02:00
Andrew Sy Kim
f00505bddc
priority & fairness: support dynamically configuring work estimator max seats
...
Max seats from prioriy & fairness work estimator is now min(0.15 x
nominalCL, nominalCL/handSize)
'Max seats' calculated by work estimator is currently hard coded to 10.
When using lower values for --max-requests-inflight, a single
LIST request taking up 10 seats could end up using all if not most seats in
the priority level. This change updates the default work estimator
config such that 'max seats' is at most 10% of the
maximum concurrency limit for a priority level, with an upper limit of 10.
This ensures seats taken from LIST request is proportional to the total
available seats.
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
Kubernetes-commit: d3ef2d4fe95c3ef7b1c606ad01be1183659da391
2023-04-26 11:13:14 +00:00
Wojciech Tyczyński
c7b06c9136
Add support for watchlist to APF
...
Kubernetes-commit: c0030a4d27e0a30d89b1b0fddb32928942ca8085
2023-06-27 16:08:33 +02:00
Marek Siarkowicz
9002dac854
Implement ConsistentListFromCache feature gate
...
Request bookmark every 100ms when there is at least one request blocked on revision not present in watch cache.
Kubernetes-commit: 39bb8f4bb1d013937aceac6c387563ffe13545c5
2023-06-06 15:49:46 +02:00
Marek Siarkowicz
72bea89ab7
Refactor shouldDelegateList/shouldListFromStorage to better explain decisions
...
Kubernetes-commit: 406899360b55b3a0e28970f369288a2bb8a804fe
2023-06-21 14:02:46 +02:00
RuquanZhao
bc5f595633
fix undefined convertion
...
Signed-off-by: Ruquan Zhao ruquan.zhao@arm.com
Kubernetes-commit: 65f3454c1d926a1f119710684794bb54350ef4b1
2023-04-20 17:16:46 +08:00
Wojciech Tyczyński
299c158ba3
Reuse generic List test for watchcache
...
Kubernetes-commit: ef8c4fbca8e5bed1e7edc162b95c412a7f1a758e
2022-11-04 22:01:37 +01:00
Marcel Zięba
6887520e10
Fix APF width estimate for creating service account's token
...
Kubernetes-commit: 2f7b4ca6851aa3d479c9af3c14a168b4974f2fee
2022-10-18 12:27:50 +00:00
Marcel Zięba
395682d7b7
Fix list estimator for lists that are executed as gets
...
Kubernetes-commit: 09f1ce9ec821c14013c775ba106e4888cb29c2c3
2022-09-19 07:42:45 +00:00
jupblb
16f776a534
Switch initial/final seats type to uint64
...
Kubernetes-commit: 3c46482eb09d7343e0f98a930a9aaa158237e278
2022-07-28 10:48:40 +02:00
Davanum Srinivas
7e94033a61
Generate and format files
...
- Run hack/update-codegen.sh
- Run hack/update-generated-device-plugin.sh
- Run hack/update-generated-protobuf.sh
- Run hack/update-generated-runtime.sh
- Run hack/update-generated-swagger-docs.sh
- Run hack/update-openapi-spec.sh
- Run hack/update-gofmt.sh
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
Kubernetes-commit: a9593d634c6a053848413e600dadbf974627515f
2022-07-19 20:54:13 -04:00
jupblb
738a050cda
Introduce config for API Priority and Fairness
...
Linked all the default values with a single config structure.
Kubernetes-commit: 1c594e7e01a899807431c806cd11c1d27c885c9c
2022-07-20 11:33:45 +02:00
Wojciech Tyczyński
f5d65d90e9
Avoid leaking StorageObjectCountTracker goroutine
...
Kubernetes-commit: 564b376812836fb1e77452d478ab16eee5101447
2022-05-15 09:57:26 +02:00
Wojciech Tyczyński
b6f111beb9
Fix the overestimated cost of deletaged API requests in P&F
...
Kubernetes-commit: 14a4fd385353b914265acb233fa8d2a426af7f90
2022-03-31 09:47:41 +02:00
Wojciech Tyczyński
bfcf29ce7a
P&F: enable mutating work estimator
...
Kubernetes-commit: 8f5ece0548b59b1f8706f79af814d9f7700acb5c
2021-11-02 12:54:29 +01:00
Abu Kashem
6bd59a523a
apf: add a metric to count seat samples
...
Kubernetes-commit: bb15bdf15c1cc4d5a4380f3f6ed46d4adc9662a1
2021-11-23 11:36:09 -05:00
Mike Spreitzer
56b220f8cd
Add metrics about watch counts seen by APF
...
Kubernetes-commit: 154bf6aab33c2486a9066f66ab3a056c1095cb9a
2021-10-25 03:31:47 -04:00
Wojciech Tyczyński
bdc01eb8e6
P&F: update mutating request estimation
...
Kubernetes-commit: 4700cf622bfcf5c2b159ddc4e37d7f51d1c41e68
2021-10-27 10:25:38 +02:00
Wojciech Tyczyński
55b43e446f
P&F: move seat-seconds to a better location
...
Kubernetes-commit: e262db7a4daf5218520e49b423789ea55a94af75
2021-10-27 10:30:25 +02:00
Wojciech Tyczyński
9c98ce48a5
P&F: clean up mutating work estimator tests
...
Kubernetes-commit: 943bc38c0e0076935701d32067d5a2d8d512be8a
2021-10-27 10:05:13 +02:00
wojtekt
f578e7708d
Disable P&F for watch requests
...
Kubernetes-commit: 763e6d1dbb6371c66b62e4ea4c1fcbee1c113bda
2021-10-13 07:43:05 +02:00
wojtekt
c18ab3e1b1
Estimate width of the request based on watchers count in P&F
...
Kubernetes-commit: 223f9be59778b6ec2e44fd57df523f00e246bd95
2021-07-07 10:48:29 +02:00
Mike Spreitzer
a5192405d9
Calculate the work in each request just once
...
Kubernetes-commit: f2c46c8f9d0b360cf913e22c222d9954b4ff9a76
2021-10-07 17:20:56 -07:00
Abu Kashem
9560ec6e92
introduce final seats for work estimate
...
Kubernetes-commit: 3d6cc118fee15313419bf7aa0082a2a608ec62f6
2021-09-24 15:18:27 -04:00
Abu Kashem
863c48fbc2
apf: rename WorkEstimate.Seats to InitialSeats
...
Kubernetes-commit: 5d67896adedbce27f01b59eb5f2054919a047f2b
2021-09-24 09:41:38 -04:00
Mike Spreitzer
e417abf592
Migrate apiserver/pkg/util/flowcontrol to use k8s.io/utils/clock
...
.. instead of apimachinery/pkt/util/clock
Kubernetes-commit: 9f45c0f8c07cd0adfe38c887aa618d33b8a4ee1c
2021-09-17 15:14:42 -04:00
Mike Spreitzer
d6c30c1553
Adjust LIST work estimator to match current code
...
Kubernetes-commit: 6f160ca11b0ce9e9fda9571e37eec2de1b97bcc5
2021-08-25 23:22:13 -04:00
Abu Kashem
da50ca4c6e
apf: free seats in use after additional latency
...
Kubernetes-commit: d68186452d9150b113489e6a722caf82f898857f
2021-06-27 13:04:20 -04:00
Abu Kashem
bd2ef9810a
apf: estimate list width
...
Kubernetes-commit: 296c18ec323328bf1c6a621a9ca3a094d78bb9d0
2021-06-22 19:38:00 -04:00
Abu Kashem
feb4eefe1c
apiserver: add callback to get notified of object count
...
Kubernetes-commit: 2c60feffbee690af4632d068158e640abe10f678
2021-07-14 16:44:34 -04:00
wojtekt
b4c306e1e8
Rename width to workEstimate in P&F code
...
Kubernetes-commit: 73211256e8f15cf84ee69d6fe8258c3a912e0f94
2021-07-13 15:10:58 +02:00
Ryan Phillips
7afffd8ef3
Revert "apiserver: add callback to get notified of object count"
...
Kubernetes-commit: d95b14e1abfb5ec87248e5dd826b89d0c738af42
2021-07-08 13:56:39 -05:00
Abu Kashem
cf5c77fde9
apf: add additional latency into width
...
Kubernetes-commit: 24e19229101d242d924ce98a562be3864dde9eae
2021-06-27 12:45:24 -04:00
Abu Kashem
d929410e13
apiserver: add callback to get notified of object count
...
Kubernetes-commit: 1002b0d163dd948334f10b0e25d0e91d253791e8
2021-06-18 10:44:07 -04:00
Abu Kashem
3c7f54740f
apf: add plumbing to estimate width" of a request
...
- add plumbing that allows us to estimated "width" of a request
- the default implementation returns 1 as the "width" of all
incoming requests, this is in keeping with the current behavior.
Kubernetes-commit: 9b72eb1929a64b9d5a5234090a631ba312fb4d41
2021-05-11 07:03:05 -04:00