Virtual hdd performance incorrect

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • MarcHeijerman
  • Registratie: December 2007
  • Laatst online: 03-08 21:10
Ik hoop dat ik hier goed zit met mijn topic, zo niet, verplaats aub naar het juiste topic


Net iets vreemds gezien, misschien ook wel niet vreemd, alleen ik snap hem alleen even niet. Heb een livecd draaien op een virtualbox disk. Nu zit er een hdd benchmark tool bij, en wanneer ik de read only optie gebruik krijg ik absurd hoge waardes terug.

Min read: 526.2 MB/s
Max read: 1.0GB/s
Average read: 896.2 MB/s

Average access time: 0.3 ms

Ik zal het wel even niet zien, maar mischien dat iemand mij kan uitleggen waardoor deze hoge waardes worden veroorzaakt... Het blijft immers een sata2 disk waar de virtual disk op is aangemaakt. Lijkt mij juist langzamer te moeten werken....

Acties:
  • 0 Henk 'm!

  • Sick Nick
  • Registratie: Februari 2001
  • Nu online

Sick Nick

Drop the top!

Het zal wel in je interne geheugen draaien, dan zijn het geen gekke waardes :)

Acties:
  • 0 Henk 'm!

  • MarcHeijerman
  • Registratie: December 2007
  • Laatst online: 03-08 21:10
Sick Nick schreef op vrijdag 24 februari 2012 @ 11:00:
Het zal wel in je interne geheugen draaien, dan zijn het geen gekke waardes :)
nee dan niet, maar ik selecteer toch echt de virtual disk om de benchmark op los te laten :), mischien eerst een install doen en dan nog eens kijken.

Acties:
  • 0 Henk 'm!

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Wat voor benchmark is het? Het kunnen gegevens zijn die net geschreven zijn, en daardoor nog in het geheugen zitten.
Als de gegevens ruw van de virtuele harde schijf gelezen worden waar nog niks op geschreven is, en je hebt een (default) meegroeiende schijf kan het daar aan liggen.
Blokken data die nog niet beschreven zijn, worden pakweg opgeslagen als "blok X t/m X+100000 bevatten 0-bytes". Als je benchmark dit gaat lezen, kan dit natuurlijk supersnel, aangezien hij de fysieke schijf helemaal niet hoeft aan te roepen.

Ik heb dit overigens niet zelf getest of geverifieerd, maar ik kan me goed voorstellen dat het zo ongeveer werkt.

Acties:
  • 0 Henk 'm!

  • matthijsln
  • Registratie: Augustus 2002
  • Laatst online: 08:39
MarcHeijerman schreef op vrijdag 24 februari 2012 @ 10:55:
Ik zal het wel even niet zien, maar mischien dat iemand mij kan uitleggen waardoor deze hoge waardes worden veroorzaakt... Het blijft immers een sata2 disk waar de virtual disk op is aangemaakt. Lijkt mij juist langzamer te moeten werken....
Zet het vinkje "Use host I/O caching" eens uit. Zie ook hoofdstuk 5 van de manual, "Virtual storage".

Acties:
  • 0 Henk 'm!

  • MarcHeijerman
  • Registratie: December 2007
  • Laatst online: 03-08 21:10
blaataaps schreef op vrijdag 24 februari 2012 @ 11:07:
Wat voor benchmark is het? Het kunnen gegevens zijn die net geschreven zijn, en daardoor nog in het geheugen zitten.
Als de gegevens ruw van de virtuele harde schijf gelezen worden waar nog niks op geschreven is, en je hebt een (default) meegroeiende schijf kan het daar aan liggen.
Blokken data die nog niet beschreven zijn, worden pakweg opgeslagen als "blok X t/m X+100000" bevatten 0-bytes". Als je benchmark dit gaat lezen, kan dit natuurlijk supersnel, aangezien hij de fysieke schijf helemaal niet hoeft aan te roepen.

Ik heb dit overigens niet zelf getest of geverifieerd, maar ik kan me goed voorstellen dat het zo ongeveer werkt.
Klink logisch, ik denk ook dat dit het geval is, het gaat namelijk om een nog lege image.

btw het gaat om: disk utility (gui)

Acties:
  • 0 Henk 'm!

  • MarcHeijerman
  • Registratie: December 2007
  • Laatst online: 03-08 21:10
matthijsln schreef op vrijdag 24 februari 2012 @ 11:08:
[...]


Zet het vinkje "Use host I/O caching" eens uit. Zie ook hoofdstuk 5 van de manual, "Virtual storage".
ga ik ook eens lezen en uitproberen.

Acties:
  • 0 Henk 'm!

  • MarcHeijerman
  • Registratie: December 2007
  • Laatst online: 03-08 21:10
Ok net even met:

hdparm -t -T /dev/sda

getest

cached reads: 4012MB in 2.00 seconds "2007.18 MB/sec"
buffered disk reads: 668MB in 3.00 seconds "222.32 MB/sec"

Vraag me dus af hoe "disk utility" de benchmark uitvoerd.
-----------------------------------------------------------------------------------

cache by hostcontroller uitgevinkt, geen vershill
( na install en reboot )

hdparm -t -T /dev/sda

cached reads: 8296MB in 2.00 seconds "4156.27 MB/sec"
buffered disk reads: 886MB in 3.00 seconds "294.85 MB/sec"


Op een btrfs partitie:

hdparm -t -T /dev/sda3

cached reads: 8340MB in 2.00 seconds "4179.04 MB/sec"
buffered disk reads: 1124MB in 3.01 seconds "373.19 MB/sec"

[ Voor 58% gewijzigd door MarcHeijerman op 24-02-2012 11:28 ]


Acties:
  • 0 Henk 'm!

  • matthijsln
  • Registratie: Augustus 2002
  • Laatst online: 08:39
Klinkt allemaal niet onlogisch, heb hetzelfde even gedaan.

Benchmark fysiek:

Afbeeldingslocatie: http://mln.no-ip.org/ssd_phys.png

Benchmark in VirtualBox met een niet-volledig gealloceerde VDI, use host I/O cache uit, waarbij de eerste 25% zijn gevuld met /dev/urandom:

Afbeeldingslocatie: http://mln.no-ip.org/ssd_vdi_part.png

Daarna met dezelfde voor 25% random gevulde VDI met host I/O cache aan. Pas na een aantal runs is de host I/O cache gevuld, eerste run was zelfs trager voor de eerste 25% (150 MB/s, dan 300 MB/s, 600 MB/s) tot uiteindelijk onderstaande waarbij geen verschil meer is te zien. Host RAM is 8 GB met aan het begin redelijk veel in gebruik dus het duurde een aantal runs voordat de VDI volledig gecached was.

Afbeeldingslocatie: http://mln.no-ip.org/ssd_vdi_cache.png

Acties:
  • 0 Henk 'm!

  • MarcHeijerman
  • Registratie: December 2007
  • Laatst online: 03-08 21:10
Ziet er toch leuk uit niet? :)

Vooral ook dat er duidelijk te zien is dat er flink gelezen wordt met de eerste 25% /dev/urandom en daarna de onbeschreven rest van de disk.

Hoeveel wordt er eigenlijk gecached ?

[ Voor 80% gewijzigd door MarcHeijerman op 24-02-2012 13:05 ]


Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 26-09 17:05

CAPSLOCK2000

zie teletekst pagina 888

Virtualbox haalt een truukje uit dat ik niet kan waarderen.
Een applicatie kan tegen het OS zeggen "en nu wil ik dat deze data echt naar de HD wordt geschreven, en we gaan niet verder voordat het gebeurd is". Zo'n operatie is enorm sloom, maar soms is dat nodig. Allerlei optimalisaties vallen weg, maar je weet wel zeker dat je data veilig is.

Virtualbox trekt zich niks aan van zo'n opdracht. Ja, dat is lekker snel, maar als je data je lief is gebruik je het niet.

This post is warranted for the full amount you paid me for it.


Acties:
  • 0 Henk 'm!

  • leuk_he
  • Registratie: Augustus 2000
  • Laatst online: 15-07 15:35

leuk_he

1. Controleer de kabel!

CAPSLOCK2000 schreef op vrijdag 24 februari 2012 @ 16:28:
Virtualbox trekt zich niks aan van zo'n opdracht. Ja, dat is lekker snel, maar als je data je lief is gebruik je het niet.
"Use host i/o Cache" bij de controller, en is dus uit te zetten. En het is inderdaad een truuk, die vreselijk is als je je data verliest, maar prettig als je effe iets wilt proberen in een virutele machine. (data verliezen is bij een virtuele omgeving door de grotere complexiteit toch al makkelijker is dat op een fysieke box)

Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.


Acties:
  • 0 Henk 'm!

  • matthijsln
  • Registratie: Augustus 2002
  • Laatst online: 08:39
CAPSLOCK2000 schreef op vrijdag 24 februari 2012 @ 16:28:
Virtualbox haalt een truukje uit dat ik niet kan waarderen.
Een applicatie kan tegen het OS zeggen "en nu wil ik dat deze data echt naar de HD wordt geschreven, en we gaan niet verder voordat het gebeurd is". Zo'n operatie is enorm sloom, maar soms is dat nodig. Allerlei optimalisaties vallen weg, maar je weet wel zeker dat je data veilig is.

Virtualbox trekt zich niks aan van zo'n opdracht. Ja, dat is lekker snel, maar als je data je lief is gebruik je het niet.
Dit nadeel van "use host I/O cache" wordt, naast nog meer argumenten, in de manual dus beschreven (hfst 5). Daarnaast ken ik geen VM systeem die niet de optie van caching biedt. libvirt biedt ook zelfs de "unsafe" optie aan die sync() negeert (en de default optie gebruikt ook de host cache). Of VirtualBox ook sync() negeert met "use host I/O cache" weet ik niet, maar ik mag hopen van niet.

Acties:
  • 0 Henk 'm!

  • CAPSLOCK2000
  • Registratie: Februari 2003
  • Laatst online: 26-09 17:05

CAPSLOCK2000

zie teletekst pagina 888

Het is een tijd geleden dat ik naar heb gekeken, maar 2 jaar geleden werkte het zo. Er was geen manier om virtualbox te dwingen om die sync uit te voeren, zelfs als caching helemaal uit stond.

This post is warranted for the full amount you paid me for it.

Pagina: 1