6 Replies Latest reply on Jan 8, 2014 2:30 AM by ErreaIT

    vsockets e cores

    ErreaIT Enthusiast

      Perdonate la domanda, forse banale, ma faccio fatica a capire la differenza tra la vers. 4.1 (da cui arrivo) e la vers. 5.1 sul discorso vcpu.

      Prima in una VM ogni X vcpu corrispondeva ad X pcpu ora che differenza c'è?

      mettere ad es. 2vscok. con 2 cores (4 cpu) nel fisico corrisponde sempre a 4 pcpu giusto?

      se si allora perchè questa "novità" ?

       

      Inoltre sto impazzendo con il discorso NUMA e dalla 5.1 si chiama VNUMA.

      Ad es. perchè mi presenta  8 numa nel mio primo server (4 soc., 12 cores) mentre nel secondo solo 4 (2 soc., 8 cores); dipende dal n° di cores?

       

       

      E' inutile, sento il bisogno di un bel corso.

        • 1. Re: vsockets e cores
          AJ Master

          vCPU riferisce ad un nucleo fisica della CPU nel mondo virtuale. Nel caso del mondo fisico ci riferiamo CPU si riferisce al processore. Spero che le informazioni di cui sopra aiuta.

          • 2. Re: vsockets e cores
            Tinto1970 Master

            ciao, dalla 5.1 (o era la 5.0?) e' possibile fare vedere al sistema operativo della VM due "virtual cpu" come una cpu virtuale con due core oppure come due cpu virtuali a un core.

            Questo è stato fatto se non ricordo male per risolvere problemi di licenza di alcuni software il cui modello di licenza andava a socket e non a "unità elaborativa".

             

            Il NUMA è una cosa un po' complessa, ma se non ho capito male il vNUMA non è altro che la possibilità di presentare al sistema operativo il layout fisico sottostante. Cioè se fai una VM grande che comprende più nodi NUMA allora puoi far sì che il sistema operativo e gli applicativi che ci girano vedano che hanno a disposizione due nodi NUMA e si organizzino per sfruttarli al meglio. E' necessario che l'applicativo sia "numa aware" però.

             

            Se fai delle VM che hanno un numero di core inferiore a quello che sta in un nodo NUMA del tuo server non c'è bisogno di preoccuparsene, ovviamente. Così come se il tuo applicativo non è numa aware non ti servirà a niente il vNUMA.

             

            Per la domanda sulla differenza... tiro a indovinare: non è che su un server hai abilitato l'hypertreading e sull'altro no?

             

            P.S.: secondo me non è corretto il fatto che "prima" a una vcpu corrispondesse una pcpu. Se no lo scheduler che ci sta a fare?

            • 3. Re: vsockets e cores
              ldelloca Master
              vExpert

              Ciao,

              la differenza tra socket e core, dentro le virtual machines, è nulla da un punto di vista prestazionale. Ogni vCPU viene poi gestita allo stesso modo dal CPU scheduler di ESXi.

              La ragione della possibilità di configurare differentemente socket e core nelle VM è per aiutare in quelle situazioni dove il licensing di un sistema operativo o di un applicativo porrebbe dei vincoli, oppure dei problemi di licenza. Ti faccio due esempi:

              - Windows 2008 R2 Standard ha un limite di 4 socket. Nelle vecchie versioni, potevi solo creare una VM con 4 vCPU, sfruttando quindi 4 pipe di esecuzione. Con la nuova versione, puoi creare una VM con 4 socket E 4 cores per socket ad esempio, che equivale nel passato ad avere 16 vCPU.

              - Licensing per socket: puoi ad esempio utilizzare SQL server con licensing per CPU, comprare solo una licenza, e creare una VM che abbia 1 socket e 8 cores. Prima per usare 8 pcpu dovevi avere 8 licenze processore.

               

              Per vNUMA, è la possibilità di mostrare alla virtual machine l’architettura NUMA anche al Guest OS e poter quindi sfruttare anche a questo livello le “isole” di CPU e RAM di NUMA.

               

              Ciao,

              Luca.

              • 4. Re: vsockets e cores
                ldelloca Master
                vExpert

                Forse questo articolo può aiutarvi a capire meglio come funziona, ma in soldoni Tinto ci ha già preso

                 

                http://cto.vmware.com/vnuma-what-it-is-and-why-it-matters/

                 

                Luca.

                • 5. Re: vsockets e cores
                  AJ Master

                  Sì, ora CPU virtuale può anche essere con più core, questo è puramente utilizzato per applicazioni che sono di base amichevole. 1 CPU virtuale = 1 core fisico ... L'URL vi darà maggiori informazioni sullo stesso. http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1010184 E per vNUMA, consultare http://cto.vmware.com/vnuma-what-it-is-and-why-it-matters/

                  • 6. Re: vsockets e cores
                    ErreaIT Enthusiast

                    ok signori grazie per le risposte.

                    Per il discorso cpu adesso ho capito, in effetti non avevo mai pensato sotto quel aspetto, perciò chiudo qui il discorso.

                     

                    Per il NUMA mi permetto di continuare in un'altra discussione.

                     

                    ciao