dirty-rate calc
calc-dirty-rate 整体流程 qmp_calc_dirty_rate => qemu_thread_create(,MIGRATION_THREAD_DIRTY_RATE, get_dirtyrate_thread,,) (get_dirtyrate_thread) => dirtyrate_set_state(,,DIRTY_RATE_ST...
calc-dirty-rate 整体流程 qmp_calc_dirty_rate => qemu_thread_create(,MIGRATION_THREAD_DIRTY_RATE, get_dirtyrate_thread,,) (get_dirtyrate_thread) => dirtyrate_set_state(,,DIRTY_RATE_ST...
guestperf代码分析 参考链接 https://blog.csdn.net/huang987246510/article/details/114379675?spm=1001.2014.3001.5501
PML && WP PML 和 WP 起到的作用是一样的,只不过PML可以达到一种batch WP的效果: PML index始终指向 next PML entry, 每次record PML时,PML index 会dec, 并且check --PML_index的值, 是否在[0, 511]范围之内. 当PML index=0时, 如果此时再record PM...
示意图: 参考资料 KVM: Dirty ring interface Peter Xu 2020 https://lore.kernel.org/all/20201023183358.50607-1-peterx@redhat.com/
ORG PATCH 我们来看下最初的KVM实现了哪些功能。最初的KVM代码,是基于shadow page table, 支持了dirty_bitmap. 我们从几个方面看下dirty_bitmap实现: kernel data struct USER API lock Contention Analysis kernel data struct 并支持了dirty_b...
# 简介 在大型机器,并且系统负载高时热迁移,工作负载往往比热迁移速度更快,从而导致 live migration无法 converge. 这个往往受限于bandwidth, 虽然现在网卡的带宽越来越高。但是虚拟机的核心数量 以及cpu主频,内存带宽也在逐渐增大。 Chegu Vinod 在 2013 年提出了 auto-converge, (但是的场景即使使用了10Gig NICs也...
From: "Jason J. Herne" <jjherne@linux.vnet.ibm.com> To: "qemu-devel@nongnu.org qemu-devel" <qemu-devel@nongnu.org>, Christian Borntraeger <borntraeger@de.ibm.com> Subject: [Qemu-...
热迁移简述 热迁移(live migration) 可以在虚拟机正在RUNNING时,对用户透明的从 source host 迁移到dest host. 涉及迁移对象种类 热迁移的流程会大概包含几个对象: cpu 内存 设备 主要工作 而热迁移主要工作是将这几个对象的信息,从原...
16.1 MACHINE-CHECK ARCHITECTURE The Pentium 4, Intel Xeon, Intel Atom, and P6 family processors implement a machine-check architecture that provides a mechanism for detecting and reporting hardwar...
struct 内存初始化流程 初始化MemoryRegion main => qemu_init => qemu_create_machine => qmp_x_exit_preconfig => qemu_init_board => machine_run_board_init =>...