Skip to content

Reduce hostd mem usage via event type filter#7009

Merged
hickeng merged 3 commits intovmware:releases/1.3.0from
hickeng:event-type-release
Dec 29, 2017
Merged

Reduce hostd mem usage via event type filter#7009
hickeng merged 3 commits intovmware:releases/1.3.0from
hickeng:event-type-release

Conversation

@hickeng
Copy link
Contributor

@hickeng hickeng commented Dec 29, 2017

Cherry-pick PR. Original: #7001

This bumps eventPageSize back to 200 to determine if the event type filter has significant effect on memory footprint of task history.
Having run full CI against this branch we saw a maximum of 124880 which is directly inline with the numbers found for 1.2.1 full CI and an unfiltered pagesize of 25.
The fact these two numbers are almost identical implies to me that we're not saturating the 25 pagesize in CI and in fact the number is dominated at this time by the taskRetention interval in hostd.

https://ci.vcna.io/vmware/vic/15511 is the CI build used for reference. There is a failure in the log test which looks like it's related to either a local stall or clock skew - will confirm once logs are uploaded.

@dougm has tests for the filtering in vmware/govmomi and I've confirmed that we're getting only the expected events delivered. The docker ps and out-of-band tests already exercise the function that events support.

This is based off #7000 and should be merged instead of that, or after having dropped the govmomi portion of this PR.

Follow up for : #6886 and #6384

dougm and others added 3 commits December 28, 2017 17:11
An alternative to increasing the collector page size.  It will reduce the throughput to the event collector and hence reduce event misses.

See issues vmware#6937 and vmware#6998
Hypothesis is that it was primarily the reconfigure events that were
overwhelming the heap due to associated config spec. This has not been
confirmed by code inspection or similar, but this commit aims to
experientially determine the impact on hostd memory.
Experiments have shown that a filtered collector with pagesize of 200
has the same memory profile across full CI as the 1.2.1 release code
with an unfiltered pagesize of 25 (maxes out at approx 125000).
Without the filtering, significant deviation was observed.
Copy link
Member

@dougm dougm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@hickeng hickeng changed the title Filter event types with pagesize of 200 Reduce hostd mem usage via event type filter Dec 29, 2017
@hickeng hickeng merged commit d6708a7 into vmware:releases/1.3.0 Dec 29, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants