gm300の日記: memchr vs strchr performace
日記 by
gm300
RH 9 + gcc 3.4.2 での結果。
1,196,001,238 ???:strchr
707,810,981 ???:__ubp_memchr
40% くらい早い。同じ文字列を繰り返し処理するばあい、文字列の終りはわかるはずなので、memchr が使えるケースは多いはず。
後は platform 毎に違う glib のできぐあい。
x86 の文字列用命令は文字列の終りは、 データの内容ではなく、文字列の長さで指定されるところからくる差だと思う。
gcc のドキュメントを探していたら gcc 3.4.3 が出ていたので早速 install. 少し調子を見たら、一台は gcc 3.4.3, もう一台は gcc 4 にしようか。
それにしても、「コード」と「ホントのテキスト」の差はいったい何が目的?
1,196,001,238 ???:strchr
707,810,981 ???:__ubp_memchr
40% くらい早い。同じ文字列を繰り返し処理するばあい、文字列の終りはわかるはずなので、memchr が使えるケースは多いはず。
後は platform 毎に違う glib のできぐあい。
x86 の文字列用命令は文字列の終りは、 データの内容ではなく、文字列の長さで指定されるところからくる差だと思う。
gcc のドキュメントを探していたら gcc 3.4.3 が出ていたので早速 install. 少し調子を見たら、一台は gcc 3.4.3, もう一台は gcc 4 にしようか。
それにしても、「コード」と「ホントのテキスト」の差はいったい何が目的?
memchr vs strchr performace More ログイン