BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Mono: SGen GCやその他の改善、PlayScript, CppSharp

Mono: SGen GCやその他の改善、PlayScript, CppSharp

原文(投稿日:2013/08/22)へのリンク

先月、Mono 3.2がリリースされた。GCの改善などが行われている。PlayScriptのようなツールの統合も行われた。CppSharpも統合作業が行われている。

SGen GCはMono 3.2でさらに改善された。とりわけ、次のような点が改善されている。

  • 参照されやすいオブジェクトのワークロード。少数の新しい世代のメモリ上の位置も変えられない、参照されやすいオブジェクトは古い世代のオブジェクトから盛んに参照される。これによって大量のremembered setを作成しなければならない。これを避けるため、次の大規模コレクションが発生するまでは参照されやすいオブジェクトはなくならないようにした。
  • 大量のスタックを持つスレッドのワークロード。大きなスタックを持つスレッドが大量にある場合、保守的なスキャンを実行しなければならない。これはピン付けのステージに多大な圧力を及ぼす。ピンのためのキューが大きくなってしまうからだ。これを避けるため、SGenはピンのキューにハッシュフィルタリングを採用した。これによって、ピンのキューの平均サイズは小さくなり、個別のオジェククトではなく、大きなブロックにピン付けできるようになった。

また、遅延を少なくしなければならないコードの場合には、Major Collectorを無効にできるようになった。

SGenは現在MonoのデフォルトのGCだ。

また、モバイル開発者向けには開発生産性を向上させる取り組みがなされている。

  • 漸進的なビルドとアップロードによるiOS開発の改善
  • モバイルのフットプリントを減らすための、機能無効化によるサイズの低減

Monoで利用できるフレームワークも改善されている。MonoにはMicrosoftがオープンソース化したさまざまなフレームワークが同梱されている。現時点でサポートしているのは、 –  

他にも、

Miguel de Icaza氏は先月のMonkeySpaceカンファレンスで現在作業中の案件について話している。

  • PlayScriptZyngaが作成したフレームワークで、移植を行わなくてもモバイルとウェブで同じゲームが動作するようにする。PlayScriptのコンパイラはMonoで作られている。Monoチームは現在、統合作業を行っている。
  • C++ Interopは次の2つによって推進されている。

プレゼンテーション“What is new in Mono?”とMono 3.2のリリースノートで詳細を確認できる。

この記事に星をつける

おすすめ度
スタイル

BT