Jump to content
IGNORED

A toast to PGGB, a heady brew of math and magic


Recommended Posts

Bug report for the newly released version: for me at least (and I'm on the trial version), the convolution filter import gets stuck on yellow status, indefinitely saying that "this will take a minute". The convolution files I'm giving it are valid, and are used without issues by (for e.g.) HQPlayer.

Link to comment
1 hour ago, Atriya said:

Bug report for the newly released version: for me at least (and I'm on the trial version), the convolution filter import gets stuck on yellow status, indefinitely saying that "this will take a minute". The convolution files I'm giving it are valid, and are used without issues by (for e.g.) HQPlayer.

Email me the file you were trying to import and I will look into it.

Author of PGGB & RASA, remastero

👉Upsampling: Myths and Half Truths (now updated with examples from recorded music)

Update: PGGB Plus (PCM + DSD) Now supports both PCM and DSD, with much improved memory handling

Free: foo_pggb_rt is a free real-time upsampling plugin for foobar2000 64bit; RASA is a free tool to do FFT analysis of audio tracks

SystemTT7 PGI 240v + Power Base > Paretoaudio Server [SR7T] > Adnaco Fiber [SR5T] >VR L2iSE [QSA Silver fuse, QSA Lanedri Gamma Infinity PC]> QSA Lanedri Gamma Revelation RCA> Omega CAMs, JL Sub, Vox Z-Bass/ /LCD-5/[QSA Silver fuse, QSA Lanedri Gamma Revelation PC] KGSSHV Carbon CC, Audeze CRBN

 

Link to comment
7 hours ago, taipan254 said:

I just posted the below on Head-Fi's Gustard X26-Pro thread and I thought I'd share it here since it relates directly to PGGB-RT. 

 

All the best!

 

------------------------------------------------------------------------------------------------

 

I tried looking into HQ player and PGGB but these upscalers are so unnavigable I'd rather just buy something like an M Scaler so I have the freedom to use my own player...(groove music lol) unless there's another way to play and search my files without opening them from HQplayer? I'd love that but I'm not sure how. It won't even open up root folders of which I have all my music organized into subfolders, so that's a killer. For reference I only listen to FLACs I have downloaded or ripped.


Earlier today, it dawned on me that Foobar2000 may be an option for me, you, and others that want to sample PGGB. There is a "component" / "add-on" to Foobar2000 called PGGB-RT. It is limited in a number of ways compared to PGGB 256 (the offline remastering tool). However, it does allow one to get 64-bit processing of 2bn taps of PGGB for free (1bn better than HQPlayer's Sinc-M filter) and 90 seconds per track of free PGGB at up to 1bn taps (depending on track length).

Today, I added the PGGB-RT component from the Foobar component library. Since I have a streamer, I also downloaded the UPnP Media Renderer output component as well. I then set my ultraRendu streamer on MPD / DLNA mode. Next, I played a few songs with native Gustard filters (i.e., PGGP-RT was INACTIVE) to acclimatize to Foobar. Lastly, I played the same music through Roon via HQP and NAA with no upsampling (no filters, no dither, straight pass-through). This is where I came to conclusion one:
 

WITHOUT ANY UPSAMPLING, I have to say that Foobar2000, for me, sounds a lot better streaming to my ultraRendu via UPnP than Roon streaming to HQP via NAA. I previously came to the conclusion that Roon streaming to HQP via NAA was better than Roon streaming to RoonBridge via RAAT. I'm bad with audiophile jargon but again I come back to "clarity" / "lack of fuzziness". Foobar2000 + UPnP sounds the "cleanest" to me.
 

I then went back to Foobar2000. I selected the same music and right clicked resample with PGGB. I also turned on NOS-Mode on the Gustard. I then played all the tracks, and then went back to Roon with HQP via NAA with Sinc-M and LNS15 filters enabled. I did this with a few times with different taps selected in PGGB-RT's settings in Foobar (controlled in the settings tab). I came to conclusion two:
 

EVEN WITH 1 MILLION TAPS, I have to say that Foobar2000 + PGGB-RT streamed to my ultraRendu via UPnP sounds a lot better than Roon + HQP streamed to my ultraRendu via NAA. Further, with more taps, the more I perceived "reverb" / "texture" of guitars (say the guitar heavy opening of Radiohead's "The Bends") and "decay" / "space" (say the symbols at the start of Danzig's "Last Ride"). The improvements increased as taps increased, albeit at a smaller and smaller scale for each incremental increase in taps. 
 

Caveats:

  1. My laptop sucks: 8 Gigs of RAM, Quadcore Mobile i7855U CPU... My laptop was unable to multitask even with 1mn taps, and the delay to start a new track was substantial. There were also lots of dropouts, especially as the number of taps increased. I would bet a powerful desktop with lots of RAM (32GB) would sound much better and upsample with PGGB-RT much quicker. I also think this explains the diminishing returns I heard with increased taps.
  2. My headphones are not "top-tier"... again, I use ThieAudio Oracle Mk1s and a DCA x Drop Aeon Open Back in balanced mode. What has enabled me to perceive differences in upsampling has been the acquisition of an ultraRendu streamer and some power hacks (mains filter, new cheapo audiophile fuses, and ground boxes). However, I definitely think my headphones are also holding me back.
  3. Different software configurations sound different. I conducted this comparison in the above manner to control for SQ differences in different software music players. I think it is fairly well-known on other forums (AudiophileStyle, What's Best Forum) that, with respect to sound quality, Roon leaves a lot to be desired relative to lighter-weight players (I personally can confirm Foobar2000 and Audirvana sound better than Roon, and many say Taiko's native player bests everything else on the market, though I have not heard it). I don't know if folks here on head-fi have the same opinion.
  4. None of this, except for HQP, works with streaming. The only million+ tap solution for streaming services like Qobuz right now is sadly via HQPlayer. It's better than nothing, but for streaming-centric PCM-based upscalers, having one option sucks.... Maybe PGGB comes up with something better than HQP for real-time playing that is also Roon and end-point compatible. Maybe a higher bit, lower tap real-time processing engine (or a lower bit, higher tap real-time processing engine)! Something far less resource-intensive but sounds better than HQP for PCM upscaling. That seems like smart R&D if I was @Zaphod Beeblebrox. HQP is DSD-focused anyways! PCM upscaling is an afterthought for HQP.
  5. All systems are different, as is perception and hearing.

In any case, going back to Roon with HQP and NAA was a "Let Down" (pardon the intended Radiohead pun). I can't stand drop-outs / skipping and I simply cannot multitask with Foobar while PGGB-RT is enabled. Time to build a hefty CPU for processing. I think this Gustard x26 Pro is far more capable than I'm realizing. I'm definitely not getting the most out of it. But I am getting more out of it.
 

Thanks for the feedback.  The new 64 bit Foobar would simplify things a bit and improve stability (once foo-RT is updated). I plan to update it with the newer algorithms of PGGB v5. There is no concept of taps anymore, for RT with the new PGGB algorithms, DSP plugin makes more sense for Foobar and a AU/VST plugin for Audirvana (or other plugin capable players). I plan to work on those, but do not have an ETA. With DSP, memory requirements can be addressed by choosing buffer size, but there is no free lunch. Longer will lead to better reconstruction accuracy) so you will still benifit with more RAM and faster processor.

 



 

 

 

Author of PGGB & RASA, remastero

👉Upsampling: Myths and Half Truths (now updated with examples from recorded music)

Update: PGGB Plus (PCM + DSD) Now supports both PCM and DSD, with much improved memory handling

Free: foo_pggb_rt is a free real-time upsampling plugin for foobar2000 64bit; RASA is a free tool to do FFT analysis of audio tracks

SystemTT7 PGI 240v + Power Base > Paretoaudio Server [SR7T] > Adnaco Fiber [SR5T] >VR L2iSE [QSA Silver fuse, QSA Lanedri Gamma Infinity PC]> QSA Lanedri Gamma Revelation RCA> Omega CAMs, JL Sub, Vox Z-Bass/ /LCD-5/[QSA Silver fuse, QSA Lanedri Gamma Revelation PC] KGSSHV Carbon CC, Audeze CRBN

 

Link to comment

Has the hardware requirements been lowered for MacOS with the latest PGGB 256? I would get a M1 Pro MacBook or a M2 Pro Macbook with 16gb of ram along with PGGB 256. Mostly listen to redbook or 24bit PCM with the occasional DSD64. Can the files be processed?

Link to comment
5 hours ago, gtl said:

Has the hardware requirements been lowered for MacOS with the latest PGGB 256? I would get a M1 Pro MacBook or a M2 Pro Macbook with 16gb of ram along with PGGB 256. Mostly listen to redbook or 24bit PCM with the occasional DSD64. Can the files be processed?

While the requirements have dropped; I would recommend at least 32GB of RAM on Mac as Mac does not provide a user configurable way to increase virtual memory useful when the processing will not fit in available RAM). 

Author of PGGB & RASA, remastero

👉Upsampling: Myths and Half Truths (now updated with examples from recorded music)

Update: PGGB Plus (PCM + DSD) Now supports both PCM and DSD, with much improved memory handling

Free: foo_pggb_rt is a free real-time upsampling plugin for foobar2000 64bit; RASA is a free tool to do FFT analysis of audio tracks

SystemTT7 PGI 240v + Power Base > Paretoaudio Server [SR7T] > Adnaco Fiber [SR5T] >VR L2iSE [QSA Silver fuse, QSA Lanedri Gamma Infinity PC]> QSA Lanedri Gamma Revelation RCA> Omega CAMs, JL Sub, Vox Z-Bass/ /LCD-5/[QSA Silver fuse, QSA Lanedri Gamma Revelation PC] KGSSHV Carbon CC, Audeze CRBN

 

Link to comment
16 hours ago, gtl said:

Has the hardware requirements been lowered for MacOS with the latest PGGB 256? I would get a M1 Pro MacBook or a M2 Pro Macbook with 16gb of ram along with PGGB 256. Mostly listen to redbook or 24bit PCM with the occasional DSD64. Can the files be processed?

 

I would also suggest that running PGGB on a laptop, even with adequate memory should only be considered for occasional use. When running PGGB on a bunch of albums, you will have sustained periods of high resource (CPU, memory, disk) utilization for hours, so a system with good cooling is essential. Laptops in general are designed for interactive use, not for sustained workloads, which can cause your fans to run loud, and heat to build up, possibly resulting in CPU throttling. I'm not saying every machine will do that, but just as a general guideline.

 

A desktop computer with a good CPU cooler, and a case with good airflow, is a much more sensible option.

Link to comment
1 hour ago, Zaphod Beeblebrox said:

I have some more information on the memory requirements. Compared to both the original PGGB and PGGB-AP, even at a precision of 256 bits, PGGB 256 is a lot more memory efficient. 

 

PGGB 256 uses adaptive algorithms that do not compromise on the quality of reconstruction to fit in available RAM (previously one could do this by setting taps). Currently the reconstruction quality at a given precision does not change, instead PGGB 256 adapts the processing pipeline to fit in memory and trades speed to achieve this (i.e., runs slower, to make sure the data being processed fits in memory).

 

What this means is one could do a lot more with 16GB RAM and PGGB 256 than previously possible. But there is still a limit to how much can be made it fit in RAM. At the minimum one needs enough RAM to hold the input data and upsampled data. So, this memory requirement depends on a few factors:

  • Length of the track you are processing
  • Input rate of the track (CD vs Hi-Res vs DSD etc.)
  • Output rate (which depends on your DAC and settings, if you are upsampling to 705/768khz or 352.384kHz)
  • Precision (64, 128 or 256 bit)

 

It is possible to estimate the memory requirements, so that is what I did, I simulated what is possible with 16GB of RAM (these are still estimates and should be considered approximate, it is best to try on a PC or laptop to confirm). I have also attached a pdf. Below is a summary of what to expect with 16GB.

 

Macs do not allow user configuration of swap files but typically allow swap file to grow to at least half of available RAM, so on a Mac, the maximum I will be comfortable with is a max processing memory of 24GB on a Mac with 16GB RAM. Below all the cells marked with orange imply you will hit a limit on a 16GB Mac.

 

  • If you are upsampling to 8fS (353/384kHz), you should be fine with most tracks within 12minutes of length even at 256 bit precision.
  • If you are upsampling to 16fS (705/768kHz), you should be fine with most tracks within 12minutes of length up to 128bit precision. 
  • If you are upsampling to 16fS (705/768kHz), you should be fine with most tracks within 6minutes of length up to 256bit precision.

 

For Windows, with 128GB of VM allocated, up to 12minute track at 256 bit precision would not be an issue (it would page for 16fS upsampling and would be slow). Here too 32GB RAM will be good to have.

 

I also have a datapoint. Somone with the new Mac 16" M2 pro with 16GB RAM did this album at 256 bit precision to 16fS in 2 hours, 12 minutes. The same album took on a PC with 16 core Threadripper 1950x and 128gb ddr4 1 hour and 2 minutes. 

image.thumb.png.1c778a7534eaed66de1deb97fa08ca4e.png 

Compare memory 256.pdf 63.73 kB · 3 downloads

 

Just want to clarify, in case it wasn't clear, that all the numbers in the table are virtual memory. 

 

On WIndows, the available virtual memory is approximately (Physical RAM + paging file(s) size). So, even if you don't have the required physical RAM, your runs will not fail, if the total amount of virtual memory is sufficient. The only downside is that the bigger the difference between the memory required and the actual RAM, the more your system will be paging, i.e. writing memory pages to and from disk. This is why a fast SSD is crucial for your paging file.

Link to comment
On 1/25/2023 at 10:16 AM, Zaphod Beeblebrox said:

I have some more information on the memory requirements. Compared to both the original PGGB and PGGB-AP, even at a precision of 256 bits, PGGB 256 is a lot more memory efficient. 

 

PGGB 256 uses adaptive algorithms that do not compromise on the quality of reconstruction to fit in available RAM (previously one could do this by setting taps). Currently the reconstruction quality at a given precision does not change, instead PGGB 256 adapts the processing pipeline to fit in memory and trades speed to achieve this (i.e., runs slower, to make sure the data being processed fits in memory).

 

What this means is one could do a lot more with 16GB RAM and PGGB 256 than previously possible. But there is still a limit to how much can be made it fit in RAM. At the minimum one needs enough RAM to hold the input data and upsampled data. So, this memory requirement depends on a few factors:

  • Length of the track you are processing
  • Input rate of the track (CD vs Hi-Res vs DSD etc.)
  • Output rate (which depends on your DAC and settings, if you are upsampling to 705/768khz or 352.384kHz)
  • Precision (64, 128 or 256 bit)

 

It is possible to estimate the memory requirements, so that is what I did, I simulated what is possible with 16GB of RAM (these are still estimates and should be considered approximate, it is best to try on a PC or laptop to confirm). I have also attached a pdf. Below is a summary of what to expect with 16GB.

 

Macs do not allow user configuration of swap files but typically allow swap file to grow to at least half of available RAM, so on a Mac, the maximum I will be comfortable with is a max processing memory of 24GB on a Mac with 16GB RAM. Below all the cells marked with orange imply you will hit a limit on a 16GB Mac.

 

  • If you are upsampling to 8fS (353/384kHz), you should be fine with most tracks within 12minutes of length even at 256 bit precision.
  • If you are upsampling to 16fS (705/768kHz), you should be fine with most tracks within 12minutes of length up to 128bit precision. 
  • If you are upsampling to 16fS (705/768kHz), you should be fine with most tracks within 6minutes of length up to 256bit precision.

 

For Windows, with 128GB of VM allocated, up to 12minute track at 256 bit precision would not be an issue (it would page for 16fS upsampling and would be slow). Here too 32GB RAM will be good to have.

 

I also have a datapoint. Somone with the new Mac 16" M2 pro with 16GB RAM did this album at 256 bit precision to 16fS in 2 hours, 12 minutes. The same album took on a PC with 16 core Threadripper 1950x and 128gb ddr4 1 hour and 2 minutes. 

image.thumb.png.1c778a7534eaed66de1deb97fa08ca4e.png 

Compare memory 256.pdf 63.73 kB · 15 downloads

As a follow up to my previous post to help folks trying to figure out how much RAM they will need, here is a summary and a simple step by step guide (also attached is a pdf version).

The table helps in two use cases:

  1. If you already have a PC/Mac and wish to find out the longest track, you could process.
  2. If you wish to the acquire more RAM or a new PC/Mac

For use case 1: Say you have a 16GB of RAM and your DAC accepts a maximum of 352/368kHz PCM, then you can go to the second table (For 8fS DAC) and look at the Rows corresponding to 16GB RAM in both 64/128 and 256 bit precision sub-tables. You will see you can process tracks up to 12 minutes long on both Mac and Windows (green column). If you look under the pink column, you will also see 24 minutes listed, this is only if you only have a few tracks that are that long and are OK with longer processing times.

 

For use case 2: Say you have a R2R DAC that accepts 32fS input and you wish to remaster at 256 bit precision, go to 'For 32fS DAC' table and the '256 bit precision' sub table. Say you listen mostly to Jazz and Rock music and most of your tracks are within 10 minutes in length. Then you can look at the track length closest to 10 that is bigger or equal under the green column. The closest is 12 minutes, if you look at the corresponding RAM, you will see 64GB RAM would be a safe option to choose.

 

 

image.thumb.png.cd64f64c5bbaf0b18753736839834d8a.png

image.thumb.png.71c8f21258d363f58617973fe294dad3.png

 

Compare memory 256.pdf

Author of PGGB & RASA, remastero

👉Upsampling: Myths and Half Truths (now updated with examples from recorded music)

Update: PGGB Plus (PCM + DSD) Now supports both PCM and DSD, with much improved memory handling

Free: foo_pggb_rt is a free real-time upsampling plugin for foobar2000 64bit; RASA is a free tool to do FFT analysis of audio tracks

SystemTT7 PGI 240v + Power Base > Paretoaudio Server [SR7T] > Adnaco Fiber [SR5T] >VR L2iSE [QSA Silver fuse, QSA Lanedri Gamma Infinity PC]> QSA Lanedri Gamma Revelation RCA> Omega CAMs, JL Sub, Vox Z-Bass/ /LCD-5/[QSA Silver fuse, QSA Lanedri Gamma Revelation PC] KGSSHV Carbon CC, Audeze CRBN

 

Link to comment

Sorry for the double post, I noticed couple of errors that can cause confusion. Posting an update as I cannot edit my previous post. 

 

As a follow up to my previous post to help folks trying to figure out how much RAM they will need, here is a summary and a simple step by step guide (also attached is a pdf version).

The table helps in two use cases:

  1. If you already have a PC/Mac and wish to find out the longest track, you could process.
  2. If you wish to the acquire more RAM or a new PC/Mac

For use case 1: Say you have a 16GB of RAM and your DAC accepts a maximum of 352/368kHz PCM, then you can go to the second table (For 8fS DAC) and look at the Rows corresponding to 16GB RAM in both 64/128 and 256 bit precision sub-tables. You will see you can process tracks up to 12 minutes long on both Mac and Windows (green column). If you look under the pink column, you will also see 24 minutes listed, this is only if you only have a few tracks that are that long and are OK with longer processing times.

 

For use case 2: Say you have a R2R DAC that accepts 32fS input and you wish to remaster at 256 bit precision, go to 'For 32fS DAC' table and the '256 bit precision' sub table. Say you listen mostly to Jazz and Rock music and most of your tracks are within 10 minutes in length. Then you can look at the track length closest to 10 that is bigger or equal under the green column. The closest is 12 minutes, if you look at the corresponding RAM, you will see 64GB RAM would be a safe option to choose.

Bonus Example: As there are many with 16fS capable DACs, say you are like me and mostly listen to jazz and some chamber music and wish to remaster at 256 bits and most of your tracks are within 12 minutes in length. Then go to the 'For 16fS DACs' table, then to the '256 bit precision' sub-table. Look for '12' in the green column, then look for the corresponding RAM size for that row to the left, you will find you need 32GB of RAM.

image.thumb.png.3c0c5dccaea6bb545600a31e2ade1d1a.png

 

image.thumb.png.2676be72265755bb69bd3e15ac9f2849.png

Compare memory 256.pdf

Author of PGGB & RASA, remastero

👉Upsampling: Myths and Half Truths (now updated with examples from recorded music)

Update: PGGB Plus (PCM + DSD) Now supports both PCM and DSD, with much improved memory handling

Free: foo_pggb_rt is a free real-time upsampling plugin for foobar2000 64bit; RASA is a free tool to do FFT analysis of audio tracks

SystemTT7 PGI 240v + Power Base > Paretoaudio Server [SR7T] > Adnaco Fiber [SR5T] >VR L2iSE [QSA Silver fuse, QSA Lanedri Gamma Infinity PC]> QSA Lanedri Gamma Revelation RCA> Omega CAMs, JL Sub, Vox Z-Bass/ /LCD-5/[QSA Silver fuse, QSA Lanedri Gamma Revelation PC] KGSSHV Carbon CC, Audeze CRBN

 

Link to comment
23 minutes ago, Zaphod Beeblebrox said:

Sorry for the double post, I noticed couple of errors that can cause confusion. Posting an update as I cannot edit my previous post. 

 

As a follow up to my previous post to help folks trying to figure out how much RAM they will need, here is a summary and a simple step by step guide (also attached is a pdf version).

The table helps in two use cases:

  1. If you already have a PC/Mac and wish to find out the longest track, you could process.
  2. If you wish to the acquire more RAM or a new PC/Mac

For use case 1: Say you have a 16GB of RAM and your DAC accepts a maximum of 352/368kHz PCM, then you can go to the second table (For 8fS DAC) and look at the Rows corresponding to 16GB RAM in both 64/128 and 256 bit precision sub-tables. You will see you can process tracks up to 12 minutes long on both Mac and Windows (green column). If you look under the pink column, you will also see 24 minutes listed, this is only if you only have a few tracks that are that long and are OK with longer processing times.

 

For use case 2: Say you have a R2R DAC that accepts 32fS input and you wish to remaster at 256 bit precision, go to 'For 32fS DAC' table and the '256 bit precision' sub table. Say you listen mostly to Jazz and Rock music and most of your tracks are within 10 minutes in length. Then you can look at the track length closest to 10 that is bigger or equal under the green column. The closest is 12 minutes, if you look at the corresponding RAM, you will see 64GB RAM would be a safe option to choose.

Bonus Example: As there are many with 16fS capable DACs, say you are like me and mostly listen to jazz and some chamber music and wish to remaster at 256 bits and most of your tracks are within 12 minutes in length. Then go to the 'For 16fS DACs' table, then to the '256 bit precision' sub-table. Look for '12' in the green column, then look for the corresponding RAM size for that row to the left, you will find you need 32GB of RAM.

image.thumb.png.3c0c5dccaea6bb545600a31e2ade1d1a.png

 

image.thumb.png.2676be72265755bb69bd3e15ac9f2849.png

Compare memory 256.pdf 85.19 kB · 1 download

 

This is very helpful, thanks. Would it be possible to augment this table for cases where the source is not PCM but DSD (64/128/256)?

Link to comment
43 minutes ago, Atriya said:

 

This is very helpful, thanks. Would it be possible to augment this table for cases where the source is not PCM but DSD (64/128/256)?

Great question! I wish I had added that to my original post. The values I provided are for PCM rates 1fS, 2fS, 4fS, 8fS and also DSD 64 through DSD 1024 (or higher if any exists)!

 

While there is a slight uptick in memory requirement for increasing PCM rates, for DSD, the memory requirement does not change with increased rate. It depends only on the output rate you choose and track length.

 

In other words, a 10minute DSD 64 track would need the same amount of memory as DSD 256 as long as you are choosing the same output sample rate and also bit precision. But DSD 256 will take about 4x more time to process compared to a DSD 64 track of same length because there are simply 4x more samples to process.

Author of PGGB & RASA, remastero

👉Upsampling: Myths and Half Truths (now updated with examples from recorded music)

Update: PGGB Plus (PCM + DSD) Now supports both PCM and DSD, with much improved memory handling

Free: foo_pggb_rt is a free real-time upsampling plugin for foobar2000 64bit; RASA is a free tool to do FFT analysis of audio tracks

SystemTT7 PGI 240v + Power Base > Paretoaudio Server [SR7T] > Adnaco Fiber [SR5T] >VR L2iSE [QSA Silver fuse, QSA Lanedri Gamma Infinity PC]> QSA Lanedri Gamma Revelation RCA> Omega CAMs, JL Sub, Vox Z-Bass/ /LCD-5/[QSA Silver fuse, QSA Lanedri Gamma Revelation PC] KGSSHV Carbon CC, Audeze CRBN

 

Link to comment

To reinforce ZB's sizing guide above, here is a data point in the form of a resource profile on my machine. Details of my machine:

  • i7-10700 8-core CPU
  • 128GB RAM
  • 800GB paging file on C drive, resulting in
  • 909GB total available VM, or virtual memory ("committed" value in Task Manager).

In the graph below, the Y-axis represents utilization of the paging disk or the C: drive in my case, and % of total available VM (virtual memory) for memory utilization. This is the memory and paging disk utilization profile, when running PGGB for:

  • a DSD64 file
  • 32m, 32s track duration
  • 32/705.6 output
  • 256-bit precision.

 

Capture.PNG

 

Interpretation

  • My physical RAM of 128GB is 128*100/909 = ~14% of total available VM. Anytime VM utilization exceeds this threshold, it is possible for paging to occur
  • You can see on the graph that once the VM consumption exceeded 14%, there were indeed bursts of disk activity, indicating the onset of paging
  • Yet, in an overall sense, I would characterize the incidence of paging in this run to be light. That's because even if virtual memory is consumed due to allocation in the application, the memory actually has to be accessed to trigger paging. 

How does this relate to ZB's sizing table? His table indicates that a 128GB machine can handle tracks up to 48m in duration with minimal paging, and this is what I'm seeing on this resource profile for a 32 min track.

Link to comment
3 hours ago, Zaphod Beeblebrox said:

Sorry for the double post, I noticed couple of errors that can cause confusion. Posting an update as I cannot edit my previous post. 

 

As a follow up to my previous post to help folks trying to figure out how much RAM they will need, here is a summary and a simple step by step guide (also attached is a pdf version).

The table helps in two use cases:

  1. If you already have a PC/Mac and wish to find out the longest track, you could process.
  2. If you wish to the acquire more RAM or a new PC/Mac

For use case 1: Say you have a 16GB of RAM and your DAC accepts a maximum of 352/368kHz PCM, then you can go to the second table (For 8fS DAC) and look at the Rows corresponding to 16GB RAM in both 64/128 and 256 bit precision sub-tables. You will see you can process tracks up to 12 minutes long on both Mac and Windows (green column). If you look under the pink column, you will also see 24 minutes listed, this is only if you only have a few tracks that are that long and are OK with longer processing times.

 

For use case 2: Say you have a R2R DAC that accepts 32fS input and you wish to remaster at 256 bit precision, go to 'For 32fS DAC' table and the '256 bit precision' sub table. Say you listen mostly to Jazz and Rock music and most of your tracks are within 10 minutes in length. Then you can look at the track length closest to 10 that is bigger or equal under the green column. The closest is 12 minutes, if you look at the corresponding RAM, you will see 64GB RAM would be a safe option to choose.

Bonus Example: As there are many with 16fS capable DACs, say you are like me and mostly listen to jazz and some chamber music and wish to remaster at 256 bits and most of your tracks are within 12 minutes in length. Then go to the 'For 16fS DACs' table, then to the '256 bit precision' sub-table. Look for '12' in the green column, then look for the corresponding RAM size for that row to the left, you will find you need 32GB of RAM.

image.thumb.png.3c0c5dccaea6bb545600a31e2ade1d1a.png

 

image.thumb.png.2676be72265755bb69bd3e15ac9f2849.png

Compare memory 256.pdf 85.19 kB · 7 downloads

 

@austinpophad explained it in an earlier post, but I want to reiterate:

 

Track lengths reported in green (for Mac and Windows) assumes a total virtual memory of at least 1.5XRAM is available for allocation and those in pink (for Windows) assumes a total virtual memory of at least 2.5XRAM is available. Total Virtual memory = RAM + Swap file(s). The amount of virtual memory may be limited by other running processes including the OS.

 

On Mac, user has no control over how much and what rate swap files can grow, so a conservative estimate is about half of the total RAM. However, if there are other running processes, the amount of actual available virtual memory for PGGB will be much lower. Closing all apps and doing a restart of your Mac would give a good idea of how much RAM is left (I use iStat menu app in Mac). So the values reported for Mac can be a too optimistic if there are number of processes running. So, one needs to account for reduced RAM available when figuring out the longest track that can be processed.

 

On windows, it is possible to increase swap file size by changing virtual memory settings. This provides enough freedom for the reported maximum track lengths to be close to what is possible with available RAM.

Author of PGGB & RASA, remastero

👉Upsampling: Myths and Half Truths (now updated with examples from recorded music)

Update: PGGB Plus (PCM + DSD) Now supports both PCM and DSD, with much improved memory handling

Free: foo_pggb_rt is a free real-time upsampling plugin for foobar2000 64bit; RASA is a free tool to do FFT analysis of audio tracks

SystemTT7 PGI 240v + Power Base > Paretoaudio Server [SR7T] > Adnaco Fiber [SR5T] >VR L2iSE [QSA Silver fuse, QSA Lanedri Gamma Infinity PC]> QSA Lanedri Gamma Revelation RCA> Omega CAMs, JL Sub, Vox Z-Bass/ /LCD-5/[QSA Silver fuse, QSA Lanedri Gamma Revelation PC] KGSSHV Carbon CC, Audeze CRBN

 

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...