XXHighEnd - The Ultra HighEnd Audio Player
March 29, 2024, 09:27:48 am *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: August 6, 2017 : Phasure Webshop open ! Go to the Shop
Search current board structure only !!  
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: Using a RAMDisk  (Read 22266 times)
0 Members and 0 Guests are viewing this topic.
PeterSt
Administrator
High Grade Audiophile
*****
Offline Offline

Posts: 16827



View Profile Email
« on: August 31, 2013, 10:46:07 am »


This Tutorial has been replaced by this one : Installing and using a RAMDisk (IMDisk)



Using a RAMDisk (which is an emulated disk in the PC's  memory), implies a different sound (quality) and it is accepted to be generally for the better. However, the RAMDisk can be applied in a few ways, and through different types/means (read : software packages) of that.

This little Tutorial is not about the different types/means, but how to apply it and what to consider.

For sound influencing objectives, two approaches of using a RAMDisk exist :
- Use it for Playback Drive (see other Tutorial in this section about the Playback Drive in general);
- Use it to run XXHighEnd from.
Both can be used separately, or togther. Of course also "no RAMDisk at all" is another option. So 4 combinations exist, which sort of form the base of your SQ. Which is the best depends largely on the whole system and it is to find out yourself, until some general consensus emerges.

Summarize of necessary RAMDisk sizes for Redbook CD :
2.8GB for XX folder usage;
2.4GB for Playback Drive.


Take it that 16GB of RAM is needed to let all operate well for Redbook CD albums (! see also more below), hence to be able to check the combinations in well fashion, while in the mean time all other XXHighEnd features can still be exploited.

Use it for Playback Drive

Because the Playback Drive in general is one of the largest influencing SQ phenomena, and where a USB stick sounds different than an SSD or spinning disk and each brand/type of spinning disk sounds different again, using a RAMDisk for it is just that other means to influence SQ;
The least what it will do is eliminating that other electronics device from the PC, assumed an explicit one was in there used as Playback Drive in the first place.

Using a RAMDisk for Playback Drive is nothing more or less than assigning a Drive Letter to the RAMDisk, and denote it as the Playback Drive in XXHighEnd settings.

Notice that the cluster size of the RAMDisk *may* matter (SQ wise), but it depends on the software used for it. The gerenal approach could be to use the smallest cluster size, but actually it is a quite moot thing and hard to test quickly. There will be a relation to the SFS (Split File Size) as well.
RAMDisk softtware might not even do a thing with your denoted cluster size (at formatting).

The size of the RAMDisk needed for the Playback Drive depends on the size of the music files after they have been expanded to the WAV format and are ready to play.
Do notice that the kind of explicit assumption is that you play *albums*, meaning one at the time in the Playlist Area and not a random set of tracks in huge amount. Why ? well, because when albums are assumed to play we can sort of "predict" the necessary size of the RAMDisk. For Redbook CD this will be 800MB max. A 24/192 Hires album of the same playback length (around 72 minutes max) will consume 5GB. So :
When we play RedBook CDs, 2GB is a safe size for the RAMDisk for the Playback Drive. This takes into account that not always the previously played data is deleted from the Playback Drive (which now is in our RAMDisk) before the new gets loaded.
Edit : The 2GB anticipates 800MB Redbook CD's, which become 1200MB when HDCD decoded (when in order). This makes the necessary size 2.4GB.
When 24/192 Hires is your objective, it won't be really feasable to use 16GB for internal memory without running into problems. For this, take into account that 8GB of internal memort is needed for XXHighEnd's other features to run wel, and since we should multiply our calculated 5GB by 2 to be on the safe side, it would leave 6GB for the OS + XXHighEnd. This can work, but not all features can be exploited now (like a large SFS in combination with Straight Contiguous Memory).

Use it to run XXHighEnd from

Here the cluster size should be defined as small as possible (in case it matters anyway for the RAMDisk software).

Note : People may apply a RAMDisk for this because they feel or think all will be faster, but it is to be assumed that this is not the objective at all, if true to begin with;
Using a RAMDisk to run XXHighEnd from implies quite different influences, all looked from the angle of how the Operating System works. So it is to be regarded as a SQ setting and nothing else. This is to be read as : when you'd apply it for speed reasons your focus is apparently on that, while in the mean time SQ is deteriorated which just *is* a possibility. The objective (and general consensus) is that it is for the better though. But no matter what, the focus should be on SQ.

For the size of this RAMDisk ... look at the description above for the Playback Drive application when that is used (!!); For the XXHighEnd RAMDisk the same rules apply now. This is how the Playback Drive mechanism is organized and it is on purpose. So, what happens in this Playback Drive situation is that all is copied to the "XX Drive" first to next to be copied to the Playback Drive.
And yes, you may now recognize the "Copy to XX Drive always" setting, which implies the same when no Playback Drive is used. Thus, when not using a Playback Drive but "Copy to XX Drive always" is activated, again the above described rules under Playback Drive for the RAMDisk size apply.
When neither Playback Drive or "Copy to XX Drive always" is active, the calculation of the RAMDrive for XXHighEnd become vague, because now it depends on whether conversions need to take place. So, when you play plainly from original WAV files (and those only, but see below still), no additional data is needed and only the contents of the "XX folder" is needed plus a little more. 500MB will for sure be sufficient. However, when you play FLAC, all is going to the XX Folder first anyway, and now *again* the same rules apply as described under Playback Drive above.
And / but :
To the rule "WAV files only" sadly exists an exception : HDCD albums (tracks). They too get expanded and this is to 24/44.1 and they go to the XX folder again (thus the RAMDrive for it). Thus, when you denoted "Decode HDCD" it means that any HDCD album you accidentally run into (you often won't know about it), takes 1200MB (max, and calculated from the max size of a normal Redbook album).
This means that your RAMDrive for XXHighEnd must be something like 2.8GB to be on the safe side (2x 1200 plus XXHighEnd folder contents and a little more for temporary files).

As you can see it is all not so easy to predict the necessary size of the RAMDisk for XXHighEnd, and in order to nu run into unexpected problems, it is far better to use the maximum sizes as described, instead of (e.g. !) thinking that you never play HDCD anyway; you might next month, and by that time you have long forgotten about this but run into problems you won't recognize.

Important notice :
It has been found that for example the IMDisk RAMDisk software is "wackey" when it is about the RAMDisk being full; things just get overridden without notice and anything can happen from there. Of course, we'd say that the XXHighEnd software should check for this, and although it is true that this can be done at all places needed, it is not expected that things get overridden instead of normal errors presented by the OS (to the running software like XXHighEnd) which at least would tell you about the problem (of the RAMDisk being full). So, these checks do NOT happen (and maybe never will) which is another reason to define the RAMDisk(s) sufficiently large.


Last remark :
It should be obvious that we should not assume Hires material like 24/192 to be in order because it will consume really too much RAM. So notice that the indicated 5GB for the Playback Drive also counts for the XX Drive, and now we thus need 10GB for our RAMDisks, 20GB to be on the safe sides;
So although many motherboards allow for 32GB of RAM and this 32GB will be sufficient to do all, many mobo's allow for 16GB only, or just do contain that at this moment (with 4GB simms which now all need to be replaced with 8GB simms). This is $$$.
And did we speak about 24/352.8 Hires which also exists ?
So be careful with your Hires desires and liking RAMDisks. You can do it, but have the Playlist Area contain 20 minutes or so only (~70 minutes / 20 = 3.5 and 5GB / 3.5 is 1500MB). 10 minutes for 24/352.8.
If you approach it like this, 16GB of internal memory will be sufficient.


General setup of the RAMDisk for XXHighEnd

Important : This assumes a RAMDisk setup which does NOT preserve the data in the RAMDisk when shutting down the system. Thus, at each boot-up the RAMDisk is defined and the XX folder needs to be copied to there again. RAMDisk sofware exists which will preserve the data, but for the general approach it is better to not assume this, and still live happily with the situation;

First of all you should always have two icons for your XXHighEnd startup; one from normal disk (or SSD etc.) and one for starting XXHighEnd from the RAMDisk location. Below you will find out why.

Next you should make yourself a batch file (beyond this tutorial) to copy the XX folder to the RAMDisk. This same batch file can also create the RAMDisk in advance of the copying). You'd have an icon on your desktop for this too.

Notice : Never install XXHighEnd directly to the RAMDisk. You could do it, but it brings nothing else than needing Activation again. So, just copy all from your XX folder is very OK.

It is not necessary to apply the same folder structure for "XX folder" in the RAMDisk. So, if your original location for XXHighEnd is C:\XXHighEnd\0.9z-9b\ the RAMDisk folder is allowed to be R:\XXHighEnd\ or whatever you like (putting all in the root of it will also work).
Keep in mind : When you nicely make a new XX folder for any new version of XXHighEnd, you must adjust your batch file (because obviously the source location changed).

Side note : Each time you switch from XX location (so start XXHighEnd from normal disk vs. RAMDisk) you have to remember that you always need to start XXHighEnd twice subsequently from that location because otherwise Alt-X can not bring up XXHighEnd from that same location (and this is crucial when playing in Unattended mode (no GUI present). A message will tell you so, although at this moment of writing the message tells that a reboot is necessary, which is not the case. So just start XXHighEnd twice is sufficient.

We are now going to use XXHighEnd as always, but with a few things to be kept in mind, and with one setting to change;

Starting with the latter, this is about the location of the XXData folder. This defaults to literally \XXData\ which means that when you installed XXHighEnd to your hard disk, it will be in that same disk. Usually this is drive C: (the OS disk), so the XXData folder will be located in C:\XXData\.
Now, in order to preserve the important settings during our playback sessions, we need to change that \XXData\ into C:\XXData (see Data Folder in XXHighEnd Settings).
When this has been applied, a lot of things will be preserved at system shutdown, which otherwise are lost. No need to explain exactly which, but just apply this change.

What will NOT be preserved by above means is the lastly selected album view in the Library Area and more around this. Most important though is that our lastly selected tracks in the Playlist Area sustain.

Now the important thing to remember for good operations :
All your XXHighEnd settings from the Settings Area are preserved in the XX folder itself. This means that when you change Settings while XXHighEnd was started from the RAMDisk location, they will be stored there. This reads the same as "stored nowhere" because one reboot and the changes are lost. And thus the good habit is :
Want to change a setting ? Quit XXHighEnd - restart it form the normal storage location - apply the change - quit XXHighEnd, restart it from the RAMDisk location, quit and restart again to let Alt-x work later, Play.
Do it like this instead of quick changes on the RAMDisk only, because you undoubtedly WILL run into the situation that next day SQ is not OK because you forgot about the Settings change and you may even never recall it.
Btw, it is intended to let XXHighEnd write back Settings changes to the original storage location, but at this time (version 0.9z-9b) this is not so.

This all seems a lot of fuss better to be skipped. But it is recommended to at least try it because it really will matter to SQ, plus in the end it's no fuss at all. The reading of this Tutorial will have taken the most of the time ...
« Last Edit: March 17, 2014, 06:04:21 pm by PeterSt » Logged

For the Stealth III LPS PC :
W10-14393.0 - July 17, 2021 (2.11)
XXHighEnd Mach III Stealth LPS PC -> Xeon Scalable 14/28 core with Hyperthreading On (set to 14/28 cores in BIOS and set to 10/20 cores via Boot Menu) @~660MHz, 48GB, Windows 10 Pro 64 bit build 14393.0 from RAM, music on LAN / Engine#4 Adaptive Mode / Q1/-/3/4/5 = 14/-/0/0/*1*/ Q1Factor = *4* / Dev.Buffer = 4096 / ClockRes = *10ms* / Memory = Straight Contiguous / Include Garbage Collect / SFS = *10.13*  (max 10.13) / not Invert / Phase Alignment Off / Playerprio = Low / ThreadPrio = Realtime / Scheme = Core 3-5 / Not Switch Processors during Playback = Off/ Playback Drive none (see OS from RAM) / UnAttended (Just Start) / Always Copy to XX Drive (see OS from RAM) / Stop Desktop, Remaining, WASAPI and W10 services / Use Remote Desktop / Keep LAN - Not Persist / WallPaper On / OSD Off (!) / Running Time Off / Minimize OS / XTweaks : Balanced Load = *62* / Nervous Rate = *1* / Cool when Idle = n.a / Provide Stable Power = 1 / Utilize Cores always = 1 / Time Performance Index = Optimal / Time Stability = Stable / Custom Filtering *Low* (16x) / Always Clear Proxy before Playback = On -> USB3 from MoBo -> Lush^3
A: W-Y-R-G, B: *W-G* USB 1m00 -> Phisolator 24/768 Phasure NOS1a/G3 75B (BNC Out) async USB DAC, Driver v1.0.4b (16ms) -> B'ASS Current Amplifier -> Blaxius*^2.5* A:B-G, B:B-G Interlink -> Orelo MKII Active Open Baffle Horn Speakers. ET^2 Ethernet from Mach III to Music Server PC (RDC Control).
Removed Switching Supplies from everywhere (also from the PC).

For a general PC :
W10-10586.0 - May 2016 (2.05+)
*XXHighEnd PC -> I7 3930k with Hyperthreading On (12 cores)* @~500MHz, 16GB, Windows 10 Pro 64 bit build 10586.0 from RAM, music on LAN / Engine#4 Adaptive Mode / Q1/-/3/4/5 = 14/-/1/1/1 / Q1Factor = 1 / Dev.Buffer = 4096 / ClockRes = 1ms / Memory = Straight Contiguous / Include Garbage Collect / SFS = 0.10  (max 60) / not Invert / Phase Alignment Off / Playerprio = Low / ThreadPrio = Realtime / Scheme = Core 3-5 / Not Switch Processors during Playback = Off/ Playback Drive none (see OS from RAM) / UnAttended (Just Start) / Always Copy to XX Drive (see OS from RAM) / All Services Off / Keep LAN - Not Persist / WallPaper On / OSD On / Running Time Off / Minimize OS / XTweaks : Balanced Load = *43* / Nervous Rate = 1 / Cool when Idle = 1 / Provide Stable Power = 1 / Utilize Cores always = 1 / Time Performance Index = *Optimal* / Time Stability = *Stable* / Custom Filter *Low* 705600 / -> USB3 *from MoBo* -> Clairixa USB 15cm -> Intona Isolator -> Clairixa USB 1m80 -> 24/768 Phasure NOS1a 75B (BNC Out) async USB DAC, Driver v1.0.4b (4ms) -> Blaxius BNC interlink *-> B'ASS Current Amplifier /w Level4 -> Blaxius Interlink* -> Orelo MKII Active Open Baffle Horn Speakers.
Removed Switching Supplies from everywhere.

Global Moderator
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1 RC2 | SMF © 2001-2005, Lewis Media Valid XHTML 1.0! Valid CSS!
Page created in 0.054 seconds with 20 queries.