年の瀬にどうしてもCSVを並列にパースしたくなって、PartialCsvParserというC++のライブラリを作った。
- 1スレッドでも高速だし複数スレッドで使うとちゃんとスケールする
- ヘッダファイルだけインクルードすればコンパイルなしで使える
- パブリックドメインなので自分のリポジトリに
git add
とかしてもおk
という3拍子揃ったやつです。
細かいことはプロジェクトのページを見ていただくとして、ブログには頑張ってベンチマークとった話と、全然スケールしなかったのに2行追加しただけでグンと並列性能が上がった話を書く。
続きを読む
カーネル/VM Advent Calendar の34日目として書きます.
記事の内容自体はこのイベントと関係ありませんので,どなたでもお楽しみ下さいませ.
今回は 自分の前回の記事 で見つけた誤りを訂正しつつ,
Intelの一部CPUがサポートするSSE(Streaming SIMD Extensions)命令により1clockで8個の単精度浮動小数点演算を行なう方法を紹介します.
なるべく前回の記事とは独立した記述を心がけます.
続きを読む
はじめに
この記事は,前回のエントリの続きものです.
まだご覧になっていない方は,前回分をお読みになってからこちらの記事を見てください.
続きを読む
perfについて少し
最近のLinuxでは,perfという便利なパフォーマンス解析ツールが使えます.
aptやyumなどのパッケージ管理ツールで入れられると思いますが(Debian系だとlinux-tools*って名前のパッケージのはず),詳しい使い方はここでは解説しません.
さて,このperfには色々な使い方がありますが,中でもperf statはプログラム実行中に起こるハードウェア的なイベントを取得できるものです.
使用例はこんな感じ.
続きを読む