- 【C++】高速化手法【SSE】2 [転載禁止]©2ch.net
79 : ◆kXDiHQuNQ2 [sage]:2015/07/05(日) 08:14:07.41 ID:rj88vDKP - >>77
SSE化できそうなところはPointSetというクラスですが、 じつはもうSSE化してます。 でも速くなんなかった。 なぜ速くならなかったか教えていただけると助かります。 >>78 PointSetボトルネックになってないんですかね。 結構使ってるはずなんですが。
|
- 【C++】高速化手法【SSE】2 [転載禁止]©2ch.net
82 :デフォルトの名無しさん[sage]:2015/07/05(日) 10:22:22.43 ID:rj88vDKP - なんか性能測りたい関数がインライン展開されちゃって測れないっぽいT△T
|
- 【C++】高速化手法【SSE】2 [転載禁止]©2ch.net
84 :デフォルトの名無しさん[sage]:2015/07/05(日) 10:50:19.25 ID:rj88vDKP - ビットフィールドの立ってるビット数える関数をSSE4.2のpopcnt使ったらえらい速くなったんだが?
|
- 【C++】高速化手法【SSE】2 [転載禁止]©2ch.net
85 :デフォルトの名無しさん[sage]:2015/07/05(日) 10:59:07.88 ID:rj88vDKP - ちょっと出かけます。
夕方には帰ってくる。
|
- 【C++】高速化手法【SSE】2 [転載禁止]©2ch.net
95 :デフォルトの名無しさん[sage]:2015/07/05(日) 17:09:15.78 ID:rj88vDKP - gprofの結果ビットボードを座標のベクタに変換する関数PointSet::toVector()が時間かかってることが分かった。
すまん、ちょっと飯食ってくる。
|
- 【C++】高速化手法【SSE】2 [転載禁止]©2ch.net
97 :デフォルトの名無しさん[sage]:2015/07/05(日) 19:12:24.15 ID:rj88vDKP - PointSet::toVector()は一回最適化試みた箇所なんだよなぁ
正直これ以上アイディアうかばん。
|
- 【C++】高速化手法【SSE】2 [転載禁止]©2ch.net
101 :デフォルトの名無しさん[sage]:2015/07/05(日) 20:02:29.73 ID:rj88vDKP - >>98
レスありがとうございます。 そこはビットボードのビットが立ってる数を数えています。 SSE4.2のpopcntに置き換えたら大分速くなりました。 >>99 そこはビットボードの座標pのビットが立ってるかどうか返す関数ですね。 正直そこはそれ以上最適化できないと思ってますが、うまい手ありますかね。
|