http://samsaffron.com/archive/2013/11/22/demystifying-the-ruby-gc Ruby 2.1のガベージコレクタ (GC) については、「RubyとPythonの違いからガベージコレクタを理解する [その1] [その2] 」で取り上げましたが、今回は、DiscourseのSam SaffronがまとめているRuby 2.0のGCを利用するにあたっての学びを紹介します。 1) Heaps of heaps MRIはヒープにRVALUEとして知られているオブジェクトをもつ。各ヒープは約16KB。RVALUE構造体は、マシンのアーキテクチャによって異なる量のメモリを消費する。x64マシンでは40 byte、x32マシンではサブアーキテクチャー次第で20 byteから24 byte。RVALUEはマジカルなC構造体で、Rubyの様々なローレベル
Javaアプリケーションを運用していると必ず突き当たるのがGCの問題である。JVMの上で生きている限りこの問題を避けて通ることはできない(し、この問題に手をつけたら終わりだとも聞いたことがある)。NorikraはJRubyで記述されているJavaアプリケーションであり、用途からして大量のオブジェクトを作って破棄していることが容易に想像できるので、GCのチューニングは重要であることが考えられる。 GCのログをとりたい チューニングしたいのであれば、まずはともあれロギングである。ログなくしてチューニングすることなどできない。ということでまずはGCのログをとる。 $ norikra start -Xmx4g -Xms4g -Xloggc:/var/log/norikra/gc.log -XX:+PrintGCDateStamps -XX:+PrintGCDetails
この記事はパーフェクトRuby Advent Calendar 2013 - Adventar の9日目です。 前の日のエントリーはパーフェクトRuby Advent Calendar 2013(8日目) Let's Sinatra Life - たちブログです。 まだ参加できますので、みなさまもぜひ。 パーフェクトRuby Advent Calendar 2013 - Adventar パーフェクトRubyRubyの仕様に大変詳しい同僚への献本をインターセプトして読ませていただきました。 さまざまな機能をまとめたとてもよい本だと思います。 著者のみなさまの苦労が偲ばれました。パーフェクトRuby (PERFECT SERIES 6)作者: Rubyサポーターズ,すがわらまさのり,寺田玄太郎,三村益隆,近藤宇智朗,橋立友宏,関口亮一出版社/メーカー: 技術評論社発売日: 2013/08/1
こんにちは。良昌です。 Facebook、GithubなどのJSON形式でユーザ情報を返却するAPIや、PhoneGap、Monacaなどのスマートフォンのマルチプラットフォームを提供するライブラリ、IDEが開発ツールとして定着してきたことにより、JavaScriptを利用する機会が増えたのではないでしょうか。 今回は、JavaScriptコンテナがWebブラウザの場合に、動的に確保されるメモリ領域の浪費を避ける方法について書きたいと思います。 JavaScriptにおけるメモリの浪費を避けるコーディング JavaScriptにおけるメモリの浪費を避けるコーディングをするためには、GC(ガベージコレクション)、クロージャについての知識が必要です。まずは、この2つの機能について説明していきます。 ■GC(ガベージコレクション) GCとはプログラムが動的に確保したメモリ領域の内、不要になった領
Sun Java System Application Server Enterprise Edition 8.2 パフォーマンスチューニングガイド メモリーとガベージコレクションの管理 アプリケーションの効率は、メモリーとガベージコレクションをどれだけ適切に管理するかによって左右されます。次の各節では、メモリー機能と割り当て機能の最適化について説明しています。 「目標」 「ガベージコレクションの追跡」 「ガベージコレクタのその他の設定」 「Java ヒープのチューニング」 「 Windows での DLL ベースアドレスの再割り当て」 「詳細情報」 ガベージコレクタのチューニング ガベージコレクション (GC) では、以前にオブジェクトに割り当てられ、現在は不要になったヒープスペースが再生されます。デッドオブジェクトを見つけて削除するプロセスによって、アプリケーションが停止状態になったり
有給を駆使し一足早くクリスマス休暇に突入、ヒャッホイ Ingress やるぜーと 意気込んでいた矢先ノロウイルスにやられダウンした。かなしい。鎮まれ俺の胃袋・・・ そんな腹痛日和の気晴らしとして今日は Garbage Collection Advent Calendar に参加してみることにしました。 Advent Calendar 初体験につきよくわかってないけど勝手に参加していいんですよね? GC というとジェネレーショナルだのパラレルコンカレントだのといった話が目立ちがちだけれど、 現実の問題というかブラウザを相手にするとそれ以外の細々とした面倒が目につく。 GC つき言語 (JavaScript) のコードと C++ で書かれたコードとの連携は最たる面倒の1つ。 たとえば WebKit の DOM は C++ で実装されており、 C++ のオブジェクトは JavaScript 処理
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く