すべてのプロダクト
Search
ドキュメントセンター

Alibaba Cloud Linux:ファイルシステムのコンテキスト先読み機能を設定して、ファイルアクセスのパフォーマンスを向上させる

最終更新日:Dec 11, 2024

Linuxは先読み技術を使用して、データをプリフェッチしてページキャッシュにデータをロードすることでファイルアクセスを高速化します。 Linuxは、インターリーブされたシーケンシャルストリームを検出してファイルアクセスのパフォーマンスを最適化できるコンテキスト先読みアルゴリズムもサポートしています。 しかしながら、特定のランダムアクセスシナリオでは、コンテキスト先読みアルゴリズムは、判断が不十分になる傾向があり、必要以上に多くのページをプリフェッチする可能性がある。 上記のシナリオでは、コンテキスト先読み機能を無効にして、アプリケーションのパフォーマンスを大幅に向上させることができます。 このトピックでは、vm.enable_context_readaheadパラメーターを使用して、Alibaba Cloud Linux 2および3のファイルシステムのコンテキスト先読み機能を設定する方法について説明します。

制限事項

オペレーティングシステム:

  • カーネルバージョンが4.19.91-18以降のAlibaba Cloud Linux 2

  • Alibaba Cloud Linux 3

手順

/proc/sys/vm/enable_context_readaheadシステムパラメーターを設定して、ファイルシステムのコンテキスト先読み機能を有効または無効にします。 有効な値:

  • 1: コンテキスト先読み機能を有効にします。

  • 0: コンテキスト先読み機能を無効にします。

  1. コンテキスト先読み機能のステータスを確認します。

    • パラメーターファイルを表示して、コンテキスト先読み機能のステータスを確認します。

      cat /proc/sys/vm/enable_context_readahead
    • sysctlインターフェイスを使用して、コンテキスト先読み機能のステータスを確認します。

      sysctl -n vm.enable_context_readahead
  2. コンテキスト先読み機能を設定します。

    • コンテキスト先読み機能を有効にします。

      • パラメーターファイルを変更して、コンテキスト先読み機能を有効にします。

        sudo sh -c 'echo 1 > /proc/sys/vm/enable_context_readahead'
      • sysctlインターフェイスを使用して、コンテキスト先読み機能を有効にします。

        sudo sysctl -w vm.enable_context_readahead=1
    • コンテキスト先読み機能を無効にします。

      • パラメーターファイルを変更して、コンテキスト先読み機能を無効にします。

        sudo sh -c 'echo 0 > /proc/sys/vm/enable_context_readahead'
      • sysctlインターフェイスを使用して、コンテキスト先読み機能を無効にします。

        sudo sysctl -w vm.enable_context_readahead=0