Kahibaro
Discord Login Register

NFS

Overview of NFS in HPC

Network File System (NFS) is one of the oldest and most widely used networked filesystems in Unix/Linux environments. In HPC, NFS is typically used for shared but low‑to‑moderate performance storage, not for the highest‑throughput parallel I/O.

In a cluster, NFS usually serves:

More performance‑critical workloads (large parallel I/O, scratch) are usually placed on dedicated parallel filesystems like Lustre or GPFS, but NFS remains important infrastructure.

Basic NFS Architecture in a Cluster

NFS follows a classic client–server model:

In an HPC cluster, common patterns are:

NFS Versions and Their Impact in HPC

You’ll commonly encounter:

In HPC, administrators balance:

As a user, you typically don’t choose the NFS version directly; the cluster is configured so mounts use the site‑preferred version.

What NFS Is Typically Used For in HPC

NFS is well suited for:

These usages emphasize simplicity and centralization over maximum throughput.

NFS is not usually used for:

Those are handled by parallel filesystems introduced in other chapters.

Basic NFS Usage from a User Perspective

On most clusters, NFS mounts are already configured by the administrators. As a user:

You generally interact with files over NFS no differently than with local files:

However, because NFS is network‑based, performance and behavior differ from local disk:

Recognizing NFS Mounts

To see which directories are on NFS, you can run:

mount | grep nfs

or

df -hT | grep nfs

This helps you understand where your data lives and what performance to expect.

Performance Characteristics and Limitations

NFS is not a parallel filesystem in the HPC sense; it has several characteristics that matter for cluster workloads.

Single Server Bottlenecks

Metadata and Small-File Overheads

For HPC workloads, this motivates:

Caching Effects

NFS clients cache file data and attributes to reduce network round trips. Consequences:

For most basic workflows this is invisible, but for tightly coupled concurrent access/busy directories, it can matter.

NFS Mount Options Relevant to HPC

Administrators tune mount options to balance performance, robustness, and consistency. Some common options you might see (for information only):

On many clusters, these options are set centrally in /etc/fstab or automounter maps and are not user-modifiable.

Typical Best Practices for Users on NFS

While configuration is mostly out of your hands, you can use NFS effectively by following simple practices:

1. Avoid Heavy I/O in Home Directories

A common pattern:

# On login node
cd $HOME
cp -r myproject $SCRATCH/myproject_run
# Edit and submit from SCRATCH location
cd $SCRATCH/myproject_run
sbatch run.slurm
# After job finishes, copy key results back to HOME (NFS) for archiving
cp important_results.tar.gz $HOME/results/

2. Limit Small-File Explosion

3. Be Careful with Concurrent Writing

4. Consider Job Startup Storms

Common NFS-Related Issues Users May See

You may encounter:

On a managed HPC system, you typically report these behaviors to the support team rather than modify NFS settings yourself.

Security Considerations (High-Level)

NFS security in HPC environments is typically based on:

For most users, the main implications are:

Summary: NFS’s Role in an HPC Filesystem Mix

Within an HPC cluster’s overall storage architecture, NFS usually:

Effective HPC workflows typically:

Understanding where NFS fits lets you design workflows that are both efficient and kind to shared infrastructure.

Views: 12

Comments

Please login to add a comment.

Don't have an account? Register now!