Memory Optimization Guide

ObjectiveFS uses memory to cache filesystem data and metadata locally to improve performance and to reduce the number of S3 operations. The amount of memory used by ObjectiveFS is based on the memory cache size, number of S3 objects used by your filesystem and the amount requested by the Linux kernel.

The memory cache size can be adjusted using the CACHESIZE environment variable (see details). You can find out the number of S3 objects used by your filesystem by looking at the IUsed column in df -i.

Recommendation

We recommend running on servers with at least 1GB+ of memory. To make sure you have enough memory for your other applications, you can use CACHESIZE + (500MB to 1GB depending on your filesystem size) as an estimate for each ObjectiveFS mount. The CACHESIZE used by each mount is logged upon filesystem mount (see log info).

Lowering Memory Usage

If you need to lower the memory usage of ObjectiveFS, we recommend using one or more of the following steps.

1. Use a smaller memory cache

2. Enable disk cache

3. Avoid mounting multiple filesystems on a small machine

4. Enable compaction

5. Enable swap space on the local SSD

6. Enable mboost for larger filesystems

7. For read-only servers

7. Other options

If you have questions about how to optimize memory for your filesystem and use cases, please feel free to contact support@objectivefs.com. We are happy to work with you to find a good solution for your use case.

References


Last updated by ObjectiveFS staff, May 18, 2020
ObjectiveFS is a shared file system for OS X and Linux that automatically scales and gives you scalable cloud storage. If you have questions or article idea suggestions, please email us at support@objectivefs.com