タグ

GCに関するiwadonのブックマーク (30)

  • ガベージコレクションのアルゴリズムと実装

    ガベージコレクションのアルゴリズムと実装 中村 成洋, 相川 光, 竹内 郁雄(監修) 達人出版会 1,045円 (950円+税) GCについて初めて日語で書かれた技術書です。前半部分でアルゴリズムをわかりやすく解説し、後半は複数の言語処理系の実装を読み解いていきます。GCの理論と実際の利用方法を学べる書籍です。 内容紹介書は次の2つのテーマを扱います。 GCのアルゴリズム(アルゴリズム編)GCの実装(実装編)アルゴリズム編では、これまでに考案されてきた数多くのGCアルゴリズムの中から、重要なものを厳選して紹介します。伝統的かつ基的なものから、やや高度なアルゴリズムを選定しています。GC独特の考え方や各アルゴリズムの特性などを理解していただくのがアルゴリズム編の最大の目的です。 実装編では、筆者らが選定した言語処理系のGCを読み進めていきます。アルゴリズム編では理論をしっかり学び、実

    ガベージコレクションのアルゴリズムと実装
  • Ruby 2.1がガベージコレクションを変更,大規模システムでの批判に対処

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Ruby 2.1がガベージコレクションを変更,大規模システムでの批判に対処
    iwadon
    iwadon 2013/09/24
  • mrubyのGCの仕組みを調べた - ブレ男のブログ

    2013年4月18日木曜日 mrubyのGCの仕組みを調べた 時刻: 0:09 動機 LuaのAPIは、Lua内部で扱われる値に関してスタック上であれこれ操作出来るだけで、値自体を直接取得したり作成することはできない。値を取り出したいときはスタック上のある場所にある値の型を調べて、その型の値を取り出すAPIを呼び出す、という具合になっている。この場合、処理系で扱う値はすべて処理系側で管理されているので、ガベージコレクト(GC)できるのもわからんでもない。 しかしmrubyAPIではスクリプト内部で扱う値をmrb_valueとしてC言語側に直接取り出せる。この場合処理系の管理を逃れてしまうことはないのか。またCの関数でmrubyのオブジェクトを作成した瞬間にGCが走った場合に、まだmrubyで管理している変数からの参照がなくて、解放されてしまったりしないのか。 大昔の事しか知らないけど

  • C++のGC談義

    “GC入ったらもはやC++ではない派”から“なんでもありのC++だからこそGCも入れろ派”まで、某コピペのように誰か分類作ってください。 寝る直前にババッと関係する発言をかき集めただけで、ほぼ時刻順に並べただけです。読みやすくないのは勘弁ください。 「自分のつぶやきを載せないで欲しい」、あるいは逆に「自分のが載っていない」というかた、誰でも編集可ですので、どうぞ削除や追加をお願いいたします。

    C++のGC談義
  • GitHub - kazuho/picogc: a tiny, portable, precise, mark-and-sweep GC in C++

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - kazuho/picogc: a tiny, portable, precise, mark-and-sweep GC in C++
    iwadon
    iwadon 2012/03/30
  • C++ のヘッダファイルを #include するだけで使える GC 書いてみた - kazuhoのメモ置き場

    そういえば C++ のヘッダファイルを #include するだけで使える GC を書きました。使い方は下のサンプルコードを見てもらえばいいとして、特徴としては、 ヘッダファイルを #include するだけで使える C++ の標準機能だけを使っているのでポータブル*1 mark-and-sweep, precise GC ってなあたりでしょうか。コードは GitHub - kazuho/picogc: a tiny, portable, precise, mark-and-sweep GC in C++ にあります。 C++プロジェクトで、ちょっとここだけは GC がほしいんだけど、ってなケースで使いやすいと思います。速度も、そこそこでるんじゃないかな*2。 というわけで、以下、サンプルコード。軽く説明しておくと、 GC を使うクラスは picogc::gc_object を継承する

    C++ のヘッダファイルを #include するだけで使える GC 書いてみた - kazuhoのメモ置き場
  • The Azul Garbage Collector(翻訳)

    原文 翻訳: 中村 成洋 Introduction Java言語の仕様はGCによって未使用領域を再利用することが規定されており、手動のメモリデアロケーションを禁止する。 GCは必要とされないオブジェクトを解放するという心配事からプログラマを解放する。 また、GCはいくらかの一般的なバグの発生を防ぐ、たとえばメモリリーク、ダングリング・ポインタのバグ、二重freeバグである。 GCは明瞭なアドバンテージを持つが、いくらかの問題も持っている。 もっとも重要な問題は、GCの実用的な実装(商用Javaランタイム)が大抵予測不能な「ポーズ」をコレクション時に伴うのである。 Javaプログラムのサイズと複雑さが拡大するにつれ、GCのポーズは、Javaソフトウェアアーキテクトのますます重要な問題となっている。 これを回避するためにエンタープライズJavaで広く使用されている技術は、プログラムを分散させる

  • 『徹底解剖「G1GC」 アルゴリズム編』発売!! - I am Cruby!

    g1gcGCLoverのみなさん、お待たせしました。 GCのスピンオフとなる新著、『徹底解剖「G1GC」 アルゴリズム編』が発売中です! 達人出版会様の以下のページからご購入下さい。 なんと600円です!!! もうすぐにでもポチっちゃってください!!!!! 徹底解剖「G1GC」 アルゴリズム編 - 達人出版会 どういう内容なの?まえがきをみるとよくわかります。 今回はOpenJDK7(いわゆるJava7)に新しく実装された「G1GC(Garbage First Garbage Collection)」というGCの謎を解明していきます。 G1GCの大きな謎として「GC停止時間を予測できる」というのがあります。書 ではその謎の回答を何十ページもかけて解説しています。 G1GCについて書かれた資料として、Detlefsらの英語の論文(Detlefs04)があ ります。 ところが、これは謎

    iwadon
    iwadon 2011/06/28
    ポチッた。
  • libauto

    Introduction libauto is a scanning, conservative, generational, multi-threaded garbage collector. Specifically, it is the garbage collector used by the Cocoa frameworks within Mac OS X Leopard and Xcode, the premiere development environment for Mac OS X and iPhone application development, is one of several garbage collected applications that shipped with Leopard. Note The implementation of the lib

  • MeixnerGC

    Runn is a modern resource and capacity planning platform that gets remote teams on the same page. Runn is best suited for project managers, operations leads, resourcing managers and other people responsible for project delivery. Runn has a modern and easy-to-use interface that provides your team with a shared view of all the people and projects in your organization. Plan new work alongside existin

    iwadon
    iwadon 2010/10/26
  • われわれは、GCをX倍遅くできる

    1. われわれは、GCをX 倍遅くできる We can make the GC X times slower than the original nari/中村 成洋 ネットワーク応用通信研究所 われわれは、GCをX倍遅くできる - We can make the GC X times slower than the original Powered by Rabbit 0.6.5 5. 自己紹介 ✓ nari/中村 成洋 ✓ @nari3, id:authorNari ✓ NaCl勤務 4/221 われわれは、GCをX倍遅くできる - We can make the GC X times slower than the original Powered by Rabbit 0.6.5 6. 自己紹介 ✓ CRubyコミッタ ✓ 主にGCについて考える ✓ 「俺がGCだ」 (こうですか、わ

    われわれは、GCをX倍遅くできる
  • 「ガベージコレクションのアルゴリズムと実装」という本を書きました。

    gcbook, gcai, GCGCLoverのみなさん、お待たせしました。「ガベージコレクションのアルゴリズムと実装」の情報公開です。 書名:ガベージコレクションのアルゴリズムと実装 著者:中村 成洋/相川 光 監修:竹内 郁雄 ページ数:472ページ 体価格:3,200円 発売開始日:2010年3月17日(水) ※地域・書店によって遅れることがあります ISBN:978-4-7980-2562-9 C3055 読み所 書は次の2つのテーマを扱います。 1.GCのアルゴリズム(アルゴリズム編) 2.GCの実装(実装編) アルゴリズム編では、これまでに考案されてきた数多くのGCアルゴリズムの中 から、重要なものを厳選して紹介します。伝統的かつ基的なものから、やや 高度なアルゴリズムを選定しています。GC独特の考え方や各アルゴリズムの特 性などを理解していただくのがアルゴリズム編の最大

    iwadon
    iwadon 2010/03/03
    読みたい。
  • TinyGC - .mjtの日記復帰計画

    http://tinygc.sourceforge.net/ 1ソース完結の保守的GC。APIはBoehm GC互換らしい。 スタック領域やstaticの検出のようなプラットフォーム依存の問題はバッサリ切り落としている。渋いところを突いている。 しかし、TinyGCの想定している領域(16bitプロセサのようなメモリ制限のきついデバイスでの保守的GC)ってどの辺に需要が有るんだろうか。。

    TinyGC - .mjtの日記復帰計画
    iwadon
    iwadon 2010/01/11
  • TinyGC - Tiny Garbage Collector

    Preface TinyGC is an independent implementation of the API of the well-known Boehm-Demers-Weiser Conservative GC ("BDWGC" or "BoehmGC" for short). TinyGC has been initially developed as a part of the JCGO project to be used as a BoehmGC replacement. At present, TinyGC is a standalone project. Download To get the latest TinyGC stable release source code, please visit "Browse files for TinyGC". Targ

    iwadon
    iwadon 2010/01/11
  • Boehm GC for iPhone パッチが流れてますね - higepon blog

  • PythonのGCについて

    PythonのGarbageCollection 原文 Neil Schemenauer (翻訳:中村 成洋) ポータブルなGarbageCollection 概要 循環参照はリスト,タプル,インスタンス,クラス,辞書,関数に伴って見つかります. インスタンスの __del__ メソッドは正常に取り扱われます. 新しいタイプをGCの対象に追加するのは簡単です. このGCが有効なPythonは,通常のPythonとバイナリ互換です. 世代別GCが動いています(今は三世代).このオーバヘッドをpybenchで測ったら,大体4%くらい占めていました. 実質的に,すべての拡張モジュールは,不変に(私は,標準的な配布において 新しいものとcPickleを修正しなければなりませんでした)ならなければなりま せん.gcと呼ばれている新しいモジュールは,コレクターを調整して,デバッ ギングオプションをセッ

  • throw Life - Dalvik VMのオブジェクト管理についての概要

    GCに続き、Dalvik VMのオブジェクト管理についての概要です。オブジェクトの管理はBitmapで行っていますが、その実装にはBionicと連携した美しいテクニックが含まれていることが分かりました...

  • GitHub - authorNari/minigc: minimum gc

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - authorNari/minigc: minimum gc
    iwadon
    iwadon 2009/02/22
  • Java SE 6 Update 14のEarly Access公開、G1ガーベージコレクタが利用可能に | エンタープライズ | マイコミジャーナル

    Java SE 6開発チームは11日(米国時間)、Java SE 6の将来のリリースとなるJava SE 6 Update 14のEarly Access版を公開した。主な変更点は以下の2つ。 Windows JREにおけるサービスタグのサポート Java HotSpot 14へのアップデート 特筆すべきは後者で、HotSpot 14では新しいガーベージコレクタ「Garbage-Firstガーベージコレクタ(以下、G1 GC)」が利用可能となる。G1-GCはJava SE 7で正式採用される予定となっているオープンソースのGCだ。 現在のHotSpotでは「世代別GC」と呼ばれる手法が採用されている。これはヒープ領域をYoung領域とOld領域(Tenured領域)に(物理的に)分け、新しいオブジェクトはYoung領域へ、長く使用されているオブジェクトはOld領域に配置し、それぞれ別に管理

    iwadon
    iwadon 2009/02/18
  • Objective-CのGC「autozone」がオープンソース化された - I am Cruby!

    GC, Mac, Rubybbum’s weblog-o-mat » Blog Archive » AutoZone: The Objective-C Garbage Collector売り文句は It is actually a fairly generic scanning, conservative, generational, multi-threaded, language agnostic, collector. らしいが,はてさて.コードを眺める事にしよう.Index of /darwinsource/10.5.5/autozone-77.1AUTOZONEgeneric scanningBoehmGCと同じWriteBarrierの張り方みたい.ページ保護によってold世代からnew世代の参照を見張っているようだ.MarkSweepは使っておらず,Treadmillの変形