Skip to content
Commits on Apr 9, 2012
Commits on Apr 5, 2012
  1. Add manual redirection

    committed Apr 5, 2012
  2. Merge pull request #1 from qmx/docs

    committed Apr 5, 2012
    converting to markdown so the links are clickable
  3. @qmx
  4. List implementations

    committed Apr 5, 2012
Commits on Apr 2, 2012
  1. Do warmup 10 seconds for JIT

    committed Apr 2, 2012
Commits on Mar 29, 2012
  1. Update benchmark suite

    committed Mar 29, 2012
    Measure elapsed time at inside of execute()
    Split without array size
  2. Add RBTree#empty? to avoid EMPTY reference

    committed Mar 29, 2012
    It needs for delete anyway (see lib/red_black_tree.rb in avl_tree gem.)
    and it avoids indirect indy binding with the current JRuby.
Commits on Mar 28, 2012
  1. Perf optimization for the tiny benchmark suite

    committed Mar 28, 2012
    Use IO#gets instead of File#each_line to get the method linked directly.
    IO#gets is already optimized about frame handling so indy can link
    directly.
  2. Add sample input (10000 rows)

    committed Mar 28, 2012
    jruby -Ilib bench/bench.rb resource/010000.csv
  3. Update benchmark script

    committed Mar 28, 2012
  4. Adopt Left leaning RBTree

    committed Mar 28, 2012
    I was unaware that LL RBTree is faster in addition to it's simpler.  See
    more detail at http://www.cs.princeton.edu/~rs/talks/LLRB/LLRB.pdf
    Trees are rebalanced in 'left leaning' manner after insert so you don't
    see '-' as results of dump_sexp (See updated test expectations.)
    
    Thanks Gaku Nakamura-san for letting me know this by implementing Scala
    version of RBTreeMap!
Commits on Mar 27, 2012
  1. Update benchmark script

    committed Mar 27, 2012
    Show elapsed time of the last execution.
  2. Make :color=, :right= and :left= be public

    committed Mar 27, 2012
    Who can understand 'protected methods' of Ruby in 5 minutes? :)
  3. Make EmptyTree as a subclass of RBTree

    committed Mar 27, 2012
    Reduce method definition duplication.  It improves the performance in
    addition to simplify the code for explanation.
  4. Do loop for retrieval

    committed Mar 27, 2012
    No need to do recursive call.  Perf becomes slightly better.
  5. Make rebalance code simpler

    committed Mar 27, 2012
    For perf and readability.  Introduced RBTree#need_rebalance? and removed
    unnecesarry conditions to be checked for rebalance after insert.
Commits on Mar 26, 2012
  1. Add benchmark script

    committed Mar 26, 2012
Commits on Mar 25, 2012
  1. Add RBTreeMap#dump_* for debugging

    committed Mar 25, 2012
Commits on Mar 23, 2012
  1. Test update for taking coverage

    committed Mar 23, 2012
  2. Remove unused methods (delete, etc.)

    committed Mar 23, 2012
    Not needed for this benchmark.  Use avl_tree instead for actual
    Red-black tree implementation.
  3. Revert the change to height definition

    committed Mar 23, 2012
    Also, remove height() health check from regulation.
Commits on Mar 19, 2012
  1. Merge RBTreeHash into RBTreeMap

    committed Mar 19, 2012
    extract required impl only
  2. Make put()'s return value undefined

    committed Mar 19, 2012
    As the result of discussion in ML.  No need to care for benchmarking.
    Also fixed the bug in height definition.  Height of empty list is 1, not
    0.
Commits on Mar 16, 2012
  1. Initial version RBTreeHash in avl_tree gem

    committed Mar 16, 2012
    TODO
     - optimize
     - make more easier to read
  2. Add regulation document

    committed Mar 16, 2012
Something went wrong with that request. Please try again.