Copy Handler Community Forum

CH Support => General support => Topic started by: epiquestions on September 03, 2007, 12:18:40 AM

Title: Buffering Questions
Post by: epiquestions on September 03, 2007, 12:18:40 AM
Could you explain the whole buffering options and the concept of buffering?

What are the factors that you need to consider in specifying the values for the buffers (ie processor, memory, etc)?

You said in the help file that "copying large files without buffering in many cases is faster than copying with buffering).",
could you explain that?

Thanks I hope I'm not being too ignorant.
Title: Re: Buffering Questions
Post by: Ixen on January 29, 2008, 08:59:47 PM
Hello,
I'm sorry for the really late response.
Buffering in system causes a file currently being accessed to be stored (at least partially) in memory (in cache). It is considered a good thing in most cases, because if you use the same file second time - it won't need to be read from disk.
Cache has some maximum size; when there are new data to be cached, the old ones must be purged (it's very simple explanation, but should be enough for the example).
Disabling system caching(buffering) for copying large files causes the file to be read from disk without affecting system cache and causing it NOT to purge what it has inside. This way the operation of copying data (which most probably will be accessed only once by mean of copying) does not affect the data system cached earlier (ie. some libraries, other frequently used files).

CH internal buffering is related to the packs of data that should be read/written at one time. On some hardware some values work better than on other. It's a matter of doing some experiments (restarting system, copying with some buffer size, restarting, trying another one, ...). The buffer size in this case states also how much memory will be allocated for holding the data.

Hopefully it explains something.