Esses provedores permitem que você e outras pessoas orientem o vagrant para o mesmo comportamento em diferentes ambientes de virtualização. Se o Vagrantfile está apenas suportando o Virtual Box, então você apenas precisa daquele.
Como bônus, você pode definir o tamanho da memória como uma variável no topo. Neste exemplo, você pode alterar o valor em um lugar:
memToAllocate = 2048
config.vm.synced_folder ".", "/vagrant", type: "sshfs"
config.vm.box_version = '1611.01'
config.vm.box = "centos/7"
config.vm.provider "virtualbox" do |v|
v.memory = memToAllocate
end
config.vm.provider "vmware_fusion" do |v|
v.vmx["memsize"] = memToAllocate.to_s
end
config.vm.provider "libvirt" do |libvirt|
libvirt.memory = memToAllocate
end
...