GA将?開発日記~王理のその先へ~

ネタ勢最強を目指して絶賛開発中。

POPCNT命令の使い方メモ

 VC++2008で動作確認した。

#include <intrin.h>

unsigned __int64 i64 = 222482;
unsigned __int64 count = __popcnt64( i64 );

 Core i7だとcountに結果が入る。Core 2だと__popcnt64の部分でエラー発生。

 速度とかは計測してない。てか、特定CPUでしか動かないんだと使いづらいので、使うかどうか検討中。

 ついでに、CPUのPOPCNT命令を使ってるのか、それともソフトウェア的に処理をしているのかも未検証。