Je moet niet het artikel lezen over setje DDR4 dims, maar de
post waar ik naar link.
Maar hier is de hele post opnieuw:
Ik zou best een grotere RAMdisk willen hebben op mijn systeem.
Het is dan ook de hoofd reden dat ik voor X79 ben gegaan, daar ik 64GB geheugen en een RAMdisk wilde, waar ik nu ook echt gebruik van maak.
RAMdisk die in de praktijk minimaal 10x sneller is dan SSDs, iets dat je ook echt merkt in de praktijk, maar ook een hoop werk was om goed op te zetten, maar ook iets dat ik persoonlijk erg leuk vond om te doen.
Heb op de ramdisk alle programma's staan die ik altijd gebruik, anti virus, FF, en paar andere die veel gebruikt worden en/of veel de disk gebruiken, en de RAMdisk software houd automatisch een mirrior op op de HD bij, zodat bij opnieuw opstarten die weer gebruikt kan worden, zij het tijdens normaal uit en aan zetten, als tijdens een crash.
Ik gebruik dit voornamelijk voor games en de zwaardere programma's zo als
SolidWorks.
Elke keer dat ik bv een game opstart, kopieert een batch file de game van een HD naar de RAMdisk, en start daarna de game automatisch op.
Het vele werk was om dit nagenoeg automatisch te maken met minimaal werk tijdens gebruik.
Hoe werkt het met een batch file.
Ik gebruik voor al mijn tijdelijke files die op de ramdisk gaan een dedicated directory, die naast de standaard prog's gebruikt word als wissel map.
Hoe heb ik mijn batch file gemaakt, en weke stappen zit in die batch file, en voor elke batch file hoef ik alleen de locatie van de files te veranderen.
Startup batch file
1 - Vraag of RAMdisk gebruikt moet worden, via
[Y/N] input.
2 - Bij [Y] ga naar stap 4.
3 - Bij [N] start file op standaard manier C:\file.bat.
4 - Geef inhoud van tijdelijke map weer en geef disk ruimte weer met /dir command.
5 - Geef grote van map weer die naar RAMdisk word verplaatst.
6 - Vraag om [Y/N] input of andere mappen moet worden gesynchroniseerd en dan verwijderd van RAMdisk.
7 - Bij [N] ga naar stap 9.
8 - Bij [Y] ga naar betreffende DOS box en ga naar stap12/13 daar.
9 - Wacht voor
user input (
Any key) tijdens verwijder /pause.
10 - Kopieer map van lokale (of netwerk) drive naar de RAMdisk.
11 - Start game of programma file van de RAMdisk.
12 - houd DOS box open in de achtergrond
13 - Vraag of de RAMdisk verwijderd moet worden.
14 - Bij [Y] ga naar stap 15, en synchroniseer en verwijderd files van RAMdisk.
15 - Mirroring files met Robocopy.
16 - verwijder files uit de wissel map.
Maak sinds een tijdje gebruik van raid 0, met een array van drie 1TB EVOs, voor mij heeft dat twee voordelen, de eerste is een grotere drive volume.
Maar voor mij is de tweede reden, met mijn speciale gebruik, nog belangrijker, sneller laden, maar daar gebruik ik wel een trucje voor.
Games bestaan uit twee type data, 99% game data en minder dan 1% user data, game data is statische data dat alleen veranderd tijdens patches, user data daar in tegen veranderd meestal continu.
Wat ik doe is de game data opslaan als een RAR file, met
een -m1 of -m2 switch, welke ik dan met realtime RAR decompressie weer uit kan lezen, (ik test welke het snelste werkt per programma/game, nagenoeg altijd -m2), dit heeft twee voordelen, heel soms wordt er aanzienlijk minder data gelezen van de SSD, maar vooral wordt er maar een file uit het geheugen gelezen, en je dus de maximale sequential doorvoer haalt.
Nadeel van deze methode is dat als er een game update is, je die wel opnieuw moet wegschrijven, om dat in de gaten te houden, lees ik na het laden van de RAR file maar voor het laden van de user data de
folder grote uit.
En na het verplaatsen van de user data, lees ik weer de folder grote uit, en als die nog gelijk zijn, eindig ik de batch file, indien niet gelijk overschrijf ik de RAR file met nieuwe data.
Al met al, en hoewel er naast ook nog eens flinke koste die er mee gepaard gaan aan extra hardware, maakt het mijn file systeem in de praktijk gemiddeld een stuk sneller in gebruik, maar wel ook langzamer tijdens tijdens het starten van games en programma's.
Uiteraard heb ik ook vele uren verspilt aan het opzetten en uitdokteren hoe je zo een dergelijke batch file maakt, en als dat niet leuk vind, begin er dan ook maar niet aan, want totdat MS een dergelijke optie in het OS inbakt of er een 3th party programma komt die het allemaal automatisch doet, blijft het ook redelijk veel werk.
Synchroniseer en verwijderd van RAMdisk batch file tijdens reboot/shutdown. (verwijder.bat)
Uiteraard tijdens een reboot of herstart wil je ook dat je files gesynchroniseerd zijn,
hoe je dat doet staat hier.
Waarom
Robocopy, Robocopy is de meest uitgebreide kopie en mirror opdracht dat Windows kent, en voor mijn doel is de mirror/synchronisatie functie ideaal, daar alleen de files die veranderd zijn worden gekopieerd, en het dus echt razend snel gebeurd, gemiddeld ruim onder de 5sec.
Hoe maak ik een Batch file:
http://www.wikihow.com/Write-a-Batch-File
Vele voorbeelden van nuttige batch commands:
http://stackoverflow.com/questions/
Wat is Robocopy ?:
http://en.wikipedia.org/wiki/Robocopy
Ik merk vaal grote verschillen tussen RAMdisk en SSD tijdens laden en veld wissels in games, hoewel het ook wel heel erg afhankelijk is van de game dat ik speel, de RAMdisk is vaak vloeiender met overgangen, en ben ook nagenoeg altijd de eerste op een nieuw veld, ook Plant-View en SolidWorks dat ik veel gebruik werken een stuk vlotter op de RAMdisk.
Games die ik weinig meer speel staan nu in een game map op mijn server, en hoewel het wachten tijdens het kopiëren redelijk lang duurt
Steam werkt een stuk prettiger, voorheen was ik gebonden aan een Steam folder waar ik al mijn games moest installeren, nu installeer ik ze gewoon op de RAMdisk, en verplaats ze daarna naar een SSD, of de games die ik weinig speel zet ik op de server ipv te verwijderen omdat ik ongeveer 3.5TB aan Steam games heb.
Tastbare Voor en nadelen, bij mijn opstelling iig.
+ Kan echt veel sneller zijn dan SSDs.
+ Steam heeft geen beperkingen meer. (maar dat geld ook als je games tijdelijk verplaatst)
+ Gevoelsmatig een veel sneller systeem als de RAMdisk in gebruik is.
o Zeer lange opstart tijd tijdens verplaatsen van files via netwerk naar RAMdisk, maar daar na razend snel, en nog steeds beter dan steeds op nieuw installeren of handmatig kopiëren uit de archief directory. (meer een plus dan een min punt)
- Gevaar data verlies bij crash of stroomuitval! (
UPS vangt stroomuitval op)
- Duur!!! (maar voor mij persoonlijk het waard)
- Langere opstart tijd tijdens verplaatsen van files naar RAMdisk.
Welke RAMdisk software gebruik ik?
Zelf gebruik ik
Primo Ramdisk Ultimate welke
$70 was, en ik lette bij mijn keuze vooral op de 4K doorvoer van kleine files, de keuze voor Ultimate was om dat die tot 1TB RAM ondersteunde, ipv de 32GB van de Pro editie.
Maar
er zijn veel meer keuzes, maar
deze round-up heeft zeer veel nuttige informatie, en
er is een tweede round-up in de maak.
Maar verwijderd robocopy dan niet je mirror op het moment dat de ramdisk opnieuw geladen wordt na bijvoorbeeld een stroom storing? Robocopy mirrored je legen ramdisk dan toch met je mirror file?
Nee hoor is geen echt probleem, daar ik de RAMdisk image elke 30sec sync.
Welke op een 64GB Samsung 830 dedicated SSD voor de image wordt opgeslagen.
Timing Save
This function automatically saves the disk contents to the image file every a given time interval.
Real-time Save
This function provides a more robust data keep mechanism. It is designed for the sudden power loss issue. With this function, data is almost immediately written to the associated image file whenever data arrives to the ram-disk. Thus, it minimizes the influence of a sudden power loss. However the performance of the ram-disk degrades greatly.
Manual Save
This function allows you to manually save the disk contents to the associated image file or a new image file at any time you want. See Manually Save Disk Contents topic.
Quick Save Mode
Quick Save mode makes a ram-disk skip unchanged data of the disk contents and only save new or updated data to the image file, instead of writing all data to the file every time, which in turn, reduces a lot of file write time.
Gebruik de Timing Save samen met Quick Save Mode.
Dus ja ik kan bij een crash data verliezen, bij stroomuitval heb ik een UPS die nog even doorwerkt, en op tijd de PC netjes afsluit, via een signaal over USB die de UPS zend.
Maar als je elke 30 seconden je ramdisk naar je SSD weg schrijft, ben je de levensduur van de SSD wel flink aan het inkorten?
Nee hoor, ten eerste worden er max net zoveel schrijfacties gedaan als wanneer je een programma gewoon op de HDD/SSD staat, want er worden alleen maar veranderingen weg geschreven niet de hele image.
Ten tweede heb je iets van 700TB schrijfacties nodig voor dat een SSD dood gaat, dat is bij normaal PC gebruik over
200 jaar dagelijks 10GB data schrijven op de SSD.
[Reactie gewijzigd door player-x op 24 februari 2015 07:08]