<div dir="ltr"><div><div><div><div><div><div><div>Hi All,<br><br></div>I have a newbie question on disk/filesystem caches, so please bear with me! :)<br><br></div>* Is disk cache the same as filesystem cache? Or there&#39;s nothing like a filesysten cache and all disk I/O, irrespective of what FS is being accessed, is cached in a &quot;disk cache&quot;?<br>
<br></div>* Is this caching done at the VFS layer?<br><br></div>* Can the location of a disk cache be changed, i.e instead of caching it in memory (main RAM) can it be made to cache the files in a specific device?<br><br>
</div>To give some idea on why I&#39;m asking these questions, I&#39;ll explain my problem a little here (I myself have only started working on it so I don&#39;t have all the details worked out yet).<br><br></div>I&#39;m working on a special device which sits across the PCIe bus and accesses files (or it&#39;s data) and does some processing with it. It transmits this data out via a special high-speed link to another device (thats some black hole for me right now). The transmit speed is in the 300-400 Gbps range. This device also a lot of local memory, which is ~ 80GB.The PCIe interface however supports transfer speeds which are much lower, i.e in the 5-8 Gbps range.<br>
<br>In order to reduce latency in transmitting this content, I was thinking if there&#39;s a way to make the disk cache content available in this device&#39;s local memory.<br><br>Instead of writing a custom module for that, I was wondering if there already exists a way in the kernel where a cache device can be specified and the kernel uses that to store the cached file content?<br>
<br></div><div>Any ideas on making the cached content available inside the device are welcome! :)<br></div><div><br></div><div>Regards,<br></div><div>-mandeep<br><br></div></div>