Carakan と Vega
By Go Uehiromopera. Thursday, February 5, 2009 10:30:19 AM
Carakan という新しい JavaScript エンジン と Vega というベクターグラフィックスライブラリです。
さっそくアンドレアスが、二つの記事をわかりやすくまとめてくれました。近頃 SunSpider の結果を見てはため息をついていた Opera ファンとしてはワクワクする内容なのでどうぞご覧ください。
原文:Opera Core Concerns: Carakan, Vega - Opera's vector graphics library
コピペしてからアレンジ:andreasbovens、訳:mopera
今回は、先日コロラド州デンバーで行われた Web Directions North において発表された Opera の次期 ECMAScript/JavaScript エンジン "Carakan" とベクターグラフィックスライブラリ "Vega" をご紹介します。
Carakan
数ヶ月ほど前から、Opera の開発チームは Opera の新しい ECMAScript/JavaScript エンジンの実装に取り組んでいます。Futhark と呼ばれる現在の ECMAScript エンジンは公開当初、市場で最も速いものでした。このエンジンは最大限の実行速度を達成するというより、コードのフットプリントとメモリ使用量を最小にすることが優先されていました。これは多くのプラットフォーム上で動作する Opera にとって正しい選択でした。しかしながらウェブ環境は常に変化しており、次世代の高度なウェブアプリケーションは、より速い ECMAScript の実行速度を必要とするようになっています。そのため我々は、最高速の ECMAScript エンジンを開発し市場に提供するというチャレンジを再度開始しました。
Carakan(発音: チャラカン)という名前は、Opera の以前の ECMAScript エンジンである Futhark、Linear A、Linear B と同じように書記体系、文字の名称に由来します。我々は以前のエンジンに対して主に3つの領域に改良を加えています:
レジスタベースのバイトコード、ネイティブコード生成機能、自動オブジェクトクラス化。
Carakan はどのくらい速いのでしょうか? 通常のクロスプラットフォーム用のスイッチメカニズム(ネイティブコードなし)を使用した Carakan は Presto 2.2 (Opera 10 Alpha) に比べ SunSpider ベンチマークにて約 2.5 倍高速に動作します。Opera は多くの異なるハードウェアアーキテクチャに移植されているため、このクロスプラットホーム上での改良は非常に重要です。Carakan のネイティブコード生成は未だフルスケールのテストが行える段階に達していませんが、幾つかの個別のベンチーマークテストでは 5 から 50 倍高速に動作する事が確認できます。
Vega
Vega はベクターグラフィックスライブラリを必要とする SVG サポートの開発を開始したすぐ後に誕生しました。まず我々は SVG の実装にあたり、要件を満たした(高速で、メモリの使用量が少なく、TV からデスクトップコンピュータまでの幅広いプラットフォーム上で動作する)ライブラリを探しました。しかし我々の必要とするものが見つからなかったため、独自に作成する事を決定しました。Vega が完成されて <canvas> のサポートも追加されました。
Vega の新しい追加機能はバックエンドにハードウェアアクセラレーターを使用する事です。今のところ OpenGL と Direct3D をバックエンドとして使用しています。現在開発中のコア Presto 2.3 では、Opera の全てのレンダリングを Vega を通して行なうことができます。これはプラットフォーム特有のコードを Vega に置き換えられる事を意味しています。将来的にはレンダリングに Vega を使用する事が必須になると思われますが、Presto 2.3 では既存のレンダリング用のバックエンドを使用する事もできます。
Vega には3つの利点があります:
- 第一に、新しい CSS3 の background と borders はベクターグラフィックスライブラリを使用したほうが簡単に実装できます。Presto 2.3 では CSS3 の background と borders を限定的にサポートしますが、これは Vega のレンダリングを使用した場合に限られます。
- 第二の理由は、ベクターグラフィックスにおいてハードウェアアクセラレーションをサポートすることです。
- 最後の理由は、この機能により我々は UI やウェブページに対する画像エフェクトを簡単に追加する事ができます。
さらに詳しい情報がこの数ヶ月の間に公開されるでしょう。Stay tuned!!




















Opera9.5 # Thursday, February 5, 2009 2:41:19 PM
atsuko # Thursday, February 5, 2009 2:59:18 PM
10 に Carakan を載せて出して欲しい。
Opera は頻繁にバージョンが上がるけれど
実際のところ目玉になるような機能アップがされず
徒にバージョン番号があがっているように感じる。
その度にプロファイルを作成し直すのは正直しんどい。
メジャーアップデートの頻度は低くていいから
いいモノをいいクオリティで出して欲しい。