kubernetes/pkg/api
Kubernetes Submit Queue c6df88991d Merge pull request #35194 from wojtek-t/efficient_selector
Automatic merge from submit-queue

Optimize label selector

The number of values for a given label is generally pretty small (in huge majority of cases it is exactly one value).
Currently computing selectors is up to 50% of CPU usage in both apiserver and scheduler.

Changing the structure in which those values are stored from map to slice improves the performance of typical usecase for computing selectors.

Early results:
- scheduler throughput it ~15% higher
- apiserver cpu-usage is also lower (seems to be also ~10-15%)
2016-10-20 20:45:22 -07:00
..
annotations Use Go canonical import paths 2016-07-16 13:48:21 -04:00
endpoints Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
errors Change minion to node 2016-09-28 10:53:30 -07:00
events kubectl: move events sorting interface to the api for general use 2016-09-18 19:25:42 +02:00
install remove dead mapper 2016-09-19 09:57:19 -04:00
meta Allow garbage collection to work against different API prefixes 2016-09-22 15:00:58 -04:00
pod Fix various typos in pkg/api 2016-08-29 11:31:16 +02:00
resource update generated protobuf 2016-10-13 21:22:59 -07:00
rest Revert "Work around the etcd watch issue" 2016-09-26 23:54:10 -07:00
service Promote source ip annotations to beta 2016-10-19 13:39:37 -07:00
testapi kubeadm: fix conversion macros and add kubeadm to round trip testing 2016-10-12 13:26:23 -07:00
testing change rbac roleref type 2016-09-09 09:55:51 -04:00
unversioned More efficient selector 2016-10-20 15:16:58 +02:00
util Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
v1 Merge pull request #35071 from thockin/volume-mount-merge-key 2016-10-19 00:21:03 -07:00
validation Merge pull request #33957 from bprashanth/esipp-beta 2016-10-20 06:53:07 -07:00
context_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
context.go print instruction in case of failed kubectl 1.3 rolling-update against 1.4 cluster 2016-09-15 17:20:39 -07:00
conversion_test.go remove testapi.Default.GroupVersion 2016-10-07 10:10:54 -04:00
conversion.go fix register.go files up + add test import 2016-08-11 17:06:54 -07:00
copy_test.go remove testapi.Default.GroupVersion 2016-10-07 10:10:54 -04:00
deep_copy_test.go Update etcd default ports for v3, and validate tests 2016-08-17 07:49:19 -05:00
defaulting_test.go Make defaulting part of versioning codec 2016-10-18 21:07:35 -04:00
defaults.go fix register.go files up + add test import 2016-08-11 17:06:54 -07:00
doc.go Use Go canonical import paths 2016-07-16 13:48:21 -04:00
field_constants.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
generate_test.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
generate.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
helpers_test.go Return error for empty sysctl names 2016-09-30 17:56:37 +02:00
helpers.go More efficient selector 2016-10-20 15:16:58 +02:00
mapper.go remove dead mapper 2016-09-19 09:57:19 -04:00
meta_test.go remove testapi.Default.GroupVersion 2016-10-07 10:10:54 -04:00
meta.go add ClusterName field to ObjectMeta 2016-08-22 21:09:57 -07:00
node_example.json Change minion to node 2016-09-28 10:53:30 -07:00
OWNERS Move blunderbuss assignees into tree 2016-03-02 20:46:32 -05:00
ref_test.go Use make as the main build tool 2016-07-12 21:52:00 -07:00
ref.go move api.OjbectReference.ObjectKind() to ref.go 2016-07-14 23:02:05 -07:00
register.go Fix various typos in pkg/api 2016-08-29 11:31:16 +02:00
replication_controller_example.json Initial Quobyte support 2016-08-18 17:13:50 +02:00
requestcontext.go Cleanup handler chain 2016-09-23 12:03:58 +02:00
resource_helpers_test.go extensions: add minReadySeconds/availableReplicas to replica sets 2016-09-28 11:06:40 +02:00
resource_helpers.go extensions: add minReadySeconds/availableReplicas to replica sets 2016-09-28 11:06:40 +02:00
serialization_proto_test.go kubeadm: fix conversion macros and add kubeadm to round trip testing 2016-10-12 13:26:23 -07:00
serialization_test.go allow apigroups to opt out of proto round trip testing 2016-10-12 10:01:38 -07:00
types.generated.go Generated code for RS/RC conditions 2016-10-10 18:34:01 +02:00
types.go Add +optional tag to all fields with omitempty json tag 2016-10-17 08:52:13 -07:00
zz_generated.deepcopy.go Generated code for RS/RC conditions 2016-10-10 18:34:01 +02:00