5

64ビットシナリオでのSmalltalkのサポートレベルは2つあるようです。

  • 64ビット用の仮想マシン
  • 64ビットの仮想イメージ

64ビットイメージのSmalltalkの実行速度が32ビットイメージよりも大幅に遅いかどうかはわかりません。よろしければ、あなたの経験についてコメントしてください。両方(64ビットVM +イメージ)または64ビットVMのみをサポートするSmalltalk実装はありますか?

4

3 に答える 3

3

きしむための古い64ビットイメージとVMがあります。Esugでは、Pharoの64ビットサポートを取得するようにプッシュしましたが、それはゆっくりと進んでいます。[編集]そして、Linuxx86用の実験的な64ビットのsqueakvmとイメージがあることがわかりました。[/ edit]squeakvmはコグ前のものでした。Eliot Mirandaは、64ビット用の新しいバイトコードセット/画像形式に取り組んでいます。それが終わったら、Pharo、Squeak、Newspeakがそれに移行すると思います。

64ビットイメージは32ビットイメージよりも実行速度が遅くなる可能性がありますが、これはおそらくほぼ一定の要因であるため、コンピューターの速度が向上し続けるにつれて、関連性が低下します。さらに重要なのは、大量のRAMを使用できるため、開発者は時空間のトレードオフを行うことができるということです。つまり、彼の時間とラムのコストの間です。西ヨーロッパと米国では、4GBのエンジニアリング時間は1時間未満です。

より大きなイミディエートオブジェクト(2 ^ 62/63までのsmallints、smallfloats?)を使用する場合、64ビットイメージの方が高速になる可能性があります。Gemstoneには、はるかに優れたスケーリングのコレクション実装があり、元の実装は単一の配列をバッキングストアとして使用します。大規模なコレクションの場合、バッキングストアとして少なくとも配列の配列が必要です。

画像内のすべてのデータをロードしてから、分析、変換、クリーニング、およびエクスポートを開始することを強く希望するデータ変換をいくつか実行しました。ディスクから作業すると、プロセスが100分の1に遅くなります。これにより、フィードバックサイクルが数分から数時間または数日に短縮されます。それまではシステムについて十分に理解していないため、フィードバックサイクルは、特にプロセスを開始するときに非常に重要です。プロセスの後半でそれを分割できるかもしれませんが、それは単にそこにない知識を前提としています。

于 2012-10-28T10:54:04.747 に答える
1

VisualWorks と GemStone の両方が実際の 64 ビット VM/イメージをサポートしていると思います

于 2012-10-27T08:58:38.833 に答える
0

Linux 用の最新の 4.10 Squeak VM は 64 ビット イメージをサポートしています: http://squeakvm.org/unix/

于 2012-10-28T14:41:16.547 に答える