1.2.3. Улучшенная производительность GFS2

Некоторые возможности GFS2 аналогичны GFS, но концентрируются на улучшении производительности файловой системы.
Основные улучшения производительности GFS2:
  • Улучшена производительность при интенсивном использовании единственного каталога.
  • Более быстрые операции синхронного ввода/ вывода.
  • Более быстрое кэшированное чтение (нет издержек блокирования).
  • Более быстрый ввод/ вывод для предопределенных файлов (при условии, что размер блоков ввода/ вывода достаточно большой, например, 4 Мб).
  • Более быстрые операции ввода/ вывода в целом.
  • Команда df выполняется намного быстрее вследствие более быстрых вызовов statfs.
  • Режим atime усовершенствован с целью сокращения числа операций ввода и вывода, генерируемых atime, по сравнению с числом, генерируемым в GFS.
GFS2 обеспечивает более широкую поддержку следующих аспектов:
  • GFS2 является составляющим компонентом официально поддерживаемого ядра (в составе 2.6.19).
  • GFS2 поддерживает следующие возможности:
    • Расширенные атрибуты SELinux.
    • Настройку атрибутов lsattr() и chattr() с помощью стандартных вызовов ioctl().
    • Метки времени с точностью до наносекунд.
Эффективность файловой системы GFS2:
  • GFS2 использует меньше памяти ядра.
  • GFS2 не требует чисел генерации метаданных.
    Выделение метаданных GFS2 не требует операций чтения. Управление копиями блоков метаданных в разных журналах осуществляется за счет исключения блоков из журнала перед отменой блокирования.
  • GFS2 включает упрощенный менеджер журналирования, не имеющий отношения к другим inodes или изменениям квот.
  • Команды gfs2_grow и gfs2_jadd используют блокирование для предотвращения выполнения нескольких образцов в одно и то же время.
  • Код ACL упрощен для вызовов, подобных creat() и mkdir().
  • Несвязанные inodes, изменения квот и изменения statfs принимаются во внимание без необходимости повторного монтирования журнала.