InfoQ

InfoQ

トピック・タグ別の表示

Threadingに関するすべてのコンテンツ


Threadingに関する最新コンテンツ

コード最適化の限界: 新しいSingletonパターン実装

トピック
Architecture,
プログラミング

私は、java Singletonパターンがスレッドセーフではなく修正できないということが、プログラミングの世界ではよく知られている事実であるということを発見しました。Singletonパターンの特定の実装を提供し、これらの実装がどのように壊れる可能性があるかを公正に解説し、一般化された主張で結論が出されています。

Rubyの並行性、アクター、およびRubinius - MenTaLguY氏へのインタビュー

トピック
JRuby,
プログラミング,
パフォーマンス&スケーラビリティ,
Ruby

Ruby 1.9でのファイバー (コルーチン) の追加、および最近のErlangおよびアクターの人気など、あまり知られていない概念がRubyプログラミングの世界に入ってきている。並行性を考えたときにRubyの世界で何が使用可能であるかを大まかに理解するため、長年RubyコミュニティのメンバーであるMenTaLguY氏に話を伺った。

Threadingに関するNews

RubiniusがEngineYardのAppCloudに登場、1.9とGIL除去に関する作業は継続中

トピック
ランタイム,
パフォーマンス&スケーラビリティ,
動的言語,
Ruby

EngineYardはRubiniusをAppCloud PaaSサービスに提供し始めた。InfoQはEvan Phoenix氏にRubiniusの状態、新しいパフォーマンスツール、GIL除去の状況について聞いた。

MacRuby まとめ: 0.7 リリース,GCD ベースの Web サーバ,BridgeSupport

トピック
ランタイム,
リッチクライアント/デスクトップ,
Ruby on Rails,
動的言語,
Ruby

MacRuby 0.7 が公開された。通常のパフォーマンスや互換性の改良に加えて,Ruby 1.9.2 との互換性も向上している。Snow Leopard の Grand Central Dispatch (GCD) との密な結合を実証するため,ControlTower という Rack ベースの Web サーバもリリースされている。さらに,新しい BridgeSupport によって,すべての API へのアクセスとスクリプト記述が可能になった。

Rubinius 1.1 - そしてGILの将来

トピック
デバッグ,
ランタイム,
Ruby on Rails,
Ruby

Rubinius 1.1がリリースされた。JITと性能が改善され、デバッグ機能とプロファイリング機能が強化された。また、GILのアルゴリズムも見直された。しかし、GILは間もなく過去のものになるだろう。RubiniusプロジェクトのHydraと名付けられたブランチでは、GILのないRubiniusが育てられている。JRuby、IronRuby、MacRubyのようなGILのないVMの仲間入りするのも時間の問題だ。InfoQはこのHydraブランチについてEvan Phoenix氏に話を聞いた。

JRuby Roundup:JRuby-Profで高速プロファイリングが可能に、JRuby::Synchronizedで同期の自動化

トピック
JRuby,
パフォーマンス&スケーラビリティ,
Java,
Ruby

JRuby-Profは、新しいオーバヘッドの小さいJRuby用のプロファイラで、単純なJavaプロファイラと違って、きれいなRuby固有のレポートを生成する。JRubyの新しいフィーチャであるJRuby::Synchronizedモジュールは、拡張すれば、クラスの全てのメソッドをsynchronizedにできる。

動的言語総まとめ : PythonのGILが徹底改善されるも廃止はされない。SqueakがAndroidに移植された。

トピック
プラットフォーム,
ランタイム,
Linux,
パフォーマンス&スケーラビリティ,
Architecture,
Ruby

Pythonの高速化を支援するUnladen SwallowプロジェクトはメインストリームのPythonへ統合することを提案した。このプロジェクトの目標のひとつはGILを削除することだった。 Antoine Pitrou氏によるPythonの新しいGILはマルチコアCPU上で、よりスムーズに動くようになり、今までよりも邪魔にならなくるだろう。また、Squeak Smalltalk が Android上へ移植された。

Clojure 1.1,効率のためにトランジェントとチャンクシーケンスを追加

トピック
言語設計,
ランタイム,
Architecture,
動的言語,
コンパイラ,
Ruby,
言語,
パフォーマンス&スケーラビリティ,
Java

Clojure 1.1 RC1 が公開された。永続的データ構造に可変性の制御機能を与える "トランジェント(Tranjent)",遅延シーケンスを効率化する "チャンクシーケンス(Chunked Sequence)" の導入によって,関数プログラミングのコンストラクタに関するオーバーヘッドが改善されている。InfoQ では,これら改良点がどのように動作するかを調査した。

MacRuby 0.5ベータが登場。JIT、AOT、GCDサポート、GILの削除を実現

トピック
パフォーマンス&スケーラビリティ,
コンパイラ,
Ruby

MacRuby 0.5の最初のベータがリリースされた。これは新しいVM、JIT、AOTを備え、GILの削除を実現している。InfoQはMacRubyコアチームにインタビューして、MacRubyの状況とMacRubyを使ってiPhoneアプリが書けるかなどについて聞いてみた。