タグ

rubyとbenchmarkに関するmuddydixonのブックマーク (2)

  • Rubyで高速にパターンマッチするgemを作った - TODESKING

    Ripperの出力とかParseletの解析結果などを扱うのに、ArrayやHashでパターンマッチして中身を取り出す処理を多用する必要があったのでパターンマッチライブラリを作りました。 GitHub: todesking/patm 同様のライブラリとしてはpattern-matchがあります。 機能面ではpattern-matchのほうが豊富ですが、PATMは高速なのが売りです(DSLによるメソッド定義を使用した場合、ネイティブRubyコードにコンパイルされるため50倍くらい速い。case式内で使用した場合でも7倍程度)。ベンチマークについてはこの記事の下のほう参照。 主な機能 DSLによるメソッド定義 extend Patm::DSL することで define_matcherを使ったメソッド定義が可能です。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

  • abコマンドのベンチマークパターンを書けるab-mrubyを作った

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 Web屋さんはみんな大好きabコマンドは便利ですが、オプションは複雑で数も多く、複数のホストにそれぞれに対応するオプションを指定してテストしたりすると結構カオスになりがちです。 最近では、httperfやweighttp等のabに変わる次のHTTPベンチマークツールが出てきていますが、やっぱりまだまだ現役で良く使うのはabコマンドだと思います。 そこで、今回はabコマンドの複数のベンチマークオプションのパターンを1つのRubyスクリプトに定義しておいて、それをabコマンドで読み込む事で動的に任意のパターンでベンチマークを行うab-mrubyを作りました。外出しで書いたRubyスクリプトとabコマンドの連携は、ab-mrubyと見てわかるように

    abコマンドのベンチマークパターンを書けるab-mrubyを作った
  • 1