forked from mruby/mruby
-
Notifications
You must be signed in to change notification settings - Fork 4
RegexpTesting
kouki-o-iij edited this page Mar 22, 2013
·
16 revisions
- iij/mruby iij と比較してデグレードが発生しないこと
- メモリリークをしていないこと
- 大量のオブジェクト生成時、大量のテキストマッチング時に異常が発生しないこと
- ここらへんも加味すること https://github.com/iij/mruby/issues/77
count | before | after |
---|---|---|
3000 | 2552kb | 1368kb |
5000 | 2552kb | 1364kb |
10000 | 2552kb | 1364kb |
15000 | 2552kb | 1368kb |
20000 | 2552kb | 1368kb |
50000 | 2552kb | 1368kb |
100000 | 2552kb | 1368kb |
count | before | after |
---|---|---|
3000 | 2556kb | 1420kb |
5000 | 2556kb | 1424kb |
10000 | 2556kb | 1420kb |
15000 | 2556kb | 1424kb |
20000 | 2556kb | 1420kb |
50000 | 2556kb | 1420kb |
100000 | 2556kb | 1420kb |
count | before | after |
---|---|---|
3000 | 2640kb | 1476kb |
5000 | 2640kb | 1480kb |
10000 | 2640kb | 1480kb |
15000 | 2640kb | 1476kb |
20000 | 2640kb | 1480kb |
50000 | 2640kb | 1480kb |
100000 | 2640kb | 1476kb |
- iij/mruby mruby-support-regexp の File は mruby-support-io を利用
- alice.txt は ここから取得(http://gaia.cs.umass.edu/wireshark-labs/alice.txt)
- alice.txt 総行数: 3598
- (the|The)マッチ行数: 1555
- ソースコード
/usr/bin/time -f "%M kb" ../mruby-iij/bin/mruby bench_regex.rb
test = 0
t1 = Time.now
100.times {
10000.times {
test += 1
re = Regexp.new(test.to_s)
e = re.match(test.to_s)
}
GC.start
}
puts "Regexp #{Time.now - t1} sec"
repo | time | memory |
---|---|---|
iij/mruby | 45.655449 sec | 3164 kb |
mruby-support-regexp | 10.551873 sec | 1760 kb |
ruby1.9.3 | 3.325488378 sec | 6160 kb |