Wie bereits erwähnt wurde limitieren diese Werte die zugewiesene CPU-Zeit (oder RAM) auf dem physikalischen CPUs. Ich persönlich finde jedoch aus dem Stehgreif keine sinnvollen Grund warum man das verwenden sollte. Das sollte sofern man eine stabile Umgebung will auf unlimited stehen (Hakerl setzen). Ich habe bislang auch noch kein Gast OS gesehen, was damit ordentlich umgehen könnte.
Nur mal so als Fallbeispiel.
Eine VM hat 1vCPU zugewiesen. Die Host-CPU ist mit Hauszahl 3GHz getaktet. Ich stelle nun das Limit auf 1500MHz ein. Das heist jetzt nicht, dass die VM genau so läuft als hätte sie einen Singlecore mit 1500MHz. Sondern sie bekommt immer nur maximal 50% der CPU-Zeit auf die pCPU zugewiesen. Und das geht jetzt leider nicht so granular, dass die vCPU zB immer nur jeden 2. Takt mitbekommt. Nein - in der Realität schauts normal so aus, dass die VM eine halbe Sekunde stockt, dann wieder vollgas gibt, wieder stockt, usw...
Gebe ich derselben VM zB. dann 2vCores belasse aber das Limit wirds gleich nochmal ums doppelte schlimmer. Dann stockt sie 3/4 der Zeit und gibt dann wieder 1/4 mit 2 cores vollgas.
Wie gesagt. Ich habe bislang noch kein Gastsystem gesehen, mit dem das ansatzweise zufriedenstellend läuft. Das treibt nur künstlich die CPU-Readyzeit nach oben und wirkt sich im worst case sogar auf andere unlimitierte VMs aus weil der CPU-Scheduler am Host nur sinnlos beschäftigt wird.
Das ist jetzt alleine meine Meinung dazu. Sollte das schon mal jemand anders gesehen haben, lass ich mich gerne eines besseren belehren
PS: Doch mir ist grade ein use case eingefallen. Habe ich zB. eine Hochleistungs-VM mit vielen vCores die im Hintergrund irgendwas berechnen soll, egal ob das nun 2 Tage oder eine Woche dauert und auch keine Frontend-Anwendung auf ein zeitnahes Ergebnis wartet, könnte man zur Entlastung der Umgebung zB. tagsüber drosseln und am WE oder in der Nacht die Drossel wieder entfernen. Aber alles andere... finger Weg meiner Meinung nach.