GPU-Side File System Applications
To benefit from GPU4FS, an application should exhibit at least one of the following characteristics:
- Its working data needs to be limited by VRAM, and GPU4FS can help dynamically load and unload only the currently needed data.
- Its data needs are dependent on earlier computations, and thus need to be dynamically. GPU4FS can load this data early and program-driven, without waiting for the CPU.
- Its data is variable sized: GPU4FS needs to dynamically allocate and manage memory for any file system task, and applications benefit by reducing statically allocated memory usage.
We will explore two common application areas:
- Search tasks: Large text or image searches, e.g., to look up keywords, exhibit at least the dynamically sized and loaded traits, and, depending on the workload, also the limited by VRAM.
- AI training: AI is chronically bound by VRAM usage, and we can delay loading of training data while the forward pass already runs on different data. Similarly, when backpropagations has finished for some parts, we can already swap this data for the next batch.