Linux maintenance

Each standard filesystem comes with its own set of tools to measure performance. XFS includes the xfs_db command line tool for troubleshooting various aspects of the filesystem, including fragmentation.

Control fragmentation

Filesystem fragmentation is directly related to the amount of mixing and interleaving of blocks of data of different sizes, and is aggravated by multiple I/O clients concurrently writing data to the partition. Although some standard filesystems (such as XFS) feature advanced space allocation techniques, which make them more resistant to fragmentation, this problem still occurs as the filesystem's free space decreases and frequent file deletion, creation, and resizing operations take place.

Limit concurrent usage

A filesystem performs best when only one process is accessing it. In some workflows this is not always possible, which leads to a temporary decrease in performance. Furthermore, mixing read and write operations can have a detrimental effect on throughput.

Unlike direct attached storage (DAS), a Storage Area Network (SAN) is typically designed to handle concurrent usage and will perform better under such situations.

Autodesk strongly advises against allowing any third-party application to access the storage at the same time as Creative Finishing applications. The I/O operations from such applications may drastically decrease the bandwidth available to Creative Finishing application and also contribute to filesystem fragmentation.

Monitor partition fill rate

As each disk in a storage array gets filled near capacity, once a certain threshold is reached, its overall read and write performance decreases.

Free up space on an array by archiving and deleting projects. Or reinitialise the partition, only restoring required projects.

For an XFS filesystem on direct-attached storage, keep the partition fill rate below 90% for best performance. The Stone and Wire database may experience corruption if there is too little available space on the disk where clip metadata is stored.

Use multi-threaded direct input output

Most filesystems perform best when the I/O is parallelised across multiple threads/processes and sent asynchronously. This allows the device to buffer I/O operations and reorganize requests for optimal performance.

Some applications perform better than others on the same storage device, based on how they perform their I/O. Applications that use single-threaded buffered I/O can be slow.

Creative Finishing applications use multi-threaded asynchronous direct I/O when capturing, playing back, and performing other I/O intensive operations.

Ensure any third-party application used in conjunction with a Creative Finishing application or to handle media files uses direct I/O. This prevents needless CPU-intensive in-memory data copying, thus maintaining optimum storage performance and freeing resources for the Creative Finishing application.

Troubleshoot missing frames

If some library or desktop clips reference missing frames on a remote volume, or that no longer exist, the following error message is displayed when the application starts:

To identify the type of issue, in terminal run: vic -v <volume_name> -s remote -s lost. For clips with frames listed as missing, contact support.

To recover remote frame:

  1. Archive all clip libraries that are reported as containing remote frames. In the previous example, the fourth library (from_caplan) contains remote frames.
  2. Rename the archived libraries, such as by adding the remote suffix to the library name.
  3. Restore the clip libraries from the archive. All the frames referenced by the clips should now be stored locally.
  4. Delete the original libraries.