[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 22/54] ram: Move xbzrle_cache_miss into RAMState
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH 22/54] ram: Move xbzrle_cache_miss into RAMState |
Date: |
Thu, 6 Apr 2017 15:08:41 +0200 |
Signed-off-by: Juan Quintela <address@hidden>
Reviewed-by: Dr. David Alan Gilbert <address@hidden>
Reviewed-by: Peter Xu <address@hidden>
---
migration/ram.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/migration/ram.c b/migration/ram.c
index cf6681c..b70db68 100644
--- a/migration/ram.c
+++ b/migration/ram.c
@@ -177,6 +177,8 @@ struct RAMState {
uint64_t xbzrle_bytes;
/* xbzrle transmmited pages */
uint64_t xbzrle_pages;
+ /* xbzrle number of cache miss */
+ uint64_t xbzrle_cache_miss;
};
typedef struct RAMState RAMState;
@@ -184,7 +186,6 @@ static RAMState ram_state;
/* accounting for migration statistics */
typedef struct AccountingInfo {
- uint64_t xbzrle_cache_miss;
double xbzrle_cache_miss_rate;
uint64_t xbzrle_overflows;
} AccountingInfo;
@@ -218,7 +219,7 @@ uint64_t xbzrle_mig_pages_transferred(void)
uint64_t xbzrle_mig_pages_cache_miss(void)
{
- return acct_info.xbzrle_cache_miss;
+ return ram_state.xbzrle_cache_miss;
}
double xbzrle_mig_cache_miss_rate(void)
@@ -498,7 +499,7 @@ static int save_xbzrle_page(RAMState *rs, QEMUFile *f,
uint8_t **current_data,
uint8_t *prev_cached_page;
if (!cache_is_cached(XBZRLE.cache, current_addr, rs->bitmap_sync_count)) {
- acct_info.xbzrle_cache_miss++;
+ rs->xbzrle_cache_miss++;
if (!last_stage) {
if (cache_insert(XBZRLE.cache, current_addr, *current_data,
rs->bitmap_sync_count) == -1) {
@@ -699,12 +700,12 @@ static void migration_bitmap_sync(RAMState *rs)
if (migrate_use_xbzrle()) {
if (rs->iterations_prev != rs->iterations) {
acct_info.xbzrle_cache_miss_rate =
- (double)(acct_info.xbzrle_cache_miss -
+ (double)(rs->xbzrle_cache_miss -
rs->xbzrle_cache_miss_prev) /
(rs->iterations - rs->iterations_prev);
}
rs->iterations_prev = rs->iterations;
- rs->xbzrle_cache_miss_prev = acct_info.xbzrle_cache_miss;
+ rs->xbzrle_cache_miss_prev = rs->xbzrle_cache_miss;
}
s->dirty_pages_rate = rs->num_dirty_pages_period * 1000
/ (end_time - rs->time_last_bitmap_sync);
@@ -2001,6 +2002,7 @@ static int ram_save_init_globals(RAMState *rs)
rs->iterations = 0;
rs->xbzrle_bytes = 0;
rs->xbzrle_pages = 0;
+ rs->xbzrle_cache_miss = 0;
migration_bitmap_sync_init(rs);
qemu_mutex_init(&migration_bitmap_mutex);
--
2.9.3
- [Qemu-devel] [PATCH 10/54] ram: Move num_dirty_pages_period into RAMState, (continued)
- [Qemu-devel] [PATCH 10/54] ram: Move num_dirty_pages_period into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 13/54] ram: Move iterations_prev into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 12/54] ram: Move xbzrle_cache_miss_prev into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 14/54] ram: Move dup_pages into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 15/54] ram: Remove unused dup_mig_bytes_transferred(), Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 16/54] ram: Remove unused pages_skipped variable, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 19/54] ram: Move iterations into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 20/54] ram: Move xbzrle_bytes into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 18/54] ram: Remove norm_mig_bytes_transferred, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 21/54] ram: Move xbzrle_pages into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 22/54] ram: Move xbzrle_cache_miss into RAMState,
Juan Quintela <=
- [Qemu-devel] [PATCH 17/54] ram: Move norm_pages to RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 23/54] ram: Move xbzrle_cache_miss_rate into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 24/54] ram: Move xbzrle_overflows into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 25/54] ram: Move migration_dirty_pages to RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 26/54] ram: Everything was init to zero, so use memset, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 27/54] ram: Move migration_bitmap_mutex into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 28/54] ram: Move migration_bitmap_rcu into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 29/54] ram: Move bytes_transferred into RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 32/54] ram: Move last_req_rb to RAMState, Juan Quintela, 2017/04/06
- [Qemu-devel] [PATCH 30/54] ram: Use the RAMState bytes_transferred parameter, Juan Quintela, 2017/04/06