いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Goメモ-636 (Green Tea Garbage Collector)(Go 1.25で実験的追加, Go 1.26でデフォルトになる予定)

関連記事

GitHub - devlights/blog-summary: ブログ「いろいろ備忘録日記」のまとめ

概要

以下、自分用のメモです。後で勉強するときのためにメモメモ。。。

Go本家のブログ記事にて次期GCの「Green Tea」ガベージコレクタについての記事があがっていました。

go.dev

名前がなんで「緑茶GC」ってなっているのかは分かりませんが、なんか可愛い名前ですよね。

  • 導入目的はGCのCPU時間の大幅削減で、多くのワークロードでGC時間が約10%、場合によっては最大40%短縮されることもあるとのこと
  • Google社内ではすでに実運用段階。Go 1.26以降は標準にする予定とのこと
  • 利用するにはビルド時にGOEXPERIMENT=greenteagcの環境変数をセットする必要があるとのこと(Go 1.25の場合)

実際の内部の理屈は難しい話になっていますが、利用者側からするとアプリケーションのパフォーマンスが向上するのは良いことですね。

以下のスライド資料がとてもわかり易かったです。感謝。

speakerdeck.com

Go 1.25で試す場合

GOEXPERIMENT=greenteagc の指定がビルド時に必要です。

$ GOEXPERIMENT=greenteagc go build

参考情報

siddharthav.medium.com

個人的Goのおすすめ書籍

個人的に読んでとても勉強になった書籍さんたちです。


過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。