8244166dec
migration/dirtyrate: Refactor dirty page rate calculation
...
abstract out dirty log change logic into function
global_dirty_log_change.
abstract out dirty page rate calculation logic via
dirty-ring into function vcpu_calculate_dirtyrate.
abstract out mathematical dirty page rate calculation
into do_calculate_dirtyrate, decouple it from DirtyStat.
rename set_sample_page_period to dirty_stat_wait, which
is well-understood and will be reused in dirtylimit.
handle cpu hotplug/unplug scenario during measurement of
dirty page rate.
export util functions outside migration.
Signed-off-by: Hyman Huang(黄勇) <huangy81@chinatelecom.cn >
Reviewed-by: Peter Xu <peterx@redhat.com >
Message-Id: <7b6f6f4748d5b3d017b31a0429e630229ae97538.1656177590.git.huangy81@chinatelecom.cn >
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
2022-07-20 12:15:08 +01:00
71864eadd9
migration/dirtyrate: introduce struct and adjust DirtyRateStat
...
introduce "DirtyRateMeasureMode" to specify what method should be
used to calculate dirty rate, introduce "DirtyRateVcpu" to store
dirty rate for each vcpu.
use union to store stat data of specific mode
Signed-off-by: Hyman Huang(黄勇) <huangy81@chinatelecom.cn >
Message-Id: <661c98c40f40e163aa58334337af8f3ddf41316a.1624040308.git.huangy81@chinatelecom.cn >
Reviewed-by: Peter Xu <peterx@redhat.com >
Reviewed-by: Juan Quintela <quintela@redhat.com >
Signed-off-by: Juan Quintela <quintela@redhat.com >
2021-11-01 22:56:43 +01:00
7afa08cd8f
migration/dirtyrate: make sample page count configurable
...
introduce optional sample-pages argument in calc-dirty-rate,
making sample page count per GB configurable so that more
accurate dirtyrate can be calculated.
Signed-off-by: Hyman Huang(黄勇) <huangy81@chinatelecom.cn >
Message-Id: <3103453a3b2796f929269c99a6ad81a9a7f1f405.1623027729.git.huangy81@chinatelecom.cn >
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
Wrapped a couple of long lines
2021-06-08 20:18:25 +01:00
eca582249c
migration/dirtyrate: Implement set_sample_page_period() and is_sample_period_valid()
...
Implement is_sample_period_valid() to check if the sample period is vaild and
do set_sample_page_period() to sleep specific time between sample actions.
Signed-off-by: Chuan Zheng <zhengchuan@huawei.com >
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
Reviewed-by: David Edmondson <david.edmondson@oracle.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <1600237327-33618-10-git-send-email-zhengchuan@huawei.com >
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
2020-09-25 12:45:58 +01:00
f82583cdc0
migration/dirtyrate: skip sampling ramblock with size below MIN_RAMBLOCK_SIZE
...
In order to sample real RAM, skip ramblock with size below MIN_RAMBLOCK_SIZE
which is set as 128M.
Signed-off-by: Chuan Zheng <zhengchuan@huawei.com >
Reviewed-by: David Edmondson <david.edmondson@oracle.com >
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <1600237327-33618-9-git-send-email-zhengchuan@huawei.com >
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
2020-09-25 12:45:57 +01:00
c9a58d719b
migration/dirtyrate: Add dirtyrate statistics series functions
...
Add dirtyrate statistics functions to record/update dirtyrate info.
Signed-off-by: Chuan Zheng <zhengchuan@huawei.com >
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <1600237327-33618-5-git-send-email-zhengchuan@huawei.com >
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
2020-09-25 12:45:57 +01:00
a2635f0a75
migration/dirtyrate: Add RamblockDirtyInfo to store sampled page info
...
Add RamblockDirtyInfo to store sampled page info of each ramblock.
Signed-off-by: Chuan Zheng <zhengchuan@huawei.com >
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
Reviewed-by: David Edmondson <david.edmondson@oracle.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <1600237327-33618-4-git-send-email-zhengchuan@huawei.com >
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
2020-09-25 12:45:57 +01:00
4240dceeb3
migration/dirtyrate: setup up query-dirtyrate framwork
...
Add get_dirtyrate_thread() functions to setup query-dirtyrate
framework.
Signed-off-by: Chuan Zheng <zhengchuan@huawei.com >
Signed-off-by: YanYing Zhuang <ann.zhuangyanying@huawei.com >
Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
Reviewed-by: David Edmondson <david.edmondson@oracle.com >
Reviewed-by: Li Qiang <liq3ea@gmail.com >
Message-Id: <1600237327-33618-2-git-send-email-zhengchuan@huawei.com >
Signed-off-by: Dr. David Alan Gilbert <dgilbert@redhat.com >
2020-09-25 12:45:57 +01:00