5.3. 新しい /proc/sys/vm パラメーター
- compaction_proactiveness
このパラメーターは、バックグラウンドでカーネルがメモリーをどれくらい積極的に圧縮するかを決定します。このパラメーターは、[0, 100] の範囲内の値を取り、デフォルト値は 0 に設定されます。デフォルトでこのパラメーターを無効にする要因は、メモリーを移動するために 500 ミリ秒ごとにウェイクアップされる kthread によって、現在確立され、予想されるシステムの動作を壊さないようにすることでした。
圧縮処理には、異なるプロセスに属するページが進められているため、システム全体のシステムに影響を与えることに注意してください。また、アプリケーションの不適切な動作のレイテンシーが発生する可能性もあります。カーネルは、プロアクティブなコンパクションが有効ではないことを検知した場合に、CPU サイクルをさまざまなヒューリスティックを使用し、CPU サイクルを防ぎます。
このパラメーターを 100 などの大きな値に設定する場合には注意してください。これにより、バックグラウンドの圧縮アクティビティーが過剰になる可能性があります。
- watermark_boost_factor
このパラメーターは、メモリーが断片化される際に回収のレベルを制御します。これは、異なるモビリティーのページがページブロック内で混在している場合に回収されるゾーンの高基準の割合を定義します。目的は、将来的に実行する設定が少なく、SLUB 割り当て、THP や hugetlbfs ページなどの今後の高順の割り当ての成功率を増やすことです。
watermark_scale_factor
パラメーターに関して、ユニットは 10,000 の割合にあります。!DISCONTIGMEM
設定の 15,000 のデフォルト値は、断片化によりページブロックが混在される際に、最大 150% の高ウォーターマークが回収されることを意味します。再利用のレベルは、直近で発生した断片化イベント数により決定されます。この値がページブロックよりも小さい場合は、ページブロックのページブロックが回収されます (64 ビット x86 の 2MB)。ブーストファクター 0 により機能が無効になります。