diff mbox series

[v16,03/14] migration: Calculate mbps only during transfer time

Message ID 20180626181932.11909-3-quintela@redhat.com
State New
Headers show
Series [v16,01/14] migration: Create multipage support | expand

Commit Message

Juan Quintela June 26, 2018, 6:19 p.m. UTC
We used to include in this calculation the setup time, but that can be
quite big in rdma or multifd.

Signed-off-by: Juan Quintela <quintela@redhat.com>
---
 migration/migration.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Dr. David Alan Gilbert June 27, 2018, 9:28 a.m. UTC | #1
* Juan Quintela (quintela@redhat.com) wrote:
> We used to include in this calculation the setup time, but that can be
> quite big in rdma or multifd.
> 
> Signed-off-by: Juan Quintela <quintela@redhat.com>

Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

> ---
>  migration/migration.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/migration/migration.c b/migration/migration.c
> index e1eaa97df4..d3e6da9bfe 100644
> --- a/migration/migration.c
> +++ b/migration/migration.c
> @@ -2708,6 +2708,7 @@ static void migration_calculate_complete(MigrationState *s)
>  {
>      uint64_t bytes = qemu_ftell(s->to_dst_file);
>      int64_t end_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME);
> +    int64_t transfer_time;
>  
>      s->total_time = end_time - s->start_time;
>      if (!s->downtime) {
> @@ -2718,8 +2719,9 @@ static void migration_calculate_complete(MigrationState *s)
>          s->downtime = end_time - s->downtime_start;
>      }
>  
> -    if (s->total_time) {
> -        s->mbps = ((double) bytes * 8.0) / s->total_time / 1000;
> +    transfer_time = s->total_time - s->setup_time;
> +    if (transfer_time) {
> +        s->mbps = ((double) bytes * 8.0) / transfer_time / 1000;
>      }
>  }
>  
> -- 
> 2.17.1
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
diff mbox series

Patch

diff --git a/migration/migration.c b/migration/migration.c
index e1eaa97df4..d3e6da9bfe 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -2708,6 +2708,7 @@  static void migration_calculate_complete(MigrationState *s)
 {
     uint64_t bytes = qemu_ftell(s->to_dst_file);
     int64_t end_time = qemu_clock_get_ms(QEMU_CLOCK_REALTIME);
+    int64_t transfer_time;
 
     s->total_time = end_time - s->start_time;
     if (!s->downtime) {
@@ -2718,8 +2719,9 @@  static void migration_calculate_complete(MigrationState *s)
         s->downtime = end_time - s->downtime_start;
     }
 
-    if (s->total_time) {
-        s->mbps = ((double) bytes * 8.0) / s->total_time / 1000;
+    transfer_time = s->total_time - s->setup_time;
+    if (transfer_time) {
+        s->mbps = ((double) bytes * 8.0) / transfer_time / 1000;
     }
 }