タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

gcに関するbudougumi0617のブックマーク (3)

  • Go のGCのオーバーヘッドが高くなるケースと、その回避策 - Qiita

    Go のGCのオーバーヘッドについて GoのGarbage Collector (GC)の性能は非常に優秀で、オーバーヘッドが問題となることはあまりありません。ただヒープを非常に多く使っている場合、GCが多くのCPU時間を消費するケースがあります。 記事では、まずGoのGCの概要に触れ、その後GCオーバーヘッドが高くなるケース、そして回避策を検討します。 記事は下記記事を大きく参考にしています。素晴らしい記事に感謝いたします。 Avoiding high GC overhead with large heaps 注意点 単に pprof を取得し、GCが多くCPU時間を消費していた場合、必ずしも記事が扱う、ヒープの多さ依存の問題が原因とは限りません。 GoのGCは、直近のGCを行った結果生き残ったデータ量に対して、新たにアロケートしたデータの量が一定値を超えると実行されます。 1 こ

    Go のGCのオーバーヘッドが高くなるケースと、その回避策 - Qiita
  • GoのGCを10分で学ぼう  - Qiita

    はじめに GoのGC(Garbage Collection)を調べる中で学んだことをなるべく分かりやすく簡潔にまとめたものです。 GCのアルゴリズムやメモリ割り当てについてまとめています。 記事内で使われている「オブジェクト」という用語はGoにおいては適切でないかもしれませんが、説明のしやすさから使用しています。 概要を把握しやすいように単純化しているため細部は正確でない部分があります。 GC基 用語集 前提となる用語です。 ルート ルートとは、オブジェクトが到達可能か(生存しているか)を判定するための始点です。 プログラミング言語にもよりますが、基的にメモリのスタック領域がルートになります。 フラグメンテーション フラグメンテーションとは、使用可能なメモリが断片化し途切れ途切れになっている状態です。 フラグメンテーションになってしまうと、総量的にはメモリが空いていてもアプリケーション

    GoのGCを10分で学ぼう  - Qiita
  • Go: How Does the Garbage Collector Mark the Memory?

  • 1