Memefs is a fork of WinFsp’s memfs with significant improvements focused on performance and usability.
Why memefs?
Memefs is designed for constantly running RAM disks that need to be both fast and memory-efficient. Traditional implementations can be slow when writing unpreallocated files or waste memory by allocating more than necessary.Dynamic memory allocation
Only allocates the memory actually needed to store files, unlike fixed-size RAM disks
Modern C++ architecture
Completely rewritten in modern C++ with guaranteed memory and thread-safety
Optimized performance
Significantly faster write times for unpreallocated files using vectors of sectors
Flexible configuration
Total memory limits, custom volume labels, and support for both disk and network modes
Key features
Performance improvements
Memefs delivers much better performance when writing unpreallocated files compared to the original memfs. This is especially important for web downloads and other scenarios where files aren’t preallocated.Better memory management
- Total memory limit: Set a maximum total memory size instead of per-file limits
- Dynamic allocation: Memory is allocated only as files are created and written
- Better storage indication: Clear visibility into memory usage and limits
Customization options
- Set custom volume labels via CLI
- Case-insensitive file system support
- Configurable flush and purge behavior
- Support for both disk and UNC network modes
Get started
Installation
Install WinFsp and memefs on your Windows system
Quick start
Mount your first RAM disk in minutes
Use cases
Memefs is ideal for:- Temporary storage: Fast storage for temporary files and build artifacts
- Cache directories: High-speed cache for applications and development tools
- Development environments: Faster compilation and testing with temporary file operations
- Performance testing: Eliminate disk I/O as a variable in benchmarks
- Privacy: Store sensitive temporary data that’s cleared on shutdown