はじめに
前回に続いて、2024年に公開された論文「Characterizing a Memory Allocator at Warehouse Scale」に基づいて、Googleが独自開発したLinuxのメモリ割り当てライブラリであるTCMallocの最適化に対する取り組みを紹介します。今回は、プロファイリングデータに基づいたTCMallocの最適化について説明します。
Per-CPU Cacheの動的なリサイジング
前回の記事の図3では、コンテナ内でスレッドが稼働するCPUコアの偏りから、Per-CPU Cahceの利用に偏りがあることを説明しました。Per-CPU Cacheで確保するメモリオブジェクトの量が均等な場合、メモリ割り当て要求が多いCPUコアでは、メモリオブジェクトの不足(キャッシュミス)に伴う処理遅延が発生する一方、メモリ割り当て要求が少ないCPUコアでは、未使用のメモリオブジェクトが多数存在してメモリフラグメンテーションが大きくなるという状況が発生します。
この続きは以下をご覧ください
(リンク »)
お問い合わせにつきましては発表元企業までお願いいたします。