Gå til innhold

Dette var årets råeste PC på The Gathering


Anbefalte innlegg

 

 

 

Er det noko eg ikkje forbinder rå ytelse med så er det virtualisering.

Tja det er vel ikke et problem i dag, kommer mer an på applikasjonene som kjøres.

 

 

Om du ønsker CPU intensive programmer skal bruke 50% lengre tid, så vær så god. Virtualisering har sin bruk, så lenge ytelse ikke er viktig.

Dette stemmer dårlig med min erfaring fra moderne virtualisering (dvs, siste 10 år).

 

I perioden 2010-2013 var jeg ansatt i et firma som hadde stort behov for rask ENKELT-kjerne-ytelse (ja, det var leagacy). Så stort at de gjerne kjøpte nye maskiner hvert år for å få del i det nyeste hvis det var noe forbedring å hente. Prisen for maskinene var 20-40 tusen, men den egentlige kostnaden var tiden det tok å få installert alt, siden det var en ganske involvert og kompleks affære (opptil en uke med redusert produksjon før hele miljøet var operativt).

 

Inn med VMWare workstation, VMWare server (på Debian-distro) og virtuelle maskiner. Levetiden på de virtuelle maskinene kunne være 2-5 år (enkelte kjører fremdeles), og hardware kunne byttes nesten uten installasjons-kostnad.

 

På de maskinene vi testet på, tok det aldri mer enn 2% lenger tid å kjøre prosessen i VM enn på vert. Disk vs ssd vs ramdisk hadde ingen betydning, siden alle ressurser likevel var i fil-cache.

 

Og tro meg, den prosessen var definitivt begrenset av CPU.

 

Det som ga ytelsestap, var prosesser begrenset av delte IO-ressurser (nettverk, disk, skjerm etc). Men det var ikke noe tema for dem.

 

 

Mvh

Per Gunnar Hansø

 

 

Du kan fortelja meg så elleville historier du vil, enda betre om det er frå bedrifter. Men sannheita er når du gir ein virtuellmaskin ein tung CPU intensiv oppgåve så vil den vere treigare. På nokre områder snakker vi fort iallefall 10x.

  • Liker 1
Lenke til kommentar
Videoannonse
Annonse

 

Virtualiserings-overhead til sides så er det fortsatt et prakteksempel på hvor begrensende Windows er.

 

Kan noen andre OS fikse dette bedre med å spille spill og slikt da?

 

 

Jepp. Alle systemer som bruker Xorg kan ihvertfall ha multiseat X-sessions med full 3D-akselerasjon.

https://www.reddit.com/r/linux_gaming/comments/1wewp3/two_seat_single_gpu_gaming_setup_details_in/

 

Nå er selvsagt grafikkdrivere og spillstøtte en litt annen historie på andre operativsystemer, men arkitekturmessig så er det begrensninger i Windows som gjør at du må kjøre flere virtualiserte kopier av samme operativsystemet, istedet for å modulert legge til tynnklienter på en host-server.

Lenke til kommentar

 

 

 

 

Er det noko eg ikkje forbinder rå ytelse med så er det virtualisering.

Tja det er vel ikke et problem i dag, kommer mer an på applikasjonene som kjøres.

 

 

Om du ønsker CPU intensive programmer skal bruke 50% lengre tid, så vær så god. Virtualisering har sin bruk, så lenge ytelse ikke er viktig.

Dette stemmer dårlig med min erfaring fra moderne virtualisering (dvs, siste 10 år).

 

I perioden 2010-2013 var jeg ansatt i et firma som hadde stort behov for rask ENKELT-kjerne-ytelse (ja, det var leagacy). Så stort at de gjerne kjøpte nye maskiner hvert år for å få del i det nyeste hvis det var noe forbedring å hente. Prisen for maskinene var 20-40 tusen, men den egentlige kostnaden var tiden det tok å få installert alt, siden det var en ganske involvert og kompleks affære (opptil en uke med redusert produksjon før hele miljøet var operativt).

 

Inn med VMWare workstation, VMWare server (på Debian-distro) og virtuelle maskiner. Levetiden på de virtuelle maskinene kunne være 2-5 år (enkelte kjører fremdeles), og hardware kunne byttes nesten uten installasjons-kostnad.

 

På de maskinene vi testet på, tok det aldri mer enn 2% lenger tid å kjøre prosessen i VM enn på vert. Disk vs ssd vs ramdisk hadde ingen betydning, siden alle ressurser likevel var i fil-cache.

 

Og tro meg, den prosessen var definitivt begrenset av CPU.

 

Det som ga ytelsestap, var prosesser begrenset av delte IO-ressurser (nettverk, disk, skjerm etc). Men det var ikke noe tema for dem.

 

 

Mvh

Per Gunnar Hansø

 

 

Du kan fortelja meg så elleville historier du vil, enda betre om det er frå bedrifter. Men sannheita er når du gir ein virtuellmaskin ein tung CPU intensiv oppgåve så vil den vere treigare. På nokre områder snakker vi fort iallefall 10x.

 

Historien din er jo like ellevill, hvis du ikkje legger frem noen oppdaterte tester/benchmarks som viser sannheten?

  • Liker 1
Lenke til kommentar

 

 

Virtualiserings-overhead til sides så er det fortsatt et prakteksempel på hvor begrensende Windows er.

 

Kan noen andre OS fikse dette bedre med å spille spill og slikt da?

 

 

Jepp. Alle systemer som bruker Xorg kan ihvertfall ha multiseat X-sessions med full 3D-akselerasjon.

https://www.reddit.com/r/linux_gaming/comments/1wewp3/two_seat_single_gpu_gaming_setup_details_in/

 

Nå er selvsagt grafikkdrivere og spillstøtte en litt annen historie på andre operativsystemer, men arkitekturmessig så er det begrensninger i Windows som gjør at du må kjøre flere virtualiserte kopier av samme operativsystemet, istedet for å modulert legge til tynnklienter på en host-server.

 

Altså det vil ikkje være bedre med ett annet OS i dag til spill. Dermed hjelper det ikkje noe som helst om et annet OS er bedre i teorien. Ja det er synn at ikkje alle spill kan funke like bra på Linux og windows. Ja det er faen, men slik er det 

Lenke til kommentar

Eg har jo vist deg link om, og du kan like lett teste det sjølv. Det er jo ikkje noko meir fancy enn kompilering av Linuxkernelen. Flytter du over til andre CPU intensive oppgåver som involverer context switching i stor grad så vil du sjå enda større forskjell.

 

Selv dine utdaterte benchmarks viser jo ikke noe som underbygger din 10x-påstand. Ca 10% forsvinner i overhad på virtualisering virker til å være en ganske treffende tommelfingerregel.

 

AtW

Endret av ATWindsor
Lenke til kommentar

 

 

Altså det vil ikkje være bedre med ett annet OS i dag til spill. Dermed hjelper det ikkje noe som helst om et annet OS er bedre i teorien. Ja det er synn at ikkje alle spill kan funke like bra på Linux og windows. Ja det er faen, men slik er det 

 

Løsningen gjort her og på LTT er uten tvil en bedre løsning om man ser på det i praksis, på grunn av spill og driverstøtte, på tross av at disse to punktene har kommet seg utrolig mye i bare de siste årene.

Men poenget mitt er heller at Windows virkelig ikke er laget for slike multiseat-løsninger, og resultatet til disse løsningene er ikke annet enn klumsete. Jeg synes det er litt absurd å emulere flere operativsystemer istedet for å bare la operativsystemet tjene flere klienter.

  • Liker 1
Lenke til kommentar

 

Eg har jo vist deg link om, og du kan like lett teste det sjølv. Det er jo ikkje noko meir fancy enn kompilering av Linuxkernelen. Flytter du over til andre CPU intensive oppgåver som involverer context switching i stor grad så vil du sjå enda større forskjell.

 

Selv dine utdaterte benchmarks viser jo ikke noe som underbygger din 10x-påstand. Ca 10% forsvinner i overhad på virtualisering virker til å være en ganske treffende tommelfingerregel.

 

AtW

 

 

Du meiner jo alltid at mine påstander er automatisk feil, og krever link og krever gudane veit kva av dokumentasjon. Også når du får det, så later du som du ikkje forstår det fordi du sliter med å overbevise deg sjølv med at det er sant. For å si det sånn, eg har ingen grunn til å bruke tid på det. Nå er din tur heller til å motbevise meg, prøv ein eller anna hypervisor og køyr noko som sluker CPU ressurser over tid. 10% ytelsestap er ingen gyllen regel, det svinger oftare mellom 5-50%. Kompilering av Linux kernelen er eit perfekt eksempel, tallknusing med matriser er eit anna eksempel.

 

Her er uansett fleire andre eksempler som ein finner med eit kjapt google søk og som er av nyare dato:

 

http://natishalom.typepad.com/nati_shaloms_blog/2013/06/big-data-on-openstack.html

 

https://www.semanticscholar.org/paper/High-Performance-Main-Memory-Database-Systems-and-M%C3%BChlbauer-R%C3%B6diger/2e9fe60a033a76fcb6f360863a830b6c6b582ce5

 

http://stackoverflow.com/questions/21889053/what-is-the-runtime-performance-cost-of-a-docker-container

 

http://www.nextplatform.com/2015/11/06/linux-containers-will-disrupt-virtualization-incumbents/

 

http://www.nextplatform.com/2015/07/28/lack-of-legacy-lets-capital-one-build-nimble-infrastructure/

Lenke til kommentar

*snip*

 

Du kan fortelja meg så elleville historier du vil, enda betre om det er frå bedrifter. Men sannheita er når du gir ein virtuellmaskin ein tung CPU intensiv oppgåve så vil den vere treigare. På nokre områder snakker vi fort iallefall 10x.

 

Skulle gjerne sett noen benchmarks på det ja! Kjører du VMWare workstation på ett desktop UI, ja... Da vil du oppleve lavere ytelse, men kjører du ett OS som er bygget opp fra grunnen for virtualisering, som VMWare ESXi, eller UnRaid som er brukt her, så vil du ikke merke noe særlig ytelsesforskjell på om du kjører denne via ESX/UNRaid eller rett i Windows.

Lenke til kommentar

Spørs egentlig hva du skal bruke VMet til. Hvis du kun skal ha 1 VM så tjener du selvfølelig ytelse ved å kun kjøre 1 operativsystem, men du taper heller ikke veldig mye på å kjøre det på f.eks unRAID. 

Når Linus gjorde 2 gamers, 1 cpu så fikk han 120 fps når han kun kjørte windows med 6 kjerner og 12 tråder på 3.7GHz (5930k), og 102 fps med 3 kjerner og 6 tråder på 3.5GHz på 2 VM via unRAID (5960x delt på 2 + litt til unRAID). 

Denne forskjellen er kun pga antall cpu kjerner, og litt pga hastighet, ikke noe som helst med virtualisering å gjøre.

 

Rundt ca 18 minutter

Lenke til kommentar

 

 

Eg har jo vist deg link om, og du kan like lett teste det sjølv. Det er jo ikkje noko meir fancy enn kompilering av Linuxkernelen. Flytter du over til andre CPU intensive oppgåver som involverer context switching i stor grad så vil du sjå enda større forskjell.

 

Selv dine utdaterte benchmarks viser jo ikke noe som underbygger din 10x-påstand. Ca 10% forsvinner i overhad på virtualisering virker til å være en ganske treffende tommelfingerregel.

 

AtW

 

 

Du meiner jo alltid at mine påstander er automatisk feil, og krever link og krever gudane veit kva av dokumentasjon. Også når du får det, så later du som du ikkje forstår det fordi du sliter med å overbevise deg sjølv med at det er sant. For å si det sånn, eg har ingen grunn til å bruke tid på det. Nå er din tur heller til å motbevise meg, prøv ein eller anna hypervisor og køyr noko som sluker CPU ressurser over tid. 10% ytelsestap er ingen gyllen regel, det svinger oftare mellom 5-50%. Kompilering av Linux kernelen er eit perfekt eksempel, tallknusing med matriser er eit anna eksempel.

 

 

 

Nei, jeg mener bare påstandene dine er feil når du sier ting som ikke riktig, du har ennå til gode å vise at påstanden din om 10x er noe i nærheten av tilfellet. Man kan finne helt ekstreme eksempler der kun latency i et subsystem teller, i den store majoriteten av reelle workloads ligger overhead langt nærmere 10% enn 10x

AtW

Lenke til kommentar

 

 

Kunne kanskje ikke fått med hvilket operativsystem han kjører på pcen?

 

unRAID https://lime-technology.com/ er jeg ganske sikker på. Setter opp virtuelle maskiner med Windows (eller andre OS) og fordeler ressursene.

 

Sjekk ut enda råere galskap her https://www.youtube.com/watch?v=LXOaCkbt4lI Det er fler videoer av denne galskapen der han tester ytelse og en der det faktisk er 7 personer som spiller på den :p

Selv om det i praktisk kan gjøres med så og si alle hypervisorere da, med unntak a Hyper-V muligens (men blir mulig der også i neste versjon).

Vel, 980ti og ESXi er jo desverre mongolid (tusen takk Nvidia), trodde det også var tilfelle på andre hypervisorer? Er så vidt meg bekjent bare KVM som greit kan 'passtroughe' consumer-cards fra Nvidia? :(

Lenke til kommentar

 

<snip snip>

 

 

Du kan fortelja meg så elleville historier du vil, enda betre om det er frå bedrifter. Men sannheita er når du gir ein virtuellmaskin ein tung CPU intensiv oppgåve så vil den vere treigare. På nokre områder snakker vi fort iallefall 10x.

Du mener det er ellevillt å jobbe med legacy-løsninger? :-)

 

Men du har trigget nerden i meg.

 

Tenkte å foreslå å zippe en gigg på vm og host og sammenligne, for så å sammenligne med å overføre den samme mengden data uten komprimering, men så viser det seg at 7-zip har en innebygd ytelses-test. Fiffig.

 

7-zip 15.14 32-bits (har ikke 64-bits vm liggende).

Ordbok: 2mb, tråder: 1, kjøringer: 5.

Vert: Samlet ytelse 3430 MIPS

VM: Samlet ytelse 3196 MIPS.

Prosentvis lavere ytelse på VM: ca 7 %

 

Ordbok 128mb, tråder 1, kjøringer: 5

Vert: Samlet ytelse 3271 MIPS

VM: Samlet ytelse 2747 MIPS

Prosentvis lavere ytelse på VM: ca 16 %

 

Ordbok 2mb, tråder 2, kjøringer 10

Vert: Samlet ytelse 6164 MIPS

VM: Samlet ytelse 5904 MIPS.

Prosentvis lavere ytelse på VM: ca 4 %

 

Ordbok 128mb, tråder 2, kjøringer 5

Vert: Samlet ytelse 6780 MIPS

VM: Samlet ytelse 5235 MIPS

Prosentvis lavere ytelse på VM: ca 22%

 

Jeg tolker dataene slik at så lenge det er snakk om CPU og tallknusing, så er virtualisering ikke noen stor overhead. Men dess mer intensivt du bruker minne (som er IO), så straffes du på ytelse.

 

Det hadde vært morsomt å sjekke om trenden følger større ordbøker, men jeg har ikke noen 64-bit VM på den bærbare. Noen andre som har og er nysgjerrig nok til å prøve?

 

Vel, jeg vet ikke hvilke prosessor-intensive oppgaver du tenker på, men komprimering er ganske CPU-intensivt.

 

Det hadde vært morsomt å sett dine tall også. Det hadde vært veldig interessant å høre hvilke oppgaver som får så stor straff av virtualisering.

 

 

Mvh

Per Gunnar Hansø

  • Liker 2
Lenke til kommentar

Eg viste deg jo nettopp ein lenke som forklarte 10x ytelsestap. Når skal du begynne å lese kjeldene mine?

 

Jeg har lest kildene dine, har du? Det er 10x på såkalte "micro operations", det er en ekstrem corner-case, det er så godt som ingen gjør det hele tiden, og det er i liten grad representativt for den reelle ytelsen, samme test bencher mer generelle arbeidsoppgaver og overheaden der er på lang langt mindre nivå.

 

AtW

Lenke til kommentar

Og kva skreiv eg når eg skreiv 10x ytelses tap. Kan du vennligst quote det?

 

Mener du virkelig "micro-operations" er et "område", hva slags reelle workloads som folk bruker er det du tenker på da? Og det er ikke akkurat den eneste påstanden du har kommet med om viritualisering heller, men ting som "brukes kun når ytelse ikke er viktig" osv.

 

AtW

Endret av ATWindsor
Lenke til kommentar

Ja, det er faktisk ganske relevant i disse data science tider. Det er også ganske relevant til oppgåver der latency er ein viktig faktor, f.eks HFT systemer.

 

Komprimering er CPU intensivt ja, men du bør benchmarke det med meir enn 2 tråder. Begynn med f.eks 16 heller, eller få deg ein maskin med fleire CPU kjerner. Forskjellen er større jo fleire kjerner du har.

Lenke til kommentar

Ja, det er faktisk ganske relevant i disse data science tider. Det er også ganske relevant til oppgåver der latency er ein viktig faktor, f.eks HFT systemer.

 

Komprimering er CPU intensivt ja, men du bør benchmarke det med meir enn 2 tråder. Begynn med f.eks 16 heller, eller få deg ein maskin med fleire CPU kjerner. Forskjellen er større jo fleire kjerner du har.

Du vet at artikkelen er om en pc som brukes til å spille med? Ikke "micro-operations".

Hvis du skal begynne å trekke fram "micro-operations", så kan du heller forklare det til å begynne med, istedenfor å lage en stor diskusjon ut av det, og at virtualisering har så mye ytelse tap

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...