Anda tidak menyebutkan hypervisor mana yang Anda gunakan, jadi saya akan menebak KVM, tetapi jawaban saya juga berlaku untuk Xen. Ketika Anda mengatur currentMemory = 16384 dan maxMemory = 32768, Anda mengatakan KVM untuk boot dengan 32 GB RAM dan menggunakan driver balon untuk mengurangi itu menjadi 16 GB.
Setelah driver balon mengurangi RAM menjadi 16 GB, itu tidak akan pernah meningkat lagi kecuali jika Anda secara eksplisit meminta KVM untuk meningkatkan. Itu tidak akan menyesuaikan dirinya sendiri tanpa Anda menyuruhnya
WRT ke jumlah CPU - Anda tidak menyebutkan apakah Anda menetapkan jumlah CPU ke 2 sebelum mem-boot tamu, atau saat sudah berjalan. Umumnya sebagian besar OS menginginkan Anda mengatur jumlah CPU sebelum mem-boot-nya, karena mereka tidak secara otomatis melakukan hot-plug CPU.
Ada komplikasi lebih lanjut dengan beberapa versi Windows - jika Anda hanya memiliki 1 CPU saat pertama kali menginstal Windows, maka bahkan jika Anda kemudian menambahkan CPU mereka tidak akan digunakan karena Windows diinstal dalam mode prosesor tunggal. Selain itu beberapa versi windows hanya mendukung satu soket, tetapi memungkinkan beberapa core. Jadi, Anda mungkin perlu memberitahu manajer-baik untuk mengubah topologi CPU untuk mengekspos 1 socket dengan 2 core, bukan 2 socket dengan 1 core.