ビットコイン・インスティテュート

Windows用Bitcoin x64

12件のメッセージ 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日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%の高速化、すごいな。あとは安定性がどうかを見てみよう。

knightmb 2010年7月26日15:33 UTC

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

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

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

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

もし本当にそういうセットアップを持っているなら、CPUが実際に持っているよりも多くのプロセッサー/コアを選択していると賭けてもいい(そう、できるんだ、ただしパフォーマンスにはかなり悪影響が出る)。

knightmb 2010年7月26日16:44 UTC
Oliproの投稿(2010年7月26日15:51 UTC)
knightmbの投稿(2010年7月26日15: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日18:03 UTC)

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

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

Oliproの投稿(2010年7月26日06:39 UTC)

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

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

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

まだ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は出る。これでほぼ誰もが大幅な高速化の恩恵を受けられるはずだ。