Windows 用 Bitcoin x64

11 件のメッセージ BitcoinTalk Olipro, knightmb, Ground Loop, サトシ・ナカモト, Bitcoiner 2010年7月20日 — 2010年7月26日
Olipro 2010年7月20日 21:02 UTC 原文 ·

大量の実験、髪を引き抜くような思い、開発者への悪態の末、ついに MSVC で Bitcoin のコンパイルに成功した。

SSE2、LTCG、Intel64 優先を含むすべての最適化がオンになっている(まあ、自分のプロセッサーだし)。

パフォーマンスの違いは?作成した 2 つのビルド(32 ビットと 64 ビット)はパフォーマンスがほぼ同等だが、bitcoin.org で現在入手できる標準ビルドとは同等ではない。

自分のクアッドコアで、bitcoin.org の標準 Windows バイナリでは約 1700k hash/秒。MSVC で作成したビルドでは 2500k hash/秒だ。興味のある人はいるだろうか?

Olipro 2010年7月26日 06:39 UTC 原文 ·

さて、ここで絶対に驚異的なパフォーマンスを紹介する。

SHA コンテキストのキャッシュ部分は tcatm の功績だ——これは素晴らしいパフォーマンスを提供する。さらに、Intel コンパイラーは並列化能力で Visual Studio に対して大幅なパフォーマンス向上を実現し、真価を発揮している。

パフォーマンス:4 コアで 4700khash/s、それ自体が物語っていると思う。

VS と Intel の両方のビルドを含めたが、比較にならない。Intel ビルドは VS を完全に凌駕している。

SHA 状態キャッシュ付き Bitcoin はここから取得

knightmb 2010年7月26日 15:33 UTC 原文 ·

物理的にはそうだが、仮想マシンを使えば例えば 3 コアの環境を設定できる。Windows は 3 コアでも 4 コアでも問題なく動作する。何コアあるかは気にしない。

Olipro 2010年7月26日 15:51 UTC 原文 ·
knightmbの投稿(2010年7月26日 06:33 UTC)

物理的にはそうだが、仮想マシンを使えば例えば 3 コアの環境を設定できる。Windows は 3 コアでも 4 コアでも問題なく動作する。何コアあるかは気にしない。

VMware はプロセッサー/コアの偶数のみを許可するが、8 コアを公開してから OS に 7 つだけ認識させるよう設定することはできると思う。

もし本当にそういうセットアップを持っているなら、CPU が実際に持っているよりも多くのプロセッサー/コアを選択している可能性が高い(これは可能だが、パフォーマンスにかなり悪影響を与える)。

knightmb 2010年7月26日 16:44 UTC 原文 ·
Oliproの投稿(2010年7月26日 06:51 UTC)
knightmbの投稿(2010年7月26日 06:33 UTC)

物理的にはそうだが、仮想マシンを使えば例えば3コアの環境を設定できる。Windowsは3コアでも4コアでも問題なく動作する。何コアあるかは気にしない。

VMwareはプロセッサー/コアの偶数のみを許可するが、8コアを公開してからOSに7つだけ認識させるよう設定することはできると思う。

もし本当にそういうセットアップを持っているなら、CPUが実際に持っているよりも多くのプロセッサー/コアを選択している可能性が高い(これは可能だが、パフォーマンスにかなり悪影響を与える)。

書いた時は Virtual Box のことを考えていた 😉

Ground Loop 2010年7月26日 18:03 UTC 原文 ·

デスクトップマシンで BitCoin を 7 アクティブコアに下げて、一般的な軽量 UI 用に 1 つ空けておこうかと考えていた。

Olipro 2010年7月26日 18:11 UTC 原文 ·
Ground Loopの投稿(2010年7月26日 09:03 UTC)

デスクトップマシンで BitCoin を 7 アクティブコアに下げて、一般的な軽量 UI 用に 1 つ空けておこうかと考えていた。

BitCoin のスレッドは自動的に低優先度に設定される。他のプロセスが CPU を使いたい時には自動的に CPU 時間を明け渡す

Oliproの投稿(2010年7月25日 21:39 UTC)

SHAコンテキストのキャッシング部分はtcatmの功績だ——これは絶対に素晴らしいパフォーマンスを発揮する。さらに、Intelコンパイラーがここで本領を発揮する。並列化能力により、Visual Studioと比べて大幅なパフォーマンス向上が得られる。

まだ Crypto++をベースにしているか?これをメインのソースコードに取り込もう。

Olipro 2010年7月26日 18:44 UTC 原文 ·
サトシ・ナカモトの投稿(2010年7月26日 18:41 UTC)
Oliproの投稿(2010年7月26日 06:39 UTC)

SHAコンテキストのキャッシュ部分はtcatmの功績だ。これだけでも実に素晴らしい性能が出る。さらに、ここではIntelコンパイラーの並列化能力が真価を発揮し、Visual Studioと比べて大幅な性能向上をもたらしている。

性能:4コアで4700khash/s。これだけ言えば十分だろう。

VSビルドとIntelビルドの両方を同梱したが、比較にすらならない。IntelビルドはVSを完全に圧倒している。

それはまだCrypto++をベースにしているのか?これを本流のソースコードに取り込もう。

いや、今は Crypto++じゃない。関連するソースのリンクは x86 スレッドを見てくれ。

Bitcoiner 2010年7月26日 19:43 UTC 原文 ·
knightmbの投稿(2010年7月26日 14:06 UTC)
Oliproの投稿(2010年7月26日 06:39 UTC)

さて、ここからは本当にとんでもない性能の話だ。

SHAコンテキストのキャッシュ部分はtcatmの功績だ。これだけでも実に素晴らしい性能が出る。さらに、ここではIntelコンパイラーの並列化能力が真価を発揮し、Visual Studioと比べて大幅な性能向上をもたらしている。

性能:4コアで4700khash/s。これだけ言えば十分だろう。

VSビルドとIntelビルドの両方を同梱したが、比較にすらならない。IntelビルドはVSを完全に圧倒している。

SHAステートキャッシュ版Bitcoinはこちらから入手できる

うわあ、こんな性能の跳ね上がり方は初めて見た。標準版から約250%の高速化、すごいな。あとは安定性がどうかを見てみよう。

これは別のやつを完全に圧倒している。私の AMD でもだ。

knightmb 2010年7月26日 20:37 UTC 原文 ·

そうだ、私のローエンドの 8 コアサーバーでも余裕で 10,000 khash/s は出る。これでほぼ誰もが大幅な高速化の恩恵を受けられるはずだ。