Compare commits

..

No commits in common. "master" and "v1.2" have entirely different histories.
master ... v1.2

154 changed files with 2060 additions and 22188 deletions

7
.gitignore vendored
View File

@ -18,10 +18,3 @@ benchmark
*.log
test/load/unicorn/unicorn.rb
test/load/thin/config.yml
test/tools/data/
.rvmrc
Gemfile.lock
.idea/*
tmp

View File

@ -1,11 +0,0 @@
language: ruby
rvm:
- 1.8.7
- 1.9.2
- 1.9.3
script: bundle exec rake test:ruby
notifications:
email: false

28
Gemfile
View File

@ -1,28 +0,0 @@
source :rubygems
group :development, :test do
# Generic
gem "bundler"
gem "rake"
gem "json"
# Deployment
gem "git"
gem "redcarpet"
gem "yard"
# Testing
gem "mocha"
gem "shoulda"
gem "test-unit"
gem "ci_reporter"
gem "ruby-prof" unless RUBY_PLATFORM =~ /java/
gem "rake-compiler"
# Java
platforms :jruby do
gem "bouncy-castle-java"
gem "jruby-launcher"
gem "jruby-openssl"
end
end

168
README.md
View File

@ -1,64 +1,39 @@
# Documentation
This API documentation is available online at [http://api.mongodb.org/ruby](http://api.mongodb.org/ruby)
for all releases of the MongoDB Ruby driver. Please reference the exact version of the documentation
that matches the release of the Ruby driver that you are using. Note that the
[Ruby Language Center for MongoDB](http://www.mongodb.org/display/DOCS/Ruby+Language+Center)
has a link to API Documentation for the current release.
If you have the source, you can generate the matching documentation by typing
$ rake ydoc
Then open the file ydoc/index.html in your browser.
# Introduction
This is the 10gen-supported Ruby driver for [MongoDB](http://www.mongodb.org).
For the reference manual, use the links in the upper-left and upper-right corners for quick navigation to the following.
This documentation includes other articles of interest, include:
* [Alphabetic Index](_index.html)
* [Class List](class_list.html)
* [Method List](method_list.html)
* [File List](file_list.html)
1. [A tutorial](http://api.mongodb.org/ruby/current/file.TUTORIAL.html).
2. [Replica Sets in Ruby](http://api.mongodb.org/ruby/current/file.REPLICA_SETS.html).
3. [Write Concern in Ruby](http://api.mongodb.org/ruby/current/file.WRITE_CONCERN.html).
4. [GridFS in Ruby](http://api.mongodb.org/ruby/current/file.GridFS.html).
5. [Frequently Asked Questions](http://api.mongodb.org/ruby/current/file.FAQ.html).
6. [History](http://api.mongodb.org/ruby/current/file.HISTORY.html).
7. [Credits](http://api.mongodb.org/ruby/current/file.CREDITS.html).
This documentation has other articles of interest, including:
1. [A tutorial](docs/TUTORIAL.md).
2. [Replica Sets in Ruby](docs/REPLICA_SETS.md).
3. [Write Concern in Ruby](docs/WRITE_CONCERN.md).
4. [Tailable Cursors in Ruby](docs/TAILABLE_CURSORS.md).
5. [Read Preference in Ruby](docs/READ_PREFERENCE.md).
6. [GridFS in Ruby](docs/GridFS.md).
7. [Frequently Asked Questions](docs/FAQ.md).
8. [History](docs/HISTORY.md).
9. [Release plan](docs/RELEASES.md).
10. [Credits](docs/CREDITS.md).
Here's a quick code sample. Again, see the [MongoDB Ruby Tutorial](docs/TUTORIAL.md)
Here's a quick code sample. Again, see the [MongoDB Ruby Tutorial](http://api.mongodb.org/ruby/current/file.TUTORIAL.html)
for much more:
require 'rubygems'
require 'mongo'
include Mongo
@conn = Mongo::Connection.new
@db = @conn['sample-db']
@coll = @db['test']
db = Connection.new.db('sample-db')
coll = db.collection('test')
@coll.remove
coll.remove
3.times do |i|
@coll.insert({'a' => i+1})
coll.insert({'a' => i+1})
end
puts "There are #{@coll.count} records. Here they are:"
@coll.find.each { |doc| puts doc.inspect }
puts "There are #{coll.count()} records. Here they are:"
coll.find().each { |doc| puts doc.inspect }
# Installation
### Ruby Versions
The driver works and is consistently tested on Ruby 1.8.7 and 1.9.3 as well as JRuby 1.6.6.
The driver works and is consistently tested on Ruby 1.8.6, 1.8.7, and 1.9.2, and JRuby 1.5.1.
Note that if you're on 1.8.7, be sure that you're using a patchlevel >= 249. There
are some IO bugs in earlier versions.
@ -83,7 +58,7 @@ And for a significant performance boost, you'll want to install the C extensions
$ gem install bson_ext
Note that bson_ext isn't used with JRuby. Instead, some native Java extensions are bundled with the bson gem.
If you ever need to modify these extensions, you can recompile with the following rake task:
If you ever need to modify these extenions, you can recompile with the following rake task:
$ rake build:java
@ -104,7 +79,7 @@ That's all there is to it!
# Examples
For extensive examples, see the [MongoDB Ruby Tutorial](http://api.mongodb.org/ruby/current/file.TUTORIAL.html).
For extensive examples, see the [MongoDB Ruby Tutorial](http://www.mongodb.org/display/DOCS/Ruby+Tutorial).
Bundled with the driver are many examples, located in the "docs/examples" subdirectory. Samples include using
the driver and using the GridFS class GridStore. MongoDB must be running for
@ -124,7 +99,7 @@ See also the test code, especially test/test_db_api.rb.
The Ruby driver include two abstractions for storing large files: Grid and GridFileSystem.
The Grid class is a Ruby implementation of MongoDB's GridFS file storage
specification. GridFileSystem is essentially the same, but provides a more filesystem-like API
specification. GridFileSystem is essentailly the same, but provides a more filesystem-like API
and assumes that filenames are unique.
An instance of both classes represents an individual file store. See the API reference
@ -132,10 +107,9 @@ for details, and see examples/gridfs.rb for code that uses many of the Grid
features (metadata, content type, seek, tell, etc).
Examples:
# Write a file on disk to the Grid
file = File.open('image.jpg')
grid = Mongo::Grid.new(db)
grid = Grid.new(db)
id = grid.put(file)
# Retrieve the file
@ -167,21 +141,32 @@ To set up a pooled connection to a single MongoDB instance:
Though the pooling architecture will undoubtedly evolve, it currently owes much credit
to the connection pooling implementations in ActiveRecord and PyMongo.
## Forking
## Using with Phusion Passenger and Unicorn
Certain Ruby application servers work by forking, and it has long been necessary to
re-establish the child process's connection to the database after fork. But with the release
of v1.3.0, the Ruby driver detects forking and reconnects automatically.
When Passenger and Unicorn are in smart spawning mode you need to be sure that child
processes will create a new connection to the database. In Passenger, this can be handled like so:
## Environment variable `MONGODB_URI`
if defined?(PhusionPassenger)
PhusionPassenger.on_event(:starting_worker_process) do |forked|
if forked
# Reset all connection objects. How you do this depends on where
# you keep your connection object. In any case, call the #connect
# method on the connection object. For example:
# CONN.connect
#
# If you're using MongoMapper:
# MongoMapper.connection.connect
end
end
end
`Mongo::Connection.from_uri`, `Mongo::Connection.new` and `Mongo::ReplSetConnection.new` will use <code>ENV["MONGODB_URI"]</code> if no other args are provided.
In Unicorn, add this to your unicorn.rb file:
The URI must fit this specification:
after_fork do |server, worker|
# Handle reconnection
end
mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]
If the type of connection (direct or replica set) should be determined entirely from <code>ENV["MONGODB_URI"]</code>, you may want to use `Mongo::Connection.from_uri` because it will return either `Mongo::Connection` or a `Mongo::ReplSetConnection` depending on how many hosts are specified. Trying to use `Mongo::Connection.new` with multiple hosts in <code>ENV["MONGODB_URI"]</code> will raise an exception.
The above code should be put into a Rails initializer or similar initialization script.
## String Encoding
@ -229,7 +214,7 @@ Here is a sample primary key factory, taken from the tests:
class TestPKFactory
def create_pk(row)
row['_id'] ||= BSON::ObjectId.new
row['_id'] ||= Mongo::ObjectID.new
row
end
end
@ -239,14 +224,14 @@ keys. This is the PKFactory that comes with the MongoRecord code (an
ActiveRecord-like framework for non-Rails apps) and the AR Mongo adapter code
(for Rails):
class PKFactory
def create_pk(row)
return row if row[:_id]
row.delete(:_id) # in case it exists but the value is nil
row['_id'] ||= BSON::ObjectId.new
row
end
class PKFactory
def create_pk(row)
return row if row[:_id]
row.delete(:_id) # in case it exists but the value is nil
row['_id'] ||= Mongo::ObjectID.new
row
end
end
A database's PK factory object may be set either when a DB object is created
or immediately after you obtain it, but only once. The only reason it is
@ -286,31 +271,10 @@ Notes:
* Cursors will timeout on the server after 10 minutes. If you need to keep a cursor
open for more than 10 minutes, specify `:timeout => false` when you create the cursor.
## Socket timeouts
The Ruby driver support timeouts on socket read operations. To enable them, set the
`:op_timeout` option when you create a `Mongo::Connection` object.
If implementing higher-level timeouts, using tools like `Rack::Timeout`, it's very important
to call `Mongo::Connection#close` to prevent the subsequent operation from receiving the previous
request.
### Test-Unit, Shoulda, and Mocha
Running the test suite requires test-unit, shoulda, and mocha. You can install them as follows:
$ gem install test-unit
$ gem install shoulda
$ gem install mocha
The tests assume that the Mongo database is running on the default port. You
can override the default host (localhost) and port (Connection::DEFAULT_PORT) by
using the environment variables MONGO_RUBY_DRIVER_HOST and
MONGO_RUBY_DRIVER_PORT.
# Testing
If you have the source code, you can run the tests. Skip this test with the C extension if you're running JRuby.
If you have the source code, you can run the tests.
$ rake test:c
@ -323,13 +287,37 @@ These will run both unit and functional tests. To run these tests alone:
$ rake test:unit
$ rake test:functional
To run any individual rake tasks with the C extension enabled, just pass C_EXT=true to the task (don't do this with JRuby):
To run any individual rake tasks with the C extension enabled, just pass C_EXT=true to the task:
$ rake test:unit C_EXT=true
If you want to test replica set, you can run the following task:
If you want to test replica set, you can run the following tests
individually:
$ rake test:rs
$ rake test:replica_set_count
$ rake test:replica_set_insert
$ rake test:replica_set_query
### Shoulda and Mocha
Running the test suite requires shoulda and mocha. You can install them as follows:
$ gem install shoulda
$ gem install mocha
The tests assume that the Mongo database is running on the default port. You
can override the default host (localhost) and port (Connection::DEFAULT_PORT) by
using the environment variables MONGO_RUBY_DRIVER_HOST and
MONGO_RUBY_DRIVER_PORT.
# Documentation
This documentation is available online at [http://api.mongodb.org/ruby](http://api.mongodb.org/ruby). You can
generate the documentation if you have the source by typing
$ rake ydoc
Then open the file +ydoc/index.html+.
# Release Notes

202
Rakefile
View File

@ -1,38 +1,18 @@
# -*- mode: ruby; -*-
if RUBY_VERSION < '1.9.0'
require 'rubygems'
require 'rubygems/specification'
end
require 'rubygems'
require 'rubygems/specification'
require 'fileutils'
require 'rake/testtask'
require 'rake'
require 'rake/extensiontask'
require 'rake/javaextensiontask'
require 'rake/testtask'
require 'rake/gempackagetask'
begin
require 'git'
require 'devkit'
require 'ci/reporter/rake/test_unit'
rescue LoadError
require 'rake/contrib/rubyforgepublisher'
rescue LoadError
end
require 'rbconfig'
include Config
ENV['TEST_MODE'] = 'TRUE'
Rake::ExtensionTask.new('cbson') do |ext|
ext.lib_dir = "lib/bson_ext"
end
#Rake::JavaExtensionTask.new('jbson') do |ext| # not yet functional
# ext.ext_dir = 'ext/src/org/jbson'
#end
desc "Compiles and tests MongoDB Ruby driver w/ C extensions."
task :c do
Rake::Task['compile:cbson'].invoke
Rake::Task['test:c'].invoke
end
task :java do
Rake::Task['build:java'].invoke
Rake::Task['test:ruby'].invoke
@ -46,11 +26,12 @@ namespace :build do
jar_dir = File.join(java_dir, 'jar')
jruby_jar = File.join(jar_dir, 'jruby.jar')
mongo_jar = File.join(jar_dir, 'mongo-2.6.5.jar')
mongo_jar = File.join(jar_dir, 'mongo-2.4.jar')
bson_jar = File.join(jar_dir, 'bson-2.2.jar')
src_base = File.join(java_dir, 'src')
system("javac -Xlint:deprecation -Xlint:unchecked -classpath #{jruby_jar}:#{mongo_jar} #{File.join(src_base, 'org', 'jbson', '*.java')}")
system("javac -Xlint:unchecked -classpath #{jruby_jar}:#{mongo_jar}:#{bson_jar} #{File.join(src_base, 'org', 'jbson', '*.java')}")
system("cd #{src_base} && jar cf #{File.join(jar_dir, 'jbson.jar')} #{File.join('.', 'org', 'jbson', '*.class')}")
end
end
@ -61,14 +42,10 @@ task :test do
puts "To test the pure ruby driver: \nrake test:ruby\n\n"
end
task :path do
$:.unshift(File.join(File.dirname(__FILE__), 'lib'))
end
namespace :test do
desc "Test the driver with the C extension enabled."
task :c => :path do
task :c do
ENV['C_EXT'] = 'TRUE'
if ENV['TEST']
Rake::Task['test:functional'].invoke
@ -83,7 +60,7 @@ namespace :test do
end
desc "Test the driver using pure ruby (no C extension)"
task :ruby => :path do
task :ruby do
ENV['C_EXT'] = nil
if ENV['TEST']
Rake::Task['test:functional'].invoke
@ -100,61 +77,46 @@ namespace :test do
Rake::TestTask.new(:rs) do |t|
t.test_files = FileList['test/replica_sets/*_test.rb']
t.verbose = true
t.ruby_opts << '-w'
end
desc "Run the replica set test suite"
Rake::TestTask.new(:rs_no_threads) do |t|
t.test_files = FileList['test/replica_sets/*_test.rb'] - ["test/replica_sets/refresh_with_threads_test.rb"]
t.verbose = true
t.ruby_opts << '-w'
end
Rake::TestTask.new(:unit) do |t|
t.test_files = FileList['test/unit/*_test.rb']
t.verbose = true
t.ruby_opts << '-w'
end
Rake::TestTask.new(:functional) do |t|
t.test_files = FileList['test/*_test.rb']
t.verbose = true
t.ruby_opts << '-w'
end
Rake::TestTask.new(:pooled_threading) do |t|
t.test_files = FileList['test/threading/*_test.rb']
t.verbose = true
t.ruby_opts << '-w'
end
Rake::TestTask.new(:auto_reconnect) do |t|
t.test_files = FileList['test/auxillary/autoreconnect_test.rb']
t.verbose = true
t.ruby_opts << '-w'
end
Rake::TestTask.new(:authentication) do |t|
t.test_files = FileList['test/auxillary/authentication_test.rb']
t.verbose = true
t.ruby_opts << '-w'
end
Rake::TestTask.new(:new_features) do |t|
t.test_files = FileList['test/auxillary/1.4_features.rb']
t.verbose = true
t.ruby_opts << '-w'
end
Rake::TestTask.new(:bson) do |t|
t.test_files = FileList['test/bson/*_test.rb']
t.verbose = true
t.ruby_opts << '-w'
end
task :drop_databases => :path do |t|
task :drop_databases do |t|
puts "Dropping test databases..."
require 'mongo'
require './lib/mongo'
con = Mongo::Connection.new(ENV['MONGO_RUBY_DRIVER_HOST'] || 'localhost',
ENV['MONGO_RUBY_DRIVER_PORT'] || Mongo::Connection::DEFAULT_PORT)
con.database_names.each do |name|
@ -173,21 +135,13 @@ end
desc "Generate YARD documentation"
task :ydoc do
require './lib/mongo/version.rb'
require File.join(File.dirname(__FILE__), 'lib', 'mongo')
out = File.join('ydoc', Mongo::VERSION)
FileUtils.rm_rf('ydoc')
system "yardoc lib/**/*.rb lib/mongo/**/*.rb lib/bson/**/*.rb -e ./yard/yard_ext.rb -p yard/templates -o #{out} --title MongoRuby-#{Mongo::VERSION} --files docs/TUTORIAL.md,docs/GridFS.md,docs/FAQ.md,docs/REPLICA_SETS.md,docs/WRITE_CONCERN.md,docs/READ_PREFERENCE.md,docs/HISTORY.md,docs/CREDITS.md,docs/RELEASES.md,docs/CREDITS.md,docs/TAILABLE_CURSORS.md"
system "yardoc lib/**/*.rb lib/mongo/**/*.rb lib/bson/**/*.rb -e yard/yard_ext.rb -p yard/templates -o #{out} --title MongoRuby-#{Mongo::VERSION} --files docs/TUTORIAL.md,docs/GridFS.md,docs/FAQ.md,docs/REPLICA_SETS.md,docs/WRITE_CONCERN.md,docs/HISTORY.md,docs/CREDITS.md,docs/1.0_UPGRADE.md"
end
namespace :jenkins do
task :ci_reporter do
begin
require 'ci/reporter/rake/test_unit'
rescue LoadError
warn "Warning: Unable to load ci_reporter gem."
end
end
namespace :bamboo do
namespace :test do
task :ruby do
Rake::Task['test:ruby'].invoke
@ -201,34 +155,31 @@ namespace :jenkins do
end
namespace :gem do
desc "Install the gem locally"
task :install do
`gem build bson.gemspec`
`gem install --no-rdoc --no-ri bson-*.gem`
sh "gem build bson.gemspec"
sh "gem install --no-rdoc --no-ri bson-*.gem"
`gem build mongo.gemspec`
`gem install --no-rdoc --no-ri mongo-*.gem`
sh "gem build mongo.gemspec"
sh "gem install --no-rdoc --no-ri mongo-*.gem"
`rm mongo-*.gem`
`rm bson-*.gem`
end
desc "Uninstall the optional c extensions"
task :uninstall_extensions do
`gem uninstall bson_ext`
sh "rm mongo-*.gem"
sh "rm bson-*.gem"
end
desc "Install the optional c extensions"
task :install_extensions do
`gem build bson_ext.gemspec`
`gem install --no-rdoc --no-ri bson_ext-*.gem`
`rm bson_ext-*.gem`
sh "gem build bson_ext.gemspec"
sh "gem install --no-rdoc --no-ri bson_ext-*.gem"
sh "rm bson_ext-*.gem"
end
end
namespace :ci do
namespace :test do
task :c => :path do
task :c do
Rake::Task['gem:install'].invoke
Rake::Task['gem:install_extensions'].invoke
Rake::Task['test:c'].invoke
@ -236,99 +187,6 @@ namespace :ci do
end
end
# Deployment
VERSION_FILES = %w(lib/bson/version.rb lib/mongo/version.rb ext/cbson/version.h)
GEMSPECS = %w(bson.gemspec bson.java.gemspec bson_ext.gemspec mongo.gemspec)
def gem_list(version)
files = []
files << "bson-#{version}.gem"
files << "bson-#{version}-java.gem"
files << "bson_ext-#{version}.gem"
files << "mongo-#{version}.gem"
return files
end
def check_gem_list_existence(version)
gem_list(version).each do |filename|
if !File.exists?(filename)
raise "#{filename} does not exist!"
end
end
end
def check_version(version)
if !(version =~ /\d\.\d\.\d/)
raise "Must specify a valid version (e.g., x.y.z)"
end
end
def current_version
f = File.open("lib/mongo/version.rb")
str = f.read
str =~ /VERSION\s+=\s+([.\d"]+)$/
return $1
end
def change_version(new_version)
version = current_version
puts "Changing version from #{version} to #{new_version}"
VERSION_FILES.each do |filename|
f = File.open(filename)
str = f.read
f.close
str.gsub!(version, "\"#{new_version}\"")
File.open(filename, 'w') do |f|
f.write(str)
end
end
end
namespace :deploy do
desc "Change version to new release"
task :change_version, [:version] do |t, args|
check_version(args[:version])
change_version(args[:version])
end
desc "Add version files, commit, tag release"
task :git_prepare do |t, args|
g = Git.open(Dir.getwd())
version = current_version
to_commit = VERSION_FILES << 'docs/HISTORY.md'
g.add(to_commit)
g.commit "RELEASE #{version}"
g.add_tag("#{version}")
end
desc "Push release to github"
task :git_push do
g = Git.open(Dir.getwd())
g.push
end
desc "Build all gems"
task :gem_build do
`rm *.gem`
`gem build mongo.gemspec`
`gem build bson.gemspec`
`gem build bson.java.gemspec`
`gem build bson_ext.gemspec`
puts `ls *.gem`
end
desc "Push all gems to RubyGems"
task :gem_push do |t, args|
check_gem_list_existence(current_version)
gem_list.each do |gem|
puts "Push #{gem} to RubyGems? (y/N)"
if gets.chomp! == 'y'
system "gem push #{gem}"
end
end
end
end
task :default => :list
task :list do

View File

@ -1,62 +0,0 @@
require 'benchmark'
ENV['MODE'] = 'c'
$suite = {
:suite_insert_one => [ :test_insert_one, :test_insert_one_safe ],
:suite_insert_many => [ :test_insert_many, :test_insert_many_safe ],
:suite_find => [ :test_find_one, :test_find_many ],
:suite_nest => [ :test_insert_one_nest_full, :test_find_one_nest_full ],
}
$date = Time.now.strftime('%Y%m%d-%H%M')
def suite_series_name(suite)
"exp_series_#{suite}_#{ENV['MODE']}"
end
def suite_file_name(suite)
suite_series_name(suite) + '.js'
end
def suite_file_name_temp(suite)
suite_file_name(suite) + '.tmp'
end
task :default => [:c, :ruby]
task :c do
ENV['MODE'] = 'c'
$suite.each_key do |key|
Rake::Task[key].invoke
end
end
task :ruby do
ENV['MODE'] = 'ruby'
$suite.each_key do |suite|
Rake::Task[suite].execute
end
end
$suite.each do |suite, tests|
tests.each do |t|
task t do
sh "ruby exp_series.rb --file #{suite_file_name_temp(suite)} --mode #{ENV['MODE']} --tag #{suite} -- --name #{t}"
end
end
desc "#{suite} - #{$suite[suite].join(', ')}"
task suite do |t|
File.open(suite_file_name_temp(suite), 'w'){|f| f.puts("#{suite_series_name(suite)} = [")}
btms = Benchmark.measure do
$suite[suite].each do |pre|
Rake::Task[pre].execute
end
end
File.open(suite_file_name_temp(suite), 'a'){|f| f.puts("]; // #{(btms.real/60.0).round} minutes")}
sh "mv #{suite_file_name_temp(suite)} #{suite_file_name(suite)}"
end
end
task :clobber do
sh "rm -f exp_series_suite_*.js"
end

File diff suppressed because one or more lines are too long

View File

@ -1,675 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Exp Series Performance Tests</title>
<!-- http://code.google.com/p/flot/ -->
<!--[if lte IE 8]><script language="javascript" type="text/javascript" src="excanvas.min.js"></script><![endif]-->
<script language="javascript" type="text/javascript" src="jquery.js"></script>
<script language="javascript" type="text/javascript" src="jquery.flot.js"></script>
<script language="javascript" type="text/javascript" src="exp_series_suite_insert_one_c.js"></script>
<script language="javascript" type="text/javascript" src="exp_series_suite_insert_one_ruby.js"></script>
<script language="javascript" type="text/javascript" src="exp_series_suite_insert_many_c.js"></script>
<script language="javascript" type="text/javascript" src="exp_series_suite_insert_many_ruby.js"></script>
<script language="javascript" type="text/javascript" src="exp_series_suite_find_c.js"></script>
<script language="javascript" type="text/javascript" src="exp_series_suite_find_ruby.js"></script>
<script language="javascript" type="text/javascript" src="exp_series_suite_nest_c.js"></script>
<script language="javascript" type="text/javascript" src="exp_series_suite_nest_ruby.js"></script>
<style type="text/css">
body {
font-family: sans-serif;
font-size: 16px;
margin: 50px;
}
h2 {
padding: 20px;
background-color: lightblue;
}
.title {
font-weight: bold;
margin: 20px;
}
.show_hide, #show_all, #show_default {
padding: 1px;
line-height: 200%;
cursor: pointer;
background-color: LightGray;
}
.graph {
width:800px;
height:400px;
}
.note {
margin: 20px;
}
.hidden {
display: none; //visibility: hidden; // to collapse, use display: none
}
</style>
</head>
<body>
<h1>Exp Series Performance Tests</h1>
x-axis is power of 2, log base 2 of size<br/>
y-axis is "document" operations per second, ex., total document insertions per second<br/>
<br/>
user_ops are operations per user-CPU-time second<br/>
real_ops are operations per real-time second<br/>
<br/>
For measuring Ruby driver performance, we are interested primarily in the "user" CPU time.<br/>
The "user" time is the time used by the Ruby driver, typically less than real time.<br/>
<br/>
<span id="show_all">Show All</span> <span id="show_default">Show Default</span>
<hr/>
<h2>Issues</h2><div id="array_slow"></div>
<hr/>
<h2>Best Practices</h2><div id="best_practices"></div>
<hr/>
<h2>Insert Many Safe - with Data Sizes</h2><p>Insert many safe is faster than insert one safe especially for increasing multiples and for smaller data, as expected.</p><div id="insert_many_safe"></div>
<hr/>
<h2>Insert Many - with Data Sizes</h2><p>Insert many is faster than insert one especially for increasing multiples and for smaller data, as expected.</p><div id="insert_many"></div>
<hr/>
<h2>Insert One Fast versus Safe - with Real Time</h2><p>Fast mode is significantly faster than safe mode especially for smaller data, as expected.</p><div id="insert_one_safe"></div>
<hr/>
<h2>Find Many versus Find One - with Real Time</h2><p>Find many with cursor is significantly faster than find one, as expected.</p><div id="find"></div>
<hr/>
<h2>C versus Ruby - with Real Time</h2><p>The C extension is significantly faster than Ruby, as expected.</p><div id="c_vs_ruby"></div>
<hr/>
<h2>Nested Structures</h2><p>The deeper binary nested array is slower than broader structures with the same number of leaves, so we omit broader structures in other tests.</p><div id="nested"></div>
<hr/>
<script type="text/javascript">
suite = [
exp_series_suite_insert_one_c,
exp_series_suite_insert_one_ruby,
exp_series_suite_insert_many_c,
exp_series_suite_insert_many_ruby,
exp_series_suite_find_c,
exp_series_suite_find_ruby,
exp_series_suite_nest_c,
exp_series_suite_nest_ruby
];
expSeries = [];
for (i in suite) { expSeries = expSeries.concat(suite[i]); }
function genOpXY(a, xMax, plotSpec) {
var genOpA = $.grep(a, function(e, i){
if (e.exp2 > xMax) return false;
for (var key in plotSpec) {
if (key != 'x' && key != 'y' && e[key] != plotSpec[key]) return false;
}
return true;
});
return $.map(genOpA, function(e, i){return [[e[plotSpec.x], e[plotSpec.y]]];});
}
function flotSeries(expSeries, xMax, labelSpec, plotLines) {
return $.map(plotLines, function(plotSpec, i){
return {
label: plotSpec.y + ', ' + labelSpec + ': ' + plotSpec[labelSpec],
data: genOpXY(expSeries, xMax, plotSpec),
lines: { show: true },
points: { show: true }
};
});
}
$(function () {
function xExpTicks(axis) {
var res = [];
for (var i = axis.min; i <= axis.max; i++) {
res.push([i, i + ':' + Math.pow(2,i)]);
}
return res;
}
function doPlot(section, title, series, classes, notes) {
var id = title.replace(/\W/g,'_');
$(section).append('<hr/>' +
'<span id="show_hide_' + id + '" class="show_hide">Show/Hide</span>' +
'<span class="title">' + title + '</span>' +
'<span id="note_' + id + '" class="note"></span>' +
'<div id="' + id + '" class="graph"></div>');
$('#note_' + id).text(notes);
var e = $('#' + id);
$.plot(e, series, {
xaxis:{ ticks:xExpTicks },
yaxes:[
{ min:0 }
],
legend:{ position:'ne' },
grid:{ hoverable:true }
});
e.addClass(classes);
}
// comment pending
var graph = [
[ '#array_slow', 'array_size_fixnum slow versus hash_size_fixnum insert one C', '', 12, 'generator',
[
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' }
],
'Array insertion is significantly slower than hash insertion. ' +
'Investigation shows that there is an extra malloc/free for each array index key. '
],
[ '#array_slow', 'array_size_fixnum fast versus slow insert one C', '', 12, 'tag',
[
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'array_fast', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' }
],
'Pending: Array insertion is now faster.'
],
[ '#array_slow', 'array_size_fixnum fast versus hash_size_fixnum insert one C', '', 12, 'generator',
[
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'array_fast', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' }
],
'Pending: Array insertion is now as fast as hash insertion.'
],
[ '#array_slow', 'array_nest_fixnum slow versus hash_nest_fixnum insert one C base 2', '', 12, 'generator',
[
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' }
],
'Nested array insertion is significantly slower than nested hash insertion.'
],
[ '#array_slow', 'array_nest_fixnum fast versus slow insert one C base 2', 'hidden', 12, 'tag',
[
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'array_fast', base:2 , status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' }
],
'Pending: Nested array insertion is now faster.'
],
[ '#array_slow', 'array_nest_fixnum fast versus hash_nest_fixnum insert one C base 2', 'hidden', 12, 'generator',
[
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'array_fast', base:2 , status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' }
],
'Pending: Nested array insertion is now as fast as nested hash insertion.'
],
[ '#best_practices', 'best practice - hash_size_fixnum insert many fast versus safe for hash size 16', '', 14, 'operation',
[
{ x:'multi_power', y:'user_ops', size:16, generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'real_ops', size:16, generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'real_ops', size:16, generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' }
],
'Insert many to ammortize the extra cost of safe mode significantly.'
],
[ '#best_practices', 'best practice - hash_size_fixnum find many with cursor versus find one', '', 12, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' }
],
'Find many with a cursor to out-perform find one significantly.'
],
[ '#insert_many_safe', 'value_string_size insert many safe by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'value_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'value_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'value_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'value_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'value_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'value_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'value_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many_safe', 'key_string_size insert many safe by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'key_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'key_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'key_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'key_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'key_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'key_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'key_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many_safe', 'hash_size_fixnum insert many safe by multiples (x axis) over a range of data sizes', '', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many_safe', 'array_size_fixnum insert many safe by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'array_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'array_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'array_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'array_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'array_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'array_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'array_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many_safe', 'array_nest_fixnum insert many safe by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'array_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'array_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'array_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'array_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'array_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'array_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'array_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many_safe', 'hash_nest_fixnum insert many safe by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'hash_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'hash_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'hash_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'hash_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'hash_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'hash_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'hash_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many', 'value_string_size insert many by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many', 'key_string_size insert many by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many', 'hash_size_fixnum insert many by multiples (x axis) over a range of data sizes', '', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many', 'array_size_fixnum insert many by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many', 'array_nest_fixnum insert many by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_many', 'hash_nest_fixnum insert many by multiples (x axis) over a range of data sizes', 'hidden', 14, 'size',
[
{ x:'multi_power', y:'user_ops', size:1, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:16, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:64, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:256, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:1024, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' },
{ x:'multi_power', y:'user_ops', size:4096, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_many', status:'OK' }
],
''
],
[ '#insert_one_safe', 'value_string_size insert one fast versus safe', 'hidden', 14, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'value_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'value_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_one', status:'OK' }
],
''
],
[ '#insert_one_safe', 'key_string_size insert one fast versus safe', 'hidden', 14, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'key_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'key_string_size', operation:'insert_safe', mode:'c', tag:'suite_insert_one', status:'OK' }
],
''
],
[ '#insert_one_safe', 'array_size_fixnum insert one fast versus safe', 'hidden', 12, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_one', status:'OK' }
],
''
],
[ '#insert_one_safe', 'hash_size_fixnum insert one fast versus safe', '', 12, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_one', status:'OK' }
],
''
],
[ '#insert_one_safe', 'array_nest_fixnum base 2 insert one fast versus safe', 'hidden', 12, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'insert_safe', mode:'ruby', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_nest_fixnum', operation:'insert_safe', mode:'ruby', tag:'suite_insert_one', base:2, status:'OK' }
],
''
],
[ '#insert_one_safe', 'hash_nest_fixnum base 2 insert one fast versus safe', 'hidden', 12, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_nest_fixnum', operation:'insert_safe', mode:'c', tag:'suite_insert_one', base:2, status:'OK' }
],
''
],
[ '#find', 'value_string_size find many with cursor versus find one', 'hidden', 14, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'value_string_size', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'value_string_size', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'value_string_size', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'value_string_size', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' }
],
''
],
[ '#find', 'key_string_size find many with cursor versus find one', 'hidden', 14, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'key_string_size', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'key_string_size', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'key_string_size', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'key_string_size', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' }
],
''
],
[ '#find', 'array_size_fixnum find many with cursor versus find one', 'hidden', 12, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_size_fixnum', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' }
],
''
],
[ '#find', 'hash_size_fixnum find many with cursor versus find one', '', 12, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'find_many', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' }
],
''
],
[ '#find', 'array_nest_fixnum base 2 find many with cursor versus find one', 'hidden', 12, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'find_many', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_nest_fixnum', operation:'find_many', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', base:2, status:'OK' }
],
''
],
[ '#find', 'hash_nest_fixnum base 2 find many with cursor versus find one', 'hidden', 12, 'operation',
[
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'find_many', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_nest_fixnum', operation:'find_many', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', base:2, status:'OK' }
],
''
],
[ '#c_vs_ruby', 'value_string_size insert one C versus Ruby', 'hidden', 14, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'value_string_size', operation:'insert', mode:'ruby', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'value_string_size', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'value_string_size', operation:'insert', mode:'ruby', tag:'suite_insert_one', status:'OK' }
],
''
],
[ '#c_vs_ruby', 'key_string_size insert one C versus Ruby', 'hidden', 14, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'key_string_size', operation:'insert', mode:'ruby', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'key_string_size', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'key_string_size', operation:'insert', mode:'ruby', tag:'suite_insert_one', status:'OK' }
],
''
],
[ '#c_vs_ruby', 'array_size_fixnum insert one C versus Ruby', 'hidden', 12, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'insert', mode:'ruby', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_size_fixnum', operation:'insert', mode:'ruby', tag:'suite_insert_one', status:'OK' }
],
''
],
[ '#c_vs_ruby', 'hash_size_fixnum insert one C versus Ruby', '', 12, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'insert', mode:'ruby', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'insert', mode:'ruby', tag:'suite_insert_one', status:'OK' }
],
''
],
[ '#c_vs_ruby', 'array_nest_fixnum base 2 insert one C versus Ruby', 'hidden', 12, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'insert', mode:'ruby', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_nest_fixnum', operation:'insert', mode:'ruby', tag:'suite_insert_one', base:2, status:'OK' }
],
''
],
[ '#c_vs_ruby', 'hash_nest_fixnum base 2 insert one C versus Ruby', 'hidden', 12, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'insert', mode:'ruby', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_nest_fixnum', operation:'insert', mode:'ruby', tag:'suite_insert_one', base:2, status:'OK' }
],
''
],
[ '#c_vs_ruby', 'value_string_size find one C versus Ruby', 'hidden', 14, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'value_string_size', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'value_string_size', operation:'find_one', mode:'ruby', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'value_string_size', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'value_string_size', operation:'find_one', mode:'ruby', tag:'suite_find', status:'OK' }
],
''
],
[ '#c_vs_ruby', 'key_string_size find one C versus Ruby', 'hidden', 14, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'key_string_size', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'key_string_size', operation:'find_one', mode:'ruby', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'key_string_size', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'key_string_size', operation:'find_one', mode:'ruby', tag:'suite_find', status:'OK' }
],
''
],
[ '#c_vs_ruby', 'array_size_fixnum find one C versus Ruby', 'hidden', 12, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_size_fixnum', operation:'find_one', mode:'ruby', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_size_fixnum', operation:'find_one', mode:'ruby', tag:'suite_find', status:'OK' }
],
''
],
[ '#c_vs_ruby', 'hash_size_fixnum find one C versus Ruby', '', 12, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_size_fixnum', operation:'find_one', mode:'ruby', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_size_fixnum', operation:'find_one', mode:'ruby', tag:'suite_find', status:'OK' }
],
''
],
[ '#c_vs_ruby', 'array_nest_fixnum base 2 find one C versus Ruby', 'hidden', 12, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'user_ops', generator:'array_nest_fixnum', operation:'find_one', mode:'ruby', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'array_nest_fixnum', operation:'find_one', mode:'ruby', tag:'suite_find', base:2, status:'OK' }
],
''
],
[ '#c_vs_ruby', 'hash_nest_fixnum base 2 find one C versus Ruby', 'hidden', 12, 'mode',
[
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'user_ops', generator:'hash_nest_fixnum', operation:'find_one', mode:'ruby', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', base:2, status:'OK' },
{ x:'exp2', y:'real_ops', generator:'hash_nest_fixnum', operation:'find_one', mode:'ruby', tag:'suite_find', base:2, status:'OK' }
],
''
],
[ '#nested', 'array_nest_fixnum insert one C by base', 'hidden', 12, 'base',
[
{ x:'exp2', y:'user_ops', base:2, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', base:4, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:8, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:16, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:32, generator:'array_nest_fixnum', operation:'insert', mode:'c', tag:'suite_nest', status:'OK' }
],
''
],
[ '#nested', 'hash_nest_fixnum insert one C by base', 'hidden', 12, 'base',
[
{ x:'exp2', y:'user_ops', base:2, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_insert_one', status:'OK' },
{ x:'exp2', y:'user_ops', base:4, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:8, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:16, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:32, generator:'hash_nest_fixnum', operation:'insert', mode:'c', tag:'suite_nest', status:'OK' }
],
''
],
[ '#nested', 'array_nest_fixnum find one C by base', 'hidden', 12, 'base',
[
{ x:'exp2', y:'user_ops', base:2, generator:'array_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', base:4, generator:'array_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:8, generator:'array_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:16, generator:'array_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:32, generator:'array_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_nest', status:'OK' }
],
''
],
[ '#nested', 'hash_nest_fixnum find one C by base', 'hidden', 12, 'base',
[
{ x:'exp2', y:'user_ops', base:2, generator:'hash_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_find', status:'OK' },
{ x:'exp2', y:'user_ops', base:4, generator:'hash_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:8, generator:'hash_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:16, generator:'hash_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_nest', status:'OK' },
{ x:'exp2', y:'user_ops', base:32, generator:'hash_nest_fixnum', operation:'find_one', mode:'c', tag:'suite_nest', status:'OK' }
],
''
]
];
$.each(graph, function(i, e){
var section, title, classes, xMax, labelSpec, plotLines;
//[section, title, classes, xMax, labelSpec, plotLines, notes] = e;
section = e[0]; title = e[1]; classes = e[2]; xMax = e[3]; labelSpec = e[4]; plotLines = e[5]; notes = e[6];
var series = flotSeries(expSeries, xMax, labelSpec, plotLines);
doPlot(section, title, series, classes, notes);
});
function showTooltip(x, y, contents) {
$('<div id="tooltip">' + contents + '</div>').css( {
position: 'absolute',
display: 'none',
top: y + 5,
left: x + 5,
border: '1px solid #fdd',
padding: '2px',
'background-color': '#fee',
opacity: 0.80
}).appendTo("body").fadeIn(200);
}
var previousPoint = null;
$('.graph').bind('plothover', function (event, pos, item) {
$("#x").text(pos.x.toFixed(2));
$("#y").text(pos.y.toFixed(2));
if (item) {
if (previousPoint != item.dataIndex) {
previousPoint = item.dataIndex;
$("#tooltip").remove();
var x = item.datapoint[0].toFixed(2),
y = item.datapoint[1].toFixed(2);
showTooltip(item.pageX, item.pageY,
item.series.label + ' [ ' + Math.round(x) + ', ' + Math.round(y) + ' ]');
}
}
else {
$("#tooltip").remove();
previousPoint = null;
}
});
$('.show_hide').bind('click', function(event) {
var id = $(this).attr('id').replace(/^show_hide_/, '');
$('#' + id).toggleClass('hidden');
});
$('#show_all').bind('click', function(event) {
for (var i in graph) {
title = graph[i][1];
var id = title.replace(/\W/g,'_');
$('#' + id).removeClass('hidden');
}
});
$('#show_default').bind('click', function(event) {
for (var i in graph) {
title = graph[i][1];
var id = title.replace(/\W/g,'_');
$('#' + id).removeClass('hidden').addClass(graph[i][2]);
}
});
});
</script>
</body>
</html>

View File

@ -1,708 +0,0 @@
expSeries = [
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":128000,"utime":9.69,"rtime":11.08,"ut_ops":13209.5,"rt_ops":11556.5,"ut_usec":75.7,"rt_usec":86.5,"etime":1.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":127999,"utime":9.85,"rtime":11.16,"ut_ops":12994.8,"rt_ops":11468.1,"ut_usec":77.0,"rt_usec":87.2,"etime":1.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":136533,"utime":10.47,"rtime":11.95,"ut_ops":13040.4,"rt_ops":11423.7,"ut_usec":76.7,"rt_usec":87.5,"etime":1.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":136533,"utime":10.32,"rtime":11.6,"ut_ops":13229.9,"rt_ops":11773.2,"ut_usec":75.6,"rt_usec":84.9,"etime":1.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":136533,"utime":10.51,"rtime":11.81,"ut_ops":12990.8,"rt_ops":11559.6,"ut_usec":77.0,"rt_usec":86.5,"etime":1.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":127999,"utime":9.93,"rtime":11.4,"ut_ops":12890.1,"rt_ops":11225.5,"ut_usec":77.6,"rt_usec":89.1,"etime":1.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":127999,"utime":9.48,"rtime":10.9,"ut_ops":13502.0,"rt_ops":11748.4,"ut_usec":74.1,"rt_usec":85.1,"etime":1.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":136533,"utime":10.35,"rtime":12.07,"ut_ops":13191.6,"rt_ops":11314.3,"ut_usec":75.8,"rt_usec":88.4,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":128000,"utime":9.98,"rtime":11.7,"ut_ops":12825.7,"rt_ops":10941.8,"ut_usec":78.0,"rt_usec":91.4,"etime":1.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":127999,"utime":10.54,"rtime":12.31,"ut_ops":12144.1,"rt_ops":10401.3,"ut_usec":82.3,"rt_usec":96.1,"etime":1.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":120470,"utime":10.13,"rtime":12.19,"ut_ops":11892.4,"rt_ops":9885.0,"ut_usec":84.1,"rt_usec":101.2,"etime":1.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":107789,"utime":9.85,"rtime":12.92,"ut_ops":10943.0,"rt_ops":8342.6,"ut_usec":91.4,"rt_usec":119.9,"etime":1.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":93090,"utime":9.78,"rtime":14.47,"ut_ops":9518.4,"rt_ops":6435.3,"ut_usec":105.1,"rt_usec":155.4,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":73142,"utime":9.99,"rtime":14.37,"ut_ops":7321.5,"rt_ops":5088.3,"ut_usec":136.6,"rt_usec":196.5,"etime":1.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":51200,"utime":10.1,"rtime":17.92,"ut_ops":5069.3,"rt_ops":2856.9,"ut_usec":197.3,"rt_usec":350.0,"etime":1.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":32000,"utime":10.08,"rtime":20.12,"ut_ops":3174.6,"rt_ops":1590.6,"ut_usec":315.0,"rt_usec":628.7,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":136533,"utime":10.52,"rtime":12.08,"ut_ops":12978.4,"rt_ops":11306.1,"ut_usec":77.1,"rt_usec":88.4,"etime":1.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":128000,"utime":9.75,"rtime":11.19,"ut_ops":13128.2,"rt_ops":11441.0,"ut_usec":76.2,"rt_usec":87.4,"etime":1.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":128000,"utime":9.87,"rtime":11.23,"ut_ops":12968.6,"rt_ops":11400.9,"ut_usec":77.1,"rt_usec":87.7,"etime":1.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":128000,"utime":9.59,"rtime":10.78,"ut_ops":13347.2,"rt_ops":11873.0,"ut_usec":74.9,"rt_usec":84.2,"etime":1.25,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":128000,"utime":9.81,"rtime":11.23,"ut_ops":13047.9,"rt_ops":11395.3,"ut_usec":76.6,"rt_usec":87.8,"etime":1.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":128000,"utime":9.84,"rtime":11.25,"ut_ops":13008.1,"rt_ops":11378.0,"ut_usec":76.9,"rt_usec":87.9,"etime":1.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":128000,"utime":9.85,"rtime":11.91,"ut_ops":12994.9,"rt_ops":10751.0,"ut_usec":77.0,"rt_usec":93.0,"etime":1.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":136533,"utime":10.47,"rtime":12.11,"ut_ops":13040.4,"rt_ops":11270.3,"ut_usec":76.7,"rt_usec":88.7,"etime":1.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":127999,"utime":10.12,"rtime":12.03,"ut_ops":12648.1,"rt_ops":10640.9,"ut_usec":79.1,"rt_usec":94.0,"etime":1.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":120470,"utime":10.16,"rtime":12.09,"ut_ops":11857.3,"rt_ops":9960.6,"ut_usec":84.3,"rt_usec":100.4,"etime":1.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":107789,"utime":9.44,"rtime":11.44,"ut_ops":11418.3,"rt_ops":9421.2,"ut_usec":87.6,"rt_usec":106.1,"etime":1.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":102399,"utime":9.81,"rtime":12.65,"ut_ops":10438.2,"rt_ops":8092.5,"ut_usec":95.8,"rt_usec":123.6,"etime":0.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":93090,"utime":10.62,"rtime":14.52,"ut_ops":8765.5,"rt_ops":6412.9,"ut_usec":114.1,"rt_usec":155.9,"etime":0.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":63999,"utime":9.88,"rtime":15.45,"ut_ops":6477.6,"rt_ops":4142.6,"ut_usec":154.4,"rt_usec":241.4,"etime":1.02,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":42666,"utime":10.07,"rtime":14.61,"ut_ops":4236.9,"rt_ops":2921.0,"ut_usec":236.0,"rt_usec":342.3,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":25599,"utime":9.86,"rtime":22.56,"ut_ops":2596.2,"rt_ops":1134.5,"ut_usec":385.2,"rt_usec":881.5,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":128000,"utime":10.21,"rtime":11.64,"ut_ops":12536.7,"rt_ops":10999.5,"ut_usec":79.8,"rt_usec":90.9,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":120470,"utime":10.28,"rtime":11.56,"ut_ops":11718.9,"rt_ops":10417.2,"ut_usec":85.3,"rt_usec":96.0,"etime":1.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":102399,"utime":9.21,"rtime":10.2,"ut_ops":11118.2,"rt_ops":10043.5,"ut_usec":89.9,"rt_usec":99.6,"etime":0.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":93090,"utime":9.81,"rtime":10.87,"ut_ops":9489.3,"rt_ops":8563.5,"ut_usec":105.4,"rt_usec":116.8,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":73142,"utime":10.19,"rtime":11.06,"ut_ops":7177.8,"rt_ops":6610.5,"ut_usec":139.3,"rt_usec":151.3,"etime":0.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":46545,"utime":9.6,"rtime":10.17,"ut_ops":4848.4,"rt_ops":4577.7,"ut_usec":206.3,"rt_usec":218.5,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":28444,"utime":9.41,"rtime":9.73,"ut_ops":3022.7,"rt_ops":2923.4,"ut_usec":330.8,"rt_usec":342.1,"etime":0.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":15999,"utime":9.57,"rtime":9.78,"ut_ops":1671.8,"rt_ops":1636.1,"ut_usec":598.2,"rt_usec":611.2,"etime":1.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":8533,"utime":9.49,"rtime":9.59,"ut_ops":899.2,"rt_ops":889.5,"ut_usec":1112.2,"rt_usec":1124.3,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":4571,"utime":9.88,"rtime":10.07,"ut_ops":462.7,"rt_ops":453.7,"ut_usec":2161.5,"rt_usec":2204.0,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":2461,"utime":10.47,"rtime":10.68,"ut_ops":235.1,"rt_ops":230.4,"ut_usec":4254.4,"rt_usec":4341.2,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":1230,"utime":10.79,"rtime":10.87,"ut_ops":114.0,"rt_ops":113.1,"ut_usec":8772.4,"rt_usec":8838.8,"etime":0.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":615,"utime":10.04,"rtime":10.08,"ut_ops":61.3,"rt_ops":61.0,"ut_usec":16325.2,"rt_usec":16395.5,"etime":0.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":307,"utime":10.38,"rtime":10.5,"ut_ops":29.6,"rt_ops":29.2,"ut_usec":33811.1,"rt_usec":34191.6,"etime":0.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":133,"utime":8.62,"rtime":8.74,"ut_ops":15.4,"rt_ops":15.2,"ut_usec":64812.0,"rt_usec":65696.1,"etime":0.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":128000,"utime":10.14,"rtime":11.51,"ut_ops":12623.3,"rt_ops":11124.7,"ut_usec":79.2,"rt_usec":89.9,"etime":1.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":136533,"utime":10.84,"rtime":12.32,"ut_ops":12595.3,"rt_ops":11084.0,"ut_usec":79.4,"rt_usec":90.2,"etime":1.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":136533,"utime":10.55,"rtime":12.04,"ut_ops":12941.5,"rt_ops":11342.7,"ut_usec":77.3,"rt_usec":88.2,"etime":1.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":120470,"utime":9.64,"rtime":10.82,"ut_ops":12496.9,"rt_ops":11137.5,"ut_usec":80.0,"rt_usec":89.8,"etime":1.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":102399,"utime":8.87,"rtime":10.1,"ut_ops":11544.4,"rt_ops":10140.1,"ut_usec":86.6,"rt_usec":98.6,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":102399,"utime":9.74,"rtime":11.22,"ut_ops":10513.2,"rt_ops":9129.5,"ut_usec":95.1,"rt_usec":109.5,"etime":0.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":97523,"utime":10.06,"rtime":11.41,"ut_ops":9694.1,"rt_ops":8544.0,"ut_usec":103.2,"rt_usec":117.0,"etime":1.29,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":68266,"utime":8.78,"rtime":10.09,"ut_ops":7775.2,"rt_ops":6766.9,"ut_usec":128.6,"rt_usec":147.8,"etime":1.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":56888,"utime":10.27,"rtime":11.55,"ut_ops":5539.2,"rt_ops":4926.4,"ut_usec":180.5,"rt_usec":203.0,"etime":0.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":39384,"utime":10.65,"rtime":12.66,"ut_ops":3698.0,"rt_ops":3111.1,"ut_usec":270.4,"rt_usec":321.4,"etime":0.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":23272,"utime":10.77,"rtime":12.09,"ut_ops":2160.8,"rt_ops":1925.5,"ut_usec":462.8,"rt_usec":519.3,"etime":0.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":12799,"utime":10.84,"rtime":11.95,"ut_ops":1180.7,"rt_ops":1071.5,"ut_usec":846.9,"rt_usec":933.3,"etime":0.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":5818,"utime":9.8,"rtime":10.75,"ut_ops":593.7,"rt_ops":541.0,"ut_usec":1684.4,"rt_usec":1848.5,"etime":0.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":2666,"utime":9.49,"rtime":10.58,"ut_ops":280.9,"rt_ops":252.1,"ut_usec":3559.6,"rt_usec":3967.2,"etime":0.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":1599,"utime":9.29,"rtime":11.45,"ut_ops":172.1,"rt_ops":139.6,"ut_usec":5809.9,"rt_usec":7161.0,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":727,"utime":10.42,"rtime":11.73,"ut_ops":69.8,"rt_ops":62.0,"ut_usec":14332.9,"rt_usec":16134.1,"etime":0.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":333,"utime":9.5,"rtime":10.72,"ut_ops":35.1,"rt_ops":31.1,"ut_usec":28528.5,"rt_usec":32190.7,"etime":0.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":153,"utime":9.22,"rtime":10.14,"ut_ops":16.6,"rt_ops":15.1,"ut_usec":60261.4,"rt_usec":66267.3,"etime":0.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":146285,"utime":10.54,"rtime":11.94,"ut_ops":13879.0,"rt_ops":12248.0,"ut_usec":72.1,"rt_usec":81.6,"etime":1.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":120470,"utime":10.06,"rtime":11.45,"ut_ops":11975.1,"rt_ops":10523.3,"ut_usec":83.5,"rt_usec":95.0,"etime":1.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":93090,"utime":9.42,"rtime":10.3,"ut_ops":9882.2,"rt_ops":9040.9,"ut_usec":101.2,"rt_usec":110.6,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":68266,"utime":9.46,"rtime":10.27,"ut_ops":7216.3,"rt_ops":6645.0,"ut_usec":138.6,"rt_usec":150.5,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":46545,"utime":10.02,"rtime":10.55,"ut_ops":4645.2,"rt_ops":4413.8,"ut_usec":215.3,"rt_usec":226.6,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":30117,"utime":10.8,"rtime":11.13,"ut_ops":2788.6,"rt_ops":2704.8,"ut_usec":358.6,"rt_usec":369.7,"etime":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":15058,"utime":9.6,"rtime":9.77,"ut_ops":1568.5,"rt_ops":1540.9,"ut_usec":637.5,"rt_usec":649.0,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":8000,"utime":9.6,"rtime":9.73,"ut_ops":833.3,"rt_ops":822.5,"ut_usec":1200.0,"rt_usec":1215.7,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":4266,"utime":9.84,"rtime":9.92,"ut_ops":433.5,"rt_ops":429.9,"ut_usec":2306.6,"rt_usec":2326.2,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":2285,"utime":10.21,"rtime":10.27,"ut_ops":223.8,"rt_ops":222.4,"ut_usec":4468.3,"rt_usec":4496.3,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1066,"utime":9.57,"rtime":9.71,"ut_ops":111.4,"rt_ops":109.8,"ut_usec":8977.5,"rt_usec":9105.7,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":571,"utime":9.95,"rtime":9.99,"ut_ops":57.4,"rt_ops":57.2,"ut_usec":17425.6,"rt_usec":17492.2,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":285,"utime":9.83,"rtime":9.84,"ut_ops":29.0,"rt_ops":29.0,"ut_usec":34491.2,"rt_usec":34537.0,"etime":0.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":146285,"utime":10.64,"rtime":12.34,"ut_ops":13748.6,"rt_ops":11852.2,"ut_usec":72.7,"rt_usec":84.4,"etime":1.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":136533,"utime":10.11,"rtime":11.7,"ut_ops":13504.7,"rt_ops":11671.6,"ut_usec":74.0,"rt_usec":85.7,"etime":1.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":127999,"utime":9.78,"rtime":11.06,"ut_ops":13087.8,"rt_ops":11576.3,"ut_usec":76.4,"rt_usec":86.4,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":120470,"utime":9.74,"rtime":11.16,"ut_ops":12368.6,"rt_ops":10793.1,"ut_usec":80.9,"rt_usec":92.7,"etime":0.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":102399,"utime":9.28,"rtime":10.63,"ut_ops":11034.4,"rt_ops":9634.9,"ut_usec":90.6,"rt_usec":103.8,"etime":0.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":93090,"utime":9.71,"rtime":11.15,"ut_ops":9587.0,"rt_ops":8347.3,"ut_usec":104.3,"rt_usec":119.8,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":73142,"utime":10.25,"rtime":11.46,"ut_ops":7135.8,"rt_ops":6380.2,"ut_usec":140.1,"rt_usec":156.7,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":46545,"utime":9.24,"rtime":10.35,"ut_ops":5037.3,"rt_ops":4496.1,"ut_usec":198.5,"rt_usec":222.4,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":30117,"utime":9.7,"rtime":10.63,"ut_ops":3104.8,"rt_ops":2832.1,"ut_usec":322.1,"rt_usec":353.1,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":18285,"utime":10.39,"rtime":11.26,"ut_ops":1759.9,"rt_ops":1623.6,"ut_usec":568.2,"rt_usec":615.9,"etime":0.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":9846,"utime":9.86,"rtime":10.7,"ut_ops":998.6,"rt_ops":920.2,"ut_usec":1001.4,"rt_usec":1086.8,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":4923,"utime":9.66,"rtime":10.43,"ut_ops":509.6,"rt_ops":472.2,"ut_usec":1962.2,"rt_usec":2117.9,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":2461,"utime":9.54,"rtime":10.19,"ut_ops":258.0,"rt_ops":241.5,"ut_usec":3876.5,"rt_usec":4140.2,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1230,"utime":10.0,"rtime":10.67,"ut_ops":123.0,"rt_ops":115.3,"ut_usec":8130.1,"rt_usec":8676.4,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":499,"utime":9.65,"rtime":10.45,"ut_ops":51.7,"rt_ops":47.7,"ut_usec":19338.7,"rt_usec":20950.3,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":235,"utime":9.05,"rtime":9.74,"ut_ops":26.0,"rt_ops":24.1,"ut_usec":38510.6,"rt_usec":41434.5,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-0950","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":128000,"utime":9.88,"rtime":11.15,"ut_ops":12955.5,"rt_ops":11484.5,"ut_usec":77.2,"rt_usec":87.1,"etime":1.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":113777,"utime":9.81,"rtime":11.02,"ut_ops":11598.1,"rt_ops":10323.5,"ut_usec":86.2,"rt_usec":96.9,"etime":1.2,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":93090,"utime":9.65,"rtime":10.69,"ut_ops":9646.6,"rt_ops":8710.3,"ut_usec":103.7,"rt_usec":114.8,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":73142,"utime":10.06,"rtime":10.89,"ut_ops":7270.6,"rt_ops":6716.0,"ut_usec":137.5,"rt_usec":148.9,"etime":0.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":46545,"utime":9.46,"rtime":10.01,"ut_ops":4920.2,"rt_ops":4649.8,"ut_usec":203.2,"rt_usec":215.1,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":30117,"utime":10.18,"rtime":10.57,"ut_ops":2958.4,"rt_ops":2848.2,"ut_usec":338.0,"rt_usec":351.1,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":17066,"utime":10.25,"rtime":10.49,"ut_ops":1665.0,"rt_ops":1627.6,"ut_usec":600.6,"rt_usec":614.4,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":9142,"utime":10.36,"rtime":10.48,"ut_ops":882.4,"rt_ops":872.4,"ut_usec":1133.2,"rt_usec":1146.2,"etime":0.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":4571,"utime":9.99,"rtime":10.05,"ut_ops":457.6,"rt_ops":454.6,"ut_usec":2185.5,"rt_usec":2199.6,"etime":0.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":2285,"utime":9.77,"rtime":9.82,"ut_ops":233.9,"rt_ops":232.7,"ut_usec":4275.7,"rt_usec":4298.1,"etime":0.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1142,"utime":9.64,"rtime":9.68,"ut_ops":118.5,"rt_ops":118.0,"ut_usec":8441.3,"rt_usec":8476.5,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":615,"utime":10.05,"rtime":10.08,"ut_ops":61.2,"rt_ops":61.0,"ut_usec":16341.5,"rt_usec":16392.7,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":307,"utime":10.21,"rtime":10.22,"ut_ops":30.1,"rt_ops":30.0,"ut_usec":33257.3,"rt_usec":33284.2,"etime":0.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":128000,"utime":10.13,"rtime":11.62,"ut_ops":12635.7,"rt_ops":11014.3,"ut_usec":79.1,"rt_usec":90.8,"etime":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":107789,"utime":9.99,"rtime":11.14,"ut_ops":10789.7,"rt_ops":9676.5,"ut_usec":92.7,"rt_usec":103.3,"etime":1.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":64000,"utime":10.3,"rtime":11.04,"ut_ops":6213.6,"rt_ops":5795.8,"ut_usec":160.9,"rt_usec":172.5,"etime":1.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":23272,"utime":10.13,"rtime":10.42,"ut_ops":2297.3,"rt_ops":2234.3,"ut_usec":435.3,"rt_usec":447.6,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":7111,"utime":10.46,"rtime":10.55,"ut_ops":679.8,"rt_ops":673.8,"ut_usec":1471.0,"rt_usec":1484.2,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1777,"utime":10.11,"rtime":10.14,"ut_ops":175.8,"rt_ops":175.2,"ut_usec":5689.4,"rt_usec":5706.3,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":470,"utime":10.44,"rtime":10.45,"ut_ops":45.0,"rt_ops":45.0,"ut_usec":22212.8,"rt_usec":22235.3,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":128000,"utime":10.11,"rtime":11.58,"ut_ops":12660.7,"rt_ops":11049.1,"ut_usec":79.0,"rt_usec":90.5,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":93090,"utime":10.23,"rtime":11.18,"ut_ops":9099.7,"rt_ops":8328.4,"ut_usec":109.9,"rt_usec":120.1,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":25599,"utime":9.86,"rtime":10.17,"ut_ops":2596.2,"rt_ops":2516.3,"ut_usec":385.2,"rt_usec":397.4,"etime":0.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":4266,"utime":10.67,"rtime":10.73,"ut_ops":399.8,"rt_ops":397.4,"ut_usec":2501.2,"rt_usec":2516.1,"etime":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":533,"utime":9.85,"rtime":9.87,"ut_ops":54.1,"rt_ops":54.0,"ut_usec":18480.3,"rt_usec":18511.9,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":127999,"utime":10.33,"rtime":11.76,"ut_ops":12391.0,"rt_ops":10888.1,"ut_usec":80.7,"rt_usec":91.8,"etime":1.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":68266,"utime":9.67,"rtime":10.37,"ut_ops":7059.6,"rt_ops":6583.1,"ut_usec":141.7,"rt_usec":151.9,"etime":0.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":8533,"utime":10.27,"rtime":10.39,"ut_ops":830.9,"rt_ops":820.9,"ut_usec":1203.6,"rt_usec":1218.2,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":533,"utime":9.63,"rtime":9.64,"ut_ops":55.3,"rt_ops":55.3,"ut_usec":18067.5,"rt_usec":18093.6,"etime":1.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":128000,"utime":10.13,"rtime":11.59,"ut_ops":12635.7,"rt_ops":11040.9,"ut_usec":79.1,"rt_usec":90.6,"etime":1.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":46545,"utime":9.87,"rtime":10.41,"ut_ops":4715.8,"rt_ops":4472.1,"ut_usec":212.1,"rt_usec":223.6,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":2285,"utime":10.07,"rtime":10.12,"ut_ops":226.9,"rt_ops":225.9,"ut_usec":4407.0,"rt_usec":4427.2,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":120470,"utime":9.55,"rtime":10.84,"ut_ops":12614.7,"rt_ops":11116.8,"ut_usec":79.3,"rt_usec":90.0,"etime":1.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":127999,"utime":10.31,"rtime":11.8,"ut_ops":12415.0,"rt_ops":10847.8,"ut_usec":80.5,"rt_usec":92.2,"etime":1.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":113777,"utime":9.52,"rtime":10.74,"ut_ops":11951.4,"rt_ops":10591.1,"ut_usec":83.7,"rt_usec":94.4,"etime":1.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":102399,"utime":8.92,"rtime":10.03,"ut_ops":11479.7,"rt_ops":10209.7,"ut_usec":87.1,"rt_usec":97.9,"etime":0.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":102399,"utime":10.15,"rtime":11.36,"ut_ops":10088.6,"rt_ops":9016.6,"ut_usec":99.1,"rt_usec":110.9,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":85333,"utime":10.31,"rtime":11.56,"ut_ops":8276.7,"rt_ops":7383.8,"ut_usec":120.8,"rt_usec":135.4,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":63999,"utime":10.56,"rtime":11.67,"ut_ops":6060.5,"rt_ops":5485.8,"ut_usec":165.0,"rt_usec":182.3,"etime":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":39384,"utime":9.55,"rtime":10.43,"ut_ops":4124.0,"rt_ops":3774.4,"ut_usec":242.5,"rt_usec":264.9,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":25599,"utime":10.51,"rtime":11.55,"ut_ops":2435.7,"rt_ops":2215.6,"ut_usec":410.6,"rt_usec":451.3,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":13473,"utime":9.76,"rtime":10.44,"ut_ops":1380.4,"rt_ops":1291.0,"ut_usec":724.4,"rt_usec":774.6,"etime":0.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":7529,"utime":10.48,"rtime":11.09,"ut_ops":718.4,"rt_ops":678.8,"ut_usec":1392.0,"rt_usec":1473.2,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":3555,"utime":10.17,"rtime":10.78,"ut_ops":349.6,"rt_ops":329.8,"ut_usec":2860.8,"rt_usec":3032.4,"etime":1.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":2285,"utime":9.89,"rtime":10.59,"ut_ops":231.0,"rt_ops":215.8,"ut_usec":4328.2,"rt_usec":4633.8,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1066,"utime":10.28,"rtime":10.88,"ut_ops":103.7,"rt_ops":97.9,"ut_usec":9643.5,"rt_usec":10210.0,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":533,"utime":10.08,"rtime":10.77,"ut_ops":52.9,"rt_ops":49.5,"ut_usec":18911.8,"rt_usec":20211.7,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":166,"utime":10.1,"rtime":10.6,"ut_ops":16.4,"rt_ops":15.7,"ut_usec":60843.4,"rt_usec":63826.6,"etime":0.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":128000,"utime":9.96,"rtime":11.44,"ut_ops":12851.4,"rt_ops":11192.6,"ut_usec":77.8,"rt_usec":89.3,"etime":1.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":120470,"utime":9.67,"rtime":11.09,"ut_ops":12458.1,"rt_ops":10858.1,"ut_usec":80.3,"rt_usec":92.1,"etime":1.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":120470,"utime":10.39,"rtime":11.92,"ut_ops":11594.8,"rt_ops":10108.3,"ut_usec":86.2,"rt_usec":98.9,"etime":1.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":93090,"utime":10.68,"rtime":12.25,"ut_ops":8716.3,"rt_ops":7600.3,"ut_usec":114.7,"rt_usec":131.6,"etime":1.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":46545,"utime":10.06,"rtime":11.29,"ut_ops":4626.7,"rt_ops":4122.0,"ut_usec":216.1,"rt_usec":242.6,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":17066,"utime":10.4,"rtime":11.66,"ut_ops":1641.0,"rt_ops":1463.3,"ut_usec":609.4,"rt_usec":683.4,"etime":1.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":4571,"utime":9.68,"rtime":10.46,"ut_ops":472.2,"rt_ops":437.1,"ut_usec":2117.7,"rt_usec":2287.9,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":7,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1142,"utime":10.11,"rtime":11.12,"ut_ops":113.0,"rt_ops":102.7,"ut_usec":8852.9,"rt_usec":9740.3,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":4,"power":8,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":235,"utime":9.59,"rtime":10.49,"ut_ops":24.5,"rt_ops":22.4,"ut_usec":40808.5,"rt_usec":44636.4,"etime":0.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":102399,"utime":7.96,"rtime":9.11,"ut_ops":12864.2,"rt_ops":11236.5,"ut_usec":77.7,"rt_usec":89.0,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":113777,"utime":9.02,"rtime":10.28,"ut_ops":12613.9,"rt_ops":11070.1,"ut_usec":79.3,"rt_usec":90.3,"etime":1.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":93090,"utime":9.81,"rtime":11.34,"ut_ops":9489.3,"rt_ops":8211.3,"ut_usec":105.4,"rt_usec":121.8,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":36571,"utime":10.11,"rtime":11.36,"ut_ops":3617.3,"rt_ops":3219.8,"ut_usec":276.4,"rt_usec":310.6,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":6399,"utime":10.0,"rtime":12.12,"ut_ops":639.9,"rt_ops":528.0,"ut_usec":1562.7,"rt_usec":1893.9,"etime":0.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":136533,"utime":10.32,"rtime":11.86,"ut_ops":13229.9,"rt_ops":11516.3,"ut_usec":75.6,"rt_usec":86.8,"etime":1.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":128000,"utime":10.46,"rtime":12.04,"ut_ops":12237.1,"rt_ops":10631.1,"ut_usec":81.7,"rt_usec":94.1,"etime":1.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":60235,"utime":9.77,"rtime":11.16,"ut_ops":6165.3,"rt_ops":5398.6,"ut_usec":162.2,"rt_usec":185.2,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":7529,"utime":10.0,"rtime":10.74,"ut_ops":752.9,"rt_ops":700.9,"ut_usec":1328.2,"rt_usec":1426.8,"etime":1.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":16,"power":4,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":363,"utime":9.84,"rtime":10.74,"ut_ops":36.9,"rt_ops":33.8,"ut_usec":27107.4,"rt_usec":29575.7,"etime":0.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":127999,"utime":9.62,"rtime":11.04,"ut_ops":13305.5,"rt_ops":11592.1,"ut_usec":75.2,"rt_usec":86.3,"etime":1.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":113777,"utime":9.87,"rtime":11.68,"ut_ops":11527.6,"rt_ops":9745.1,"ut_usec":86.7,"rt_usec":102.6,"etime":1.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":25599,"utime":9.77,"rtime":11.22,"ut_ops":2620.2,"rt_ops":2282.5,"ut_usec":381.7,"rt_usec":438.1,"etime":0.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":32,"power":3,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":941,"utime":9.67,"rtime":11.11,"ut_ops":97.3,"rt_ops":84.7,"ut_usec":10276.3,"rt_usec":11805.1,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1019","tag":"base_c_nest_full"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":93090,"utime":10.88,"rtime":11.82,"ut_ops":8556.1,"rt_ops":7874.2,"ut_usec":116.9,"rt_usec":127.0,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":85333,"utime":10.13,"rtime":11.13,"ut_ops":8423.8,"rt_ops":7665.5,"ut_usec":118.7,"rt_usec":130.5,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":85333,"utime":10.05,"rtime":11.01,"ut_ops":8490.8,"rt_ops":7748.2,"ut_usec":117.8,"rt_usec":129.1,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":85333,"utime":10.21,"rtime":11.16,"ut_ops":8357.8,"rt_ops":7645.5,"ut_usec":119.6,"rt_usec":130.8,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":85333,"utime":10.23,"rtime":11.19,"ut_ops":8341.4,"rt_ops":7626.2,"ut_usec":119.9,"rt_usec":131.1,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":78769,"utime":9.43,"rtime":10.22,"ut_ops":8353.0,"rt_ops":7709.7,"ut_usec":119.7,"rt_usec":129.7,"etime":0.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":78769,"utime":9.98,"rtime":10.85,"ut_ops":7892.7,"rt_ops":7259.7,"ut_usec":126.7,"rt_usec":137.7,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":78769,"utime":9.95,"rtime":10.87,"ut_ops":7916.5,"rt_ops":7248.8,"ut_usec":126.3,"rt_usec":138.0,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":68266,"utime":9.03,"rtime":9.85,"ut_ops":7559.9,"rt_ops":6929.2,"ut_usec":132.3,"rt_usec":144.3,"etime":0.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":78769,"utime":11.21,"rtime":12.44,"ut_ops":7026.7,"rt_ops":6331.8,"ut_usec":142.3,"rt_usec":157.9,"etime":0.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":64000,"utime":9.94,"rtime":11.14,"ut_ops":6438.6,"rt_ops":5742.8,"ut_usec":155.3,"rt_usec":174.1,"etime":1.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":53894,"utime":10.14,"rtime":11.35,"ut_ops":5315.0,"rt_ops":4746.3,"ut_usec":188.1,"rt_usec":210.7,"etime":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":39384,"utime":10.0,"rtime":11.42,"ut_ops":3938.4,"rt_ops":3450.1,"ut_usec":253.9,"rt_usec":289.8,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":26947,"utime":10.58,"rtime":11.69,"ut_ops":2547.0,"rt_ops":2304.2,"ut_usec":392.6,"rt_usec":434.0,"etime":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":15058,"utime":10.04,"rtime":11.85,"ut_ops":1499.8,"rt_ops":1270.4,"ut_usec":666.8,"rt_usec":787.2,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":9142,"utime":10.01,"rtime":11.58,"ut_ops":913.3,"rt_ops":789.7,"ut_usec":1094.9,"rt_usec":1266.3,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":85333,"utime":9.9,"rtime":10.75,"ut_ops":8619.5,"rt_ops":7940.6,"ut_usec":116.0,"rt_usec":125.9,"etime":0.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":85333,"utime":9.77,"rtime":10.6,"ut_ops":8734.2,"rt_ops":8047.3,"ut_usec":114.5,"rt_usec":124.3,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":85333,"utime":10.07,"rtime":11.06,"ut_ops":8474.0,"rt_ops":7718.5,"ut_usec":118.0,"rt_usec":129.6,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":85333,"utime":9.96,"rtime":10.8,"ut_ops":8567.6,"rt_ops":7904.5,"ut_usec":116.7,"rt_usec":126.5,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":85333,"utime":9.97,"rtime":10.84,"ut_ops":8559.0,"rt_ops":7872.6,"ut_usec":116.8,"rt_usec":127.0,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":85333,"utime":9.94,"rtime":10.83,"ut_ops":8584.8,"rt_ops":7880.9,"ut_usec":116.5,"rt_usec":126.9,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":78769,"utime":9.37,"rtime":10.24,"ut_ops":8406.5,"rt_ops":7694.6,"ut_usec":119.0,"rt_usec":130.0,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":78769,"utime":9.84,"rtime":10.7,"ut_ops":8005.0,"rt_ops":7364.4,"ut_usec":124.9,"rt_usec":135.8,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":78769,"utime":10.25,"rtime":11.26,"ut_ops":7684.8,"rt_ops":6996.2,"ut_usec":130.1,"rt_usec":142.9,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":68266,"utime":9.53,"rtime":10.63,"ut_ops":7163.3,"rt_ops":6420.1,"ut_usec":139.6,"rt_usec":155.8,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":51199,"utime":8.04,"rtime":8.97,"ut_ops":6368.0,"rt_ops":5704.8,"ut_usec":157.0,"rt_usec":175.3,"etime":0.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":53894,"utime":9.64,"rtime":10.91,"ut_ops":5590.7,"rt_ops":4939.3,"ut_usec":178.9,"rt_usec":202.5,"etime":1.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":42666,"utime":10.73,"rtime":11.93,"ut_ops":3976.3,"rt_ops":3576.9,"ut_usec":251.5,"rt_usec":279.6,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":26947,"utime":10.14,"rtime":11.55,"ut_ops":2657.5,"rt_ops":2332.1,"ut_usec":376.3,"rt_usec":428.8,"etime":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":15999,"utime":10.48,"rtime":12.24,"ut_ops":1526.6,"rt_ops":1306.9,"ut_usec":655.0,"rt_usec":765.2,"etime":0.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":9142,"utime":10.53,"rtime":11.99,"ut_ops":868.2,"rt_ops":762.2,"ut_usec":1151.8,"rt_usec":1311.9,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":68266,"utime":9.79,"rtime":10.49,"ut_ops":6973.0,"rt_ops":6506.2,"ut_usec":143.4,"rt_usec":153.7,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":63999,"utime":10.44,"rtime":11.16,"ut_ops":6130.2,"rt_ops":5735.6,"ut_usec":163.1,"rt_usec":174.3,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":51199,"utime":9.92,"rtime":10.5,"ut_ops":5161.2,"rt_ops":4874.1,"ut_usec":193.8,"rt_usec":205.2,"etime":0.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":36571,"utime":9.55,"rtime":9.98,"ut_ops":3829.4,"rt_ops":3664.1,"ut_usec":261.1,"rt_usec":272.9,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":25600,"utime":9.95,"rtime":10.25,"ut_ops":2572.9,"rt_ops":2498.1,"ut_usec":388.7,"rt_usec":400.3,"etime":1.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":15058,"utime":9.63,"rtime":9.83,"ut_ops":1563.7,"rt_ops":1531.4,"ut_usec":639.5,"rt_usec":653.0,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":8533,"utime":9.65,"rtime":9.77,"ut_ops":884.2,"rt_ops":873.0,"ut_usec":1130.9,"rt_usec":1145.5,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":4571,"utime":9.76,"rtime":9.82,"ut_ops":468.3,"rt_ops":465.7,"ut_usec":2135.2,"rt_usec":2147.3,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":2285,"utime":9.34,"rtime":9.37,"ut_ops":244.6,"rt_ops":243.8,"ut_usec":4087.5,"rt_usec":4101.0,"etime":0.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":1230,"utime":9.91,"rtime":9.93,"ut_ops":124.1,"rt_ops":123.9,"ut_usec":8056.9,"rt_usec":8071.2,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":615,"utime":9.95,"rtime":9.97,"ut_ops":61.8,"rt_ops":61.7,"ut_usec":16178.9,"rt_usec":16205.5,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":307,"utime":10.03,"rtime":10.04,"ut_ops":30.6,"rt_ops":30.6,"ut_usec":32671.0,"rt_usec":32708.1,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":153,"utime":10.06,"rtime":10.09,"ut_ops":15.2,"rt_ops":15.2,"ut_usec":65751.6,"rt_usec":65935.8,"etime":0.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":71,"utime":9.68,"rtime":9.72,"ut_ops":7.3,"rt_ops":7.3,"ut_usec":136338.0,"rt_usec":136835.7,"etime":0.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":35,"utime":9.64,"rtime":9.69,"ut_ops":3.6,"rt_ops":3.6,"ut_usec":275428.6,"rt_usec":276961.5,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":68266,"utime":9.9,"rtime":10.74,"ut_ops":6895.6,"rt_ops":6355.1,"ut_usec":145.0,"rt_usec":157.4,"etime":0.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":64000,"utime":10.25,"rtime":11.0,"ut_ops":6243.9,"rt_ops":5818.5,"ut_usec":160.2,"rt_usec":171.9,"etime":1.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":51199,"utime":9.79,"rtime":10.39,"ut_ops":5229.7,"rt_ops":4927.5,"ut_usec":191.2,"rt_usec":202.9,"etime":1.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":42666,"utime":10.84,"rtime":11.34,"ut_ops":3936.0,"rt_ops":3763.4,"ut_usec":254.1,"rt_usec":265.7,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":25599,"utime":9.69,"rtime":10.0,"ut_ops":2641.8,"rt_ops":2560.0,"ut_usec":378.5,"rt_usec":390.6,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":15058,"utime":9.34,"rtime":9.54,"ut_ops":1612.2,"rt_ops":1579.2,"ut_usec":620.3,"rt_usec":633.2,"etime":0.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":9142,"utime":10.28,"rtime":10.43,"ut_ops":889.3,"rt_ops":876.2,"ut_usec":1124.5,"rt_usec":1141.4,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":4266,"utime":8.82,"rtime":8.88,"ut_ops":483.7,"rt_ops":480.2,"ut_usec":2067.5,"rt_usec":2082.3,"etime":0.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":2461,"utime":9.88,"rtime":9.94,"ut_ops":249.1,"rt_ops":247.6,"ut_usec":4014.6,"rt_usec":4038.5,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":1333,"utime":10.75,"rtime":10.8,"ut_ops":124.0,"rt_ops":123.5,"ut_usec":8064.5,"rt_usec":8100.0,"etime":0.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":666,"utime":10.6,"rtime":10.61,"ut_ops":62.8,"rt_ops":62.8,"ut_usec":15915.9,"rt_usec":15928.0,"etime":0.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":307,"utime":10.01,"rtime":10.06,"ut_ops":30.7,"rt_ops":30.5,"ut_usec":32605.9,"rt_usec":32763.9,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":133,"utime":8.96,"rtime":8.99,"ut_ops":14.8,"rt_ops":14.8,"ut_usec":67368.4,"rt_usec":67575.4,"etime":0.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":71,"utime":10.31,"rtime":10.33,"ut_ops":6.9,"rt_ops":6.9,"ut_usec":145211.3,"rt_usec":145534.2,"etime":0.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":41,"utime":10.0,"rtime":10.04,"ut_ops":4.1,"rt_ops":4.1,"ut_usec":243902.4,"rt_usec":244971.1,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":18,"utime":9.58,"rtime":9.63,"ut_ops":1.9,"rt_ops":1.9,"ut_usec":532222.2,"rt_usec":534998.2,"etime":1.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":10,"utime":10.11,"rtime":10.18,"ut_ops":1.0,"rt_ops":1.0,"ut_usec":1011000.0,"rt_usec":1018228.6,"etime":1.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":5,"utime":10.04,"rtime":10.1,"ut_ops":0.5,"rt_ops":0.5,"ut_usec":2008000.0,"rt_usec":2020308.2,"etime":2.63,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":93090,"utime":10.11,"rtime":11.09,"ut_ops":9207.7,"rt_ops":8390.8,"ut_usec":108.6,"rt_usec":119.2,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":63999,"utime":9.5,"rtime":10.21,"ut_ops":6736.7,"rt_ops":6268.6,"ut_usec":148.4,"rt_usec":159.5,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":42666,"utime":10.04,"rtime":10.57,"ut_ops":4249.6,"rt_ops":4037.7,"ut_usec":235.3,"rt_usec":247.7,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":25599,"utime":10.42,"rtime":10.75,"ut_ops":2456.7,"rt_ops":2381.1,"ut_usec":407.0,"rt_usec":420.0,"etime":0.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":13473,"utime":9.91,"rtime":10.12,"ut_ops":1359.5,"rt_ops":1331.9,"ut_usec":735.5,"rt_usec":750.8,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":7111,"utime":10.19,"rtime":10.31,"ut_ops":697.8,"rt_ops":689.9,"ut_usec":1433.0,"rt_usec":1449.4,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":3555,"utime":10.08,"rtime":10.16,"ut_ops":352.7,"rt_ops":349.9,"ut_usec":2835.4,"rt_usec":2858.3,"etime":1.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1684,"utime":9.62,"rtime":9.65,"ut_ops":175.1,"rt_ops":174.4,"ut_usec":5712.6,"rt_usec":5732.9,"etime":1.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":842,"utime":9.65,"rtime":9.68,"ut_ops":87.3,"rt_ops":87.0,"ut_usec":11460.8,"rt_usec":11497.3,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":399,"utime":9.31,"rtime":9.32,"ut_ops":42.9,"rt_ops":42.8,"ut_usec":23333.3,"rt_usec":23369.6,"etime":0.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":199,"utime":9.42,"rtime":9.43,"ut_ops":21.1,"rt_ops":21.1,"ut_usec":47336.7,"rt_usec":47409.2,"etime":0.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":99,"utime":9.67,"rtime":9.69,"ut_ops":10.2,"rt_ops":10.2,"ut_usec":97676.8,"rt_usec":97921.9,"etime":0.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":52,"utime":10.35,"rtime":10.39,"ut_ops":5.0,"rt_ops":5.0,"ut_usec":199038.5,"rt_usec":199756.3,"etime":0.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":93090,"utime":10.2,"rtime":11.23,"ut_ops":9126.5,"rt_ops":8289.9,"ut_usec":109.6,"rt_usec":120.6,"etime":0.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":68266,"utime":10.05,"rtime":10.74,"ut_ops":6792.6,"rt_ops":6354.6,"ut_usec":147.2,"rt_usec":157.4,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":39384,"utime":8.93,"rtime":9.38,"ut_ops":4410.3,"rt_ops":4198.6,"ut_usec":226.7,"rt_usec":238.2,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":25599,"utime":9.81,"rtime":10.13,"ut_ops":2609.5,"rt_ops":2526.9,"ut_usec":383.2,"rt_usec":395.7,"etime":0.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":14222,"utime":9.96,"rtime":10.13,"ut_ops":1427.9,"rt_ops":1403.5,"ut_usec":700.3,"rt_usec":712.5,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":7111,"utime":9.6,"rtime":9.7,"ut_ops":740.7,"rt_ops":733.0,"ut_usec":1350.0,"rt_usec":1364.3,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":3764,"utime":10.07,"rtime":10.13,"ut_ops":373.8,"rt_ops":371.7,"ut_usec":2675.3,"rt_usec":2690.1,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1777,"utime":9.54,"rtime":9.57,"ut_ops":186.3,"rt_ops":185.6,"ut_usec":5368.6,"rt_usec":5386.5,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":888,"utime":9.7,"rtime":9.72,"ut_ops":91.5,"rt_ops":91.3,"ut_usec":10923.4,"rt_usec":10949.4,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":421,"utime":9.35,"rtime":9.36,"ut_ops":45.0,"rt_ops":45.0,"ut_usec":22209.0,"rt_usec":22239.2,"etime":0.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":222,"utime":10.03,"rtime":10.04,"ut_ops":22.1,"rt_ops":22.1,"ut_usec":45180.2,"rt_usec":45230.8,"etime":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":99,"utime":9.27,"rtime":9.28,"ut_ops":10.7,"rt_ops":10.7,"ut_usec":93636.4,"rt_usec":93762.9,"etime":0.62,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":49,"utime":9.58,"rtime":9.6,"ut_ops":5.1,"rt_ops":5.1,"ut_usec":195510.2,"rt_usec":195978.1,"etime":0.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":24,"utime":9.56,"rtime":9.61,"ut_ops":2.5,"rt_ops":2.5,"ut_usec":398333.3,"rt_usec":400522.2,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":11,"utime":9.26,"rtime":9.33,"ut_ops":1.2,"rt_ops":1.2,"ut_usec":841818.2,"rt_usec":848153.8,"etime":1.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":5,"utime":8.46,"rtime":8.53,"ut_ops":0.6,"rt_ops":0.6,"ut_usec":1692000.0,"rt_usec":1706726.6,"etime":2.32,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1050","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":78769,"utime":9.12,"rtime":10.0,"ut_ops":8637.0,"rt_ops":7876.3,"ut_usec":115.8,"rt_usec":127.0,"etime":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":60235,"utime":9.84,"rtime":10.5,"ut_ops":6121.4,"rt_ops":5738.1,"ut_usec":163.4,"rt_usec":174.3,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":36571,"utime":9.44,"rtime":9.86,"ut_ops":3874.0,"rt_ops":3709.5,"ut_usec":258.1,"rt_usec":269.6,"etime":1.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":23272,"utime":10.12,"rtime":10.38,"ut_ops":2299.6,"rt_ops":2240.9,"ut_usec":434.9,"rt_usec":446.2,"etime":0.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":12799,"utime":10.33,"rtime":10.5,"ut_ops":1239.0,"rt_ops":1219.3,"ut_usec":807.1,"rt_usec":820.1,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":6399,"utime":10.13,"rtime":10.23,"ut_ops":631.7,"rt_ops":625.3,"ut_usec":1583.1,"rt_usec":1599.3,"etime":0.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":3199,"utime":9.8,"rtime":9.84,"ut_ops":326.4,"rt_ops":325.0,"ut_usec":3063.5,"rt_usec":3076.9,"etime":0.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1599,"utime":9.88,"rtime":9.9,"ut_ops":161.8,"rt_ops":161.5,"ut_usec":6178.9,"rt_usec":6193.6,"etime":0.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":842,"utime":10.52,"rtime":10.54,"ut_ops":80.0,"rt_ops":79.9,"ut_usec":12494.1,"rt_usec":12521.5,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":380,"utime":9.49,"rtime":9.52,"ut_ops":40.0,"rt_ops":39.9,"ut_usec":24973.7,"rt_usec":25056.3,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":199,"utime":10.15,"rtime":10.15,"ut_ops":19.6,"rt_ops":19.6,"ut_usec":51005.0,"rt_usec":51024.1,"etime":0.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":99,"utime":10.3,"rtime":10.31,"ut_ops":9.6,"rt_ops":9.6,"ut_usec":104040.4,"rt_usec":104141.2,"etime":0.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":47,"utime":9.79,"rtime":9.81,"ut_ops":4.8,"rt_ops":4.8,"ut_usec":208297.9,"rt_usec":208698.6,"etime":0.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":85333,"utime":9.91,"rtime":10.86,"ut_ops":8610.8,"rt_ops":7855.9,"ut_usec":116.1,"rt_usec":127.3,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":53894,"utime":10.37,"rtime":10.96,"ut_ops":5197.1,"rt_ops":4916.7,"ut_usec":192.4,"rt_usec":203.4,"etime":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":19692,"utime":9.98,"rtime":10.2,"ut_ops":1973.1,"rt_ops":1929.9,"ut_usec":506.8,"rt_usec":518.2,"etime":0.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":5818,"utime":10.39,"rtime":10.46,"ut_ops":560.0,"rt_ops":556.2,"ut_usec":1785.8,"rt_usec":1798.0,"etime":0.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1333,"utime":9.17,"rtime":9.19,"ut_ops":145.4,"rt_ops":145.0,"ut_usec":6879.2,"rt_usec":6896.1,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":363,"utime":10.0,"rtime":10.01,"ut_ops":36.3,"rt_ops":36.3,"ut_usec":27548.2,"rt_usec":27563.1,"etime":0.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":90,"utime":10.24,"rtime":10.26,"ut_ops":8.8,"rt_ops":8.8,"ut_usec":113777.8,"rt_usec":114015.6,"etime":0.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":85333,"utime":9.87,"rtime":10.78,"ut_ops":8645.7,"rt_ops":7913.8,"ut_usec":115.7,"rt_usec":126.4,"etime":1.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":39384,"utime":10.22,"rtime":10.68,"ut_ops":3853.6,"rt_ops":3686.5,"ut_usec":259.5,"rt_usec":271.3,"etime":0.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":7529,"utime":10.49,"rtime":10.6,"ut_ops":717.7,"rt_ops":710.1,"ut_usec":1393.3,"rt_usec":1408.3,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":941,"utime":9.91,"rtime":9.96,"ut_ops":95.0,"rt_ops":94.5,"ut_usec":10531.3,"rt_usec":10581.1,"etime":0.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":117,"utime":10.11,"rtime":10.11,"ut_ops":11.6,"rt_ops":11.6,"ut_usec":86410.3,"rt_usec":86428.1,"etime":0.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":85333,"utime":9.9,"rtime":10.82,"ut_ops":8619.5,"rt_ops":7889.6,"ut_usec":116.0,"rt_usec":126.7,"etime":0.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":23272,"utime":8.98,"rtime":9.28,"ut_ops":2591.5,"rt_ops":2507.0,"ut_usec":385.9,"rt_usec":398.9,"etime":0.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":2133,"utime":10.1,"rtime":10.14,"ut_ops":211.2,"rt_ops":210.4,"ut_usec":4735.1,"rt_usec":4752.5,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":133,"utime":10.1,"rtime":10.11,"ut_ops":13.2,"rt_ops":13.2,"ut_usec":75939.8,"rt_usec":76007.9,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":85333,"utime":9.85,"rtime":10.72,"ut_ops":8663.2,"rt_ops":7958.9,"ut_usec":115.4,"rt_usec":125.6,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":15999,"utime":10.68,"rtime":10.89,"ut_ops":1498.0,"rt_ops":1469.4,"ut_usec":667.5,"rt_usec":680.6,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":571,"utime":10.15,"rtime":10.19,"ut_ops":56.3,"rt_ops":56.0,"ut_usec":17775.8,"rt_usec":17848.0,"etime":0.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":85333,"utime":9.88,"rtime":10.77,"ut_ops":8636.9,"rt_ops":7921.9,"ut_usec":115.8,"rt_usec":126.2,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":68266,"utime":10.73,"rtime":11.49,"ut_ops":6362.2,"rt_ops":5942.3,"ut_usec":157.2,"rt_usec":168.3,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":39384,"utime":9.65,"rtime":10.07,"ut_ops":4081.2,"rt_ops":3912.5,"ut_usec":245.0,"rt_usec":255.6,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":23272,"utime":9.49,"rtime":9.75,"ut_ops":2452.3,"rt_ops":2388.0,"ut_usec":407.8,"rt_usec":418.8,"etime":0.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":12799,"utime":9.58,"rtime":9.78,"ut_ops":1336.0,"rt_ops":1309.3,"ut_usec":748.5,"rt_usec":763.8,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":6736,"utime":9.66,"rtime":9.74,"ut_ops":697.3,"rt_ops":691.6,"ut_usec":1434.1,"rt_usec":1445.9,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":3368,"utime":9.75,"rtime":9.8,"ut_ops":345.4,"rt_ops":343.6,"ut_usec":2894.9,"rt_usec":2910.5,"etime":0.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1777,"utime":10.38,"rtime":10.4,"ut_ops":171.2,"rt_ops":170.8,"ut_usec":5841.3,"rt_usec":5854.8,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":842,"utime":10.08,"rtime":10.1,"ut_ops":83.5,"rt_ops":83.4,"ut_usec":11971.5,"rt_usec":11990.8,"etime":0.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":399,"utime":9.76,"rtime":9.79,"ut_ops":40.9,"rt_ops":40.7,"ut_usec":24461.2,"rt_usec":24548.0,"etime":0.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":200,"utime":9.89,"rtime":9.93,"ut_ops":20.2,"rt_ops":20.2,"ut_usec":49450.0,"rt_usec":49627.4,"etime":0.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":90,"utime":9.63,"rtime":9.64,"ut_ops":9.3,"rt_ops":9.3,"ut_usec":107000.0,"rt_usec":107135.6,"etime":0.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":50,"utime":9.59,"rtime":9.64,"ut_ops":5.2,"rt_ops":5.2,"ut_usec":191800.0,"rt_usec":192750.4,"etime":0.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":23,"utime":9.51,"rtime":9.55,"ut_ops":2.4,"rt_ops":2.4,"ut_usec":413478.3,"rt_usec":415153.6,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":12,"utime":9.88,"rtime":9.97,"ut_ops":1.2,"rt_ops":1.2,"ut_usec":823333.3,"rt_usec":831227.3,"etime":1.4,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":4,"utime":8.08,"rtime":8.15,"ut_ops":0.5,"rt_ops":0.5,"ut_usec":2020000.0,"rt_usec":2037448.0,"etime":2.59,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":85333,"utime":9.25,"rtime":10.13,"ut_ops":9225.2,"rt_ops":8422.4,"ut_usec":108.4,"rt_usec":118.7,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":56888,"utime":10.06,"rtime":10.68,"ut_ops":5654.9,"rt_ops":5325.3,"ut_usec":176.8,"rt_usec":187.8,"etime":0.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":23272,"utime":10.45,"rtime":10.74,"ut_ops":2227.0,"rt_ops":2167.0,"ut_usec":449.0,"rt_usec":461.5,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":6399,"utime":9.7,"rtime":9.8,"ut_ops":659.7,"rt_ops":653.1,"ut_usec":1515.9,"rt_usec":1531.2,"etime":0.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1599,"utime":9.44,"rtime":9.46,"ut_ops":169.4,"rt_ops":168.9,"ut_usec":5903.7,"rt_usec":5919.3,"etime":0.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":399,"utime":9.63,"rtime":9.67,"ut_ops":41.4,"rt_ops":41.3,"ut_usec":24135.3,"rt_usec":24236.2,"etime":0.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":99,"utime":9.81,"rtime":9.86,"ut_ops":10.1,"rt_ops":10.0,"ut_usec":99090.9,"rt_usec":99576.4,"etime":0.63,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":7,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":23,"utime":9.65,"rtime":9.7,"ut_ops":2.4,"rt_ops":2.4,"ut_usec":419565.2,"rt_usec":421809.9,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":4,"power":8,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":5,"utime":9.0,"rtime":9.06,"ut_ops":0.6,"rt_ops":0.6,"ut_usec":1800000.0,"rt_usec":1812873.2,"etime":2.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":93090,"utime":10.13,"rtime":11.17,"ut_ops":9189.5,"rt_ops":8337.4,"ut_usec":108.8,"rt_usec":119.9,"etime":0.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":46545,"utime":10.78,"rtime":11.31,"ut_ops":4317.7,"rt_ops":4114.4,"ut_usec":231.6,"rt_usec":243.0,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":7999,"utime":9.58,"rtime":9.68,"ut_ops":835.0,"rt_ops":826.0,"ut_usec":1197.6,"rt_usec":1210.6,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1142,"utime":10.49,"rtime":10.52,"ut_ops":108.9,"rt_ops":108.6,"ut_usec":9185.6,"rt_usec":9209.9,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":133,"utime":9.92,"rtime":9.93,"ut_ops":13.4,"rt_ops":13.4,"ut_usec":74586.5,"rt_usec":74662.2,"etime":0.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":93090,"utime":10.1,"rtime":11.06,"ut_ops":9216.8,"rt_ops":8416.9,"ut_usec":108.5,"rt_usec":118.8,"etime":0.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":30117,"utime":10.24,"rtime":10.6,"ut_ops":2941.1,"rt_ops":2842.3,"ut_usec":340.0,"rt_usec":351.8,"etime":0.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":2461,"utime":9.83,"rtime":9.87,"ut_ops":250.4,"rt_ops":249.5,"ut_usec":3994.3,"rt_usec":4008.8,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":142,"utime":9.14,"rtime":9.15,"ut_ops":15.5,"rt_ops":15.5,"ut_usec":64366.2,"rt_usec":64446.1,"etime":0.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":16,"power":4,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":8,"utime":10.16,"rtime":10.23,"ut_ops":0.8,"rt_ops":0.8,"ut_usec":1270000.0,"rt_usec":1278537.6,"etime":1.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":85333,"utime":9.25,"rtime":10.17,"ut_ops":9225.2,"rt_ops":8389.7,"ut_usec":108.4,"rt_usec":119.2,"etime":0.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":18285,"utime":10.1,"rtime":10.33,"ut_ops":1810.4,"rt_ops":1770.4,"ut_usec":552.4,"rt_usec":564.8,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":666,"utime":9.87,"rtime":9.89,"ut_ops":67.5,"rt_ops":67.4,"ut_usec":14819.8,"rt_usec":14844.4,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":32,"power":3,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":19,"utime":9.86,"rtime":9.91,"ut_ops":1.9,"rt_ops":1.9,"ut_usec":518947.4,"rt_usec":521328.0,"etime":1.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1114","tag":"base_ruby_nest_full"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51199,"utime":10.19,"rtime":17.71,"ut_ops":5024.4,"rt_ops":2890.3,"ut_usec":199.0,"rt_usec":346.0,"etime":0.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":53894,"utime":10.37,"rtime":18.07,"ut_ops":5197.1,"rt_ops":2982.4,"ut_usec":192.4,"rt_usec":335.3,"etime":1.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"utime":8.86,"rtime":15.89,"ut_ops":5253.4,"rt_ops":2928.6,"ut_usec":190.4,"rt_usec":341.5,"etime":1.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51200,"utime":9.58,"rtime":16.56,"ut_ops":5344.5,"rt_ops":3091.5,"ut_usec":187.1,"rt_usec":323.5,"etime":1.25,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":53894,"utime":10.19,"rtime":18.35,"ut_ops":5288.9,"rt_ops":2937.4,"ut_usec":189.1,"rt_usec":340.4,"etime":1.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51199,"utime":9.91,"rtime":17.36,"ut_ops":5166.4,"rt_ops":2948.9,"ut_usec":193.6,"rt_usec":339.1,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51199,"utime":10.05,"rtime":17.87,"ut_ops":5094.4,"rt_ops":2864.9,"ut_usec":196.3,"rt_usec":349.1,"etime":0.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51199,"utime":9.58,"rtime":17.45,"ut_ops":5344.4,"rt_ops":2934.2,"ut_usec":187.1,"rt_usec":340.8,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"utime":8.74,"rtime":15.79,"ut_ops":5325.5,"rt_ops":2947.6,"ut_usec":187.8,"rt_usec":339.3,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":53894,"utime":10.82,"rtime":19.49,"ut_ops":4981.0,"rt_ops":2764.8,"ut_usec":200.8,"rt_usec":361.7,"etime":1.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51199,"utime":10.98,"rtime":20.24,"ut_ops":4662.9,"rt_ops":2530.1,"ut_usec":214.5,"rt_usec":395.2,"etime":1.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"utime":9.92,"rtime":18.64,"ut_ops":4692.0,"rt_ops":2497.5,"ut_usec":213.1,"rt_usec":400.4,"etime":0.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"utime":10.94,"rtime":20.46,"ut_ops":4254.6,"rt_ops":2274.8,"ut_usec":235.0,"rt_usec":439.6,"etime":1.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":39384,"utime":10.18,"rtime":19.67,"ut_ops":3868.8,"rt_ops":2002.2,"ut_usec":258.5,"rt_usec":499.4,"etime":1.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":28444,"utime":9.16,"rtime":17.73,"ut_ops":3105.2,"rt_ops":1604.2,"ut_usec":322.0,"rt_usec":623.3,"etime":1.24,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":23272,"utime":10.78,"rtime":20.33,"ut_ops":2158.8,"rt_ops":1144.5,"ut_usec":463.2,"rt_usec":873.7,"etime":0.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":48761,"utime":8.99,"rtime":16.11,"ut_ops":5423.9,"rt_ops":3027.2,"ut_usec":184.4,"rt_usec":330.3,"etime":1.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":48761,"utime":9.3,"rtime":16.35,"ut_ops":5243.1,"rt_ops":2983.1,"ut_usec":190.7,"rt_usec":335.2,"etime":1.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"utime":11.07,"rtime":19.93,"ut_ops":4868.5,"rt_ops":2704.1,"ut_usec":205.4,"rt_usec":369.8,"etime":1.2,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"utime":8.71,"rtime":15.42,"ut_ops":5343.9,"rt_ops":3018.0,"ut_usec":187.1,"rt_usec":331.3,"etime":1.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"utime":10.25,"rtime":18.18,"ut_ops":5258.0,"rt_ops":2964.0,"ut_usec":190.2,"rt_usec":337.4,"etime":1.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"utime":10.13,"rtime":18.07,"ut_ops":5320.2,"rt_ops":2981.9,"ut_usec":188.0,"rt_usec":335.4,"etime":1.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"utime":10.94,"rtime":19.3,"ut_ops":4926.3,"rt_ops":2792.5,"ut_usec":203.0,"rt_usec":358.1,"etime":1.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":44521,"utime":8.44,"rtime":15.16,"ut_ops":5275.0,"rt_ops":2936.7,"ut_usec":189.6,"rt_usec":340.5,"etime":1.4,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":51200,"utime":10.58,"rtime":19.04,"ut_ops":4839.3,"rt_ops":2689.4,"ut_usec":206.6,"rt_usec":371.8,"etime":1.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"utime":9.68,"rtime":17.45,"ut_ops":4808.4,"rt_ops":2667.4,"ut_usec":208.0,"rt_usec":374.9,"etime":0.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"utime":9.18,"rtime":16.45,"ut_ops":5070.3,"rt_ops":2828.6,"ut_usec":197.2,"rt_usec":353.5,"etime":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"utime":9.54,"rtime":17.33,"ut_ops":4878.9,"rt_ops":2686.1,"ut_usec":205.0,"rt_usec":372.3,"etime":0.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":39384,"utime":9.41,"rtime":17.42,"ut_ops":4185.3,"rt_ops":2260.9,"ut_usec":238.9,"rt_usec":442.3,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":39384,"utime":10.32,"rtime":19.33,"ut_ops":3816.3,"rt_ops":2037.4,"ut_usec":262.0,"rt_usec":490.8,"etime":1.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":28444,"utime":10.17,"rtime":30.75,"ut_ops":2796.9,"rt_ops":925.0,"ut_usec":357.5,"rt_usec":1081.1,"etime":1.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":19692,"utime":10.51,"rtime":19.0,"ut_ops":1873.6,"rt_ops":1036.7,"ut_usec":533.7,"rt_usec":964.6,"etime":0.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":51199,"utime":9.89,"rtime":17.49,"ut_ops":5176.8,"rt_ops":2927.0,"ut_usec":193.2,"rt_usec":341.7,"etime":1.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":51199,"utime":10.17,"rtime":17.56,"ut_ops":5034.3,"rt_ops":2915.6,"ut_usec":198.6,"rt_usec":343.0,"etime":1.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":46545,"utime":9.39,"rtime":16.5,"ut_ops":4956.9,"rt_ops":2821.6,"ut_usec":201.7,"rt_usec":354.4,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":42666,"utime":10.24,"rtime":17.71,"ut_ops":4166.6,"rt_ops":2409.0,"ut_usec":240.0,"rt_usec":415.1,"etime":1.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":36571,"utime":8.83,"rtime":14.13,"ut_ops":4141.7,"rt_ops":2588.2,"ut_usec":241.4,"rt_usec":386.4,"etime":1.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":31999,"utime":10.52,"rtime":15.48,"ut_ops":3041.7,"rt_ops":2067.5,"ut_usec":328.8,"rt_usec":483.7,"etime":1.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":23272,"utime":10.95,"rtime":16.43,"ut_ops":2125.3,"rt_ops":1416.7,"ut_usec":470.5,"rt_usec":705.9,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":12800,"utime":9.89,"rtime":13.47,"ut_ops":1294.2,"rt_ops":949.9,"ut_usec":772.7,"rt_usec":1052.7,"etime":1.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":7529,"utime":10.13,"rtime":13.4,"ut_ops":743.2,"rt_ops":561.7,"ut_usec":1345.5,"rt_usec":1780.2,"etime":1.02,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":4266,"utime":10.07,"rtime":12.47,"ut_ops":423.6,"rt_ops":342.1,"ut_usec":2360.5,"rt_usec":2923.4,"etime":1.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":2133,"utime":9.8,"rtime":11.3,"ut_ops":217.7,"rt_ops":188.8,"ut_usec":4594.5,"rt_usec":5295.8,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1142,"utime":9.88,"rtime":11.01,"ut_ops":115.6,"rt_ops":103.8,"ut_usec":8651.5,"rt_usec":9637.1,"etime":0.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":571,"utime":9.73,"rtime":10.65,"ut_ops":58.7,"rt_ops":53.6,"ut_usec":17040.3,"rt_usec":18650.6,"etime":0.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":285,"utime":9.82,"rtime":10.57,"ut_ops":29.0,"rt_ops":27.0,"ut_usec":34456.1,"rt_usec":37089.8,"etime":0.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":142,"utime":10.02,"rtime":10.72,"ut_ops":14.2,"rt_ops":13.2,"ut_usec":70563.4,"rt_usec":75496.8,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":51200,"utime":9.61,"rtime":16.61,"ut_ops":5327.8,"rt_ops":3081.8,"ut_usec":187.7,"rt_usec":324.5,"etime":1.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":51200,"utime":9.65,"rtime":16.8,"ut_ops":5305.7,"rt_ops":3047.4,"ut_usec":188.5,"rt_usec":328.2,"etime":1.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":51199,"utime":9.62,"rtime":16.77,"ut_ops":5322.1,"rt_ops":3053.8,"ut_usec":187.9,"rt_usec":327.5,"etime":1.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":51199,"utime":10.17,"rtime":18.03,"ut_ops":5034.3,"rt_ops":2839.6,"ut_usec":198.6,"rt_usec":352.2,"etime":1.25,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":46545,"utime":9.88,"rtime":17.53,"ut_ops":4711.0,"rt_ops":2655.2,"ut_usec":212.3,"rt_usec":376.6,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":46545,"utime":9.42,"rtime":16.51,"ut_ops":4941.1,"rt_ops":2819.4,"ut_usec":202.4,"rt_usec":354.7,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":46545,"utime":10.16,"rtime":16.78,"ut_ops":4581.2,"rt_ops":2774.4,"ut_usec":218.3,"rt_usec":360.4,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":42666,"utime":10.04,"rtime":16.32,"ut_ops":4249.6,"rt_ops":2614.0,"ut_usec":235.3,"rt_usec":382.6,"etime":0.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":36571,"utime":10.65,"rtime":17.02,"ut_ops":3433.9,"rt_ops":2149.2,"ut_usec":291.2,"rt_usec":465.3,"etime":0.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":25599,"utime":9.87,"rtime":15.72,"ut_ops":2593.6,"rt_ops":1628.5,"ut_usec":385.6,"rt_usec":614.1,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":18285,"utime":10.57,"rtime":15.92,"ut_ops":1729.9,"rt_ops":1148.8,"ut_usec":578.1,"rt_usec":870.5,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":9846,"utime":9.7,"rtime":13.84,"ut_ops":1015.1,"rt_ops":711.4,"ut_usec":985.2,"rt_usec":1405.6,"etime":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":5333,"utime":9.91,"rtime":17.42,"ut_ops":538.1,"rt_ops":306.1,"ut_usec":1858.2,"rt_usec":3266.7,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2666,"utime":10.14,"rtime":13.08,"ut_ops":262.9,"rt_ops":203.8,"ut_usec":3803.5,"rt_usec":4906.5,"etime":1.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1599,"utime":9.87,"rtime":12.59,"ut_ops":162.0,"rt_ops":127.0,"ut_usec":6172.6,"rt_usec":7871.2,"etime":0.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":666,"utime":9.2,"rtime":11.2,"ut_ops":72.4,"rt_ops":59.5,"ut_usec":13813.8,"rt_usec":16817.9,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":363,"utime":10.24,"rtime":11.98,"ut_ops":35.4,"rt_ops":30.3,"ut_usec":28209.4,"rt_usec":33002.9,"etime":0.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":181,"utime":10.71,"rtime":12.87,"ut_ops":16.9,"rt_ops":14.1,"ut_usec":59171.3,"rt_usec":71099.6,"etime":0.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":53894,"utime":9.38,"rtime":17.17,"ut_ops":5745.6,"rt_ops":3139.6,"ut_usec":174.0,"rt_usec":318.5,"etime":1.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":51199,"utime":9.77,"rtime":17.75,"ut_ops":5240.4,"rt_ops":2884.6,"ut_usec":190.8,"rt_usec":346.7,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":42666,"utime":9.29,"rtime":16.88,"ut_ops":4592.7,"rt_ops":2527.2,"ut_usec":217.7,"rt_usec":395.7,"etime":0.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":42666,"utime":11.1,"rtime":20.2,"ut_ops":3843.8,"rt_ops":2112.1,"ut_usec":260.2,"rt_usec":473.5,"etime":0.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":28444,"utime":8.95,"rtime":14.97,"ut_ops":3178.1,"rt_ops":1900.0,"ut_usec":314.7,"rt_usec":526.3,"etime":1.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":21333,"utime":9.76,"rtime":15.02,"ut_ops":2185.8,"rt_ops":1420.5,"ut_usec":457.5,"rt_usec":704.0,"etime":1.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":13473,"utime":9.95,"rtime":14.19,"ut_ops":1354.1,"rt_ops":949.7,"ut_usec":738.5,"rt_usec":1053.0,"etime":1.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":7529,"utime":9.61,"rtime":12.89,"ut_ops":783.5,"rt_ops":584.1,"ut_usec":1276.4,"rt_usec":1712.1,"etime":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4266,"utime":10.04,"rtime":12.22,"ut_ops":424.9,"rt_ops":349.0,"ut_usec":2353.5,"rt_usec":2865.2,"etime":0.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":2133,"utime":9.4,"rtime":10.93,"ut_ops":226.9,"rt_ops":195.2,"ut_usec":4406.9,"rt_usec":5122.1,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1142,"utime":9.75,"rtime":10.89,"ut_ops":117.1,"rt_ops":104.9,"ut_usec":8537.7,"rt_usec":9535.5,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":571,"utime":9.71,"rtime":10.63,"ut_ops":58.8,"rt_ops":53.7,"ut_usec":17005.3,"rt_usec":18611.8,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":285,"utime":9.65,"rtime":10.38,"ut_ops":29.5,"rt_ops":27.5,"ut_usec":33859.6,"rt_usec":36414.8,"etime":0.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":46545,"utime":8.57,"rtime":16.7,"ut_ops":5431.2,"rt_ops":2786.3,"ut_usec":184.1,"rt_usec":358.9,"etime":0.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":51199,"utime":10.0,"rtime":18.65,"ut_ops":5119.9,"rt_ops":2744.9,"ut_usec":195.3,"rt_usec":364.3,"etime":0.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":51199,"utime":9.86,"rtime":18.62,"ut_ops":5192.6,"rt_ops":2749.1,"ut_usec":192.6,"rt_usec":363.8,"etime":1.29,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":51199,"utime":9.72,"rtime":17.76,"ut_ops":5267.4,"rt_ops":2883.4,"ut_usec":189.8,"rt_usec":346.8,"etime":1.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":51199,"utime":10.04,"rtime":17.84,"ut_ops":5099.5,"rt_ops":2870.7,"ut_usec":196.1,"rt_usec":348.3,"etime":0.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":46545,"utime":10.19,"rtime":17.63,"ut_ops":4567.7,"rt_ops":2640.3,"ut_usec":218.9,"rt_usec":378.7,"etime":0.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":39384,"utime":10.39,"rtime":17.49,"ut_ops":3790.6,"rt_ops":2251.3,"ut_usec":263.8,"rt_usec":444.2,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":30117,"utime":9.44,"rtime":15.15,"ut_ops":3190.4,"rt_ops":1988.4,"ut_usec":313.4,"rt_usec":502.9,"etime":1.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":23272,"utime":10.52,"rtime":16.16,"ut_ops":2212.2,"rt_ops":1440.3,"ut_usec":452.0,"rt_usec":694.3,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":14222,"utime":9.76,"rtime":13.81,"ut_ops":1457.2,"rt_ops":1030.0,"ut_usec":686.3,"rt_usec":970.9,"etime":1.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":8533,"utime":10.12,"rtime":14.04,"ut_ops":843.2,"rt_ops":607.8,"ut_usec":1186.0,"rt_usec":1645.4,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":4571,"utime":10.02,"rtime":12.9,"ut_ops":456.2,"rt_ops":354.3,"ut_usec":2192.1,"rt_usec":2822.1,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":2461,"utime":10.27,"rtime":12.65,"ut_ops":239.6,"rt_ops":194.5,"ut_usec":4173.1,"rt_usec":5141.0,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1142,"utime":9.99,"rtime":11.74,"ut_ops":114.3,"rt_ops":97.3,"ut_usec":8747.8,"rt_usec":10281.7,"etime":0.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":500,"utime":10.06,"rtime":11.62,"ut_ops":49.7,"rt_ops":43.0,"ut_usec":20120.0,"rt_usec":23241.2,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":235,"utime":9.95,"rtime":11.24,"ut_ops":23.6,"rt_ops":20.9,"ut_usec":42340.4,"rt_usec":47820.3,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1215","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":34133,"utime":10.37,"rtime":15.82,"ut_ops":3291.5,"rt_ops":2158.0,"ut_usec":303.8,"rt_usec":463.4,"etime":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":31999,"utime":9.67,"rtime":14.63,"ut_ops":3309.1,"rt_ops":2187.6,"ut_usec":302.2,"rt_usec":457.1,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":34133,"utime":10.5,"rtime":15.8,"ut_ops":3250.8,"rt_ops":2160.6,"ut_usec":307.6,"rt_usec":462.8,"etime":1.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":31999,"utime":10.31,"rtime":15.88,"ut_ops":3103.7,"rt_ops":2014.7,"ut_usec":322.2,"rt_usec":496.3,"etime":1.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":32000,"utime":10.03,"rtime":15.27,"ut_ops":3190.4,"rt_ops":2095.4,"ut_usec":313.4,"rt_usec":477.2,"etime":1.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":32000,"utime":9.99,"rtime":15.32,"ut_ops":3203.2,"rt_ops":2088.9,"ut_usec":312.2,"rt_usec":478.7,"etime":1.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":32000,"utime":10.19,"rtime":15.65,"ut_ops":3140.3,"rt_ops":2044.6,"ut_usec":318.4,"rt_usec":489.1,"etime":1.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":30117,"utime":9.43,"rtime":14.48,"ut_ops":3193.7,"rt_ops":2079.2,"ut_usec":313.1,"rt_usec":481.0,"etime":1.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":30117,"utime":10.09,"rtime":15.43,"ut_ops":2984.8,"rt_ops":1951.5,"ut_usec":335.0,"rt_usec":512.4,"etime":1.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":30117,"utime":9.8,"rtime":14.64,"ut_ops":3073.2,"rt_ops":2057.7,"ut_usec":325.4,"rt_usec":486.0,"etime":1.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":26947,"utime":9.95,"rtime":15.99,"ut_ops":2708.2,"rt_ops":1685.2,"ut_usec":369.2,"rt_usec":593.4,"etime":1.3,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":24380,"utime":9.68,"rtime":15.6,"ut_ops":2518.6,"rt_ops":1562.5,"ut_usec":397.0,"rt_usec":640.0,"etime":1.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":23272,"utime":10.21,"rtime":16.18,"ut_ops":2279.3,"rt_ops":1437.9,"ut_usec":438.7,"rt_usec":695.5,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":17066,"utime":10.05,"rtime":15.19,"ut_ops":1698.1,"rt_ops":1123.4,"ut_usec":588.9,"rt_usec":890.2,"etime":1.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":11636,"utime":10.25,"rtime":14.95,"ut_ops":1135.2,"rt_ops":778.3,"ut_usec":880.9,"rt_usec":1284.8,"etime":1.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":7529,"utime":9.99,"rtime":14.33,"ut_ops":753.7,"rt_ops":525.6,"ut_usec":1326.9,"rt_usec":1902.8,"etime":1.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":34133,"utime":10.81,"rtime":16.38,"ut_ops":3157.5,"rt_ops":2083.7,"ut_usec":316.7,"rt_usec":479.9,"etime":0.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":32000,"utime":9.62,"rtime":14.4,"ut_ops":3326.4,"rt_ops":2222.3,"ut_usec":300.6,"rt_usec":450.0,"etime":1.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":32000,"utime":9.52,"rtime":14.05,"ut_ops":3361.3,"rt_ops":2278.0,"ut_usec":297.5,"rt_usec":439.0,"etime":1.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":34133,"utime":10.93,"rtime":16.89,"ut_ops":3122.9,"rt_ops":2021.2,"ut_usec":320.2,"rt_usec":494.8,"etime":0.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":30117,"utime":9.66,"rtime":15.09,"ut_ops":3117.7,"rt_ops":1996.1,"ut_usec":320.7,"rt_usec":501.0,"etime":1.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":32000,"utime":9.83,"rtime":14.57,"ut_ops":3255.3,"rt_ops":2196.3,"ut_usec":307.2,"rt_usec":455.3,"etime":1.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":31999,"utime":9.65,"rtime":14.1,"ut_ops":3316.0,"rt_ops":2270.0,"ut_usec":301.6,"rt_usec":440.5,"etime":1.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":34133,"utime":10.5,"rtime":15.86,"ut_ops":3250.8,"rt_ops":2151.5,"ut_usec":307.6,"rt_usec":464.8,"etime":1.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":32000,"utime":9.99,"rtime":14.66,"ut_ops":3203.2,"rt_ops":2182.7,"ut_usec":312.2,"rt_usec":458.1,"etime":1.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":30117,"utime":9.91,"rtime":14.67,"ut_ops":3039.1,"rt_ops":2053.0,"ut_usec":329.1,"rt_usec":487.1,"etime":1.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":30117,"utime":10.3,"rtime":15.65,"ut_ops":2924.0,"rt_ops":1924.8,"ut_usec":342.0,"rt_usec":519.5,"etime":1.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":25599,"utime":10.05,"rtime":15.43,"ut_ops":2547.2,"rt_ops":1659.3,"ut_usec":392.6,"rt_usec":602.7,"etime":1.25,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":23272,"utime":10.6,"rtime":16.43,"ut_ops":2195.5,"rt_ops":1416.8,"ut_usec":455.5,"rt_usec":705.8,"etime":1.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":17066,"utime":9.67,"rtime":14.3,"ut_ops":1764.8,"rt_ops":1193.2,"ut_usec":566.6,"rt_usec":838.1,"etime":1.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":11636,"utime":10.16,"rtime":14.7,"ut_ops":1145.3,"rt_ops":791.3,"ut_usec":873.2,"rt_usec":1263.7,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":7111,"utime":9.83,"rtime":13.99,"ut_ops":723.4,"rt_ops":508.3,"ut_usec":1382.4,"rt_usec":1967.5,"etime":0.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":30117,"utime":9.91,"rtime":14.52,"ut_ops":3039.1,"rt_ops":2073.5,"ut_usec":329.1,"rt_usec":482.3,"etime":1.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":28444,"utime":9.97,"rtime":14.65,"ut_ops":2853.0,"rt_ops":1942.1,"ut_usec":350.5,"rt_usec":514.9,"etime":1.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":23272,"utime":9.29,"rtime":13.83,"ut_ops":2505.1,"rt_ops":1682.6,"ut_usec":399.2,"rt_usec":594.3,"etime":1.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":21333,"utime":9.45,"rtime":13.12,"ut_ops":2257.5,"rt_ops":1625.6,"ut_usec":443.0,"rt_usec":615.2,"etime":0.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":17066,"utime":9.91,"rtime":14.01,"ut_ops":1722.1,"rt_ops":1217.8,"ut_usec":580.7,"rt_usec":821.2,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":11636,"utime":9.72,"rtime":13.24,"ut_ops":1197.1,"rt_ops":878.5,"ut_usec":835.3,"rt_usec":1138.3,"etime":0.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":7529,"utime":10.11,"rtime":13.13,"ut_ops":744.7,"rt_ops":573.5,"ut_usec":1342.8,"rt_usec":1743.7,"etime":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":4266,"utime":9.98,"rtime":12.31,"ut_ops":427.5,"rt_ops":346.5,"ut_usec":2339.4,"rt_usec":2886.4,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":2285,"utime":9.89,"rtime":11.42,"ut_ops":231.0,"rt_ops":200.2,"ut_usec":4328.2,"rt_usec":4995.9,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1230,"utime":10.25,"rtime":11.35,"ut_ops":120.0,"rt_ops":108.4,"ut_usec":8333.3,"rt_usec":9226.7,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":615,"utime":9.98,"rtime":10.87,"ut_ops":61.6,"rt_ops":56.6,"ut_usec":16227.6,"rt_usec":17674.9,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":307,"utime":10.07,"rtime":10.79,"ut_ops":30.5,"rt_ops":28.4,"ut_usec":32801.3,"rt_usec":35157.6,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":142,"utime":9.5,"rtime":10.29,"ut_ops":14.9,"rt_ops":13.8,"ut_usec":66901.4,"rt_usec":72446.4,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":76,"utime":10.27,"rtime":10.93,"ut_ops":7.4,"rt_ops":7.0,"ut_usec":135131.6,"rt_usec":143855.4,"etime":0.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":34,"utime":9.39,"rtime":10.04,"ut_ops":3.6,"rt_ops":3.4,"ut_usec":276176.5,"rt_usec":295382.6,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":31999,"utime":10.56,"rtime":15.78,"ut_ops":3030.2,"rt_ops":2028.0,"ut_usec":330.0,"rt_usec":493.1,"etime":1.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":26947,"utime":9.87,"rtime":15.17,"ut_ops":2730.2,"rt_ops":1776.1,"ut_usec":366.3,"rt_usec":563.0,"etime":1.23,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":25600,"utime":9.74,"rtime":14.44,"ut_ops":2628.3,"rt_ops":1773.0,"ut_usec":380.5,"rt_usec":564.0,"etime":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":23272,"utime":10.31,"rtime":15.13,"ut_ops":2257.2,"rt_ops":1537.8,"ut_usec":443.0,"rt_usec":650.3,"etime":0.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":17066,"utime":9.78,"rtime":14.04,"ut_ops":1745.0,"rt_ops":1215.9,"ut_usec":573.1,"rt_usec":822.4,"etime":0.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":12799,"utime":10.57,"rtime":14.86,"ut_ops":1210.9,"rt_ops":861.1,"ut_usec":825.8,"rt_usec":1161.3,"etime":1.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":7529,"utime":9.97,"rtime":13.76,"ut_ops":755.2,"rt_ops":547.3,"ut_usec":1324.2,"rt_usec":1827.1,"etime":0.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":4571,"utime":10.52,"rtime":13.05,"ut_ops":434.5,"rt_ops":350.2,"ut_usec":2301.5,"rt_usec":2855.8,"etime":1.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2461,"utime":10.45,"rtime":12.22,"ut_ops":235.5,"rt_ops":201.4,"ut_usec":4246.2,"rt_usec":4964.2,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1230,"utime":10.07,"rtime":11.34,"ut_ops":122.1,"rt_ops":108.4,"ut_usec":8187.0,"rt_usec":9221.0,"etime":0.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":615,"utime":9.87,"rtime":10.81,"ut_ops":62.3,"rt_ops":56.9,"ut_usec":16048.8,"rt_usec":17583.1,"etime":0.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":285,"utime":9.3,"rtime":10.21,"ut_ops":30.6,"rt_ops":27.9,"ut_usec":32631.6,"rt_usec":35825.9,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":133,"utime":9.04,"rtime":9.82,"ut_ops":14.7,"rt_ops":13.5,"ut_usec":67969.9,"rt_usec":73858.5,"etime":0.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":66,"utime":9.64,"rtime":10.3,"ut_ops":6.8,"rt_ops":6.4,"ut_usec":146060.6,"rt_usec":156031.5,"etime":0.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":41,"utime":10.02,"rtime":10.67,"ut_ops":4.1,"rt_ops":3.8,"ut_usec":244390.2,"rt_usec":260193.8,"etime":0.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":18,"utime":9.57,"rtime":10.16,"ut_ops":1.9,"rt_ops":1.8,"ut_usec":531666.7,"rt_usec":564424.4,"etime":1.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":10,"utime":10.11,"rtime":10.74,"ut_ops":1.0,"rt_ops":0.9,"ut_usec":1011000.0,"rt_usec":1073797.5,"etime":1.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":4,"utime":8.03,"rtime":8.61,"ut_ops":0.5,"rt_ops":0.5,"ut_usec":2007500.0,"rt_usec":2152860.0,"etime":2.58,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":34133,"utime":9.98,"rtime":15.78,"ut_ops":3420.1,"rt_ops":2163.1,"ut_usec":292.4,"rt_usec":462.3,"etime":1.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":32000,"utime":10.28,"rtime":15.77,"ut_ops":3112.8,"rt_ops":2028.6,"ut_usec":321.2,"rt_usec":493.0,"etime":1.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":25599,"utime":10.76,"rtime":15.62,"ut_ops":2379.1,"rt_ops":1639.2,"ut_usec":420.3,"rt_usec":610.1,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":17066,"utime":9.82,"rtime":13.52,"ut_ops":1737.9,"rt_ops":1262.3,"ut_usec":575.4,"rt_usec":792.2,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":10666,"utime":9.96,"rtime":13.84,"ut_ops":1070.9,"rt_ops":770.8,"ut_usec":933.8,"rt_usec":1297.3,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":6399,"utime":10.45,"rtime":13.64,"ut_ops":612.3,"rt_ops":469.1,"ut_usec":1633.1,"rt_usec":2131.9,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":3199,"utime":9.66,"rtime":11.67,"ut_ops":331.2,"rt_ops":274.2,"ut_usec":3019.7,"rt_usec":3647.6,"etime":1.14,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1599,"utime":9.37,"rtime":10.82,"ut_ops":170.7,"rt_ops":147.8,"ut_usec":5859.9,"rt_usec":6768.2,"etime":0.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":799,"utime":9.24,"rtime":10.35,"ut_ops":86.5,"rt_ops":77.2,"ut_usec":11564.5,"rt_usec":12955.3,"etime":0.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":421,"utime":9.81,"rtime":10.62,"ut_ops":42.9,"rt_ops":39.6,"ut_usec":23301.7,"rt_usec":25236.2,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":210,"utime":9.89,"rtime":10.64,"ut_ops":21.2,"rt_ops":19.7,"ut_usec":47095.2,"rt_usec":50647.5,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":90,"utime":8.64,"rtime":9.27,"ut_ops":10.4,"rt_ops":9.7,"ut_usec":96000.0,"rt_usec":102988.3,"etime":0.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":49,"utime":9.66,"rtime":10.3,"ut_ops":5.1,"rt_ops":4.8,"ut_usec":197142.9,"rt_usec":210265.1,"etime":0.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":34133,"utime":9.93,"rtime":15.7,"ut_ops":3437.4,"rt_ops":2174.3,"ut_usec":290.9,"rt_usec":459.9,"etime":0.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":31999,"utime":10.9,"rtime":16.77,"ut_ops":2935.7,"rt_ops":1908.3,"ut_usec":340.6,"rt_usec":524.0,"etime":1.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":23272,"utime":9.29,"rtime":13.56,"ut_ops":2505.1,"rt_ops":1715.8,"ut_usec":399.2,"rt_usec":582.8,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":18285,"utime":10.31,"rtime":14.39,"ut_ops":1773.5,"rt_ops":1270.7,"ut_usec":563.9,"rt_usec":787.0,"etime":0.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":11636,"utime":10.27,"rtime":14.13,"ut_ops":1133.0,"rt_ops":823.6,"ut_usec":882.6,"rt_usec":1214.1,"etime":0.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":6399,"utime":9.79,"rtime":12.79,"ut_ops":653.6,"rt_ops":500.3,"ut_usec":1529.9,"rt_usec":1998.7,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":3368,"utime":9.5,"rtime":11.65,"ut_ops":354.5,"rt_ops":289.0,"ut_usec":2820.7,"rt_usec":3460.1,"etime":0.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1882,"utime":10.35,"rtime":11.72,"ut_ops":181.8,"rt_ops":160.5,"ut_usec":5499.5,"rt_usec":6229.3,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":941,"utime":10.28,"rtime":11.27,"ut_ops":91.5,"rt_ops":83.5,"ut_usec":10924.5,"rt_usec":11981.4,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":470,"utime":10.35,"rtime":11.18,"ut_ops":45.4,"rt_ops":42.0,"ut_usec":22021.3,"rt_usec":23794.8,"etime":0.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":222,"utime":9.87,"rtime":10.64,"ut_ops":22.5,"rt_ops":20.9,"ut_usec":44459.5,"rt_usec":47928.0,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":105,"utime":9.57,"rtime":10.18,"ut_ops":11.0,"rt_ops":10.3,"ut_usec":91142.9,"rt_usec":96998.8,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":52,"utime":9.81,"rtime":10.49,"ut_ops":5.3,"rt_ops":5.0,"ut_usec":188653.8,"rt_usec":201674.2,"etime":0.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":25,"utime":9.75,"rtime":10.39,"ut_ops":2.6,"rt_ops":2.4,"ut_usec":390000.0,"rt_usec":415610.4,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":11,"utime":9.21,"rtime":9.82,"ut_ops":1.2,"rt_ops":1.1,"ut_usec":837272.7,"rt_usec":892487.5,"etime":1.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":5,"utime":8.36,"rtime":9.01,"ut_ops":0.6,"rt_ops":0.6,"ut_usec":1672000.0,"rt_usec":1801408.1,"etime":2.28,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1248","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":53894,"utime":10.7,"rtime":19.34,"ut_ops":5036.8,"rt_ops":2787.0,"ut_usec":198.5,"rt_usec":358.8,"etime":1.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":48761,"utime":9.01,"rtime":16.02,"ut_ops":5411.9,"rt_ops":3043.3,"ut_usec":184.8,"rt_usec":328.6,"etime":1.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51199,"utime":10.63,"rtime":19.39,"ut_ops":4816.5,"rt_ops":2640.9,"ut_usec":207.6,"rt_usec":378.7,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51199,"utime":10.45,"rtime":18.57,"ut_ops":4899.4,"rt_ops":2756.4,"ut_usec":204.1,"rt_usec":362.8,"etime":1.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51199,"utime":10.3,"rtime":18.57,"ut_ops":4970.8,"rt_ops":2756.6,"ut_usec":201.2,"rt_usec":362.8,"etime":1.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"utime":9.35,"rtime":16.78,"ut_ops":4978.1,"rt_ops":2774.3,"ut_usec":200.9,"rt_usec":360.5,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":48761,"utime":9.93,"rtime":17.78,"ut_ops":4910.5,"rt_ops":2742.2,"ut_usec":203.6,"rt_usec":364.7,"etime":1.25,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"utime":8.77,"rtime":16.17,"ut_ops":5307.3,"rt_ops":2879.4,"ut_usec":188.4,"rt_usec":347.3,"etime":1.44,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":53894,"utime":10.79,"rtime":19.31,"ut_ops":4994.8,"rt_ops":2791.6,"ut_usec":200.2,"rt_usec":358.2,"etime":1.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"utime":9.8,"rtime":17.89,"ut_ops":4749.5,"rt_ops":2601.7,"ut_usec":210.5,"rt_usec":384.4,"etime":0.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"utime":9.19,"rtime":16.57,"ut_ops":5064.7,"rt_ops":2808.7,"ut_usec":197.4,"rt_usec":356.0,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"utime":9.84,"rtime":18.53,"ut_ops":4730.2,"rt_ops":2512.0,"ut_usec":211.4,"rt_usec":398.1,"etime":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":42666,"utime":9.69,"rtime":17.8,"ut_ops":4403.1,"rt_ops":2397.4,"ut_usec":227.1,"rt_usec":417.1,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":42666,"utime":10.61,"rtime":20.99,"ut_ops":4021.3,"rt_ops":2032.3,"ut_usec":248.7,"rt_usec":492.0,"etime":1.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":30117,"utime":9.59,"rtime":20.08,"ut_ops":3140.5,"rt_ops":1499.6,"ut_usec":318.4,"rt_usec":666.9,"etime":1.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":23272,"utime":10.69,"rtime":20.51,"ut_ops":2177.0,"rt_ops":1134.9,"ut_usec":459.4,"rt_usec":881.1,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"utime":10.5,"rtime":18.69,"ut_ops":5132.8,"rt_ops":2882.8,"ut_usec":194.8,"rt_usec":346.9,"etime":1.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"utime":11.06,"rtime":19.97,"ut_ops":4872.9,"rt_ops":2698.6,"ut_usec":205.2,"rt_usec":370.6,"etime":1.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"utime":9.96,"rtime":17.69,"ut_ops":5411.0,"rt_ops":3045.8,"ut_usec":184.8,"rt_usec":328.3,"etime":1.4,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"utime":9.94,"rtime":17.61,"ut_ops":5421.9,"rt_ops":3060.8,"ut_usec":184.4,"rt_usec":326.7,"etime":1.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":48761,"utime":8.92,"rtime":15.16,"ut_ops":5466.5,"rt_ops":3216.1,"ut_usec":182.9,"rt_usec":310.9,"etime":1.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":51199,"utime":10.43,"rtime":18.41,"ut_ops":4908.8,"rt_ops":2780.6,"ut_usec":203.7,"rt_usec":359.6,"etime":1.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"utime":9.09,"rtime":15.53,"ut_ops":5120.5,"rt_ops":2997.6,"ut_usec":195.3,"rt_usec":333.6,"etime":1.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":51199,"utime":10.18,"rtime":17.66,"ut_ops":5029.4,"rt_ops":2899.1,"ut_usec":198.8,"rt_usec":344.9,"etime":1.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"utime":9.81,"rtime":17.82,"ut_ops":4744.6,"rt_ops":2611.3,"ut_usec":210.8,"rt_usec":383.0,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"utime":9.28,"rtime":16.89,"ut_ops":5015.6,"rt_ops":2755.0,"ut_usec":199.4,"rt_usec":363.0,"etime":1.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"utime":9.88,"rtime":17.59,"ut_ops":4711.0,"rt_ops":2646.1,"ut_usec":212.3,"rt_usec":377.9,"etime":0.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"utime":10.08,"rtime":18.25,"ut_ops":4617.6,"rt_ops":2550.1,"ut_usec":216.6,"rt_usec":392.1,"etime":1.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":42666,"utime":10.5,"rtime":20.38,"ut_ops":4063.4,"rt_ops":2093.8,"ut_usec":246.1,"rt_usec":477.6,"etime":1.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":42666,"utime":11.72,"rtime":22.43,"ut_ops":3640.4,"rt_ops":1902.5,"ut_usec":274.7,"rt_usec":525.6,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":25599,"utime":9.18,"rtime":21.27,"ut_ops":2788.6,"rt_ops":1203.7,"ut_usec":358.6,"rt_usec":830.8,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":19692,"utime":10.41,"rtime":18.75,"ut_ops":1891.6,"rt_ops":1050.3,"ut_usec":528.6,"rt_usec":952.1,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":51199,"utime":10.72,"rtime":19.3,"ut_ops":4776.0,"rt_ops":2653.2,"ut_usec":209.4,"rt_usec":376.9,"etime":0.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":51199,"utime":10.93,"rtime":19.32,"ut_ops":4684.3,"rt_ops":2649.5,"ut_usec":213.5,"rt_usec":377.4,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":42666,"utime":8.56,"rtime":15.2,"ut_ops":4984.3,"rt_ops":2807.4,"ut_usec":200.6,"rt_usec":356.2,"etime":1.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":42666,"utime":9.51,"rtime":16.48,"ut_ops":4486.4,"rt_ops":2589.4,"ut_usec":222.9,"rt_usec":386.2,"etime":0.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":42666,"utime":10.2,"rtime":16.29,"ut_ops":4182.9,"rt_ops":2619.7,"ut_usec":239.1,"rt_usec":381.7,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":31999,"utime":9.86,"rtime":14.94,"ut_ops":3245.3,"rt_ops":2142.3,"ut_usec":308.1,"rt_usec":466.8,"etime":1.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":21333,"utime":9.61,"rtime":14.07,"ut_ops":2219.9,"rt_ops":1516.6,"ut_usec":450.5,"rt_usec":659.4,"etime":0.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":13473,"utime":9.58,"rtime":13.48,"ut_ops":1406.4,"rt_ops":999.1,"ut_usec":711.1,"rt_usec":1000.9,"etime":1.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":7999,"utime":9.81,"rtime":13.32,"ut_ops":815.4,"rt_ops":600.6,"ut_usec":1226.4,"rt_usec":1664.9,"etime":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":4571,"utime":10.29,"rtime":12.91,"ut_ops":444.2,"rt_ops":353.9,"ut_usec":2251.1,"rt_usec":2825.4,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":2285,"utime":9.79,"rtime":11.31,"ut_ops":233.4,"rt_ops":202.0,"ut_usec":4284.5,"rt_usec":4950.1,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1066,"utime":8.92,"rtime":10.19,"ut_ops":119.5,"rt_ops":104.6,"ut_usec":8367.7,"rt_usec":9556.2,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":615,"utime":10.18,"rtime":11.2,"ut_ops":60.4,"rt_ops":54.9,"ut_usec":16552.8,"rt_usec":18204.0,"etime":0.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":307,"utime":10.08,"rtime":10.97,"ut_ops":30.5,"rt_ops":28.0,"ut_usec":32833.9,"rt_usec":35728.7,"etime":0.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":142,"utime":9.29,"rtime":10.0,"ut_ops":15.3,"rt_ops":14.2,"ut_usec":65422.5,"rt_usec":70446.2,"etime":0.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":51199,"utime":9.44,"rtime":16.64,"ut_ops":5423.6,"rt_ops":3076.1,"ut_usec":184.4,"rt_usec":325.1,"etime":1.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":46545,"utime":8.81,"rtime":15.18,"ut_ops":5283.2,"rt_ops":3066.5,"ut_usec":189.3,"rt_usec":326.1,"etime":0.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":53894,"utime":11.1,"rtime":19.94,"ut_ops":4855.3,"rt_ops":2702.5,"ut_usec":206.0,"rt_usec":370.0,"etime":1.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":51199,"utime":9.58,"rtime":16.94,"ut_ops":5344.4,"rt_ops":3021.9,"ut_usec":187.1,"rt_usec":330.9,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":53894,"utime":10.11,"rtime":17.35,"ut_ops":5330.8,"rt_ops":3106.5,"ut_usec":187.6,"rt_usec":321.9,"etime":1.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":46545,"utime":9.24,"rtime":15.87,"ut_ops":5037.3,"rt_ops":2933.1,"ut_usec":198.5,"rt_usec":340.9,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":46545,"utime":10.71,"rtime":18.5,"ut_ops":4345.9,"rt_ops":2516.6,"ut_usec":230.1,"rt_usec":397.4,"etime":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":39384,"utime":10.12,"rtime":17.06,"ut_ops":3891.7,"rt_ops":2308.7,"ut_usec":257.0,"rt_usec":433.1,"etime":1.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":34133,"utime":9.57,"rtime":15.04,"ut_ops":3566.7,"rt_ops":2269.1,"ut_usec":280.4,"rt_usec":440.7,"etime":1.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":25599,"utime":9.75,"rtime":15.45,"ut_ops":2625.5,"rt_ops":1657.4,"ut_usec":380.9,"rt_usec":603.4,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":17066,"utime":9.84,"rtime":15.26,"ut_ops":1734.3,"rt_ops":1118.4,"ut_usec":576.6,"rt_usec":894.1,"etime":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":9846,"utime":9.52,"rtime":14.1,"ut_ops":1034.2,"rt_ops":698.4,"ut_usec":966.9,"rt_usec":1431.9,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":5818,"utime":10.52,"rtime":18.97,"ut_ops":553.0,"rt_ops":306.6,"ut_usec":1808.2,"rt_usec":3261.3,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2666,"utime":10.33,"rtime":12.68,"ut_ops":258.1,"rt_ops":210.3,"ut_usec":3874.7,"rt_usec":4756.1,"etime":0.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1599,"utime":9.74,"rtime":12.35,"ut_ops":164.2,"rt_ops":129.4,"ut_usec":6091.3,"rt_usec":7725.0,"etime":0.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":799,"utime":10.8,"rtime":13.03,"ut_ops":74.0,"rt_ops":61.3,"ut_usec":13516.9,"rt_usec":16304.8,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":363,"utime":10.0,"rtime":11.71,"ut_ops":36.3,"rt_ops":31.0,"ut_usec":27548.2,"rt_usec":32260.9,"etime":0.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":166,"utime":10.07,"rtime":12.08,"ut_ops":16.5,"rt_ops":13.7,"ut_usec":60662.7,"rt_usec":72776.3,"etime":0.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":51199,"utime":8.75,"rtime":16.19,"ut_ops":5851.3,"rt_ops":3161.6,"ut_usec":170.9,"rt_usec":316.3,"etime":0.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":53894,"utime":9.8,"rtime":17.66,"ut_ops":5499.4,"rt_ops":3051.2,"ut_usec":181.8,"rt_usec":327.7,"etime":1.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":51199,"utime":10.58,"rtime":19.2,"ut_ops":4839.2,"rt_ops":2666.0,"ut_usec":206.6,"rt_usec":375.1,"etime":1.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":36571,"utime":8.86,"rtime":15.27,"ut_ops":4127.7,"rt_ops":2395.0,"ut_usec":242.3,"rt_usec":417.5,"etime":0.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":30117,"utime":9.67,"rtime":15.7,"ut_ops":3114.5,"rt_ops":1918.7,"ut_usec":321.1,"rt_usec":521.2,"etime":1.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":19692,"utime":9.24,"rtime":13.89,"ut_ops":2131.2,"rt_ops":1417.9,"ut_usec":469.2,"rt_usec":705.3,"etime":0.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":13473,"utime":10.06,"rtime":14.26,"ut_ops":1339.3,"rt_ops":944.6,"ut_usec":746.7,"rt_usec":1058.6,"etime":1.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":7529,"utime":9.71,"rtime":12.97,"ut_ops":775.4,"rt_ops":580.6,"ut_usec":1289.7,"rt_usec":1722.5,"etime":1.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":3764,"utime":9.21,"rtime":11.13,"ut_ops":408.7,"rt_ops":338.2,"ut_usec":2446.9,"rt_usec":2957.1,"etime":1.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":2285,"utime":10.11,"rtime":11.66,"ut_ops":226.0,"rt_ops":196.0,"ut_usec":4424.5,"rt_usec":5101.0,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1066,"utime":9.34,"rtime":10.56,"ut_ops":114.1,"rt_ops":101.0,"ut_usec":8761.7,"rt_usec":9902.5,"etime":0.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":615,"utime":10.53,"rtime":11.58,"ut_ops":58.4,"rt_ops":53.1,"ut_usec":17122.0,"rt_usec":18833.8,"etime":0.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":307,"utime":10.3,"rtime":11.11,"ut_ops":29.8,"rt_ops":27.6,"ut_usec":33550.5,"rt_usec":36197.5,"etime":1.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":53894,"utime":9.75,"rtime":17.83,"ut_ops":5527.6,"rt_ops":3022.0,"ut_usec":180.9,"rt_usec":330.9,"etime":1.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":53894,"utime":9.94,"rtime":17.96,"ut_ops":5421.9,"rt_ops":3000.5,"ut_usec":184.4,"rt_usec":333.3,"etime":1.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":53894,"utime":9.94,"rtime":18.3,"ut_ops":5421.9,"rt_ops":2944.2,"ut_usec":184.4,"rt_usec":339.6,"etime":1.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":51199,"utime":9.66,"rtime":17.64,"ut_ops":5300.1,"rt_ops":2902.1,"ut_usec":188.7,"rt_usec":344.6,"etime":0.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":51199,"utime":10.18,"rtime":17.45,"ut_ops":5029.4,"rt_ops":2934.4,"ut_usec":198.8,"rt_usec":340.8,"etime":1.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":46545,"utime":10.26,"rtime":18.15,"ut_ops":4536.5,"rt_ops":2565.0,"ut_usec":220.4,"rt_usec":389.9,"etime":0.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":36571,"utime":9.42,"rtime":15.88,"ut_ops":3882.3,"rt_ops":2302.5,"ut_usec":257.6,"rt_usec":434.3,"etime":1.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":30117,"utime":9.28,"rtime":15.11,"ut_ops":3245.4,"rt_ops":1993.6,"ut_usec":308.1,"rt_usec":501.6,"etime":1.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":23272,"utime":10.05,"rtime":15.12,"ut_ops":2315.6,"rt_ops":1539.4,"ut_usec":431.8,"rt_usec":649.6,"etime":0.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":15058,"utime":10.1,"rtime":14.42,"ut_ops":1490.9,"rt_ops":1044.5,"ut_usec":670.7,"rt_usec":957.4,"etime":1.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":8533,"utime":9.87,"rtime":13.36,"ut_ops":864.5,"rt_ops":638.6,"ut_usec":1156.7,"rt_usec":1566.0,"etime":0.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":4923,"utime":10.26,"rtime":13.26,"ut_ops":479.8,"rt_ops":371.2,"ut_usec":2084.1,"rt_usec":2694.2,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":2666,"utime":10.77,"rtime":12.88,"ut_ops":247.5,"rt_ops":207.0,"ut_usec":4039.8,"rt_usec":4831.3,"etime":0.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1230,"utime":10.48,"rtime":11.91,"ut_ops":117.4,"rt_ops":103.3,"ut_usec":8520.3,"rt_usec":9684.6,"etime":0.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":533,"utime":10.79,"rtime":12.32,"ut_ops":49.4,"rt_ops":43.2,"ut_usec":20243.9,"rt_usec":23121.9,"etime":0.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":235,"utime":9.46,"rtime":10.81,"ut_ops":24.8,"rt_ops":21.7,"ut_usec":40255.3,"rt_usec":46016.2,"etime":0.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120503-1327","tag":"base_c"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":32000,"utime":9.9,"rtime":15.08,"ut_ops":3232.3,"rt_ops":2122.3,"ut_usec":309.4,"rt_usec":471.2,"etime":1.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":31999,"utime":9.83,"rtime":14.67,"ut_ops":3255.2,"rt_ops":2180.6,"ut_usec":307.2,"rt_usec":458.6,"etime":1.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":34133,"utime":10.55,"rtime":15.89,"ut_ops":3235.4,"rt_ops":2148.2,"ut_usec":309.1,"rt_usec":465.5,"etime":0.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":31999,"utime":9.92,"rtime":14.91,"ut_ops":3225.7,"rt_ops":2145.6,"ut_usec":310.0,"rt_usec":466.1,"etime":1.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":31999,"utime":10.21,"rtime":15.3,"ut_ops":3134.1,"rt_ops":2091.1,"ut_usec":319.1,"rt_usec":478.2,"etime":1.3,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":32000,"utime":10.37,"rtime":15.51,"ut_ops":3085.8,"rt_ops":2062.9,"ut_usec":324.1,"rt_usec":484.8,"etime":1.14,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":31999,"utime":10.06,"rtime":14.77,"ut_ops":3180.8,"rt_ops":2166.6,"ut_usec":314.4,"rt_usec":461.6,"etime":1.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":30117,"utime":9.4,"rtime":13.97,"ut_ops":3203.9,"rt_ops":2156.1,"ut_usec":312.1,"rt_usec":463.8,"etime":1.25,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":30117,"utime":10.08,"rtime":15.01,"ut_ops":2987.8,"rt_ops":2006.9,"ut_usec":334.7,"rt_usec":498.3,"etime":1.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":28444,"utime":9.91,"rtime":14.59,"ut_ops":2870.2,"rt_ops":1949.8,"ut_usec":348.4,"rt_usec":512.9,"etime":1.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":26947,"utime":10.01,"rtime":15.3,"ut_ops":2692.0,"rt_ops":1761.2,"ut_usec":371.5,"rt_usec":567.8,"etime":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":23272,"utime":9.29,"rtime":14.99,"ut_ops":2505.1,"rt_ops":1552.4,"ut_usec":399.2,"rt_usec":644.2,"etime":0.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":23272,"utime":10.49,"rtime":16.1,"ut_ops":2218.5,"rt_ops":1445.5,"ut_usec":450.8,"rt_usec":691.8,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":18285,"utime":10.71,"rtime":16.08,"ut_ops":1707.3,"rt_ops":1136.8,"ut_usec":585.7,"rt_usec":879.6,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":10666,"utime":9.57,"rtime":13.97,"ut_ops":1114.5,"rt_ops":763.6,"ut_usec":897.2,"rt_usec":1309.6,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":7111,"utime":9.83,"rtime":13.9,"ut_ops":723.4,"rt_ops":511.6,"ut_usec":1382.4,"rt_usec":1954.6,"etime":1.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":34133,"utime":10.33,"rtime":14.96,"ut_ops":3304.3,"rt_ops":2281.8,"ut_usec":302.6,"rt_usec":438.2,"etime":0.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":34133,"utime":10.3,"rtime":14.83,"ut_ops":3313.9,"rt_ops":2302.1,"ut_usec":301.8,"rt_usec":434.4,"etime":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":32000,"utime":9.93,"rtime":14.58,"ut_ops":3222.6,"rt_ops":2194.3,"ut_usec":310.3,"rt_usec":455.7,"etime":0.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":34133,"utime":10.71,"rtime":16.11,"ut_ops":3187.0,"rt_ops":2118.4,"ut_usec":313.8,"rt_usec":472.1,"etime":0.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":32000,"utime":9.91,"rtime":14.56,"ut_ops":3229.1,"rt_ops":2197.1,"ut_usec":309.7,"rt_usec":455.1,"etime":1.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":32000,"utime":10.05,"rtime":15.44,"ut_ops":3184.1,"rt_ops":2072.0,"ut_usec":314.1,"rt_usec":482.6,"etime":1.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":32000,"utime":10.06,"rtime":15.33,"ut_ops":3180.9,"rt_ops":2088.0,"ut_usec":314.4,"rt_usec":478.9,"etime":1.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":32000,"utime":9.95,"rtime":15.07,"ut_ops":3216.1,"rt_ops":2123.2,"ut_usec":310.9,"rt_usec":471.0,"etime":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":30117,"utime":10.28,"rtime":15.77,"ut_ops":2929.7,"rt_ops":1909.8,"ut_usec":341.3,"rt_usec":523.6,"etime":1.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":31999,"utime":10.99,"rtime":16.78,"ut_ops":2911.6,"rt_ops":1907.5,"ut_usec":343.4,"rt_usec":524.3,"etime":1.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":26947,"utime":9.3,"rtime":13.97,"ut_ops":2897.5,"rt_ops":1929.5,"ut_usec":345.1,"rt_usec":518.3,"etime":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":25599,"utime":9.8,"rtime":15.51,"ut_ops":2612.1,"rt_ops":1650.3,"ut_usec":382.8,"rt_usec":605.9,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":21333,"utime":10.06,"rtime":15.86,"ut_ops":2120.6,"rt_ops":1344.8,"ut_usec":471.6,"rt_usec":743.6,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":17066,"utime":10.07,"rtime":14.82,"ut_ops":1694.7,"rt_ops":1151.5,"ut_usec":590.1,"rt_usec":868.4,"etime":1.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":10666,"utime":9.56,"rtime":13.99,"ut_ops":1115.7,"rt_ops":762.5,"ut_usec":896.3,"rt_usec":1311.5,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":7111,"utime":10.01,"rtime":14.22,"ut_ops":710.4,"rt_ops":500.0,"ut_usec":1407.7,"rt_usec":2000.2,"etime":1.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":30117,"utime":10.09,"rtime":14.58,"ut_ops":2984.8,"rt_ops":2065.5,"ut_usec":335.0,"rt_usec":484.1,"etime":1.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":28444,"utime":9.91,"rtime":14.34,"ut_ops":2870.2,"rt_ops":1983.2,"ut_usec":348.4,"rt_usec":504.2,"etime":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":25599,"utime":9.69,"rtime":13.37,"ut_ops":2641.8,"rt_ops":1914.2,"ut_usec":378.5,"rt_usec":522.4,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":23272,"utime":11.13,"rtime":16.48,"ut_ops":2090.9,"rt_ops":1412.5,"ut_usec":478.3,"rt_usec":708.0,"etime":0.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":16000,"utime":9.4,"rtime":13.36,"ut_ops":1702.1,"rt_ops":1197.3,"ut_usec":587.5,"rt_usec":835.2,"etime":0.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":10666,"utime":9.38,"rtime":12.94,"ut_ops":1137.1,"rt_ops":824.5,"ut_usec":879.4,"rt_usec":1212.8,"etime":0.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":6736,"utime":9.18,"rtime":12.24,"ut_ops":733.8,"rt_ops":550.2,"ut_usec":1362.8,"rt_usec":1817.4,"etime":1.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3999,"utime":9.68,"rtime":11.77,"ut_ops":413.1,"rt_ops":339.8,"ut_usec":2420.6,"rt_usec":2943.3,"etime":0.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":2285,"utime":10.04,"rtime":11.53,"ut_ops":227.6,"rt_ops":198.2,"ut_usec":4393.9,"rt_usec":5044.5,"etime":0.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1142,"utime":9.79,"rtime":11.05,"ut_ops":116.6,"rt_ops":103.3,"ut_usec":8572.7,"rt_usec":9677.2,"etime":0.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":615,"utime":10.11,"rtime":11.12,"ut_ops":60.8,"rt_ops":55.3,"ut_usec":16439.0,"rt_usec":18080.9,"etime":0.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":307,"utime":10.13,"rtime":11.01,"ut_ops":30.3,"rt_ops":27.9,"ut_usec":32996.7,"rt_usec":35874.4,"etime":0.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":142,"utime":9.44,"rtime":10.09,"ut_ops":15.0,"rt_ops":14.1,"ut_usec":66478.9,"rt_usec":71073.1,"etime":0.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":71,"utime":9.59,"rtime":10.25,"ut_ops":7.4,"rt_ops":6.9,"ut_usec":135070.4,"rt_usec":144430.5,"etime":0.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":35,"utime":9.72,"rtime":10.41,"ut_ops":3.6,"rt_ops":3.4,"ut_usec":277714.3,"rt_usec":297449.1,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":28444,"utime":9.85,"rtime":14.64,"ut_ops":2887.7,"rt_ops":1943.3,"ut_usec":346.3,"rt_usec":514.6,"etime":1.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":25599,"utime":9.24,"rtime":13.55,"ut_ops":2770.5,"rt_ops":1889.8,"ut_usec":361.0,"rt_usec":529.2,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":25599,"utime":10.27,"rtime":15.01,"ut_ops":2492.6,"rt_ops":1705.8,"ut_usec":401.2,"rt_usec":586.3,"etime":0.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":23272,"utime":10.56,"rtime":14.49,"ut_ops":2203.8,"rt_ops":1606.0,"ut_usec":453.8,"rt_usec":622.7,"etime":0.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":16000,"utime":9.36,"rtime":12.54,"ut_ops":1709.4,"rt_ops":1275.6,"ut_usec":585.0,"rt_usec":783.9,"etime":1.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":11636,"utime":10.1,"rtime":13.59,"ut_ops":1152.1,"rt_ops":856.0,"ut_usec":868.0,"rt_usec":1168.3,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":7529,"utime":9.99,"rtime":13.44,"ut_ops":753.7,"rt_ops":560.2,"ut_usec":1326.9,"rt_usec":1785.1,"etime":0.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":4571,"utime":10.47,"rtime":12.93,"ut_ops":436.6,"rt_ops":353.5,"ut_usec":2290.5,"rt_usec":2828.9,"etime":0.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2285,"utime":9.77,"rtime":11.53,"ut_ops":233.9,"rt_ops":198.2,"ut_usec":4275.7,"rt_usec":5045.4,"etime":0.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1142,"utime":9.32,"rtime":10.37,"ut_ops":122.5,"rt_ops":110.2,"ut_usec":8161.1,"rt_usec":9078.3,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":615,"utime":9.85,"rtime":10.7,"ut_ops":62.4,"rt_ops":57.5,"ut_usec":16016.3,"rt_usec":17390.7,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":307,"utime":10.57,"rtime":11.55,"ut_ops":29.0,"rt_ops":26.6,"ut_usec":34430.0,"rt_usec":37611.1,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":142,"utime":9.59,"rtime":10.26,"ut_ops":14.8,"rt_ops":13.8,"ut_usec":67535.2,"rt_usec":72288.0,"etime":0.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":71,"utime":10.45,"rtime":11.08,"ut_ops":6.8,"rt_ops":6.4,"ut_usec":147183.1,"rt_usec":156028.9,"etime":0.71,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":40,"utime":9.73,"rtime":10.38,"ut_ops":4.1,"rt_ops":3.9,"ut_usec":243250.0,"rt_usec":259379.4,"etime":0.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":18,"utime":9.79,"rtime":10.48,"ut_ops":1.8,"rt_ops":1.7,"ut_usec":543888.9,"rt_usec":582337.4,"etime":1.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":9,"utime":9.05,"rtime":9.69,"ut_ops":1.0,"rt_ops":0.9,"ut_usec":1005555.6,"rt_usec":1076346.7,"etime":1.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":4,"utime":8.16,"rtime":8.81,"ut_ops":0.5,"rt_ops":0.5,"ut_usec":2040000.0,"rt_usec":2202680.2,"etime":2.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":36571,"utime":10.46,"rtime":16.11,"ut_ops":3496.3,"rt_ops":2270.7,"ut_usec":286.0,"rt_usec":440.4,"etime":1.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":30117,"utime":10.04,"rtime":14.76,"ut_ops":2999.7,"rt_ops":2040.9,"ut_usec":333.4,"rt_usec":490.0,"etime":1.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":23272,"utime":9.77,"rtime":13.81,"ut_ops":2382.0,"rt_ops":1685.7,"ut_usec":419.8,"rt_usec":593.2,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":17066,"utime":10.14,"rtime":13.7,"ut_ops":1683.0,"rt_ops":1245.8,"ut_usec":594.2,"rt_usec":802.7,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":10666,"utime":10.11,"rtime":14.03,"ut_ops":1055.0,"rt_ops":760.1,"ut_usec":947.9,"rt_usec":1315.7,"etime":0.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":5818,"utime":9.48,"rtime":12.51,"ut_ops":613.7,"rt_ops":465.0,"ut_usec":1629.4,"rt_usec":2150.7,"etime":1.22,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":3199,"utime":9.7,"rtime":11.79,"ut_ops":329.8,"rt_ops":271.3,"ut_usec":3032.2,"rt_usec":3685.4,"etime":0.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1684,"utime":10.09,"rtime":11.5,"ut_ops":166.9,"rt_ops":146.4,"ut_usec":5991.7,"rt_usec":6830.0,"etime":0.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":842,"utime":10.0,"rtime":11.05,"ut_ops":84.2,"rt_ops":76.2,"ut_usec":11876.5,"rt_usec":13122.3,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":421,"utime":10.02,"rtime":10.95,"ut_ops":42.0,"rt_ops":38.4,"ut_usec":23800.5,"rt_usec":26017.7,"etime":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":199,"utime":9.74,"rtime":10.45,"ut_ops":20.4,"rt_ops":19.0,"ut_usec":48944.7,"rt_usec":52527.6,"etime":0.71,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":99,"utime":9.91,"rtime":10.71,"ut_ops":10.0,"rt_ops":9.2,"ut_usec":100101.0,"rt_usec":108179.8,"etime":0.64,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":49,"utime":9.87,"rtime":10.54,"ut_ops":5.0,"rt_ops":4.6,"ut_usec":201428.6,"rt_usec":215150.9,"etime":0.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":34133,"utime":9.99,"rtime":15.58,"ut_ops":3416.7,"rt_ops":2190.8,"ut_usec":292.7,"rt_usec":456.4,"etime":0.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":30117,"utime":10.13,"rtime":15.45,"ut_ops":2973.1,"rt_ops":1949.4,"ut_usec":336.4,"rt_usec":513.0,"etime":1.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":23272,"utime":9.43,"rtime":13.62,"ut_ops":2467.9,"rt_ops":1708.3,"ut_usec":405.2,"rt_usec":585.4,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":18285,"utime":10.46,"rtime":14.14,"ut_ops":1748.1,"rt_ops":1293.0,"ut_usec":572.1,"rt_usec":773.4,"etime":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":10666,"utime":9.64,"rtime":13.3,"ut_ops":1106.4,"rt_ops":802.0,"ut_usec":903.8,"rt_usec":1246.9,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":6399,"utime":9.99,"rtime":12.73,"ut_ops":640.5,"rt_ops":502.5,"ut_usec":1561.2,"rt_usec":1990.0,"etime":0.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":3368,"utime":9.65,"rtime":11.82,"ut_ops":349.0,"rt_ops":284.9,"ut_usec":2865.2,"rt_usec":3510.2,"etime":1.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1777,"utime":9.95,"rtime":11.42,"ut_ops":178.6,"rt_ops":155.6,"ut_usec":5599.3,"rt_usec":6425.6,"etime":0.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":941,"utime":10.35,"rtime":11.33,"ut_ops":90.9,"rt_ops":83.0,"ut_usec":10998.9,"rt_usec":12045.5,"etime":1.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":399,"utime":8.87,"rtime":9.68,"ut_ops":45.0,"rt_ops":41.2,"ut_usec":22230.6,"rt_usec":24248.7,"etime":0.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":199,"utime":9.03,"rtime":9.82,"ut_ops":22.0,"rt_ops":20.3,"ut_usec":45376.9,"rt_usec":49332.3,"etime":0.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":111,"utime":10.19,"rtime":10.91,"ut_ops":10.9,"rt_ops":10.2,"ut_usec":91801.8,"rt_usec":98325.9,"etime":0.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":52,"utime":9.83,"rtime":10.51,"ut_ops":5.3,"rt_ops":4.9,"ut_usec":189038.5,"rt_usec":202058.7,"etime":0.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":25,"utime":9.87,"rtime":10.49,"ut_ops":2.5,"rt_ops":2.4,"ut_usec":394800.0,"rt_usec":419514.0,"etime":0.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":11,"utime":9.43,"rtime":10.09,"ut_ops":1.2,"rt_ops":1.1,"ut_usec":857272.7,"rt_usec":916834.3,"etime":1.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":5,"utime":8.41,"rtime":9.06,"ut_ops":0.6,"rt_ops":0.6,"ut_usec":1682000.0,"rt_usec":1811763.5,"etime":2.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120503-1357","tag":"base_ruby"}
];

View File

@ -1,498 +0,0 @@
#!/usr/bin/env ruby
$LOAD_PATH.unshift(File.expand_path("../../lib", __FILE__))
require 'rubygems'
require 'getoptlong'
require 'json'
require 'benchmark'
require 'test-unit'
def set_mode(mode)
case mode
when 'c'
ENV.delete('TEST_MODE')
ENV['C_EXT'] = 'TRUE'
when 'ruby'
ENV['TEST_MODE'] = 'TRUE'
ENV.delete('C_EXT')
else
raise 'mode must be c or ruby'
end
return mode
end
$description = 'Exploratory/Experimental/Exponential tests for Ruby-driver performance tuning'
$calibration_runtime = 0.5
$target_runtime = 15.0
$db_name = 'benchmark'
$collection_name = 'exp_series'
$mode = set_mode('c')
$hostname = `uname -n`[/([^.]*)/,1]
$osname = `uname -s`.strip
$tag = `git log -1 --format=oneline`.split[0]
$date = Time.now.strftime('%Y%m%d-%H%M')
$file_name_opt = nil
options_with_help = [
[ '--help', '-h', GetoptLong::NO_ARGUMENT, '', 'show help' ],
[ '--file', '-f', GetoptLong::OPTIONAL_ARGUMENT, ' file', 'output file name' ],
[ '--mode', '-m', GetoptLong::OPTIONAL_ARGUMENT, ' mode', 'set mode to "c" or "ruby" (c)' ],
[ '--tag', '-t', GetoptLong::OPTIONAL_ARGUMENT, ' tag', 'set tag for run, default is git commit key' ]
]
options = options_with_help.collect{|option|option[0...3]}
GetoptLong.new(*options).each do |opt, arg|
case opt
when '--help'
puts "#{$0} -- #{$description}\n"
puts "usage: #{$0} [performance-options] [-- test-unit-options]"
puts "example: #{$0} --mode c --tag with-c-ext -- --verbose verbose --name test_insert"
puts "performance-options:"
options_with_help.each{|option| puts "#{option[0]}#{option[3]}, #{option[1]}#{option[3]}\n\t#{option[4]}"}
exit 0
when '--file'
$file_name_opt = arg
when '--mode'
$mode = set_mode(arg)
when '--tag'
$tag = arg
end
end
$file_name = $file_name_opt ? $file_name_opt : "exp_series_#{$date}_#{$tag}_#{$mode}.js"
require 'mongo' # must be after option processing
class Hash
def store_embedded(key, value)
case key
when /([^.]*)\.(.*)/
store($1, Hash.new) unless fetch($1, nil)
self[$1].store_embedded($2, value)
else
store(key, value)
end
end
end
def sys_info
h = Hash.new
if FileTest.executable?('/usr/sbin/sysctl')
text = `/usr/sbin/sysctl -a kern.ostype kern.version kern.hostname hw.machine hw.model hw.cputype hw.cpusubtype hw.busfrequency hw.cpufrequency hw.memsize hw.physicalcpu hw.logicalcpu hw.packages`
values = text.split(/\n/).collect{|line| /([^:]*) *[:=] *(.*)/.match(line)[1..2]}
h = Hash.new
values.each{|key, value| h.store_embedded(key, value) }
end
return h
end
class TestExpPerformance < Test::Unit::TestCase
setup :setup_test_set
teardown :teardown_test_set
def array_nest(base, level, obj)
return obj if level == 0
return Array.new(base, array_nest(base, level - 1, obj))
end
def test__array_nest
assert_equal(1, array_nest(2,0,1))
assert_equal([1, 1], array_nest(2,1,1))
assert_equal([[1, 1], [1, 1]], array_nest(2,2,1))
assert_equal([[[1, 1], [1, 1]], [[1, 1], [1, 1]]], array_nest(2,3,1))
assert_equal(1, array_nest(4,0,1))
assert_equal([1, 1, 1, 1], array_nest(4,1,1))
assert_equal([[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]], array_nest(4,2,1))
assert_equal(1, array_nest(8,0,1))
assert_equal([1, 1, 1, 1, 1, 1, 1, 1], array_nest(8,1,1))
end
def hash_nest(base, level, obj)
return obj if level == 0
h = Hash.new
(0...base).each{|i| h[i.to_s] = hash_nest(base, level - 1, obj)}
return h
end
def test__hash_nest
assert_equal(1, hash_nest(2, 0, 1))
assert_equal({"0"=>1, "1"=>1}, hash_nest(2, 1, 1))
assert_equal({"0"=>{"0"=>1, "1"=>1}, "1"=>{"0"=>1, "1"=>1}}, hash_nest(2, 2, 1))
assert_equal({"0"=>{"0"=>{"0"=>1, "1"=>1}, "1"=>{"0"=>1, "1"=>1}},
"1"=>{"0"=>{"0"=>1, "1"=>1}, "1"=>{"0"=>1, "1"=>1}}}, hash_nest(2, 3, 1))
assert_equal(1, hash_nest(4,0,1))
assert_equal({"0"=>1, "1"=>1, "2"=>1, "3"=>1}, hash_nest(4,1,1))
assert_equal({"0"=>{"0"=>1, "1"=>1, "2"=>1, "3"=>1},
"1"=>{"0"=>1, "1"=>1, "2"=>1, "3"=>1},
"2"=>{"0"=>1, "1"=>1, "2"=>1, "3"=>1},
"3"=>{"0"=>1, "1"=>1, "2"=>1, "3"=>1}}, hash_nest(4,2,1))
assert_equal(1, hash_nest(8,0,1))
assert_equal({"0"=>1, "1"=>1, "2"=>1, "3"=>1, "4"=>1, "5"=>1, "6"=>1, "7"=>1}, hash_nest(8,1,1))
end
def multi_doc(multi_power, doc)
return doc if multi_power == -1
return (2 ** multi_power).times.collect{doc.dup}
end
def test_multi_doc
doc = {'a' => 1}
assert_equal({"a"=>1}, multi_doc(-1, doc))
assert_equal([{"a"=>1}], multi_doc(0, doc))
assert_equal([{"a"=>1}, {"a"=>1}], multi_doc(1, doc))
assert_equal([{"a"=>1}, {"a"=>1}, {"a"=>1}, {"a"=>1}], multi_doc(2, doc))
assert_equal(8, multi_doc(3, doc).size)
assert_equal(16, multi_doc(4, doc).size)
assert_equal(32, multi_doc(5, doc).size)
mdoc = multi_doc(2, doc)
mdoc[0]['b'] = 2
assert_equal([{"a"=>1, "b"=>2}, {"a"=>1}, {"a"=>1}, {"a"=>1}], mdoc, 'non-dup doc will fail for insert many safe')
end
# Performance Tuning Engineering
## Completed
### How to measure and compare pure Ruby versus C extension performance
## Current Work Items
### Profiling of C extension
## Overall Strategy
### Prioritize/Review Ruby 1.9.3, JRuby 1.6.7, Ruby 1.8.7
### Run spectrum of exploratory performance tests
### Graph results with flot in HTML wrapper - http://code.google.com/p/flot/
### Select test for profiling
### Find where time is being spent
### Construct specific performance test
### Iteratively tune specific performance test
### Iterate selection of test for profiling
## Notes
### Start with Create/insert, writing comes first
### Then Read/find, reading comes next. both findOne and find-cursor
### Update is primarily server load with minimal driver load for conditions
### Delete/remove is primarily server load with minimal driver load for conditions
## Benefits
### Performance Improvements
### Knowledge of Ruby driver and techniques
### Perhaps architecture and design improvements
### Lessons transferable to other drivers
## HW Info
### Linux - /proc/cpuinfo
### Mac OS X - sysctl -a hw
def setup_test_set
@conn = Mongo::Connection.new
@conn.drop_database($db_name)
@db = @conn.db($db_name)
@coll = @db.collection($collection_name)
@coll.remove
@results = []
puts
puts JSON.pretty_generate({'mode' => $mode , 'hostname' => $hostname, 'osname' => $osname, 'date' => $date, 'tag' => $tag})
puts JSON.pretty_generate(sys_info)
end
def teardown_test_set
# consider inserting the results into a database collection
# Test::Unit::TestCase pollutes STDOUT, so write to a file
File.open($file_name, 'a'){|f|
f.puts(@results.to_json.gsub(/\[/, "").gsub(/}[\],]/, "},\n")) if @results != []
}
@conn.drop_database($db_name)
end
def estimate_iterations(db, coll, doc, setup, teardown)
start_time = Time.now
iterations = 1
utime = 0.0
while utime <= $calibration_runtime do
iterations *= 2
setup.call(db, coll, doc, iterations)
btms = Benchmark.measure do
(0...iterations).each do
yield
end
end
utime = btms.utime
teardown.call(db, coll)
end
etime = (Time.now - start_time)
return [(iterations.to_f * $target_runtime / utime).to_i, etime]
end
def measure_iterations(db, coll, doc, setup, teardown, iterations)
setup.call(db, coll, doc, iterations)
btms = Benchmark.measure { iterations.times { yield } }
teardown.call(db, coll)
return [btms.utime, btms.real]
end
def valuate(db, coll, doc, setup, teardown)
@conn.drop_database($db_name) # hack to reduce paging
iterations, etime = estimate_iterations(db, coll, doc, setup, teardown) { yield }
@conn.drop_database($db_name) # hack to reduce paging
utime, rtime = measure_iterations(db, coll, doc, setup, teardown, iterations) { yield }
return [iterations, utime, rtime, etime]
end
def power_test(args)
base, power_enum, multi_enum, generator, setup, operation, teardown = args
generator, setup, operation, teardown = method(generator), method(setup), method(operation), method(teardown)
return power_enum.collect do |power|
multi_enum.collect do |multi_power|
status = 'OK'
size, doc = generator.call(base, power)
doc = multi_doc(multi_power, doc)
multi_size = (doc.class == Array) ? doc.size : 1;
iterations, utime, rtime, etime = begin
valuate(@db, @coll, doc, setup, teardown) { operation.call(@coll, doc) }
rescue Mongo::InvalidOperation => e
status = "#{e.class}: #{e.message}"
[0, 1.0, 1.0, 1.0]
end
multi_iterations = multi_size.to_f * iterations.to_f
user_ops = (multi_iterations / utime.to_f).round(1)
real_ops = (multi_iterations / rtime.to_f).round(1)
result = {
'base' => base,
'power' => power,
'size' => size,
'exp2' => Math.log2(size).to_i,
'multi_power' => multi_power,
'multi_size' => multi_size,
'generator' => generator.name.to_s,
'operation' => operation.name.to_s,
'iterations' => iterations,
'user_time' => utime.round(2),
'real_time' => rtime.round(2),
'user_ops' => user_ops.nan? ? 0 : user_ops,
'real_ops' => real_ops.nan? ? 0 : real_ops,
'user_usec' => (1000000.0 * utime.to_f / [multi_iterations, 1].max).round(1),
'real_usec' => (1000000.0 * rtime.to_f / [multi_iterations, 1].max).round(1),
'est_time' => etime.round(2),
'mode' => $mode,
'hostname' => $hostname,
'osname' => $osname,
'date' => $date,
'tag' => $tag,
'status' => status,
# 'nbench-int' => nbench.int, # thinking
}
STDERR.puts result.to_json #result.inspect
STDERR.flush
result
end
end.flatten
end
def value_string_size(base, power)
n = base ** power
return [n, {n.to_s => ('*' * n)}]
end
def key_string_size(base, power)
n = base ** power
return [n, {('*' * n) => n}]
end
def hash_size_fixnum(base, power)
n = base ** power
h = Hash.new
(0...n).each { |i| h[i.to_s] = i }
return [n, {n.to_s => h}] # embedded like array_size_fixnum
end
def array_size_fixnum(base, power)
n = base ** power
return [n, {n.to_s => Array.new(n, n)}]
end
def array_nest_fixnum(base, power)
n = base ** power
return [n, {n.to_s => array_nest(base, power, n)}]
end
def hash_nest_fixnum(base, power)
n = base ** power
return [n, {n.to_s => hash_nest(base, power, n)}]
end
def null_setup(db, coll, doc, iterations)
end
def default_teardown(db, coll)
coll.remove
raise 'coll not removed' if coll.size > 0
end
def clear_ids(doc) # delete :_id to really insert, required for safe
if doc.class == Array
doc.each{|d|d.delete(:_id)}
else
doc.delete(:_id)
end
end
def insert(coll, doc)
clear_ids(doc)
coll.insert(doc) # note that insert stores :_id in doc and subsequent inserts are updates
end
def insert_safe(coll, doc)
clear_ids(doc)
coll.insert(doc, :safe => true) # note that insert stores :_id in doc and subsequent inserts with :_id are updates
end
def find_one_setup(db, coll, doc, iterations)
insert(coll, doc)
end
def find_one(coll, doc)
h = coll.find_one
raise "find_one failed" unless h
end
def find_many_setup(db, coll, doc, iterations)
(0...(iterations - coll.size)).each{insert(coll, doc)} #TODO - insert many
@cursor = coll.find
@queries = 1
end
def find_many(coll, doc)
h = @cursor.next
unless h
@cursor = coll.find
@queries += 1
@cursor.next
end
end
def find_many_teardown(db, coll)
puts "queries: #{@queries}" if @queries > 1
default_teardown(db, coll)
end
def test_null
# just setup/teardown for options parsing and sys_info
end
def test_array_fast
[
[2, (0..14), (-1..-1), :array_size_fixnum, :null_setup, :insert, :default_teardown],
[2, (0..17), (-1..-1), :hash_size_fixnum, :null_setup, :insert, :default_teardown],
[2, (0..12), (-1..-1), :array_nest_fixnum, :null_setup, :insert, :default_teardown],
[2, (0..15), (-1..-1), :hash_nest_fixnum, :null_setup, :insert, :default_teardown],
].each{|args| @results += power_test(args)}
end
def test_insert_one
[
[2, (0..15), (-1..-1), :value_string_size, :null_setup, :insert, :default_teardown],
[2, (0..15), (-1..-1), :key_string_size, :null_setup, :insert, :default_teardown],
[2, (0..14), (-1..-1), :array_size_fixnum, :null_setup, :insert, :default_teardown],
[2, (0..17), (-1..-1), :hash_size_fixnum, :null_setup, :insert, :default_teardown],
[2, (0..12), (-1..-1), :array_nest_fixnum, :null_setup, :insert, :default_teardown],
[2, (0..15), (-1..-1), :hash_nest_fixnum, :null_setup, :insert, :default_teardown],
].each{|args| @results += power_test(args)}
end
def test_insert_one_safe
[
[2, (0..15), (-1..-1), :value_string_size, :null_setup, :insert_safe, :default_teardown],
[2, (0..15), (-1..-1), :key_string_size, :null_setup, :insert_safe, :default_teardown],
[2, (0..14), (-1..-1), :array_size_fixnum, :null_setup, :insert_safe, :default_teardown],
[2, (0..17), (-1..-1), :hash_size_fixnum, :null_setup, :insert_safe, :default_teardown],
[2, (0..12), (-1..-1), :array_nest_fixnum, :null_setup, :insert_safe, :default_teardown],
[2, (0..15), (-1..-1), :hash_nest_fixnum, :null_setup, :insert_safe, :default_teardown],
].each{|args| @results += power_test(args)}
end
def test_insert_many
sizes = [0, 2, 4, 6, 8, 10, 12]
multi = [0, 2, 4, 6, 8, 10, 12]
[
[2, sizes, multi, :value_string_size, :null_setup, :insert, :default_teardown],
[2, sizes, multi, :key_string_size, :null_setup, :insert, :default_teardown],
[2, sizes, multi, :hash_size_fixnum, :null_setup, :insert, :default_teardown],
[2, sizes, multi, :array_size_fixnum, :null_setup, :insert, :default_teardown],
[2, sizes, multi, :array_nest_fixnum, :null_setup, :insert, :default_teardown],
[2, sizes, multi, :hash_nest_fixnum, :null_setup, :insert, :default_teardown],
].each{|args| @results += power_test(args)}
end
def test_insert_many_safe
sizes = [0, 2, 4, 6, 8, 10, 12]
multi = [0, 2, 4, 6, 8, 10, 12]
[
[2, sizes, multi, :value_string_size, :null_setup, :insert_safe, :default_teardown],
[2, sizes, multi, :key_string_size, :null_setup, :insert_safe, :default_teardown],
[2, sizes, multi, :hash_size_fixnum, :null_setup, :insert_safe, :default_teardown],
[2, sizes, multi, :array_size_fixnum, :null_setup, :insert_safe, :default_teardown],
[2, sizes, multi, :array_nest_fixnum, :null_setup, :insert_safe, :default_teardown],
[2, sizes, multi, :hash_nest_fixnum, :null_setup, :insert_safe, :default_teardown],
].each{|args| @results += power_test(args)}
end
def test_find_one
[
[2, (0..15), (-1..-1), :value_string_size, :find_one_setup, :find_one, :default_teardown],
[2, (0..15), (-1..-1), :key_string_size, :find_one_setup, :find_one, :default_teardown],
[2, (0..14), (-1..-1), :array_size_fixnum, :find_one_setup, :find_one, :default_teardown],
[2, (0..17), (-1..-1), :hash_size_fixnum, :find_one_setup, :find_one, :default_teardown],
[2, (0..12), (-1..-1), :array_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
[2, (0..15), (-1..-1), :hash_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
].each{|args| @results += power_test(args)}
end
def test_find_many
[
[2, (0..15), (-1..-1), :value_string_size, :find_many_setup, :find_many, :find_many_teardown],
[2, (0..15), (-1..-1), :key_string_size, :find_many_setup, :find_many, :find_many_teardown],
[2, (0..14), (-1..-1), :array_size_fixnum, :find_many_setup, :find_many, :find_many_teardown],
[2, (0..17), (-1..-1), :hash_size_fixnum, :find_many_setup, :find_many, :find_many_teardown],
[2, (0..12), (-1..-1), :array_nest_fixnum, :find_many_setup, :find_many, :find_many_teardown],
[2, (0..15), (-1..-1), :hash_nest_fixnum, :find_many_setup, :find_many, :find_many_teardown],
].each{|args| @results += power_test(args)}
end
def test_insert_one_nest_full
[
[4, (0..6), (-1..-1), :array_nest_fixnum, :null_setup, :insert, :default_teardown],
[8, (0..4), (-1..-1), :array_nest_fixnum, :null_setup, :insert, :default_teardown],
[16, (0..3), (-1..-1), :array_nest_fixnum, :null_setup, :insert, :default_teardown],
[32, (0..2), (-1..-1), :array_nest_fixnum, :null_setup, :insert, :default_teardown],
[4, (0..8), (-1..-1), :hash_nest_fixnum, :null_setup, :insert, :default_teardown],
[8, (0..4), (-1..-1), :hash_nest_fixnum, :null_setup, :insert, :default_teardown],
[16, (0..4), (-1..-1), :hash_nest_fixnum, :null_setup, :insert, :default_teardown],
[32, (0..3), (-1..-1), :hash_nest_fixnum, :null_setup, :insert, :default_teardown],
].each{|args| @results += power_test(args)}
end
def test_find_one_nest_full
[
[4, (0..6), (-1..-1), :array_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
[8, (0..4), (-1..-1), :array_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
[16, (0..3), (-1..-1), :array_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
[32, (0..2), (-1..-1), :array_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
[4, (0..8), (-1..-1), :hash_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
[8, (0..4), (-1..-1), :hash_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
[16, (0..4), (-1..-1), :hash_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
[32, (0..3), (-1..-1), :hash_nest_fixnum, :find_one_setup, :find_one, :default_teardown],
].each{|args| @results += power_test(args)}
end
def xtest_update
[
# pending
].each{|args| @results += power_test(args)}
end
def xtest_remove
[
# pending
].each{|args| @results += power_test(args)}
end
# synthesized mix, real-world data pending
end

View File

@ -1,190 +0,0 @@
exp_series_suite_find_c = [
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":94523,"user_time":16.15,"real_time":27.14,"user_ops":5852.8,"real_ops":3482.6,"user_usec":170.9,"real_usec":287.1,"est_time":2.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":89043,"user_time":15.93,"real_time":27.51,"user_ops":5589.6,"real_ops":3236.6,"user_usec":178.9,"real_usec":309.0,"est_time":2.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":89043,"user_time":15.03,"real_time":25.27,"user_ops":5924.4,"real_ops":3523.8,"user_usec":168.8,"real_usec":283.8,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":87771,"user_time":14.45,"real_time":23.69,"user_ops":6074.1,"real_ops":3704.5,"user_usec":164.6,"real_usec":269.9,"est_time":2.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":83027,"user_time":14.53,"real_time":24.83,"user_ops":5714.2,"real_ops":3343.8,"user_usec":175.0,"real_usec":299.1,"est_time":3.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":89043,"user_time":14.52,"real_time":23.8,"user_ops":6132.4,"real_ops":3741.2,"user_usec":163.1,"real_usec":267.3,"est_time":2.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":84164,"user_time":13.67,"real_time":22.15,"user_ops":6156.8,"real_ops":3800.3,"user_usec":162.4,"real_usec":263.1,"est_time":3.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":91701,"user_time":15.99,"real_time":27.21,"user_ops":5734.9,"real_ops":3370.0,"user_usec":174.4,"real_usec":296.7,"est_time":2.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":90352,"user_time":15.19,"real_time":25.6,"user_ops":5948.1,"real_ops":3530.0,"user_usec":168.1,"real_usec":283.3,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":83027,"user_time":13.63,"real_time":22.04,"user_ops":6091.5,"real_ops":3766.3,"user_usec":164.2,"real_usec":265.5,"est_time":3.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":87771,"user_time":15.7,"real_time":27.0,"user_ops":5590.5,"real_ops":3250.7,"user_usec":178.9,"real_usec":307.6,"est_time":2.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":79792,"user_time":14.59,"real_time":25.63,"user_ops":5469.0,"real_ops":3113.0,"user_usec":182.9,"real_usec":321.2,"est_time":3.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":85333,"user_time":15.82,"real_time":27.56,"user_ops":5394.0,"real_ops":3096.0,"user_usec":185.4,"real_usec":323.0,"est_time":3.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":83027,"user_time":15.31,"real_time":26.18,"user_ops":5423.1,"real_ops":3171.7,"user_usec":184.4,"real_usec":315.3,"est_time":3.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":83027,"user_time":15.44,"real_time":26.74,"user_ops":5377.4,"real_ops":3104.6,"user_usec":186.0,"real_usec":322.1,"est_time":3.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":69818,"user_time":15.28,"real_time":27.12,"user_ops":4569.2,"real_ops":2574.5,"user_usec":218.9,"real_usec":388.4,"est_time":3.57,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":89043,"user_time":15.42,"real_time":26.24,"user_ops":5774.5,"real_ops":3393.4,"user_usec":173.2,"real_usec":294.7,"est_time":2.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":90352,"user_time":15.89,"real_time":27.21,"user_ops":5686.1,"real_ops":3320.0,"user_usec":175.9,"real_usec":301.2,"est_time":2.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":89043,"user_time":15.05,"real_time":25.3,"user_ops":5916.5,"real_ops":3519.9,"user_usec":169.0,"real_usec":284.1,"est_time":2.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":83027,"user_time":14.27,"real_time":24.27,"user_ops":5818.3,"real_ops":3421.2,"user_usec":171.9,"real_usec":292.3,"est_time":2.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":84164,"user_time":14.32,"real_time":24.1,"user_ops":5877.4,"real_ops":3492.9,"user_usec":170.1,"real_usec":286.3,"est_time":2.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":89043,"user_time":14.85,"real_time":24.52,"user_ops":5996.2,"real_ops":3630.9,"user_usec":166.8,"real_usec":275.4,"est_time":2.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":87771,"user_time":14.79,"real_time":24.61,"user_ops":5934.5,"real_ops":3565.9,"user_usec":168.5,"real_usec":280.4,"est_time":2.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":81920,"user_time":13.93,"real_time":23.39,"user_ops":5880.8,"real_ops":3502.0,"user_usec":170.0,"real_usec":285.5,"est_time":2.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":91701,"user_time":15.47,"real_time":26.15,"user_ops":5927.7,"real_ops":3506.3,"user_usec":168.7,"real_usec":285.2,"est_time":2.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":86535,"user_time":14.31,"real_time":23.17,"user_ops":6047.2,"real_ops":3734.9,"user_usec":165.4,"real_usec":267.7,"est_time":2.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":87771,"user_time":14.49,"real_time":23.13,"user_ops":6057.3,"real_ops":3794.9,"user_usec":165.1,"real_usec":263.5,"est_time":2.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":80842,"user_time":14.88,"real_time":25.83,"user_ops":5432.9,"real_ops":3130.0,"user_usec":184.1,"real_usec":319.5,"est_time":3.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":87771,"user_time":15.21,"real_time":24.66,"user_ops":5770.6,"real_ops":3558.9,"user_usec":173.3,"real_usec":281.0,"est_time":2.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":84164,"user_time":16.02,"real_time":27.57,"user_ops":5253.7,"real_ops":3053.1,"user_usec":190.3,"real_usec":327.5,"est_time":3.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":78769,"user_time":14.59,"real_time":24.2,"user_ops":5398.8,"real_ops":3254.5,"user_usec":185.2,"real_usec":307.3,"est_time":3.24,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":64673,"user_time":14.92,"real_time":26.19,"user_ops":4334.7,"real_ops":2469.3,"user_usec":230.7,"real_usec":405.0,"est_time":3.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":90352,"user_time":15.31,"real_time":25.76,"user_ops":5901.5,"real_ops":3507.0,"user_usec":169.4,"real_usec":285.1,"est_time":2.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":94523,"user_time":16.28,"real_time":27.5,"user_ops":5806.1,"real_ops":3436.8,"user_usec":172.2,"real_usec":291.0,"est_time":2.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":87771,"user_time":14.95,"real_time":25.01,"user_ops":5871.0,"real_ops":3509.0,"user_usec":170.3,"real_usec":285.0,"est_time":3.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":87771,"user_time":14.97,"real_time":25.18,"user_ops":5863.1,"real_ops":3485.3,"user_usec":170.6,"real_usec":286.9,"est_time":2.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":81920,"user_time":13.63,"real_time":22.24,"user_ops":6010.3,"real_ops":3684.1,"user_usec":166.4,"real_usec":271.4,"est_time":3.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":87771,"user_time":15.92,"real_time":27.32,"user_ops":5513.3,"real_ops":3212.7,"user_usec":181.4,"real_usec":311.3,"est_time":2.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":80842,"user_time":14.4,"real_time":23.97,"user_ops":5614.0,"real_ops":3372.6,"user_usec":178.1,"real_usec":296.5,"est_time":3.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":85333,"user_time":15.17,"real_time":25.24,"user_ops":5625.1,"real_ops":3380.7,"user_usec":177.8,"real_usec":295.8,"est_time":2.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":80842,"user_time":15.61,"real_time":26.27,"user_ops":5178.9,"real_ops":3077.1,"user_usec":193.1,"real_usec":325.0,"est_time":3.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":75851,"user_time":14.84,"real_time":24.1,"user_ops":5111.3,"real_ops":3147.8,"user_usec":195.6,"real_usec":317.7,"est_time":3.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":63999,"user_time":14.71,"real_time":24.19,"user_ops":4350.7,"real_ops":2645.4,"user_usec":229.8,"real_usec":378.0,"est_time":3.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":52965,"user_time":15.39,"real_time":24.18,"user_ops":3441.5,"real_ops":2190.3,"user_usec":290.6,"real_usec":456.6,"est_time":2.53,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":39384,"user_time":15.13,"real_time":22.03,"user_ops":2603.0,"real_ops":1787.4,"user_usec":384.2,"real_usec":559.5,"est_time":3.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":24000,"user_time":14.82,"real_time":20.73,"user_ops":1619.4,"real_ops":1157.6,"user_usec":617.5,"real_usec":863.9,"est_time":2.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":13473,"user_time":13.43,"real_time":21.09,"user_ops":1003.2,"real_ops":638.9,"user_usec":996.8,"real_usec":1565.1,"est_time":3.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":93090,"user_time":16.09,"real_time":27.0,"user_ops":5785.6,"real_ops":3447.6,"user_usec":172.8,"real_usec":290.1,"est_time":2.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":87771,"user_time":14.68,"real_time":23.72,"user_ops":5979.0,"real_ops":3699.9,"user_usec":167.3,"real_usec":270.3,"est_time":2.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":79792,"user_time":14.69,"real_time":25.26,"user_ops":5431.7,"real_ops":3159.0,"user_usec":184.1,"real_usec":316.6,"est_time":3.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":84164,"user_time":15.53,"real_time":26.31,"user_ops":5419.4,"real_ops":3198.5,"user_usec":184.5,"real_usec":312.6,"est_time":2.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":76800,"user_time":14.86,"real_time":24.96,"user_ops":5168.2,"real_ops":3076.4,"user_usec":193.5,"real_usec":325.1,"est_time":3.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":75851,"user_time":15.58,"real_time":25.43,"user_ops":4868.5,"real_ops":2982.4,"user_usec":205.4,"real_usec":335.3,"est_time":3.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":69818,"user_time":15.38,"real_time":23.16,"user_ops":4539.5,"real_ops":3014.9,"user_usec":220.3,"real_usec":331.7,"est_time":3.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":54857,"user_time":15.28,"real_time":22.3,"user_ops":3590.1,"real_ops":2459.8,"user_usec":278.5,"real_usec":406.5,"est_time":2.18,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":40960,"user_time":15.39,"real_time":20.43,"user_ops":2661.5,"real_ops":2004.7,"user_usec":375.7,"real_usec":498.8,"est_time":2.53,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":26033,"user_time":15.54,"real_time":20.56,"user_ops":1675.2,"real_ops":1266.3,"user_usec":596.9,"real_usec":789.7,"est_time":2.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":14769,"user_time":14.94,"real_time":19.41,"user_ops":988.6,"real_ops":760.9,"user_usec":1011.6,"real_usec":1314.2,"est_time":1.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":7680,"user_time":15.18,"real_time":18.45,"user_ops":505.9,"real_ops":416.2,"user_usec":1976.6,"real_usec":2402.8,"est_time":2.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":5189,"user_time":15.08,"real_time":17.77,"user_ops":344.1,"real_ops":292.0,"user_usec":2906.1,"real_usec":3424.8,"est_time":2.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":2526,"user_time":14.85,"real_time":16.74,"user_ops":170.1,"real_ops":150.9,"user_usec":5878.9,"real_usec":6627.4,"est_time":2.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":1078,"user_time":14.8,"real_time":15.94,"user_ops":72.8,"real_ops":67.6,"user_usec":13729.1,"real_usec":14787.2,"est_time":2.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":571,"user_time":15.04,"real_time":16.33,"user_ops":38.0,"real_ops":35.0,"user_usec":26339.8,"real_usec":28595.3,"est_time":2.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":282,"user_time":14.64,"real_time":15.94,"user_ops":19.3,"real_ops":17.7,"user_usec":51914.9,"real_usec":56518.5,"est_time":2.31,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":148,"user_time":15.83,"real_time":17.39,"user_ops":9.3,"real_ops":8.5,"user_usec":106959.5,"real_usec":117510.9,"est_time":2.42,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":90352,"user_time":14.82,"real_time":26.03,"user_ops":6096.6,"real_ops":3470.4,"user_usec":164.0,"real_usec":288.1,"est_time":3.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":100721,"user_time":16.54,"real_time":29.02,"user_ops":6089.5,"real_ops":3470.3,"user_usec":164.2,"real_usec":288.2,"est_time":2.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":100721,"user_time":16.53,"real_time":28.6,"user_ops":6093.2,"real_ops":3521.6,"user_usec":164.1,"real_usec":284.0,"est_time":2.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":94523,"user_time":15.31,"real_time":26.54,"user_ops":6173.9,"real_ops":3562.1,"user_usec":162.0,"real_usec":280.7,"est_time":2.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":93090,"user_time":15.03,"real_time":26.19,"user_ops":6193.6,"real_ops":3554.0,"user_usec":161.5,"real_usec":281.4,"est_time":2.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":86535,"user_time":14.83,"real_time":25.84,"user_ops":5835.1,"real_ops":3349.5,"user_usec":171.4,"real_usec":298.6,"est_time":3.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":93090,"user_time":16.78,"real_time":29.02,"user_ops":5547.7,"real_ops":3207.4,"user_usec":180.3,"real_usec":311.8,"est_time":2.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":87771,"user_time":16.65,"real_time":28.36,"user_ops":5271.5,"real_ops":3095.1,"user_usec":189.7,"real_usec":323.1,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":74926,"user_time":14.79,"real_time":23.02,"user_ops":5066.0,"real_ops":3254.4,"user_usec":197.4,"real_usec":307.3,"est_time":3.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":62060,"user_time":15.02,"real_time":22.92,"user_ops":4131.8,"real_ops":2708.2,"user_usec":242.0,"real_usec":369.3,"est_time":3.56,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":48000,"user_time":15.09,"real_time":21.05,"user_ops":3180.9,"real_ops":2280.5,"user_usec":314.4,"real_usec":438.5,"est_time":2.46,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":31999,"user_time":15.0,"real_time":20.42,"user_ops":2133.3,"real_ops":1566.8,"user_usec":468.8,"real_usec":638.3,"est_time":3.29,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":19200,"user_time":15.37,"real_time":20.83,"user_ops":1249.2,"real_ops":921.7,"user_usec":800.5,"real_usec":1084.9,"est_time":3.2,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":87771,"user_time":14.11,"real_time":24.2,"user_ops":6220.5,"real_ops":3626.2,"user_usec":160.8,"real_usec":275.8,"est_time":2.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":86535,"user_time":13.99,"real_time":24.0,"user_ops":6185.5,"real_ops":3606.0,"user_usec":161.7,"real_usec":277.3,"est_time":3.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":91701,"user_time":16.18,"real_time":28.34,"user_ops":5667.6,"real_ops":3235.6,"user_usec":176.4,"real_usec":309.1,"est_time":2.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":86535,"user_time":15.4,"real_time":25.96,"user_ops":5619.2,"real_ops":3332.9,"user_usec":178.0,"real_usec":300.0,"est_time":2.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":79792,"user_time":15.7,"real_time":25.74,"user_ops":5082.3,"real_ops":3099.5,"user_usec":196.8,"real_usec":322.6,"est_time":2.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":65361,"user_time":14.84,"real_time":23.13,"user_ops":4404.4,"real_ops":2826.2,"user_usec":227.0,"real_usec":353.8,"est_time":3.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":53894,"user_time":15.34,"real_time":21.53,"user_ops":3513.3,"real_ops":2503.4,"user_usec":284.6,"real_usec":399.4,"est_time":2.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":35310,"user_time":14.95,"real_time":20.41,"user_ops":2361.9,"real_ops":1729.8,"user_usec":423.4,"real_usec":578.1,"est_time":2.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":22260,"user_time":14.75,"real_time":18.23,"user_ops":1509.2,"real_ops":1221.0,"user_usec":662.6,"real_usec":819.0,"est_time":2.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":13016,"user_time":14.95,"real_time":18.93,"user_ops":870.6,"real_ops":687.4,"user_usec":1148.6,"real_usec":1454.7,"est_time":1.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":6736,"user_time":14.32,"real_time":17.55,"user_ops":470.4,"real_ops":383.7,"user_usec":2125.9,"real_usec":2606.1,"est_time":1.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":3692,"user_time":15.05,"real_time":17.2,"user_ops":245.3,"real_ops":214.6,"user_usec":4076.4,"real_usec":4658.8,"est_time":1.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":1846,"user_time":15.1,"real_time":16.57,"user_ops":122.3,"real_ops":111.4,"user_usec":8179.8,"real_usec":8974.0,"est_time":1.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":872,"user_time":14.76,"real_time":15.87,"user_ops":59.1,"real_ops":55.0,"user_usec":16926.6,"real_usec":18194.1,"est_time":1.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":461,"user_time":15.53,"real_time":16.6,"user_ops":29.7,"real_ops":27.8,"user_usec":33687.6,"real_usec":36003.6,"est_time":1.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":226,"user_time":15.88,"real_time":16.87,"user_ops":14.2,"real_ops":13.4,"user_usec":70265.5,"real_usec":74626.6,"est_time":1.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2251","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":599414,"user_time":18.49,"real_time":23.3,"user_ops":32418.3,"real_ops":25726.1,"user_usec":30.8,"real_usec":38.9,"est_time":9.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":630153,"user_time":19.33,"real_time":24.36,"user_ops":32599.7,"real_ops":25866.3,"user_usec":30.7,"real_usec":38.7,"est_time":9.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":630153,"user_time":19.21,"real_time":24.27,"user_ops":32803.4,"real_ops":25968.5,"user_usec":30.5,"real_usec":38.5,"est_time":9.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":630153,"user_time":18.48,"real_time":23.49,"user_ops":34099.2,"real_ops":26826.6,"user_usec":29.3,"real_usec":37.3,"est_time":9.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":638337,"user_time":17.82,"real_time":22.94,"user_ops":35821.4,"real_ops":27823.1,"user_usec":27.9,"real_usec":35.9,"est_time":9.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":622177,"user_time":17.25,"real_time":22.21,"user_ops":36068.2,"real_ops":28010.6,"user_usec":27.7,"real_usec":35.7,"est_time":9.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":599414,"user_time":15.98,"real_time":20.82,"user_ops":37510.3,"real_ops":28783.9,"user_usec":26.7,"real_usec":34.7,"est_time":9.53,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":578258,"user_time":15.68,"real_time":20.42,"user_ops":36878.7,"real_ops":28318.3,"user_usec":27.1,"real_usec":35.3,"est_time":9.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":558545,"user_time":15.18,"real_time":19.9,"user_ops":36794.8,"real_ops":28068.2,"user_usec":27.2,"real_usec":35.6,"est_time":9.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":585142,"user_time":15.25,"real_time":20.47,"user_ops":38370.0,"real_ops":28579.2,"user_usec":26.1,"real_usec":35.0,"est_time":10.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":564965,"user_time":14.87,"real_time":20.58,"user_ops":37993.6,"real_ops":27453.1,"user_usec":26.3,"real_usec":36.4,"est_time":10.45,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":528516,"user_time":14.98,"real_time":21.51,"user_ops":35281.4,"real_ops":24573.8,"user_usec":28.3,"real_usec":40.7,"est_time":11.45,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":455111,"user_time":15.32,"real_time":22.96,"user_ops":29707.0,"real_ops":19825.2,"user_usec":33.7,"real_usec":50.4,"est_time":7.64,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":366805,"user_time":15.64,"real_time":24.91,"user_ops":23453.0,"real_ops":14725.1,"user_usec":42.6,"real_usec":67.9,"est_time":9.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":245760,"user_time":14.89,"real_time":25.33,"user_ops":16505.0,"real_ops":9703.5,"user_usec":60.6,"real_usec":103.1,"est_time":13.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":157538,"user_time":14.33,"real_time":26.57,"user_ops":10993.6,"real_ops":5928.6,"user_usec":91.0,"real_usec":168.7,"est_time":10.56,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":614400,"user_time":18.18,"real_time":23.14,"user_ops":33795.4,"real_ops":26549.0,"user_usec":29.6,"real_usec":37.7,"est_time":9.36,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":638337,"user_time":18.49,"real_time":23.69,"user_ops":34523.4,"real_ops":26944.1,"user_usec":29.0,"real_usec":37.1,"est_time":9.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":664216,"user_time":19.6,"real_time":24.98,"user_ops":33888.6,"real_ops":26586.3,"user_usec":29.5,"real_usec":37.6,"est_time":9.46,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":606814,"user_time":17.26,"real_time":22.08,"user_ops":35157.2,"real_ops":27479.6,"user_usec":28.4,"real_usec":36.4,"est_time":9.54,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":646736,"user_time":17.74,"real_time":22.86,"user_ops":36456.4,"real_ops":28288.3,"user_usec":27.4,"real_usec":35.4,"est_time":9.45,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":585142,"user_time":16.15,"real_time":20.94,"user_ops":36231.7,"real_ops":27950.3,"user_usec":27.6,"real_usec":35.8,"est_time":9.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":585142,"user_time":15.77,"real_time":20.5,"user_ops":37104.8,"real_ops":28550.2,"user_usec":27.0,"real_usec":35.0,"est_time":9.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":558545,"user_time":15.97,"real_time":20.53,"user_ops":34974.6,"real_ops":27209.0,"user_usec":28.6,"real_usec":36.8,"est_time":9.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":571534,"user_time":15.32,"real_time":20.25,"user_ops":37306.4,"real_ops":28217.3,"user_usec":26.8,"real_usec":35.4,"est_time":9.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":585142,"user_time":15.27,"real_time":20.5,"user_ops":38319.7,"real_ops":28545.8,"user_usec":26.1,"real_usec":35.0,"est_time":10.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":558545,"user_time":14.94,"real_time":20.72,"user_ops":37385.9,"real_ops":26950.5,"user_usec":26.7,"real_usec":37.1,"est_time":10.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":522893,"user_time":15.05,"real_time":21.54,"user_ops":34743.7,"real_ops":24270.8,"user_usec":28.8,"real_usec":41.2,"est_time":11.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":438857,"user_time":14.81,"real_time":22.18,"user_ops":29632.5,"real_ops":19782.6,"user_usec":33.7,"real_usec":50.5,"est_time":7.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":351085,"user_time":14.74,"real_time":23.77,"user_ops":23818.5,"real_ops":14769.1,"user_usec":42.0,"real_usec":67.7,"est_time":9.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":250775,"user_time":15.1,"real_time":25.63,"user_ops":16607.6,"real_ops":9784.4,"user_usec":60.2,"real_usec":102.2,"est_time":14.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":151703,"user_time":14.49,"real_time":25.69,"user_ops":10469.5,"real_ops":5905.2,"user_usec":95.5,"real_usec":169.3,"est_time":11.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":592192,"user_time":16.81,"real_time":21.57,"user_ops":35228.6,"real_ops":27457.3,"user_usec":28.4,"real_usec":36.4,"est_time":9.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":638337,"user_time":17.81,"real_time":22.93,"user_ops":35841.5,"real_ops":27844.0,"user_usec":27.9,"real_usec":35.9,"est_time":10.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":585142,"user_time":16.5,"real_time":21.25,"user_ops":35463.2,"real_ops":27534.2,"user_usec":28.2,"real_usec":36.3,"est_time":10.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":578258,"user_time":16.01,"real_time":20.71,"user_ops":36118.6,"real_ops":27915.2,"user_usec":27.7,"real_usec":35.8,"est_time":11.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":546133,"user_time":15.22,"real_time":19.68,"user_ops":35882.6,"real_ops":27747.1,"user_usec":27.9,"real_usec":36.0,"est_time":14.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":546133,"user_time":15.77,"real_time":20.41,"user_ops":34631.1,"real_ops":26754.7,"user_usec":28.9,"real_usec":37.4,"est_time":19.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":511999,"user_time":15.21,"real_time":19.84,"user_ops":33662.0,"real_ops":25809.4,"user_usec":29.7,"real_usec":38.7,"est_time":29.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":455111,"user_time":14.97,"real_time":19.68,"user_ops":30401.5,"real_ops":23129.9,"user_usec":32.9,"real_usec":43.2,"est_time":24.4,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":372363,"user_time":14.91,"real_time":19.69,"user_ops":24974.0,"real_ops":18911.2,"user_usec":40.0,"real_usec":52.9,"est_time":41.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":270065,"user_time":15.02,"real_time":19.8,"user_ops":17980.4,"real_ops":13641.9,"user_usec":55.6,"real_usec":73.3,"est_time":76.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":173070,"user_time":15.27,"real_time":20.12,"user_ops":11334.0,"real_ops":8602.8,"user_usec":88.2,"real_usec":116.2,"est_time":77.76,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":96000,"user_time":14.58,"real_time":19.2,"user_ops":6584.4,"real_ops":5000.9,"user_usec":151.9,"real_usec":200.0,"est_time":76.42,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":56888,"user_time":15.02,"real_time":20.05,"user_ops":3787.5,"real_ops":2837.0,"user_usec":264.0,"real_usec":352.5,"est_time":74.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":30117,"user_time":15.08,"real_time":20.06,"user_ops":1997.1,"real_ops":1501.6,"user_usec":500.7,"real_usec":666.0,"est_time":72.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":15058,"user_time":13.65,"real_time":20.31,"user_ops":1103.2,"real_ops":741.6,"user_usec":906.5,"real_usec":1348.5,"est_time":73.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":571534,"user_time":16.85,"real_time":21.56,"user_ops":33918.9,"real_ops":26508.8,"user_usec":29.5,"real_usec":37.7,"est_time":9.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":564965,"user_time":16.6,"real_time":21.21,"user_ops":34034.0,"real_ops":26636.7,"user_usec":29.4,"real_usec":37.5,"est_time":9.58,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":512000,"user_time":15.67,"real_time":19.89,"user_ops":32673.9,"real_ops":25735.6,"user_usec":30.6,"real_usec":38.9,"est_time":9.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":481882,"user_time":16.14,"real_time":20.14,"user_ops":29856.4,"real_ops":23929.3,"user_usec":33.5,"real_usec":41.8,"est_time":5.24,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":431157,"user_time":17.23,"real_time":20.92,"user_ops":25023.6,"real_ops":20611.8,"user_usec":40.0,"real_usec":48.5,"est_time":5.6,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":336657,"user_time":17.55,"real_time":20.59,"user_ops":19182.7,"real_ops":16352.8,"user_usec":52.1,"real_usec":61.2,"est_time":6.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":183402,"user_time":14.02,"real_time":15.86,"user_ops":13081.5,"real_ops":11564.5,"user_usec":76.4,"real_usec":86.5,"est_time":4.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":155544,"user_time":17.73,"real_time":19.65,"user_ops":8772.9,"real_ops":7914.1,"user_usec":114.0,"real_usec":126.4,"est_time":4.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":84164,"user_time":16.58,"real_time":17.94,"user_ops":5076.2,"real_ops":4692.3,"user_usec":197.0,"real_usec":213.1,"est_time":3.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":48761,"user_time":17.6,"real_time":18.73,"user_ops":2770.5,"real_ops":2603.7,"user_usec":360.9,"real_usec":384.1,"est_time":3.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":22925,"user_time":15.68,"real_time":16.53,"user_ops":1462.1,"real_ops":1386.6,"user_usec":684.0,"real_usec":721.2,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":12387,"user_time":16.76,"real_time":17.52,"user_ops":739.1,"real_ops":706.9,"user_usec":1353.0,"real_usec":1414.6,"est_time":2.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":5120,"user_time":14.07,"real_time":14.63,"user_ops":363.9,"real_ops":350.0,"user_usec":2748.0,"real_usec":2857.4,"est_time":2.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":3047,"user_time":18.55,"real_time":19.25,"user_ops":164.3,"real_ops":158.3,"user_usec":6088.0,"real_usec":6317.9,"est_time":2.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":1432,"user_time":16.8,"real_time":17.46,"user_ops":85.2,"real_ops":82.0,"user_usec":11731.8,"real_usec":12192.7,"est_time":2.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":716,"user_time":16.62,"real_time":17.29,"user_ops":43.1,"real_ops":41.4,"user_usec":23212.3,"real_usec":24155.0,"est_time":2.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":328,"user_time":16.23,"real_time":16.94,"user_ops":20.2,"real_ops":19.4,"user_usec":49481.7,"real_usec":51657.1,"est_time":2.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":151,"user_time":15.31,"real_time":15.96,"user_ops":9.9,"real_ops":9.5,"user_usec":101390.7,"real_usec":105724.6,"est_time":2.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":630153,"user_time":17.2,"real_time":22.25,"user_ops":36636.8,"real_ops":28325.0,"user_usec":27.3,"real_usec":35.3,"est_time":9.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":606814,"user_time":16.12,"real_time":20.92,"user_ops":37643.5,"real_ops":29010.3,"user_usec":26.6,"real_usec":34.5,"est_time":10.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":606814,"user_time":15.8,"real_time":20.64,"user_ops":38405.9,"real_ops":29398.2,"user_usec":26.0,"real_usec":34.0,"est_time":11.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":552269,"user_time":14.87,"real_time":19.34,"user_ops":37139.8,"real_ops":28556.1,"user_usec":26.9,"real_usec":35.0,"est_time":13.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":546133,"user_time":14.88,"real_time":19.45,"user_ops":36702.5,"real_ops":28083.9,"user_usec":27.2,"real_usec":35.6,"est_time":17.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":501551,"user_time":14.84,"real_time":19.26,"user_ops":33797.2,"real_ops":26036.4,"user_usec":29.6,"real_usec":38.4,"est_time":25.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":438857,"user_time":15.82,"real_time":20.08,"user_ops":27740.6,"real_ops":21857.6,"user_usec":36.0,"real_usec":45.8,"est_time":21.32,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":356173,"user_time":16.32,"real_time":20.33,"user_ops":21824.3,"real_ops":17516.2,"user_usec":45.8,"real_usec":57.1,"est_time":37.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":240941,"user_time":16.07,"real_time":19.63,"user_ops":14993.2,"real_ops":12276.6,"user_usec":66.7,"real_usec":81.5,"est_time":34.57,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":141241,"user_time":14.3,"real_time":17.19,"user_ops":9877.0,"real_ops":8214.3,"user_usec":101.2,"real_usec":121.7,"est_time":67.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":81920,"user_time":14.61,"real_time":17.3,"user_ops":5607.1,"real_ops":4735.5,"user_usec":178.3,"real_usec":211.2,"est_time":62.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":44521,"user_time":14.89,"real_time":17.31,"user_ops":2990.0,"real_ops":2572.0,"user_usec":334.4,"real_usec":388.8,"est_time":64.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":22588,"user_time":14.59,"real_time":16.88,"user_ops":1548.2,"real_ops":1338.2,"user_usec":645.9,"real_usec":747.2,"est_time":63.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":622177,"user_time":16.94,"real_time":21.9,"user_ops":36728.3,"real_ops":28407.7,"user_usec":27.2,"real_usec":35.2,"est_time":9.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":564965,"user_time":16.4,"real_time":21.0,"user_ops":34449.1,"real_ops":26905.7,"user_usec":29.0,"real_usec":37.2,"est_time":9.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":481882,"user_time":16.35,"real_time":20.43,"user_ops":29472.9,"real_ops":23583.8,"user_usec":33.9,"real_usec":42.4,"est_time":10.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":396387,"user_time":17.74,"real_time":21.27,"user_ops":22344.3,"real_ops":18632.3,"user_usec":44.8,"real_usec":53.7,"est_time":5.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":245760,"user_time":15.36,"real_time":17.86,"user_ops":16000.0,"real_ops":13756.8,"user_usec":62.5,"real_usec":72.7,"est_time":6.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":178086,"user_time":17.83,"real_time":20.01,"user_ops":9988.0,"real_ops":8901.0,"user_usec":100.1,"real_usec":112.3,"est_time":4.63,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":93090,"user_time":15.85,"real_time":17.33,"user_ops":5873.2,"real_ops":5370.2,"user_usec":170.3,"real_usec":186.2,"est_time":3.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":57962,"user_time":17.56,"real_time":18.9,"user_ops":3300.8,"real_ops":3067.3,"user_usec":303.0,"real_usec":326.0,"est_time":2.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":28183,"user_time":16.19,"real_time":17.16,"user_ops":1740.8,"real_ops":1642.2,"user_usec":574.5,"real_usec":608.9,"est_time":4.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":14628,"user_time":16.56,"real_time":17.39,"user_ops":883.3,"real_ops":841.0,"user_usec":1132.1,"real_usec":1189.1,"est_time":4.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":6564,"user_time":14.58,"real_time":15.25,"user_ops":450.2,"real_ops":430.5,"user_usec":2221.2,"real_usec":2323.0,"est_time":4.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":3622,"user_time":15.86,"real_time":16.55,"user_ops":228.4,"real_ops":218.9,"user_usec":4378.8,"real_usec":4569.3,"est_time":3.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":1777,"user_time":15.45,"real_time":16.11,"user_ops":115.0,"real_ops":110.3,"user_usec":8694.4,"real_usec":9066.5,"est_time":3.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":932,"user_time":16.53,"real_time":17.25,"user_ops":56.4,"real_ops":54.0,"user_usec":17736.1,"real_usec":18510.8,"est_time":3.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":428,"user_time":14.45,"real_time":15.16,"user_ops":29.6,"real_ops":28.2,"user_usec":33761.7,"real_usec":35418.7,"est_time":3.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":218,"user_time":15.4,"real_time":16.06,"user_ops":14.2,"real_ops":13.6,"user_usec":70642.2,"real_usec":73674.4,"est_time":3.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-2332","tag":"suite_find","status":"OK"},
]; // 360 minutes

View File

@ -1,190 +0,0 @@
exp_series_suite_find_ruby = [
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":70620,"user_time":15.02,"real_time":23.64,"user_ops":4701.7,"real_ops":2986.9,"user_usec":212.7,"real_usec":334.8,"est_time":3.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":72282,"user_time":15.03,"real_time":22.92,"user_ops":4809.2,"real_ops":3153.3,"user_usec":207.9,"real_usec":317.1,"est_time":3.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":67516,"user_time":14.48,"real_time":22.76,"user_ops":4662.7,"real_ops":2966.5,"user_usec":214.5,"real_usec":337.1,"est_time":3.43,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":73142,"user_time":15.75,"real_time":24.61,"user_ops":4643.9,"real_ops":2972.6,"user_usec":215.3,"real_usec":336.4,"est_time":3.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":66782,"user_time":14.57,"real_time":22.58,"user_ops":4583.5,"real_ops":2957.6,"user_usec":218.2,"real_usec":338.1,"est_time":3.35,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":69818,"user_time":15.12,"real_time":23.29,"user_ops":4617.6,"real_ops":2998.3,"user_usec":216.6,"real_usec":333.5,"est_time":3.4,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":64000,"user_time":14.05,"real_time":21.35,"user_ops":4555.2,"real_ops":2998.2,"user_usec":219.5,"real_usec":333.5,"est_time":3.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":64000,"user_time":15.21,"real_time":23.15,"user_ops":4207.8,"real_ops":2764.9,"user_usec":237.7,"real_usec":361.7,"est_time":3.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":57962,"user_time":14.56,"real_time":21.6,"user_ops":3980.9,"real_ops":2683.4,"user_usec":251.2,"real_usec":372.7,"est_time":2.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":54857,"user_time":15.04,"real_time":20.87,"user_ops":3647.4,"real_ops":2628.1,"user_usec":274.2,"real_usec":380.5,"est_time":2.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":42666,"user_time":14.89,"real_time":20.76,"user_ops":2865.4,"real_ops":2055.6,"user_usec":349.0,"real_usec":486.5,"est_time":2.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":30415,"user_time":14.8,"real_time":19.71,"user_ops":2055.1,"real_ops":1543.3,"user_usec":486.6,"real_usec":648.0,"est_time":3.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":20480,"user_time":15.13,"real_time":18.52,"user_ops":1353.6,"real_ops":1106.0,"user_usec":738.8,"real_usec":904.1,"est_time":2.32,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":11636,"user_time":14.6,"real_time":18.3,"user_ops":797.0,"real_ops":636.0,"user_usec":1254.7,"real_usec":1572.4,"est_time":2.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":6508,"user_time":14.72,"real_time":17.81,"user_ops":442.1,"real_ops":365.5,"user_usec":2261.8,"real_usec":2736.1,"est_time":1.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_one","iterations":3555,"user_time":14.67,"real_time":16.77,"user_ops":242.3,"real_ops":212.0,"user_usec":4126.6,"real_usec":4718.0,"est_time":1.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":73142,"user_time":15.32,"real_time":24.33,"user_ops":4774.3,"real_ops":3006.8,"user_usec":209.5,"real_usec":332.6,"est_time":3.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":69033,"user_time":14.31,"real_time":22.29,"user_ops":4824.1,"real_ops":3097.4,"user_usec":207.3,"real_usec":322.9,"est_time":3.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":68266,"user_time":14.92,"real_time":24.02,"user_ops":4575.5,"real_ops":2842.6,"user_usec":218.6,"real_usec":351.8,"est_time":3.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":66782,"user_time":14.6,"real_time":22.72,"user_ops":4574.1,"real_ops":2939.3,"user_usec":218.6,"real_usec":340.2,"est_time":3.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":63340,"user_time":14.81,"real_time":23.34,"user_ops":4276.8,"real_ops":2713.5,"user_usec":233.8,"real_usec":368.5,"est_time":3.59,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":57962,"user_time":14.65,"real_time":22.01,"user_ops":3956.5,"real_ops":2633.7,"user_usec":252.8,"real_usec":379.7,"est_time":2.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":52965,"user_time":15.88,"real_time":23.13,"user_ops":3335.3,"real_ops":2290.3,"user_usec":299.8,"real_usec":436.6,"est_time":2.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":39384,"user_time":15.09,"real_time":20.69,"user_ops":2609.9,"real_ops":1903.4,"user_usec":383.2,"real_usec":525.4,"est_time":2.62,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":27428,"user_time":15.19,"real_time":19.47,"user_ops":1805.7,"real_ops":1408.6,"user_usec":553.8,"real_usec":709.9,"est_time":1.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":16695,"user_time":14.78,"real_time":18.37,"user_ops":1129.6,"real_ops":908.9,"user_usec":885.3,"real_usec":1100.2,"est_time":2.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":9846,"user_time":15.17,"real_time":18.74,"user_ops":649.0,"real_ops":525.5,"user_usec":1540.7,"real_usec":1903.0,"est_time":2.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":5333,"user_time":15.02,"real_time":17.05,"user_ops":355.1,"real_ops":312.8,"user_usec":2816.4,"real_usec":3196.7,"est_time":2.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":2782,"user_time":14.92,"real_time":16.2,"user_ops":186.5,"real_ops":171.7,"user_usec":5363.0,"real_usec":5824.3,"est_time":2.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":1432,"user_time":15.0,"real_time":15.95,"user_ops":95.5,"real_ops":89.8,"user_usec":10474.9,"real_usec":11140.6,"est_time":1.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":727,"user_time":15.09,"real_time":15.83,"user_ops":48.2,"real_ops":45.9,"user_usec":20756.5,"real_usec":21774.4,"est_time":1.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_one","iterations":358,"user_time":15.01,"real_time":15.71,"user_ops":23.9,"real_ops":22.8,"user_usec":41927.4,"real_usec":43870.2,"est_time":1.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":63340,"user_time":14.93,"real_time":22.36,"user_ops":4242.5,"real_ops":2832.5,"user_usec":235.7,"real_usec":353.0,"est_time":3.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":60235,"user_time":14.47,"real_time":20.96,"user_ops":4162.8,"real_ops":2873.2,"user_usec":240.2,"real_usec":348.0,"est_time":2.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":53894,"user_time":14.68,"real_time":21.67,"user_ops":3671.3,"real_ops":2486.6,"user_usec":272.4,"real_usec":402.1,"est_time":2.36,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":50360,"user_time":15.39,"real_time":21.41,"user_ops":3272.3,"real_ops":2352.0,"user_usec":305.6,"real_usec":425.2,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":37012,"user_time":14.98,"real_time":20.12,"user_ops":2470.8,"real_ops":1839.8,"user_usec":404.7,"real_usec":543.5,"est_time":2.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":24774,"user_time":14.42,"real_time":18.28,"user_ops":1718.0,"real_ops":1355.1,"user_usec":582.1,"real_usec":738.0,"est_time":2.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":16168,"user_time":14.98,"real_time":18.0,"user_ops":1079.3,"real_ops":898.0,"user_usec":926.5,"real_usec":1113.6,"est_time":2.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":9035,"user_time":14.99,"real_time":17.83,"user_ops":602.7,"real_ops":506.6,"user_usec":1659.1,"real_usec":1973.9,"est_time":2.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":4626,"user_time":14.89,"real_time":16.96,"user_ops":310.7,"real_ops":272.7,"user_usec":3218.8,"real_usec":3667.2,"est_time":2.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":2341,"user_time":14.82,"real_time":16.04,"user_ops":158.0,"real_ops":145.9,"user_usec":6330.6,"real_usec":6852.0,"est_time":2.32,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":1185,"user_time":14.89,"real_time":15.9,"user_ops":79.6,"real_ops":74.5,"user_usec":12565.4,"real_usec":13416.7,"est_time":2.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":564,"user_time":15.13,"real_time":15.91,"user_ops":37.3,"real_ops":35.5,"user_usec":26826.2,"real_usec":28208.3,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":266,"user_time":14.91,"real_time":15.67,"user_ops":17.8,"real_ops":17.0,"user_usec":56052.6,"real_usec":58898.0,"est_time":2.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":150,"user_time":14.88,"real_time":15.55,"user_ops":10.1,"real_ops":9.6,"user_usec":99200.0,"real_usec":103697.3,"est_time":2.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_one","iterations":69,"user_time":14.67,"real_time":15.39,"user_ops":4.7,"real_ops":4.5,"user_usec":212608.7,"real_usec":223008.5,"est_time":2.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":64673,"user_time":14.26,"real_time":21.98,"user_ops":4535.3,"real_ops":2942.1,"user_usec":220.5,"real_usec":339.9,"est_time":3.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":62693,"user_time":14.3,"real_time":21.86,"user_ops":4384.1,"real_ops":2868.2,"user_usec":228.1,"real_usec":348.6,"est_time":3.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":60831,"user_time":15.16,"real_time":22.73,"user_ops":4012.6,"real_ops":2676.7,"user_usec":249.2,"real_usec":373.6,"est_time":3.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":54857,"user_time":15.96,"real_time":23.66,"user_ops":3437.2,"real_ops":2318.7,"user_usec":290.9,"real_usec":431.3,"est_time":2.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":42082,"user_time":15.49,"real_time":21.46,"user_ops":2716.7,"real_ops":1961.3,"user_usec":368.1,"real_usec":509.9,"est_time":2.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":28981,"user_time":15.06,"real_time":19.42,"user_ops":1924.4,"real_ops":1492.6,"user_usec":519.7,"real_usec":670.0,"est_time":1.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":18506,"user_time":15.08,"real_time":18.16,"user_ops":1227.2,"real_ops":1019.0,"user_usec":814.9,"real_usec":981.4,"est_time":2.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":10378,"user_time":15.11,"real_time":18.7,"user_ops":686.8,"real_ops":554.9,"user_usec":1456.0,"real_usec":1802.1,"est_time":2.36,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":5333,"user_time":14.78,"real_time":17.13,"user_ops":360.8,"real_ops":311.4,"user_usec":2771.4,"real_usec":3211.8,"est_time":2.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":2742,"user_time":14.83,"real_time":16.2,"user_ops":184.9,"real_ops":169.3,"user_usec":5408.5,"real_usec":5906.9,"est_time":2.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":1371,"user_time":14.81,"real_time":15.78,"user_ops":92.6,"real_ops":86.9,"user_usec":10802.3,"real_usec":11512.5,"est_time":2.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":648,"user_time":14.68,"real_time":15.45,"user_ops":44.1,"real_ops":41.9,"user_usec":22654.3,"real_usec":23842.1,"est_time":2.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":315,"user_time":14.76,"real_time":15.49,"user_ops":21.3,"real_ops":20.3,"user_usec":46857.1,"real_usec":49183.5,"est_time":2.35,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":151,"user_time":14.78,"real_time":15.52,"user_ops":10.2,"real_ops":9.7,"user_usec":97880.8,"real_usec":102799.6,"est_time":2.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":68,"user_time":14.82,"real_time":15.54,"user_ops":4.6,"real_ops":4.4,"user_usec":217941.2,"real_usec":228548.0,"est_time":2.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":34,"user_time":14.66,"real_time":15.4,"user_ops":2.3,"real_ops":2.2,"user_usec":431176.5,"real_usec":452949.9,"est_time":2.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":16,"user_time":13.88,"real_time":14.62,"user_ops":1.2,"real_ops":1.1,"user_usec":867500.0,"real_usec":913500.5,"est_time":3.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_one","iterations":7,"user_time":12.83,"real_time":13.57,"user_ops":0.5,"real_ops":0.5,"user_usec":1832857.1,"real_usec":1939141.4,"est_time":6.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":75851,"user_time":14.6,"real_time":23.47,"user_ops":5195.3,"real_ops":3232.1,"user_usec":192.5,"real_usec":309.4,"est_time":3.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":63340,"user_time":14.94,"real_time":23.35,"user_ops":4239.6,"real_ops":2712.9,"user_usec":235.9,"real_usec":368.6,"est_time":3.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":49548,"user_time":14.48,"real_time":19.87,"user_ops":3421.8,"real_ops":2493.3,"user_usec":292.2,"real_usec":401.1,"est_time":2.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":34133,"user_time":15.2,"real_time":19.95,"user_ops":2245.6,"real_ops":1711.0,"user_usec":445.3,"real_usec":584.5,"est_time":2.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":20480,"user_time":15.28,"real_time":19.17,"user_ops":1340.3,"real_ops":1068.3,"user_usec":746.1,"real_usec":936.1,"est_time":2.41,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":11294,"user_time":14.89,"real_time":18.44,"user_ops":758.5,"real_ops":612.6,"user_usec":1318.4,"real_usec":1632.3,"est_time":2.32,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":5907,"user_time":14.68,"real_time":17.18,"user_ops":402.4,"real_ops":343.8,"user_usec":2485.2,"real_usec":2908.4,"est_time":2.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":3047,"user_time":15.09,"real_time":16.69,"user_ops":201.9,"real_ops":182.6,"user_usec":4952.4,"real_usec":5477.0,"est_time":1.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":1523,"user_time":14.94,"real_time":16.03,"user_ops":101.9,"real_ops":95.0,"user_usec":9809.6,"real_usec":10524.8,"est_time":1.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":749,"user_time":14.85,"real_time":15.67,"user_ops":50.4,"real_ops":47.8,"user_usec":19826.4,"real_usec":20922.2,"est_time":1.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":369,"user_time":14.91,"real_time":15.64,"user_ops":24.7,"real_ops":23.6,"user_usec":40406.5,"real_usec":42372.0,"est_time":1.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":181,"user_time":14.9,"real_time":15.81,"user_ops":12.1,"real_ops":11.5,"user_usec":82320.4,"real_usec":87329.3,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":88,"user_time":14.82,"real_time":15.5,"user_ops":5.9,"real_ops":5.7,"user_usec":168409.1,"real_usec":176182.2,"est_time":1.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":78769,"user_time":14.77,"real_time":23.14,"user_ops":5333.0,"real_ops":3403.8,"user_usec":187.5,"real_usec":293.8,"est_time":3.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":69818,"user_time":15.44,"real_time":23.06,"user_ops":4521.9,"real_ops":3027.4,"user_usec":221.1,"real_usec":330.3,"est_time":3.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":52965,"user_time":15.62,"real_time":22.52,"user_ops":3390.8,"real_ops":2352.0,"user_usec":294.9,"real_usec":425.2,"est_time":2.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":34909,"user_time":14.74,"real_time":18.85,"user_ops":2368.3,"real_ops":1851.8,"user_usec":422.2,"real_usec":540.0,"est_time":2.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":21333,"user_time":15.1,"real_time":18.6,"user_ops":1412.8,"real_ops":1146.9,"user_usec":707.8,"real_usec":871.9,"est_time":2.3,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":12000,"user_time":15.31,"real_time":19.32,"user_ops":783.8,"real_ops":621.1,"user_usec":1275.8,"real_usec":1610.2,"est_time":2.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":6295,"user_time":14.98,"real_time":17.52,"user_ops":420.2,"real_ops":359.3,"user_usec":2379.7,"real_usec":2783.5,"est_time":2.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":3200,"user_time":14.9,"real_time":16.52,"user_ops":214.8,"real_ops":193.8,"user_usec":4656.3,"real_usec":5161.3,"est_time":1.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":1600,"user_time":14.89,"real_time":16.04,"user_ops":107.5,"real_ops":99.8,"user_usec":9306.3,"real_usec":10022.2,"est_time":1.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":786,"user_time":14.85,"real_time":15.73,"user_ops":52.9,"real_ops":50.0,"user_usec":18893.1,"real_usec":20013.9,"est_time":1.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":387,"user_time":15.0,"real_time":15.69,"user_ops":25.8,"real_ops":24.7,"user_usec":38759.7,"real_usec":40540.7,"est_time":2.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":190,"user_time":15.14,"real_time":15.8,"user_ops":12.5,"real_ops":12.0,"user_usec":79684.2,"real_usec":83147.9,"est_time":1.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":89,"user_time":14.75,"real_time":15.45,"user_ops":6.0,"real_ops":5.8,"user_usec":165730.3,"real_usec":173608.2,"est_time":1.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":43,"user_time":15.08,"real_time":15.77,"user_ops":2.9,"real_ops":2.7,"user_usec":350697.7,"real_usec":366805.3,"est_time":1.65,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":18,"user_time":14.41,"real_time":15.17,"user_ops":1.2,"real_ops":1.2,"user_usec":800555.6,"real_usec":842573.8,"est_time":3.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":9,"user_time":14.48,"real_time":15.19,"user_ops":0.6,"real_ops":0.6,"user_usec":1608888.9,"real_usec":1687343.6,"est_time":5.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1216","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":243326,"user_time":18.18,"real_time":20.43,"user_ops":13384.3,"real_ops":11910.5,"user_usec":74.7,"real_usec":84.0,"est_time":7.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":261446,"user_time":20.01,"real_time":22.4,"user_ops":13065.8,"real_ops":11672.0,"user_usec":76.5,"real_usec":85.7,"est_time":7.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":258694,"user_time":20.21,"real_time":22.59,"user_ops":12800.3,"real_ops":11450.5,"user_usec":78.1,"real_usec":87.3,"est_time":7.65,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":234057,"user_time":18.7,"real_time":20.85,"user_ops":12516.4,"real_ops":11224.4,"user_usec":79.9,"real_usec":89.1,"est_time":7.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":240941,"user_time":18.89,"real_time":21.13,"user_ops":12754.9,"real_ops":11401.0,"user_usec":78.4,"real_usec":87.7,"est_time":4.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":236307,"user_time":19.21,"real_time":21.37,"user_ops":12301.2,"real_ops":11059.9,"user_usec":81.3,"real_usec":90.4,"est_time":4.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":208271,"user_time":17.92,"real_time":19.85,"user_ops":11622.3,"real_ops":10490.3,"user_usec":86.0,"real_usec":95.3,"est_time":4.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":180705,"user_time":16.85,"real_time":18.63,"user_ops":10724.3,"real_ops":9701.7,"user_usec":93.2,"real_usec":103.1,"est_time":4.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":144564,"user_time":16.04,"real_time":17.48,"user_ops":9012.7,"real_ops":8272.1,"user_usec":111.0,"real_usec":120.9,"est_time":5.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":107789,"user_time":15.65,"real_time":16.86,"user_ops":6887.5,"real_ops":6394.4,"user_usec":145.2,"real_usec":156.4,"est_time":3.14,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":69818,"user_time":15.0,"real_time":15.84,"user_ops":4654.5,"real_ops":4408.9,"user_usec":214.8,"real_usec":226.8,"est_time":4.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":41513,"user_time":14.69,"real_time":15.36,"user_ops":2825.9,"real_ops":2703.0,"user_usec":353.9,"real_usec":370.0,"est_time":3.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":25180,"user_time":14.97,"real_time":15.53,"user_ops":1682.0,"real_ops":1621.3,"user_usec":594.5,"real_usec":616.8,"est_time":2.43,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":13241,"user_time":14.82,"real_time":15.24,"user_ops":893.5,"real_ops":868.9,"user_usec":1119.3,"real_usec":1150.9,"est_time":2.21,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":6857,"user_time":14.89,"real_time":15.65,"user_ops":460.5,"real_ops":438.3,"user_usec":2171.5,"real_usec":2281.6,"est_time":2.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"find_many","iterations":3692,"user_time":15.0,"real_time":15.7,"user_ops":246.1,"real_ops":235.1,"user_usec":4062.8,"real_usec":4252.9,"est_time":2.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":273066,"user_time":17.66,"real_time":20.11,"user_ops":15462.4,"real_ops":13581.9,"user_usec":64.7,"real_usec":73.6,"est_time":7.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":285767,"user_time":18.86,"real_time":21.47,"user_ops":15152.0,"real_ops":13310.7,"user_usec":66.0,"real_usec":75.1,"est_time":7.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":267130,"user_time":18.16,"real_time":20.59,"user_ops":14709.8,"real_ops":12973.1,"user_usec":68.0,"real_usec":77.1,"est_time":7.2,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":240941,"user_time":17.57,"real_time":19.74,"user_ops":13713.2,"real_ops":12205.5,"user_usec":72.9,"real_usec":81.9,"est_time":3.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":219428,"user_time":18.42,"real_time":20.41,"user_ops":11912.5,"real_ops":10748.6,"user_usec":83.9,"real_usec":93.0,"est_time":4.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":170666,"user_time":17.27,"real_time":18.87,"user_ops":9882.2,"real_ops":9042.3,"user_usec":101.2,"real_usec":110.6,"est_time":4.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":121663,"user_time":17.82,"real_time":18.99,"user_ops":6827.3,"real_ops":6406.1,"user_usec":146.5,"real_usec":156.1,"est_time":5.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":79792,"user_time":17.3,"real_time":18.08,"user_ops":4612.3,"real_ops":4412.3,"user_usec":216.8,"real_usec":226.6,"est_time":3.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":45176,"user_time":16.24,"real_time":16.72,"user_ops":2781.8,"real_ops":2701.9,"user_usec":359.5,"real_usec":370.1,"est_time":2.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":25180,"user_time":15.97,"real_time":16.28,"user_ops":1576.7,"real_ops":1546.7,"user_usec":634.2,"real_usec":646.5,"est_time":2.48,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":13016,"user_time":15.22,"real_time":15.4,"user_ops":855.2,"real_ops":845.3,"user_usec":1169.3,"real_usec":1183.0,"est_time":2.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":6736,"user_time":15.3,"real_time":15.47,"user_ops":440.3,"real_ops":435.3,"user_usec":2271.4,"real_usec":2297.2,"est_time":1.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":3428,"user_time":15.29,"real_time":15.35,"user_ops":224.2,"real_ops":223.3,"user_usec":4460.3,"real_usec":4478.6,"est_time":1.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":1714,"user_time":15.15,"real_time":15.2,"user_ops":113.1,"real_ops":112.7,"user_usec":8839.0,"real_usec":8869.4,"est_time":1.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":872,"user_time":15.32,"real_time":15.35,"user_ops":56.9,"real_ops":56.8,"user_usec":17568.8,"real_usec":17598.3,"est_time":1.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"find_many","iterations":436,"user_time":15.32,"real_time":15.51,"user_ops":28.5,"real_ops":28.1,"user_usec":35137.6,"real_usec":35575.5,"est_time":1.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":189046,"user_time":17.99,"real_time":19.77,"user_ops":10508.4,"real_ops":9563.4,"user_usec":95.2,"real_usec":104.6,"est_time":4.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":175542,"user_time":18.3,"real_time":19.96,"user_ops":9592.5,"real_ops":8795.3,"user_usec":104.2,"real_usec":113.7,"est_time":5.23,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":139636,"user_time":18.26,"real_time":19.64,"user_ops":7647.1,"real_ops":7108.6,"user_usec":130.8,"real_usec":140.7,"est_time":6.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":107789,"user_time":17.87,"real_time":18.94,"user_ops":6031.8,"real_ops":5691.4,"user_usec":165.8,"real_usec":175.7,"est_time":4.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":69033,"user_time":16.9,"real_time":17.62,"user_ops":4084.8,"real_ops":3918.3,"user_usec":244.8,"real_usec":255.2,"est_time":5.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":40960,"user_time":16.69,"real_time":17.15,"user_ops":2454.2,"real_ops":2389.0,"user_usec":407.5,"real_usec":418.6,"est_time":5.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":22260,"user_time":15.73,"real_time":16.0,"user_ops":1415.1,"real_ops":1391.3,"user_usec":706.6,"real_usec":718.8,"est_time":4.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":11462,"user_time":15.52,"real_time":15.67,"user_ops":738.5,"real_ops":731.4,"user_usec":1354.0,"real_usec":1367.3,"est_time":3.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":5647,"user_time":15.36,"real_time":15.46,"user_ops":367.6,"real_ops":365.3,"user_usec":2720.0,"real_usec":2737.4,"est_time":3.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":2823,"user_time":15.4,"real_time":15.46,"user_ops":183.3,"real_ops":182.6,"user_usec":5455.2,"real_usec":5476.7,"est_time":4.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":1411,"user_time":15.17,"real_time":15.22,"user_ops":93.0,"real_ops":92.7,"user_usec":10751.2,"real_usec":10788.4,"est_time":3.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":666,"user_time":15.1,"real_time":15.14,"user_ops":44.1,"real_ops":44.0,"user_usec":22672.7,"real_usec":22727.8,"est_time":3.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":320,"user_time":15.1,"real_time":15.26,"user_ops":21.2,"real_ops":21.0,"user_usec":47187.5,"real_usec":47684.7,"est_time":3.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":157,"user_time":15.0,"real_time":15.16,"user_ops":10.5,"real_ops":10.4,"user_usec":95541.4,"real_usec":96573.1,"est_time":3.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"find_many","iterations":75,"user_time":15.13,"real_time":15.28,"user_ops":5.0,"real_ops":4.9,"user_usec":201733.3,"real_usec":203768.9,"est_time":2.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":201442,"user_time":18.39,"real_time":20.24,"user_ops":10953.9,"real_ops":9951.2,"user_usec":91.3,"real_usec":100.5,"est_time":4.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":175542,"user_time":17.39,"real_time":19.03,"user_ops":10094.4,"real_ops":9225.7,"user_usec":99.1,"real_usec":108.4,"est_time":5.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":151703,"user_time":18.32,"real_time":19.8,"user_ops":8280.7,"real_ops":7663.2,"user_usec":120.8,"real_usec":130.5,"est_time":5.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":113777,"user_time":17.45,"real_time":18.54,"user_ops":6520.2,"real_ops":6136.8,"user_usec":153.4,"real_usec":163.0,"est_time":3.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":73142,"user_time":16.9,"real_time":17.71,"user_ops":4327.9,"real_ops":4129.6,"user_usec":231.1,"real_usec":242.2,"est_time":5.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":42082,"user_time":17.08,"real_time":17.62,"user_ops":2463.8,"real_ops":2388.9,"user_usec":405.9,"real_usec":418.6,"est_time":4.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":23630,"user_time":17.52,"real_time":17.83,"user_ops":1348.7,"real_ops":1325.6,"user_usec":741.4,"real_usec":754.4,"est_time":4.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":12190,"user_time":17.0,"real_time":17.22,"user_ops":717.1,"real_ops":707.8,"user_usec":1394.6,"real_usec":1412.8,"est_time":3.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":6095,"user_time":17.36,"real_time":17.53,"user_ops":351.1,"real_ops":347.6,"user_usec":2848.2,"real_usec":2876.5,"est_time":3.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":3000,"user_time":17.04,"real_time":17.15,"user_ops":176.1,"real_ops":174.9,"user_usec":5680.0,"real_usec":5718.2,"est_time":3.63,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":1500,"user_time":16.85,"real_time":16.92,"user_ops":89.0,"real_ops":88.6,"user_usec":11233.3,"real_usec":11281.7,"est_time":3.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":685,"user_time":16.11,"real_time":16.18,"user_ops":42.5,"real_ops":42.3,"user_usec":23518.2,"real_usec":23620.5,"est_time":3.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":333,"user_time":16.17,"real_time":16.35,"user_ops":20.6,"real_ops":20.4,"user_usec":48558.6,"real_usec":49088.8,"est_time":3.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":164,"user_time":16.39,"real_time":16.6,"user_ops":10.0,"real_ops":9.9,"user_usec":99939.0,"real_usec":101214.3,"est_time":3.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":78,"user_time":16.02,"real_time":16.18,"user_ops":4.9,"real_ops":4.8,"user_usec":205384.6,"real_usec":207473.0,"est_time":2.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":39,"user_time":16.66,"real_time":16.86,"user_ops":2.3,"real_ops":2.3,"user_usec":427179.5,"real_usec":432373.1,"est_time":1.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":18,"user_time":15.83,"real_time":16.06,"user_ops":1.1,"real_ops":1.1,"user_usec":879444.4,"real_usec":892487.1,"est_time":3.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"find_many","iterations":8,"user_time":14.85,"real_time":15.02,"user_ops":0.5,"real_ops":0.5,"user_usec":1856250.0,"real_usec":1877570.5,"est_time":7.3,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":285767,"user_time":17.69,"real_time":20.25,"user_ops":16154.2,"real_ops":14113.6,"user_usec":61.9,"real_usec":70.9,"est_time":7.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":178086,"user_time":17.67,"real_time":19.37,"user_ops":10078.4,"real_ops":9192.2,"user_usec":99.2,"real_usec":108.8,"est_time":5.27,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":97523,"user_time":17.22,"real_time":18.2,"user_ops":5663.4,"real_ops":5357.1,"user_usec":176.6,"real_usec":186.7,"est_time":4.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":51200,"user_time":16.95,"real_time":17.49,"user_ops":3020.6,"real_ops":2927.3,"user_usec":331.1,"real_usec":341.6,"est_time":3.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":26482,"user_time":16.84,"real_time":17.14,"user_ops":1572.6,"real_ops":1545.4,"user_usec":635.9,"real_usec":647.1,"est_time":3.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":13241,"user_time":16.61,"real_time":16.77,"user_ops":797.2,"real_ops":789.3,"user_usec":1254.4,"real_usec":1266.9,"est_time":3.32,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":6508,"user_time":16.35,"real_time":16.44,"user_ops":398.0,"real_ops":395.9,"user_usec":2512.3,"real_usec":2525.9,"est_time":3.36,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":3199,"user_time":16.23,"real_time":16.3,"user_ops":197.1,"real_ops":196.3,"user_usec":5073.5,"real_usec":5093.8,"est_time":3.51,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":1573,"user_time":16.34,"real_time":16.39,"user_ops":96.3,"real_ops":96.0,"user_usec":10387.8,"real_usec":10421.0,"est_time":3.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":761,"user_time":16.08,"real_time":16.13,"user_ops":47.3,"real_ops":47.2,"user_usec":21130.1,"real_usec":21194.6,"est_time":3.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":375,"user_time":16.18,"real_time":16.21,"user_ops":23.2,"real_ops":23.1,"user_usec":43146.7,"real_usec":43232.4,"est_time":3.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":184,"user_time":16.12,"real_time":16.16,"user_ops":11.4,"real_ops":11.4,"user_usec":87608.7,"real_usec":87806.8,"est_time":2.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_many","iterations":89,"user_time":16.12,"real_time":16.23,"user_ops":5.5,"real_ops":5.5,"user_usec":181123.6,"real_usec":182330.3,"est_time":2.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":289129,"user_time":18.05,"real_time":20.61,"user_ops":16018.2,"real_ops":14027.0,"user_usec":62.4,"real_usec":71.3,"est_time":6.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":166054,"user_time":15.95,"real_time":17.48,"user_ops":10410.9,"real_ops":9500.2,"user_usec":96.1,"real_usec":105.3,"est_time":5.28,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":104135,"user_time":17.66,"real_time":18.74,"user_ops":5896.7,"real_ops":5557.4,"user_usec":169.6,"real_usec":179.9,"est_time":4.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":55854,"user_time":18.24,"real_time":18.9,"user_ops":3062.2,"real_ops":2956.0,"user_usec":326.6,"real_usec":338.3,"est_time":3.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":27927,"user_time":18.12,"real_time":18.49,"user_ops":1541.2,"real_ops":1510.3,"user_usec":648.8,"real_usec":662.1,"est_time":3.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":13241,"user_time":17.73,"real_time":17.95,"user_ops":746.8,"real_ops":737.6,"user_usec":1339.0,"real_usec":1355.7,"est_time":3.35,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":6857,"user_time":18.43,"real_time":18.64,"user_ops":372.1,"real_ops":367.9,"user_usec":2687.8,"real_usec":2718.4,"est_time":3.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":3200,"user_time":17.33,"real_time":17.44,"user_ops":184.7,"real_ops":183.5,"user_usec":5415.6,"real_usec":5449.2,"est_time":3.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":1745,"user_time":19.06,"real_time":19.18,"user_ops":91.6,"real_ops":91.0,"user_usec":10922.6,"real_usec":10990.9,"est_time":3.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":813,"user_time":18.47,"real_time":18.57,"user_ops":44.0,"real_ops":43.8,"user_usec":22718.3,"real_usec":22847.0,"est_time":3.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":399,"user_time":18.74,"real_time":18.9,"user_ops":21.3,"real_ops":21.1,"user_usec":46967.4,"real_usec":47377.4,"est_time":3.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":187,"user_time":18.27,"real_time":18.35,"user_ops":10.2,"real_ops":10.2,"user_usec":97700.5,"real_usec":98142.6,"est_time":3.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":101,"user_time":19.59,"real_time":19.76,"user_ops":5.2,"real_ops":5.1,"user_usec":193960.4,"real_usec":195675.8,"est_time":2.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":49,"user_time":19.44,"real_time":19.61,"user_ops":2.5,"real_ops":2.5,"user_usec":396734.7,"real_usec":400279.7,"est_time":1.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":22,"user_time":18.01,"real_time":18.19,"user_ops":1.2,"real_ops":1.2,"user_usec":818636.4,"real_usec":826633.5,"est_time":3.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_many","iterations":10,"user_time":15.01,"real_time":15.31,"user_ops":0.7,"real_ops":0.7,"user_usec":1501000.0,"real_usec":1530864.2,"est_time":6.51,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1249","tag":"suite_find","status":"OK"},
]; // 101 minutes

View File

@ -1,590 +0,0 @@
exp_series_suite_insert_many_c = [
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":183402,"user_time":15.58,"real_time":17.55,"user_ops":11771.6,"real_ops":10450.1,"user_usec":85.0,"real_usec":95.7,"est_time":2.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":85333,"user_time":13.46,"real_time":14.54,"user_ops":25359.0,"real_ops":23472.7,"user_usec":39.4,"real_usec":42.6,"est_time":3.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":33032,"user_time":14.25,"real_time":15.39,"user_ops":37088.6,"real_ops":34330.5,"user_usec":27.0,"real_usec":29.1,"est_time":4.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":9253,"user_time":14.23,"real_time":15.21,"user_ops":41615.7,"real_ops":38934.1,"user_usec":24.0,"real_usec":25.7,"est_time":4.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":2704,"user_time":14.17,"real_time":15.17,"user_ops":48851.4,"real_ops":45640.1,"user_usec":20.5,"real_usec":21.9,"est_time":3.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":676,"user_time":13.91,"real_time":14.77,"user_ops":49764.5,"real_ops":46878.5,"user_usec":20.1,"real_usec":21.3,"est_time":3.57,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":181,"user_time":15.43,"real_time":16.2,"user_ops":48047.7,"real_ops":45761.1,"user_usec":20.8,"real_usec":21.9,"est_time":3.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":191999,"user_time":15.71,"real_time":17.89,"user_ops":12221.5,"real_ops":10734.5,"user_usec":81.8,"real_usec":93.2,"est_time":2.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":109714,"user_time":15.83,"real_time":17.76,"user_ops":27723.1,"real_ops":24711.0,"user_usec":36.1,"real_usec":40.5,"est_time":3.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":37925,"user_time":14.47,"real_time":15.9,"user_ops":41935.0,"real_ops":38162.8,"user_usec":23.8,"real_usec":26.2,"est_time":4.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":11130,"user_time":14.49,"real_time":15.59,"user_ops":49159.4,"real_ops":45686.2,"user_usec":20.3,"real_usec":21.9,"est_time":3.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":2953,"user_time":14.85,"real_time":17.33,"user_ops":50906.9,"real_ops":43609.6,"user_usec":19.6,"real_usec":22.9,"est_time":3.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":761,"user_time":15.02,"real_time":17.56,"user_ops":51881.8,"real_ops":44376.5,"user_usec":19.3,"real_usec":22.5,"est_time":3.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":181,"user_time":14.95,"real_time":15.76,"user_ops":49590.4,"real_ops":47054.5,"user_usec":20.2,"real_usec":21.3,"est_time":3.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":195047,"user_time":15.01,"real_time":17.1,"user_ops":12994.5,"real_ops":11403.9,"user_usec":77.0,"real_usec":87.7,"est_time":2.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":107789,"user_time":14.85,"real_time":16.89,"user_ops":29034.1,"real_ops":25533.6,"user_usec":34.4,"real_usec":39.2,"est_time":3.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":40960,"user_time":15.01,"real_time":16.76,"user_ops":43661.6,"real_ops":39113.3,"user_usec":22.9,"real_usec":25.6,"est_time":4.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":10105,"user_time":13.09,"real_time":14.21,"user_ops":49405.7,"real_ops":45518.4,"user_usec":20.2,"real_usec":22.0,"est_time":4.64,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":3000,"user_time":14.19,"real_time":17.13,"user_ops":54122.6,"real_ops":44825.8,"user_usec":18.5,"real_usec":22.3,"est_time":3.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":727,"user_time":14.59,"real_time":17.46,"user_ops":51024.5,"real_ops":42643.1,"user_usec":19.6,"real_usec":23.5,"est_time":6.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":166,"user_time":14.28,"real_time":15.35,"user_ops":47614.6,"real_ops":44281.9,"user_usec":21.0,"real_usec":22.6,"est_time":3.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":189046,"user_time":15.0,"real_time":17.99,"user_ops":12603.1,"real_ops":10507.7,"user_usec":79.3,"real_usec":95.2,"est_time":2.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":99096,"user_time":14.2,"real_time":16.12,"user_ops":27914.4,"real_ops":24585.5,"user_usec":35.8,"real_usec":40.7,"est_time":2.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":37925,"user_time":14.47,"real_time":17.72,"user_ops":41935.0,"real_ops":34239.9,"user_usec":23.8,"real_usec":29.2,"est_time":3.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":9974,"user_time":13.31,"real_time":16.28,"user_ops":47959.1,"real_ops":39211.7,"user_usec":20.9,"real_usec":25.5,"est_time":3.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":2630,"user_time":14.44,"real_time":17.51,"user_ops":46626.0,"real_ops":38443.7,"user_usec":21.4,"real_usec":26.0,"est_time":3.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":774,"user_time":15.94,"real_time":18.78,"user_ops":49722.5,"real_ops":42194.2,"user_usec":20.1,"real_usec":23.7,"est_time":3.64,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":181,"user_time":15.44,"real_time":18.28,"user_ops":48016.6,"real_ops":40546.3,"user_usec":20.8,"real_usec":24.7,"est_time":3.56,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":178086,"user_time":14.33,"real_time":16.82,"user_ops":12427.5,"real_ops":10588.9,"user_usec":80.5,"real_usec":94.4,"est_time":2.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":102399,"user_time":16.29,"real_time":19.58,"user_ops":25144.0,"real_ops":20915.9,"user_usec":39.8,"real_usec":47.8,"est_time":3.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":33391,"user_time":14.9,"real_time":18.57,"user_ops":35856.1,"real_ops":28763.8,"user_usec":27.9,"real_usec":34.8,"est_time":4.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":10240,"user_time":15.7,"real_time":22.3,"user_ops":41742.7,"real_ops":29383.6,"user_usec":24.0,"real_usec":34.0,"est_time":3.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":2630,"user_time":15.09,"real_time":21.63,"user_ops":44617.6,"real_ops":31121.2,"user_usec":22.4,"real_usec":32.1,"est_time":3.76,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":648,"user_time":15.65,"real_time":22.39,"user_ops":42399.5,"real_ops":29640.5,"user_usec":23.6,"real_usec":33.7,"est_time":3.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":142,"user_time":15.25,"real_time":18.98,"user_ops":38139.8,"real_ops":30640.7,"user_usec":26.2,"real_usec":32.6,"est_time":4.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":168328,"user_time":15.17,"real_time":18.49,"user_ops":11096.1,"real_ops":9103.3,"user_usec":90.1,"real_usec":109.9,"est_time":3.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":83027,"user_time":15.08,"real_time":24.07,"user_ops":22023.1,"real_ops":13795.5,"user_usec":45.4,"real_usec":72.5,"est_time":3.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":28981,"user_time":15.57,"real_time":37.17,"user_ops":29781.4,"real_ops":12475.0,"user_usec":33.6,"real_usec":80.2,"est_time":3.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":7529,"user_time":14.85,"real_time":36.04,"user_ops":32448.2,"real_ops":13369.5,"user_usec":30.8,"real_usec":74.8,"est_time":3.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":1882,"user_time":14.74,"real_time":34.31,"user_ops":32686.0,"real_ops":14043.6,"user_usec":30.6,"real_usec":71.2,"est_time":3.25,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":489,"user_time":14.94,"real_time":35.2,"user_ops":33516.5,"real_ops":14225.3,"user_usec":29.8,"real_usec":70.3,"est_time":5.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":53,"user_time":9.04,"real_time":14.69,"user_ops":24014.2,"real_ops":14775.2,"user_usec":41.6,"real_usec":67.7,"est_time":2.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":138067,"user_time":14.97,"real_time":22.96,"user_ops":9222.9,"real_ops":6012.8,"user_usec":108.4,"real_usec":166.3,"est_time":3.56,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":55854,"user_time":14.89,"real_time":33.8,"user_ops":15004.4,"real_ops":6609.9,"user_usec":66.6,"real_usec":151.3,"est_time":2.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":16879,"user_time":15.13,"real_time":49.44,"user_ops":17849.6,"real_ops":5462.3,"user_usec":56.0,"real_usec":183.1,"est_time":5.58,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":4465,"user_time":15.5,"real_time":46.65,"user_ops":18436.1,"real_ops":6126.2,"user_usec":54.2,"real_usec":163.2,"est_time":6.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":1116,"user_time":15.18,"real_time":44.64,"user_ops":18820.6,"real_ops":6399.7,"user_usec":53.1,"real_usec":156.3,"est_time":6.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":285,"user_time":15.0,"real_time":37.4,"user_ops":19456.0,"real_ops":7803.1,"user_usec":51.4,"real_usec":128.2,"est_time":5.29,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":192000,"user_time":15.1,"real_time":17.52,"user_ops":12715.2,"real_ops":10956.6,"user_usec":78.6,"real_usec":91.3,"est_time":2.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":105931,"user_time":14.92,"real_time":16.89,"user_ops":28399.7,"real_ops":25088.7,"user_usec":35.2,"real_usec":39.9,"est_time":3.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":39896,"user_time":15.26,"real_time":17.05,"user_ops":41830.7,"real_ops":37435.1,"user_usec":23.9,"real_usec":26.7,"est_time":4.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":11130,"user_time":14.9,"real_time":16.13,"user_ops":47806.7,"real_ops":44158.4,"user_usec":20.9,"real_usec":22.6,"est_time":4.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":2865,"user_time":14.96,"real_time":16.21,"user_ops":49026.7,"real_ops":45258.0,"user_usec":20.4,"real_usec":22.1,"est_time":4.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":705,"user_time":14.87,"real_time":16.75,"user_ops":48548.8,"real_ops":43106.9,"user_usec":20.6,"real_usec":23.2,"est_time":3.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":164,"user_time":14.6,"real_time":15.65,"user_ops":46009.9,"real_ops":42922.3,"user_usec":21.7,"real_usec":23.3,"est_time":4.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":189046,"user_time":14.74,"real_time":16.87,"user_ops":12825.4,"real_ops":11206.6,"user_usec":78.0,"real_usec":89.2,"est_time":2.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":105931,"user_time":14.85,"real_time":16.9,"user_ops":28533.6,"real_ops":25072.7,"user_usec":35.0,"real_usec":39.9,"est_time":3.36,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":37925,"user_time":14.74,"real_time":16.2,"user_ops":41166.9,"real_ops":37449.1,"user_usec":24.3,"real_usec":26.7,"est_time":4.31,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":11815,"user_time":15.77,"real_time":17.02,"user_ops":47949.3,"real_ops":44440.7,"user_usec":20.9,"real_usec":22.5,"est_time":4.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":3000,"user_time":15.56,"real_time":18.29,"user_ops":49357.3,"real_ops":41991.9,"user_usec":20.3,"real_usec":23.8,"est_time":4.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":705,"user_time":14.97,"real_time":16.02,"user_ops":48224.4,"real_ops":45063.0,"user_usec":20.7,"real_usec":22.2,"est_time":3.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":166,"user_time":14.84,"real_time":15.78,"user_ops":45817.8,"real_ops":43080.8,"user_usec":21.8,"real_usec":23.2,"est_time":3.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":186181,"user_time":14.76,"real_time":16.82,"user_ops":12613.9,"real_ops":11067.7,"user_usec":79.3,"real_usec":90.4,"est_time":2.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":105931,"user_time":15.21,"real_time":17.31,"user_ops":27858.3,"real_ops":24478.9,"user_usec":35.9,"real_usec":40.9,"est_time":3.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":38399,"user_time":14.96,"real_time":16.48,"user_ops":41068.4,"real_ops":37290.1,"user_usec":24.3,"real_usec":26.8,"est_time":4.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":11130,"user_time":14.96,"real_time":16.27,"user_ops":47615.0,"real_ops":43779.9,"user_usec":21.0,"real_usec":22.8,"est_time":4.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":2909,"user_time":14.84,"real_time":16.59,"user_ops":50182.2,"real_ops":44885.5,"user_usec":19.9,"real_usec":22.3,"est_time":4.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":695,"user_time":15.26,"real_time":16.8,"user_ops":46637.0,"real_ops":42370.3,"user_usec":21.4,"real_usec":23.6,"est_time":4.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":164,"user_time":14.56,"real_time":15.86,"user_ops":46136.3,"real_ops":42360.4,"user_usec":21.7,"real_usec":23.6,"est_time":4.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":183402,"user_time":14.54,"real_time":16.86,"user_ops":12613.6,"real_ops":10879.1,"user_usec":79.3,"real_usec":91.9,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":105931,"user_time":15.33,"real_time":19.35,"user_ops":27640.2,"real_ops":21898.2,"user_usec":36.2,"real_usec":45.7,"est_time":3.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":37463,"user_time":14.52,"real_time":29.36,"user_ops":41281.5,"real_ops":20416.4,"user_usec":24.2,"real_usec":49.0,"est_time":4.6,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":11462,"user_time":15.44,"real_time":162.54,"user_ops":47510.9,"real_ops":4513.2,"user_usec":21.0,"real_usec":221.6,"est_time":21.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":3047,"user_time":15.15,"real_time":20.23,"user_ops":51487.3,"real_ops":38549.7,"user_usec":19.4,"real_usec":25.9,"est_time":9.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":727,"user_time":14.99,"real_time":18.78,"user_ops":49663.0,"real_ops":39645.5,"user_usec":20.1,"real_usec":25.2,"est_time":3.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":176,"user_time":15.15,"real_time":16.86,"user_ops":47583.9,"real_ops":42763.6,"user_usec":21.0,"real_usec":23.4,"est_time":3.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":186181,"user_time":14.92,"real_time":19.32,"user_ops":12478.6,"real_ops":9635.3,"user_usec":80.1,"real_usec":103.8,"est_time":2.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":97523,"user_time":15.07,"real_time":21.89,"user_ops":25885.3,"real_ops":17817.1,"user_usec":38.6,"real_usec":56.1,"est_time":8.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":36141,"user_time":15.18,"real_time":179.08,"user_ops":38093.3,"real_ops":3229.1,"user_usec":26.3,"real_usec":309.7,"est_time":17.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":10105,"user_time":14.79,"real_time":172.43,"user_ops":43726.8,"real_ops":3750.7,"user_usec":22.9,"real_usec":266.6,"est_time":41.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":2742,"user_time":15.18,"real_time":129.52,"user_ops":46241.9,"real_ops":5419.8,"user_usec":21.6,"real_usec":184.5,"est_time":32.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":676,"user_time":15.03,"real_time":64.96,"user_ops":46056.2,"real_ops":10656.0,"user_usec":21.7,"real_usec":93.8,"est_time":9.18,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":153,"user_time":14.87,"real_time":93.34,"user_ops":42144.5,"real_ops":6714.2,"user_usec":23.7,"real_usec":148.9,"est_time":15.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":168328,"user_time":14.86,"real_time":87.18,"user_ops":11327.6,"real_ops":1930.9,"user_usec":88.3,"real_usec":517.9,"est_time":15.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":84164,"user_time":15.12,"real_time":131.45,"user_ops":22265.6,"real_ops":2561.1,"user_usec":44.9,"real_usec":390.5,"est_time":15.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":27927,"user_time":14.88,"real_time":230.02,"user_ops":30029.0,"real_ops":1942.6,"user_usec":33.3,"real_usec":514.8,"est_time":24.44,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":7836,"user_time":15.64,"real_time":61.54,"user_ops":32065.5,"real_ops":8149.7,"user_usec":31.2,"real_usec":122.7,"est_time":8.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":1882,"user_time":15.31,"real_time":31.31,"user_ops":31469.1,"real_ops":15386.4,"user_usec":31.8,"real_usec":65.0,"est_time":5.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":436,"user_time":13.47,"real_time":87.0,"user_ops":33145.1,"real_ops":5131.7,"user_usec":30.2,"real_usec":194.9,"est_time":3.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":124,"user_time":14.99,"real_time":44.92,"user_ops":33882.9,"real_ops":11308.0,"user_usec":29.5,"real_usec":88.4,"est_time":9.46,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":132129,"user_time":14.93,"real_time":31.06,"user_ops":8849.9,"real_ops":4254.2,"user_usec":113.0,"real_usec":235.1,"est_time":5.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":53894,"user_time":15.32,"real_time":302.09,"user_ops":14071.5,"real_ops":713.6,"user_usec":71.1,"real_usec":1401.3,"est_time":4.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":15058,"user_time":14.91,"real_time":659.52,"user_ops":16158.8,"real_ops":365.3,"user_usec":61.9,"real_usec":2737.4,"est_time":103.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":3918,"user_time":14.83,"real_time":33.48,"user_ops":16908.4,"real_ops":7490.4,"user_usec":59.1,"real_usec":133.5,"est_time":6.31,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":1054,"user_time":15.66,"real_time":41.78,"user_ops":17230.1,"real_ops":6458.8,"user_usec":58.0,"real_usec":154.8,"est_time":4.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":266,"user_time":15.21,"real_time":44.85,"user_ops":17908.2,"real_ops":6073.4,"user_usec":55.8,"real_usec":164.7,"est_time":5.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":166054,"user_time":15.17,"real_time":23.56,"user_ops":10946.2,"real_ops":7049.6,"user_usec":91.4,"real_usec":141.9,"est_time":3.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":104135,"user_time":15.08,"real_time":17.97,"user_ops":27622.0,"real_ops":23180.1,"user_usec":36.2,"real_usec":43.1,"est_time":5.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":37925,"user_time":14.82,"real_time":16.33,"user_ops":40944.7,"real_ops":37151.6,"user_usec":24.4,"real_usec":26.9,"est_time":4.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":11130,"user_time":14.7,"real_time":15.52,"user_ops":48457.1,"real_ops":45883.5,"user_usec":20.6,"real_usec":21.8,"est_time":3.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":2999,"user_time":15.15,"real_time":17.01,"user_ops":50676.2,"real_ops":45129.5,"user_usec":19.7,"real_usec":22.2,"est_time":3.58,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":761,"user_time":14.79,"real_time":15.97,"user_ops":52688.6,"real_ops":48796.7,"user_usec":19.0,"real_usec":20.5,"est_time":3.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":184,"user_time":15.03,"real_time":16.06,"user_ops":50144.0,"real_ops":46933.4,"user_usec":19.9,"real_usec":21.3,"est_time":3.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":189046,"user_time":14.8,"real_time":16.76,"user_ops":12773.4,"real_ops":11279.4,"user_usec":78.3,"real_usec":88.7,"est_time":2.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":100721,"user_time":14.7,"real_time":16.69,"user_ops":27407.1,"real_ops":24143.8,"user_usec":36.5,"real_usec":41.4,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":36571,"user_time":14.7,"real_time":16.06,"user_ops":39805.2,"real_ops":36440.2,"user_usec":25.1,"real_usec":27.4,"est_time":4.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":10816,"user_time":14.69,"real_time":17.89,"user_ops":47122.1,"real_ops":38699.5,"user_usec":21.2,"real_usec":25.8,"est_time":3.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":2865,"user_time":14.84,"real_time":17.39,"user_ops":49423.2,"real_ops":42177.1,"user_usec":20.2,"real_usec":23.7,"est_time":3.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":727,"user_time":15.37,"real_time":17.96,"user_ops":48435.1,"real_ops":41447.9,"user_usec":20.6,"real_usec":24.1,"est_time":3.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":164,"user_time":14.84,"real_time":17.55,"user_ops":45265.8,"real_ops":38277.1,"user_usec":22.1,"real_usec":26.1,"est_time":3.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":178086,"user_time":14.86,"real_time":17.15,"user_ops":11984.3,"real_ops":10384.4,"user_usec":83.4,"real_usec":96.3,"est_time":2.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":93090,"user_time":15.65,"real_time":98.59,"user_ops":23793.0,"real_ops":3776.8,"user_usec":42.0,"real_usec":264.8,"est_time":2.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":31346,"user_time":14.81,"real_time":18.37,"user_ops":33864.7,"real_ops":27300.7,"user_usec":29.5,"real_usec":36.6,"est_time":4.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":9035,"user_time":14.8,"real_time":17.43,"user_ops":39070.3,"real_ops":33168.5,"user_usec":25.6,"real_usec":30.1,"est_time":4.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":2400,"user_time":14.84,"real_time":17.64,"user_ops":41401.6,"real_ops":34838.8,"user_usec":24.2,"real_usec":28.7,"est_time":3.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":592,"user_time":15.19,"real_time":77.13,"user_ops":39908.4,"real_ops":7859.1,"user_usec":25.1,"real_usec":127.2,"est_time":3.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":134,"user_time":15.75,"real_time":18.1,"user_ops":34848.5,"real_ops":30317.5,"user_usec":28.7,"real_usec":33.0,"est_time":3.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":141241,"user_time":14.6,"real_time":59.51,"user_ops":9674.0,"real_ops":2373.2,"user_usec":103.4,"real_usec":421.4,"est_time":2.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":67516,"user_time":15.0,"real_time":20.12,"user_ops":18004.3,"real_ops":13421.7,"user_usec":55.5,"real_usec":74.5,"est_time":4.18,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":21942,"user_time":14.96,"real_time":22.94,"user_ops":23467.4,"real_ops":15303.5,"user_usec":42.6,"real_usec":65.3,"est_time":2.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":5818,"user_time":14.5,"real_time":21.28,"user_ops":25679.4,"real_ops":17498.1,"user_usec":38.9,"real_usec":57.1,"est_time":3.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":1523,"user_time":14.98,"real_time":24.09,"user_ops":26027.2,"real_ops":16187.8,"user_usec":38.4,"real_usec":61.8,"est_time":3.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":380,"user_time":15.29,"real_time":18.18,"user_ops":25449.3,"real_ops":21404.8,"user_usec":39.3,"real_usec":46.7,"est_time":2.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":83,"user_time":14.84,"real_time":16.08,"user_ops":22908.9,"real_ops":21147.0,"user_usec":43.7,"real_usec":47.3,"est_time":2.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":90352,"user_time":14.84,"real_time":16.82,"user_ops":6088.4,"real_ops":5371.6,"user_usec":164.2,"real_usec":186.2,"est_time":2.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":33032,"user_time":15.13,"real_time":16.98,"user_ops":8732.8,"real_ops":7780.4,"user_usec":114.5,"real_usec":128.5,"est_time":3.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":9365,"user_time":14.83,"real_time":16.73,"user_ops":10103.8,"real_ops":8954.1,"user_usec":99.0,"real_usec":111.7,"est_time":3.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":2341,"user_time":14.88,"real_time":16.72,"user_ops":10068.8,"real_ops":8960.9,"user_usec":99.3,"real_usec":111.6,"est_time":3.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":592,"user_time":14.95,"real_time":17.27,"user_ops":10137.3,"real_ops":8772.9,"user_usec":98.6,"real_usec":114.0,"est_time":2.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":144,"user_time":14.66,"real_time":16.27,"user_ops":10058.4,"real_ops":9063.1,"user_usec":99.4,"real_usec":110.3,"est_time":2.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":34,"user_time":15.51,"real_time":16.3,"user_ops":8979.0,"real_ops":8543.9,"user_usec":111.4,"real_usec":117.0,"est_time":2.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":38400,"user_time":14.96,"real_time":16.74,"user_ops":2566.8,"real_ops":2294.0,"user_usec":389.6,"real_usec":435.9,"est_time":2.36,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":10666,"user_time":14.36,"real_time":16.36,"user_ops":2971.0,"real_ops":2608.6,"user_usec":336.6,"real_usec":383.3,"est_time":2.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":2865,"user_time":15.23,"real_time":17.24,"user_ops":3009.8,"real_ops":2659.4,"user_usec":332.2,"real_usec":376.0,"est_time":2.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":695,"user_time":15.06,"real_time":18.74,"user_ops":2953.5,"real_ops":2373.4,"user_usec":338.6,"real_usec":421.3,"est_time":1.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":181,"user_time":15.08,"real_time":16.73,"user_ops":3072.7,"real_ops":2770.4,"user_usec":325.4,"real_usec":361.0,"est_time":1.76,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":44,"user_time":14.78,"real_time":15.62,"user_ops":3048.4,"real_ops":2884.9,"user_usec":328.0,"real_usec":346.6,"est_time":1.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":10378,"user_time":13.99,"real_time":16.38,"user_ops":741.8,"real_ops":633.7,"user_usec":1348.0,"real_usec":1577.9,"est_time":2.02,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":2823,"user_time":15.38,"real_time":18.01,"user_ops":734.2,"real_ops":627.1,"user_usec":1362.0,"real_usec":1594.6,"est_time":1.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":695,"user_time":14.56,"real_time":16.69,"user_ops":763.7,"real_ops":666.2,"user_usec":1309.4,"real_usec":1501.1,"est_time":1.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":181,"user_time":14.93,"real_time":16.68,"user_ops":775.9,"real_ops":694.6,"user_usec":1288.8,"real_usec":1439.6,"est_time":1.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":45,"user_time":14.73,"real_time":15.65,"user_ops":782.1,"real_ops":735.9,"user_usec":1278.6,"real_usec":1358.8,"est_time":0.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":186181,"user_time":15.07,"real_time":17.22,"user_ops":12354.4,"real_ops":10814.0,"user_usec":80.9,"real_usec":92.5,"est_time":2.58,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":99096,"user_time":14.89,"real_time":16.33,"user_ops":26620.8,"real_ops":24265.9,"user_usec":37.6,"real_usec":41.2,"est_time":2.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":35310,"user_time":15.04,"real_time":16.3,"user_ops":37563.8,"real_ops":34651.3,"user_usec":26.6,"real_usec":28.9,"est_time":4.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":10240,"user_time":15.2,"real_time":16.12,"user_ops":43115.8,"real_ops":40656.7,"user_usec":23.2,"real_usec":24.6,"est_time":3.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":2630,"user_time":14.78,"real_time":15.66,"user_ops":45553.5,"real_ops":42984.5,"user_usec":22.0,"real_usec":23.3,"est_time":3.66,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":666,"user_time":15.17,"real_time":15.93,"user_ops":44956.1,"real_ops":42809.3,"user_usec":22.2,"real_usec":23.4,"est_time":3.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":162,"user_time":15.02,"real_time":15.69,"user_ops":44177.9,"real_ops":42292.3,"user_usec":22.6,"real_usec":23.6,"est_time":3.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":163840,"user_time":15.09,"real_time":16.72,"user_ops":10857.5,"real_ops":9799.0,"user_usec":92.1,"real_usec":102.1,"est_time":3.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":76799,"user_time":15.19,"real_time":16.25,"user_ops":20223.6,"real_ops":18907.6,"user_usec":49.4,"real_usec":52.9,"est_time":3.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":26033,"user_time":15.05,"real_time":15.76,"user_ops":27676.3,"real_ops":26432.6,"user_usec":36.1,"real_usec":37.8,"est_time":2.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":7111,"user_time":15.01,"real_time":15.55,"user_ops":30320.1,"real_ops":29267.7,"user_usec":33.0,"real_usec":34.2,"est_time":2.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":1846,"user_time":15.04,"real_time":15.75,"user_ops":31421.3,"real_ops":30004.4,"user_usec":31.8,"real_usec":33.3,"est_time":2.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":452,"user_time":15.07,"real_time":15.8,"user_ops":30713.2,"real_ops":29288.4,"user_usec":32.6,"real_usec":34.1,"est_time":2.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":109,"user_time":14.95,"real_time":15.75,"user_ops":29863.8,"real_ops":28355.3,"user_usec":33.5,"real_usec":35.3,"est_time":2.32,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":111709,"user_time":15.04,"real_time":16.38,"user_ops":7427.5,"real_ops":6818.4,"user_usec":134.6,"real_usec":146.7,"est_time":2.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":41513,"user_time":15.17,"real_time":15.63,"user_ops":10946.1,"real_ops":10621.4,"user_usec":91.4,"real_usec":94.1,"est_time":2.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":12190,"user_time":14.87,"real_time":15.05,"user_ops":13116.3,"real_ops":12960.5,"user_usec":76.2,"real_usec":77.2,"est_time":2.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":3147,"user_time":14.8,"real_time":14.85,"user_ops":13608.6,"real_ops":13559.3,"user_usec":73.5,"real_usec":73.8,"est_time":2.44,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":813,"user_time":14.92,"real_time":15.01,"user_ops":13949.6,"real_ops":13870.0,"user_usec":71.7,"real_usec":72.1,"est_time":2.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":200,"user_time":14.81,"real_time":15.03,"user_ops":13828.5,"real_ops":13628.1,"user_usec":72.3,"real_usec":73.4,"est_time":2.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":47,"user_time":14.36,"real_time":14.41,"user_ops":13406.1,"real_ops":13360.1,"user_usec":74.6,"real_usec":74.8,"est_time":1.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":48000,"user_time":14.97,"real_time":15.56,"user_ops":3206.4,"real_ops":3084.7,"user_usec":311.9,"real_usec":324.2,"est_time":1.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":15058,"user_time":15.22,"real_time":15.51,"user_ops":3957.4,"real_ops":3882.6,"user_usec":252.7,"real_usec":257.6,"est_time":1.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":3878,"user_time":14.62,"real_time":14.78,"user_ops":4244.0,"real_ops":4197.5,"user_usec":235.6,"real_usec":238.2,"est_time":2.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":999,"user_time":14.84,"real_time":14.92,"user_ops":4308.4,"real_ops":4285.0,"user_usec":232.1,"real_usec":233.4,"est_time":2.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":252,"user_time":14.97,"real_time":15.1,"user_ops":4309.4,"real_ops":4271.3,"user_usec":232.0,"real_usec":234.1,"est_time":2.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":62,"user_time":14.78,"real_time":14.93,"user_ops":4295.5,"real_ops":4252.5,"user_usec":232.8,"real_usec":235.2,"est_time":1.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":15,"user_time":14.57,"real_time":14.66,"user_ops":4216.9,"real_ops":4191.1,"user_usec":237.1,"real_usec":238.6,"est_time":2.66,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":15360,"user_time":14.81,"real_time":15.29,"user_ops":1037.1,"real_ops":1004.5,"user_usec":964.2,"real_usec":995.5,"est_time":2.58,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":4129,"user_time":15.01,"real_time":15.18,"user_ops":1100.3,"real_ops":1088.2,"user_usec":908.8,"real_usec":918.9,"est_time":2.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":1066,"user_time":15.13,"real_time":15.24,"user_ops":1127.3,"real_ops":1119.2,"user_usec":887.1,"real_usec":893.5,"est_time":2.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":269,"user_time":15.08,"real_time":15.16,"user_ops":1141.6,"real_ops":1135.5,"user_usec":875.9,"real_usec":880.7,"est_time":2.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":67,"user_time":14.71,"real_time":14.86,"user_ops":1166.0,"real_ops":1153.9,"user_usec":857.6,"real_usec":866.6,"est_time":1.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":16,"user_time":13.71,"real_time":13.78,"user_ops":1195.0,"real_ops":1189.2,"user_usec":836.8,"real_usec":840.9,"est_time":1.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":4,"user_time":14.64,"real_time":14.76,"user_ops":1119.1,"real_ops":1109.7,"user_usec":893.6,"real_usec":901.1,"est_time":7.54,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":4266,"user_time":14.98,"real_time":15.16,"user_ops":284.8,"real_ops":281.4,"user_usec":3511.5,"real_usec":3553.7,"est_time":2.45,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":1078,"user_time":14.88,"real_time":15.04,"user_ops":289.8,"real_ops":286.7,"user_usec":3450.8,"real_usec":3488.1,"est_time":2.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":269,"user_time":14.17,"real_time":14.24,"user_ops":303.7,"real_ops":302.3,"user_usec":3292.3,"real_usec":3308.1,"est_time":2.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":68,"user_time":14.87,"real_time":15.07,"user_ops":292.7,"real_ops":288.8,"user_usec":3416.8,"real_usec":3463.1,"est_time":1.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":16,"user_time":13.88,"real_time":13.95,"user_ops":295.1,"real_ops":293.6,"user_usec":3388.7,"real_usec":3406.2,"est_time":1.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":4,"user_time":13.41,"real_time":13.47,"user_ops":305.4,"real_ops":304.1,"user_usec":3273.9,"real_usec":3288.2,"est_time":7.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":1090,"user_time":14.99,"real_time":15.13,"user_ops":72.7,"real_ops":72.1,"user_usec":13752.3,"real_usec":13878.9,"est_time":2.32,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":272,"user_time":15.04,"real_time":15.28,"user_ops":72.3,"real_ops":71.2,"user_usec":13823.5,"real_usec":14042.3,"est_time":2.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":66,"user_time":14.24,"real_time":14.45,"user_ops":74.2,"real_ops":73.1,"user_usec":13484.8,"real_usec":13680.7,"est_time":1.64,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":17,"user_time":14.55,"real_time":14.62,"user_ops":74.8,"real_ops":74.4,"user_usec":13373.2,"real_usec":13435.0,"est_time":1.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":4,"user_time":13.35,"real_time":13.41,"user_ops":76.7,"real_ops":76.4,"user_usec":13037.1,"real_usec":13091.4,"est_time":6.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":201442,"user_time":15.22,"real_time":17.49,"user_ops":13235.3,"real_ops":11519.8,"user_usec":75.6,"real_usec":86.8,"est_time":2.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":111709,"user_time":14.82,"real_time":16.26,"user_ops":30150.9,"real_ops":27475.7,"user_usec":33.2,"real_usec":36.4,"est_time":2.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":40960,"user_time":14.33,"real_time":15.56,"user_ops":45733.4,"real_ops":42109.4,"user_usec":21.9,"real_usec":23.7,"est_time":3.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":12800,"user_time":15.67,"real_time":18.61,"user_ops":52278.2,"real_ops":44019.2,"user_usec":19.1,"real_usec":22.7,"est_time":3.54,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":3368,"user_time":15.17,"real_time":17.68,"user_ops":56836.4,"real_ops":48765.9,"user_usec":17.6,"real_usec":20.5,"est_time":3.66,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":827,"user_time":14.91,"real_time":17.39,"user_ops":56797.3,"real_ops":48706.1,"user_usec":17.6,"real_usec":20.5,"est_time":3.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":196,"user_time":14.95,"real_time":16.77,"user_ops":53700.1,"real_ops":47881.1,"user_usec":18.6,"real_usec":20.9,"est_time":3.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":151703,"user_time":15.18,"real_time":16.89,"user_ops":9993.6,"real_ops":8981.2,"user_usec":100.1,"real_usec":111.3,"est_time":2.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":66782,"user_time":15.07,"real_time":16.15,"user_ops":17725.8,"real_ops":16539.4,"user_usec":56.4,"real_usec":60.5,"est_time":3.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":21333,"user_time":14.83,"real_time":15.39,"user_ops":23016.0,"real_ops":22178.9,"user_usec":43.4,"real_usec":45.1,"est_time":2.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":5999,"user_time":15.11,"real_time":15.7,"user_ops":25409.4,"real_ops":24454.5,"user_usec":39.4,"real_usec":40.9,"est_time":2.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":1548,"user_time":15.55,"real_time":15.68,"user_ops":25484.8,"real_ops":25275.8,"user_usec":39.2,"real_usec":39.6,"est_time":2.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":375,"user_time":15.11,"real_time":15.77,"user_ops":25413.6,"real_ops":24342.7,"user_usec":39.3,"real_usec":41.1,"est_time":2.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":89,"user_time":14.98,"real_time":15.58,"user_ops":24335.4,"real_ops":23400.8,"user_usec":41.1,"real_usec":42.7,"est_time":2.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":79792,"user_time":14.88,"real_time":15.83,"user_ops":5362.4,"real_ops":5039.1,"user_usec":186.5,"real_usec":198.4,"est_time":2.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":26482,"user_time":14.81,"real_time":15.18,"user_ops":7152.5,"real_ops":6978.4,"user_usec":139.8,"real_usec":143.3,"est_time":1.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":7384,"user_time":14.92,"real_time":15.02,"user_ops":7918.5,"real_ops":7868.2,"user_usec":126.3,"real_usec":127.1,"est_time":2.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":1939,"user_time":15.08,"real_time":15.13,"user_ops":8229.2,"real_ops":8203.7,"user_usec":121.5,"real_usec":121.9,"est_time":2.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":470,"user_time":14.53,"real_time":14.6,"user_ops":8280.8,"real_ops":8242.7,"user_usec":120.8,"real_usec":121.3,"est_time":1.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":115,"user_time":14.7,"real_time":14.77,"user_ops":8010.9,"real_ops":7972.0,"user_usec":124.8,"real_usec":125.4,"est_time":1.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":29,"user_time":14.84,"real_time":15.02,"user_ops":8004.3,"real_ops":7911.0,"user_usec":124.9,"real_usec":126.4,"est_time":1.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":28444,"user_time":14.94,"real_time":15.25,"user_ops":1903.9,"real_ops":1865.1,"user_usec":525.2,"real_usec":536.2,"est_time":1.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":8170,"user_time":15.05,"real_time":15.24,"user_ops":2171.4,"real_ops":2144.8,"user_usec":460.5,"real_usec":466.2,"est_time":2.58,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":2086,"user_time":14.96,"real_time":15.04,"user_ops":2231.0,"real_ops":2219.2,"user_usec":448.2,"real_usec":450.6,"est_time":2.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":539,"user_time":15.19,"real_time":15.24,"user_ops":2271.0,"real_ops":2264.0,"user_usec":440.3,"real_usec":441.7,"est_time":2.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":129,"user_time":15.03,"real_time":15.12,"user_ops":2197.2,"real_ops":2184.2,"user_usec":455.1,"real_usec":457.8,"est_time":2.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":32,"user_time":14.52,"real_time":14.59,"user_ops":2256.7,"real_ops":2246.6,"user_usec":443.1,"real_usec":445.1,"est_time":1.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":7,"user_time":13.07,"real_time":13.12,"user_ops":2193.7,"real_ops":2185.0,"user_usec":455.8,"real_usec":457.7,"est_time":4.02,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":8258,"user_time":14.95,"real_time":15.38,"user_ops":552.4,"real_ops":536.9,"user_usec":1810.4,"real_usec":1862.6,"est_time":2.54,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":2109,"user_time":14.84,"real_time":14.92,"user_ops":568.5,"real_ops":565.6,"user_usec":1759.1,"real_usec":1768.0,"est_time":2.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":539,"user_time":14.94,"real_time":14.99,"user_ops":577.2,"real_ops":575.1,"user_usec":1732.4,"real_usec":1738.7,"est_time":2.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":131,"user_time":14.86,"real_time":14.94,"user_ops":564.2,"real_ops":561.1,"user_usec":1772.4,"real_usec":1782.3,"est_time":2.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":33,"user_time":14.39,"real_time":14.46,"user_ops":587.1,"real_ops":584.2,"user_usec":1703.4,"real_usec":1711.9,"est_time":0.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":8,"user_time":14.17,"real_time":14.23,"user_ops":578.1,"real_ops":575.6,"user_usec":1729.7,"real_usec":1737.3,"est_time":3.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":2,"user_time":14.5,"real_time":14.56,"user_ops":565.0,"real_ops":562.6,"user_usec":1770.0,"real_usec":1777.4,"est_time":14.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":2133,"user_time":15.09,"real_time":15.16,"user_ops":141.4,"real_ops":140.7,"user_usec":7074.5,"real_usec":7107.5,"est_time":2.42,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":545,"user_time":15.03,"real_time":15.09,"user_ops":145.0,"real_ops":144.5,"user_usec":6894.5,"real_usec":6919.9,"est_time":2.42,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":133,"user_time":14.83,"real_time":14.89,"user_ops":143.5,"real_ops":142.9,"user_usec":6969.0,"real_usec":6997.2,"est_time":2.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":34,"user_time":15.0,"real_time":15.05,"user_ops":145.1,"real_ops":144.6,"user_usec":6893.4,"real_usec":6917.8,"est_time":1.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":8,"user_time":14.16,"real_time":14.21,"user_ops":144.6,"real_ops":144.1,"user_usec":6914.1,"real_usec":6939.7,"est_time":3.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":2,"user_time":14.04,"real_time":14.11,"user_ops":145.9,"real_ops":145.1,"user_usec":6855.5,"real_usec":6890.5,"est_time":14.6,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":545,"user_time":14.88,"real_time":14.91,"user_ops":36.6,"real_ops":36.5,"user_usec":27302.8,"real_usec":27363.1,"est_time":2.25,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":137,"user_time":15.11,"real_time":15.18,"user_ops":36.3,"real_ops":36.1,"user_usec":27573.0,"real_usec":27693.8,"est_time":1.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":33,"user_time":14.44,"real_time":14.52,"user_ops":36.6,"real_ops":36.4,"user_usec":27348.5,"real_usec":27499.9,"est_time":0.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":8,"user_time":13.76,"real_time":13.84,"user_ops":37.2,"real_ops":37.0,"user_usec":26875.0,"real_usec":27028.0,"est_time":3.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":2,"user_time":13.45,"real_time":13.52,"user_ops":38.1,"real_ops":37.9,"user_usec":26269.5,"real_usec":26409.1,"est_time":14.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":198193,"user_time":14.73,"real_time":16.89,"user_ops":13455.1,"real_ops":11731.2,"user_usec":74.3,"real_usec":85.2,"est_time":2.46,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":111709,"user_time":15.02,"real_time":16.66,"user_ops":29749.4,"real_ops":26818.2,"user_usec":33.6,"real_usec":37.3,"est_time":2.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":41513,"user_time":14.81,"real_time":16.09,"user_ops":44848.6,"real_ops":41280.9,"user_usec":22.3,"real_usec":24.2,"est_time":3.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":12190,"user_time":15.05,"real_time":16.16,"user_ops":51837.9,"real_ops":48274.4,"user_usec":19.3,"real_usec":20.7,"est_time":3.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":3147,"user_time":14.76,"real_time":17.02,"user_ops":54582.1,"real_ops":47342.4,"user_usec":18.3,"real_usec":21.1,"est_time":3.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":813,"user_time":15.26,"real_time":17.25,"user_ops":54555.2,"real_ops":48274.4,"user_usec":18.3,"real_usec":20.7,"est_time":3.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":190,"user_time":15.11,"real_time":16.01,"user_ops":51505.0,"real_ops":48624.8,"user_usec":19.4,"real_usec":20.6,"est_time":3.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":183402,"user_time":14.61,"real_time":16.51,"user_ops":12553.2,"real_ops":11107.2,"user_usec":79.7,"real_usec":90.0,"est_time":2.56,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":102400,"user_time":15.1,"real_time":17.48,"user_ops":27125.8,"real_ops":23429.1,"user_usec":36.9,"real_usec":42.7,"est_time":2.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":36571,"user_time":14.92,"real_time":17.33,"user_ops":39218.2,"real_ops":33766.1,"user_usec":25.5,"real_usec":29.6,"est_time":4.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":10666,"user_time":15.01,"real_time":17.85,"user_ops":45477.9,"real_ops":38240.9,"user_usec":22.0,"real_usec":26.1,"est_time":3.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":2742,"user_time":14.8,"real_time":17.42,"user_ops":47429.2,"real_ops":40295.0,"user_usec":21.1,"real_usec":24.8,"est_time":3.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":685,"user_time":14.87,"real_time":17.33,"user_ops":47171.5,"real_ops":40478.5,"user_usec":21.2,"real_usec":24.7,"est_time":3.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":160,"user_time":15.12,"real_time":17.79,"user_ops":43343.9,"real_ops":36848.6,"user_usec":23.1,"real_usec":27.1,"est_time":3.52,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":157538,"user_time":14.81,"real_time":16.83,"user_ops":10637.3,"real_ops":9361.8,"user_usec":94.0,"real_usec":106.8,"est_time":2.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":73142,"user_time":14.8,"real_time":16.89,"user_ops":19768.1,"real_ops":17326.8,"user_usec":50.6,"real_usec":57.7,"est_time":3.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":24774,"user_time":14.96,"real_time":17.17,"user_ops":26496.3,"real_ops":23083.7,"user_usec":37.7,"real_usec":43.3,"est_time":2.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":6857,"user_time":14.94,"real_time":17.17,"user_ops":29374.0,"real_ops":25553.6,"user_usec":34.0,"real_usec":39.1,"est_time":2.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":1745,"user_time":14.98,"real_time":18.21,"user_ops":29821.1,"real_ops":24527.5,"user_usec":33.5,"real_usec":40.8,"est_time":2.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":428,"user_time":15.15,"real_time":18.06,"user_ops":28928.8,"real_ops":24270.4,"user_usec":34.6,"real_usec":41.2,"est_time":2.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":95,"user_time":14.74,"real_time":16.66,"user_ops":26398.9,"real_ops":23360.1,"user_usec":37.9,"real_usec":42.8,"est_time":2.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":102399,"user_time":14.99,"real_time":16.52,"user_ops":6831.2,"real_ops":6198.0,"user_usec":146.4,"real_usec":161.3,"est_time":2.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":37012,"user_time":15.4,"real_time":17.32,"user_ops":9613.5,"real_ops":8547.5,"user_usec":104.0,"real_usec":117.0,"est_time":2.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":10520,"user_time":15.15,"real_time":16.33,"user_ops":11110.2,"real_ops":10307.0,"user_usec":90.0,"real_usec":97.0,"est_time":2.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":2704,"user_time":14.96,"real_time":16.48,"user_ops":11567.9,"real_ops":10501.2,"user_usec":86.4,"real_usec":95.2,"est_time":2.58,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":666,"user_time":14.72,"real_time":16.2,"user_ops":11582.6,"real_ops":10522.7,"user_usec":86.3,"real_usec":95.0,"est_time":2.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":164,"user_time":14.92,"real_time":16.29,"user_ops":11255.8,"real_ops":10311.5,"user_usec":88.8,"real_usec":97.0,"est_time":2.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":38,"user_time":15.4,"real_time":17.34,"user_ops":10107.0,"real_ops":8973.9,"user_usec":98.9,"real_usec":111.4,"est_time":2.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":42666,"user_time":15.24,"real_time":16.35,"user_ops":2799.6,"real_ops":2609.0,"user_usec":357.2,"real_usec":383.3,"est_time":2.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":12590,"user_time":14.97,"real_time":16.05,"user_ops":3364.1,"real_ops":3138.2,"user_usec":297.3,"real_usec":318.7,"est_time":1.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":3254,"user_time":15.21,"real_time":16.43,"user_ops":3423.0,"real_ops":3168.2,"user_usec":292.1,"real_usec":315.6,"est_time":1.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":799,"user_time":15.0,"real_time":16.18,"user_ops":3409.1,"real_ops":3161.0,"user_usec":293.3,"real_usec":316.4,"est_time":1.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":200,"user_time":14.93,"real_time":20.12,"user_ops":3429.3,"real_ops":2544.2,"user_usec":291.6,"real_usec":393.1,"est_time":1.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":50,"user_time":15.15,"real_time":15.83,"user_ops":3379.5,"real_ops":3234.0,"user_usec":295.9,"real_usec":309.2,"est_time":1.24,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":10,"user_time":15.76,"real_time":17.28,"user_ops":2599.0,"real_ops":2370.9,"user_usec":384.8,"real_usec":421.8,"est_time":3.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":12800,"user_time":15.02,"real_time":15.81,"user_ops":852.2,"real_ops":809.8,"user_usec":1173.4,"real_usec":1234.8,"est_time":1.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":3368,"user_time":14.73,"real_time":15.66,"user_ops":914.6,"real_ops":860.2,"user_usec":1093.4,"real_usec":1162.6,"est_time":1.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":857,"user_time":15.23,"real_time":16.48,"user_ops":900.3,"real_ops":832.0,"user_usec":1110.7,"real_usec":1201.9,"est_time":1.76,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":214,"user_time":14.92,"real_time":16.06,"user_ops":918.0,"real_ops":852.7,"user_usec":1089.4,"real_usec":1172.7,"est_time":1.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":52,"user_time":14.54,"real_time":15.3,"user_ops":915.5,"real_ops":870.3,"user_usec":1092.2,"real_usec":1149.0,"est_time":0.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":13,"user_time":14.55,"real_time":14.89,"user_ops":914.9,"real_ops":894.1,"user_usec":1093.0,"real_usec":1118.5,"est_time":2.6,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":2999,"user_time":14.31,"real_time":15.04,"user_ops":209.6,"real_ops":199.4,"user_usec":4771.6,"real_usec":5015.9,"est_time":2.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":738,"user_time":13.82,"real_time":14.86,"user_ops":213.6,"real_ops":198.7,"user_usec":4681.6,"real_usec":5033.8,"est_time":1.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":187,"user_time":13.88,"real_time":14.61,"user_ops":215.6,"real_ops":204.8,"user_usec":4639.0,"real_usec":4883.7,"est_time":1.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":45,"user_time":13.75,"real_time":14.33,"user_ops":209.5,"real_ops":201.0,"user_usec":4774.3,"real_usec":4975.6,"est_time":0.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":12,"user_time":14.42,"real_time":14.75,"user_ops":213.0,"real_ops":208.3,"user_usec":4694.0,"real_usec":4800.1,"est_time":2.53,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1615","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":80842,"user_time":15.91,"real_time":28.14,"user_ops":5081.2,"real_ops":2872.6,"user_usec":196.8,"real_usec":348.1,"est_time":3.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":52965,"user_time":14.38,"real_time":27.09,"user_ops":14733.0,"real_ops":7821.7,"user_usec":67.9,"real_usec":127.8,"est_time":3.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":28444,"user_time":14.83,"real_time":28.07,"user_ops":30688.1,"real_ops":16215.7,"user_usec":32.6,"real_usec":61.7,"est_time":3.66,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":10378,"user_time":15.26,"real_time":30.41,"user_ops":43525.0,"real_ops":21838.1,"user_usec":23.0,"real_usec":45.8,"est_time":4.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":2865,"user_time":15.1,"real_time":27.78,"user_ops":48572.2,"real_ops":26402.4,"user_usec":20.6,"real_usec":37.9,"est_time":4.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":705,"user_time":15.63,"real_time":28.64,"user_ops":46188.1,"real_ops":25205.5,"user_usec":21.7,"real_usec":39.7,"est_time":4.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":187,"user_time":15.67,"real_time":29.96,"user_ops":48880.2,"real_ops":25567.3,"user_usec":20.5,"real_usec":39.1,"est_time":4.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":85333,"user_time":15.38,"real_time":28.66,"user_ops":5548.3,"real_ops":2977.0,"user_usec":180.2,"real_usec":335.9,"est_time":3.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":56888,"user_time":13.09,"real_time":25.01,"user_ops":17383.7,"real_ops":9097.0,"user_usec":57.5,"real_usec":109.9,"est_time":3.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":30415,"user_time":14.55,"real_time":27.17,"user_ops":33446.0,"real_ops":17907.7,"user_usec":29.9,"real_usec":55.8,"est_time":5.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":10816,"user_time":15.14,"real_time":30.69,"user_ops":45721.5,"real_ops":22557.4,"user_usec":21.9,"real_usec":44.3,"est_time":4.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":3047,"user_time":15.19,"real_time":29.81,"user_ops":51351.7,"real_ops":26163.8,"user_usec":19.5,"real_usec":38.2,"est_time":4.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":786,"user_time":15.29,"real_time":29.23,"user_ops":52639.9,"real_ops":27534.7,"user_usec":19.0,"real_usec":36.3,"est_time":4.05,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":193,"user_time":15.18,"real_time":28.39,"user_ops":52076.9,"real_ops":27842.9,"user_usec":19.2,"real_usec":35.9,"est_time":3.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":83027,"user_time":16.05,"real_time":29.81,"user_ops":5173.0,"real_ops":2785.0,"user_usec":193.3,"real_usec":359.1,"est_time":3.42,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":55854,"user_time":13.75,"real_time":26.28,"user_ops":16248.4,"real_ops":8500.3,"user_usec":61.5,"real_usec":117.6,"est_time":3.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":30117,"user_time":14.11,"real_time":26.4,"user_ops":34151.1,"real_ops":18253.7,"user_usec":29.3,"real_usec":54.8,"est_time":3.25,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":10816,"user_time":15.0,"real_time":32.18,"user_ops":46148.3,"real_ops":21508.1,"user_usec":21.7,"real_usec":46.5,"est_time":4.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":3096,"user_time":15.36,"real_time":30.99,"user_ops":51600.0,"real_ops":25571.2,"user_usec":19.4,"real_usec":39.1,"est_time":4.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":786,"user_time":15.17,"real_time":29.61,"user_ops":53056.3,"real_ops":27182.9,"user_usec":18.8,"real_usec":36.8,"est_time":4.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":193,"user_time":15.06,"real_time":28.16,"user_ops":52491.9,"real_ops":28073.5,"user_usec":19.1,"real_usec":35.6,"est_time":3.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":84164,"user_time":14.79,"real_time":26.99,"user_ops":5690.6,"real_ops":3117.9,"user_usec":175.7,"real_usec":320.7,"est_time":3.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":55854,"user_time":14.22,"real_time":27.3,"user_ops":15711.4,"real_ops":8182.8,"user_usec":63.6,"real_usec":122.2,"est_time":3.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":29825,"user_time":14.49,"real_time":28.08,"user_ops":32933.1,"real_ops":16994.8,"user_usec":30.4,"real_usec":58.8,"est_time":5.58,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":10666,"user_time":15.08,"real_time":32.19,"user_ops":45266.8,"real_ops":21207.7,"user_usec":22.1,"real_usec":47.2,"est_time":4.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":3000,"user_time":15.19,"real_time":31.46,"user_ops":50559.6,"real_ops":24411.1,"user_usec":19.8,"real_usec":41.0,"est_time":4.44,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":774,"user_time":15.22,"real_time":30.47,"user_ops":52074.6,"real_ops":26007.8,"user_usec":19.2,"real_usec":38.4,"est_time":4.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":190,"user_time":15.45,"real_time":29.23,"user_ops":50371.5,"real_ops":26625.6,"user_usec":19.9,"real_usec":37.6,"est_time":3.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":83027,"user_time":15.46,"real_time":28.46,"user_ops":5370.4,"real_ops":2917.2,"user_usec":186.2,"real_usec":342.8,"est_time":3.44,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":52965,"user_time":14.58,"real_time":27.88,"user_ops":14530.9,"real_ops":7597.8,"user_usec":68.8,"real_usec":131.6,"est_time":3.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":28981,"user_time":14.93,"real_time":30.11,"user_ops":31058.0,"real_ops":15397.8,"user_usec":32.2,"real_usec":64.9,"est_time":3.36,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":9846,"user_time":15.04,"real_time":35.85,"user_ops":41897.9,"real_ops":17575.7,"user_usec":23.9,"real_usec":56.9,"est_time":5.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":2704,"user_time":15.01,"real_time":33.67,"user_ops":46117.5,"real_ops":20559.6,"user_usec":21.7,"real_usec":48.6,"est_time":4.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":695,"user_time":15.02,"real_time":33.04,"user_ops":47382.2,"real_ops":21541.1,"user_usec":21.1,"real_usec":46.4,"est_time":4.4,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":166,"user_time":14.86,"real_time":30.27,"user_ops":45756.1,"real_ops":22464.0,"user_usec":21.9,"real_usec":44.5,"est_time":4.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":79792,"user_time":15.35,"real_time":28.63,"user_ops":5198.2,"real_ops":2787.3,"user_usec":192.4,"real_usec":358.8,"est_time":3.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":55854,"user_time":15.4,"real_time":31.04,"user_ops":14507.5,"real_ops":7196.5,"user_usec":68.9,"real_usec":139.0,"est_time":3.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":24000,"user_time":14.71,"real_time":43.54,"user_ops":26104.7,"real_ops":8820.1,"user_usec":38.3,"real_usec":113.4,"est_time":4.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":8084,"user_time":14.81,"real_time":40.31,"user_ops":34934.2,"real_ops":12834.2,"user_usec":28.6,"real_usec":77.9,"est_time":5.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":2232,"user_time":15.12,"real_time":43.4,"user_ops":37790.5,"real_ops":13164.8,"user_usec":26.5,"real_usec":76.0,"est_time":4.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":551,"user_time":15.05,"real_time":40.68,"user_ops":37490.0,"real_ops":13871.0,"user_usec":26.7,"real_usec":72.1,"est_time":4.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":134,"user_time":14.8,"real_time":35.66,"user_ops":37085.4,"real_ops":15389.6,"user_usec":27.0,"real_usec":65.0,"est_time":4.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":72282,"user_time":15.73,"real_time":30.57,"user_ops":4595.2,"real_ops":2364.6,"user_usec":217.6,"real_usec":422.9,"est_time":3.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":38886,"user_time":14.58,"real_time":34.56,"user_ops":10668.3,"real_ops":4500.5,"user_usec":93.7,"real_usec":222.2,"est_time":4.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":16168,"user_time":14.9,"real_time":45.4,"user_ops":17361.6,"real_ops":5697.6,"user_usec":57.6,"real_usec":175.5,"est_time":5.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":4800,"user_time":15.17,"real_time":44.68,"user_ops":20250.5,"real_ops":6875.0,"user_usec":49.4,"real_usec":145.5,"est_time":5.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":1263,"user_time":15.1,"real_time":53.81,"user_ops":21412.5,"real_ops":6008.5,"user_usec":46.7,"real_usec":166.4,"est_time":4.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":320,"user_time":15.19,"real_time":43.42,"user_ops":21572.1,"real_ops":7546.7,"user_usec":46.4,"real_usec":132.5,"est_time":4.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":84164,"user_time":15.12,"real_time":27.32,"user_ops":5566.4,"real_ops":3080.2,"user_usec":179.6,"real_usec":324.7,"est_time":3.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":64673,"user_time":15.1,"real_time":28.16,"user_ops":17131.9,"real_ops":9185.9,"user_usec":58.4,"real_usec":108.9,"est_time":4.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":32336,"user_time":15.35,"real_time":29.13,"user_ops":33705.3,"real_ops":17763.1,"user_usec":29.7,"real_usec":56.3,"est_time":5.45,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":11294,"user_time":15.17,"real_time":31.65,"user_ops":47647.7,"real_ops":22837.0,"user_usec":21.0,"real_usec":43.8,"est_time":4.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":3147,"user_time":14.75,"real_time":29.81,"user_ops":54619.1,"real_ops":27028.8,"user_usec":18.3,"real_usec":37.0,"est_time":4.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":827,"user_time":15.33,"real_time":30.42,"user_ops":55241.2,"real_ops":27834.4,"user_usec":18.1,"real_usec":35.9,"est_time":4.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":196,"user_time":14.94,"real_time":29.02,"user_ops":53736.0,"real_ops":27661.1,"user_usec":18.6,"real_usec":36.2,"est_time":4.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":84164,"user_time":14.95,"real_time":27.6,"user_ops":5629.7,"real_ops":3049.6,"user_usec":177.6,"real_usec":327.9,"est_time":3.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":64673,"user_time":15.3,"real_time":28.69,"user_ops":16908.0,"real_ops":9017.1,"user_usec":59.1,"real_usec":110.9,"est_time":4.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":32336,"user_time":15.72,"real_time":30.21,"user_ops":32912.0,"real_ops":17125.0,"user_usec":30.4,"real_usec":58.4,"est_time":5.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":11294,"user_time":15.17,"real_time":30.02,"user_ops":47647.7,"real_ops":24080.2,"user_usec":21.0,"real_usec":41.5,"est_time":4.58,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":3254,"user_time":15.49,"real_time":29.44,"user_ops":53778.2,"real_ops":28293.4,"user_usec":18.6,"real_usec":35.3,"est_time":4.31,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":813,"user_time":15.07,"real_time":27.91,"user_ops":55243.0,"real_ops":29832.5,"user_usec":18.1,"real_usec":33.5,"est_time":4.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":193,"user_time":15.13,"real_time":27.15,"user_ops":52249.0,"real_ops":29118.1,"user_usec":19.1,"real_usec":34.3,"est_time":3.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":85333,"user_time":14.98,"real_time":25.84,"user_ops":5696.5,"real_ops":3301.8,"user_usec":175.5,"real_usec":302.9,"est_time":3.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":65361,"user_time":15.46,"real_time":28.98,"user_ops":16911.0,"real_ops":9022.3,"user_usec":59.1,"real_usec":110.8,"est_time":4.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":30117,"user_time":14.84,"real_time":28.25,"user_ops":32471.2,"real_ops":17055.0,"user_usec":30.8,"real_usec":58.6,"est_time":3.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":11130,"user_time":15.06,"real_time":29.42,"user_ops":47298.8,"real_ops":24211.8,"user_usec":21.1,"real_usec":41.3,"est_time":4.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":3147,"user_time":15.06,"real_time":28.65,"user_ops":53494.8,"real_ops":28119.8,"user_usec":18.7,"real_usec":35.6,"est_time":4.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":813,"user_time":14.81,"real_time":26.93,"user_ops":56212.8,"real_ops":30916.1,"user_usec":17.8,"real_usec":32.3,"est_time":4.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":203,"user_time":15.58,"real_time":27.67,"user_ops":53368.9,"real_ops":30044.9,"user_usec":18.7,"real_usec":33.3,"est_time":3.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":85333,"user_time":16.05,"real_time":28.58,"user_ops":5316.7,"real_ops":2985.9,"user_usec":188.1,"real_usec":334.9,"est_time":3.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":55854,"user_time":14.49,"real_time":27.22,"user_ops":15418.6,"real_ops":8207.2,"user_usec":64.9,"real_usec":121.8,"est_time":3.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":31670,"user_time":15.02,"real_time":28.69,"user_ops":33736.4,"real_ops":17660.0,"user_usec":29.6,"real_usec":56.6,"est_time":5.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":10816,"user_time":15.04,"real_time":30.86,"user_ops":46025.5,"real_ops":22434.5,"user_usec":21.7,"real_usec":44.6,"est_time":4.52,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":3000,"user_time":14.85,"real_time":28.23,"user_ops":51717.2,"real_ops":27206.0,"user_usec":19.3,"real_usec":36.8,"est_time":4.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":774,"user_time":14.6,"real_time":27.34,"user_ops":54286.0,"real_ops":28992.9,"user_usec":18.4,"real_usec":34.5,"est_time":3.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":190,"user_time":14.79,"real_time":26.02,"user_ops":52619.3,"real_ops":29912.1,"user_usec":19.0,"real_usec":33.4,"est_time":3.66,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":74024,"user_time":13.56,"real_time":24.21,"user_ops":5459.0,"real_ops":3057.3,"user_usec":183.2,"real_usec":327.1,"est_time":3.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":52067,"user_time":13.77,"real_time":26.21,"user_ops":15124.8,"real_ops":7945.4,"user_usec":66.1,"real_usec":125.9,"est_time":3.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":27927,"user_time":14.92,"real_time":29.32,"user_ops":29948.5,"real_ops":15239.0,"user_usec":33.4,"real_usec":65.6,"est_time":3.52,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":9721,"user_time":14.8,"real_time":33.27,"user_ops":42036.8,"real_ops":18701.5,"user_usec":23.8,"real_usec":53.5,"est_time":4.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":2782,"user_time":15.13,"real_time":33.94,"user_ops":47071.5,"real_ops":20985.5,"user_usec":21.2,"real_usec":47.7,"est_time":4.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":695,"user_time":15.2,"real_time":33.23,"user_ops":46821.1,"real_ops":21415.1,"user_usec":21.4,"real_usec":46.7,"est_time":4.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":164,"user_time":14.51,"real_time":29.63,"user_ops":46295.2,"real_ops":22667.8,"user_usec":21.6,"real_usec":44.1,"est_time":4.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":80842,"user_time":15.62,"real_time":28.64,"user_ops":5175.5,"real_ops":2822.7,"user_usec":193.2,"real_usec":354.3,"est_time":3.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"user_time":15.39,"real_time":29.84,"user_ops":14007.5,"real_ops":7225.3,"user_usec":71.4,"real_usec":138.4,"est_time":3.18,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":23999,"user_time":15.16,"real_time":33.39,"user_ops":25328.8,"real_ops":11499.8,"user_usec":39.5,"real_usec":87.0,"est_time":3.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":7680,"user_time":15.08,"real_time":35.92,"user_ops":32594.2,"real_ops":13684.7,"user_usec":30.7,"real_usec":73.1,"est_time":5.36,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":2064,"user_time":15.14,"real_time":37.38,"user_ops":34899.9,"real_ops":14134.6,"user_usec":28.7,"real_usec":70.7,"est_time":5.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":521,"user_time":15.02,"real_time":37.91,"user_ops":35519.6,"real_ops":14071.3,"user_usec":28.2,"real_usec":71.1,"est_time":5.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":126,"user_time":16.02,"real_time":36.76,"user_ops":32215.7,"real_ops":14040.0,"user_usec":31.0,"real_usec":71.2,"est_time":4.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":69033,"user_time":14.99,"real_time":28.59,"user_ops":4605.3,"real_ops":2414.8,"user_usec":217.1,"real_usec":414.1,"est_time":3.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":39384,"user_time":15.62,"real_time":31.26,"user_ops":10085.5,"real_ops":5039.7,"user_usec":99.2,"real_usec":198.4,"est_time":3.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":14490,"user_time":15.33,"real_time":38.84,"user_ops":15123.3,"real_ops":5968.9,"user_usec":66.1,"real_usec":167.5,"est_time":3.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":4173,"user_time":15.06,"real_time":38.99,"user_ops":17733.9,"real_ops":6849.9,"user_usec":56.4,"real_usec":146.0,"est_time":5.02,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":1090,"user_time":14.96,"real_time":37.07,"user_ops":18652.4,"real_ops":7526.6,"user_usec":53.6,"real_usec":132.9,"est_time":5.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":272,"user_time":14.98,"real_time":33.42,"user_ops":18593.3,"real_ops":8334.2,"user_usec":53.8,"real_usec":120.0,"est_time":5.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":75851,"user_time":13.42,"real_time":23.03,"user_ops":5652.1,"real_ops":3292.9,"user_usec":176.9,"real_usec":303.7,"est_time":3.66,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":63340,"user_time":15.81,"real_time":29.2,"user_ops":16025.3,"real_ops":8676.0,"user_usec":62.4,"real_usec":115.3,"est_time":5.18,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":31346,"user_time":15.88,"real_time":30.72,"user_ops":31582.9,"real_ops":16328.6,"user_usec":31.7,"real_usec":61.2,"est_time":5.54,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":10816,"user_time":15.1,"real_time":30.55,"user_ops":45842.6,"real_ops":22658.3,"user_usec":21.8,"real_usec":44.1,"est_time":4.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":3096,"user_time":15.4,"real_time":30.6,"user_ops":51466.0,"real_ops":25898.1,"user_usec":19.4,"real_usec":38.6,"est_time":4.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":786,"user_time":15.0,"real_time":28.92,"user_ops":53657.6,"real_ops":27829.4,"user_usec":18.6,"real_usec":35.9,"est_time":4.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":190,"user_time":14.93,"real_time":27.5,"user_ops":52125.9,"real_ops":28301.3,"user_usec":19.2,"real_usec":35.3,"est_time":4.46,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":83027,"user_time":16.24,"real_time":29.42,"user_ops":5112.5,"real_ops":2822.3,"user_usec":195.6,"real_usec":354.3,"est_time":3.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":53894,"user_time":14.61,"real_time":27.49,"user_ops":14755.4,"real_ops":7841.6,"user_usec":67.8,"real_usec":127.5,"est_time":3.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":30117,"user_time":14.95,"real_time":26.69,"user_ops":32232.2,"real_ops":18057.6,"user_usec":31.0,"real_usec":55.4,"est_time":3.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":10240,"user_time":15.1,"real_time":32.11,"user_ops":43401.3,"real_ops":20409.2,"user_usec":23.0,"real_usec":49.0,"est_time":5.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2865,"user_time":15.06,"real_time":30.38,"user_ops":48701.2,"real_ops":24138.7,"user_usec":20.5,"real_usec":41.4,"est_time":4.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":738,"user_time":15.2,"real_time":30.13,"user_ops":49717.9,"real_ops":25084.7,"user_usec":20.1,"real_usec":39.9,"est_time":4.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":144,"user_time":12.51,"real_time":22.59,"user_ops":47148.2,"real_ops":26113.5,"user_usec":21.2,"real_usec":38.3,"est_time":4.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":72282,"user_time":13.72,"real_time":23.94,"user_ops":5268.4,"real_ops":3019.4,"user_usec":189.8,"real_usec":331.2,"est_time":3.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":59076,"user_time":16.45,"real_time":29.61,"user_ops":14365.0,"real_ops":7979.7,"user_usec":69.6,"real_usec":125.3,"est_time":3.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":26033,"user_time":14.68,"real_time":28.58,"user_ops":28373.8,"real_ops":14575.6,"user_usec":35.2,"real_usec":68.6,"est_time":3.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":8930,"user_time":15.11,"real_time":28.63,"user_ops":37824.0,"real_ops":19960.3,"user_usec":26.4,"real_usec":50.1,"est_time":5.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2430,"user_time":15.05,"real_time":29.07,"user_ops":41334.2,"real_ops":21398.6,"user_usec":24.2,"real_usec":46.7,"est_time":4.56,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":615,"user_time":14.85,"real_time":27.93,"user_ops":42408.1,"real_ops":22546.7,"user_usec":23.6,"real_usec":44.4,"est_time":4.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":150,"user_time":15.41,"real_time":27.31,"user_ops":39870.2,"real_ops":22496.1,"user_usec":25.1,"real_usec":44.5,"est_time":4.29,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":74926,"user_time":15.51,"real_time":26.45,"user_ops":4830.8,"real_ops":2833.2,"user_usec":207.0,"real_usec":353.0,"est_time":3.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":45850,"user_time":15.84,"real_time":28.66,"user_ops":11578.3,"real_ops":6398.6,"user_usec":86.4,"real_usec":156.3,"est_time":3.24,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":18506,"user_time":15.06,"real_time":27.35,"user_ops":19661.1,"real_ops":10826.7,"user_usec":50.9,"real_usec":92.4,"est_time":4.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":5731,"user_time":15.07,"real_time":28.06,"user_ops":24338.7,"real_ops":13069.5,"user_usec":41.1,"real_usec":76.5,"est_time":3.57,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1499,"user_time":14.59,"real_time":24.75,"user_ops":26301.9,"real_ops":15505.3,"user_usec":38.0,"real_usec":64.5,"est_time":3.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":380,"user_time":14.94,"real_time":25.23,"user_ops":26045.5,"real_ops":15420.1,"user_usec":38.4,"real_usec":64.9,"est_time":3.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":88,"user_time":15.01,"real_time":25.66,"user_ops":24013.9,"real_ops":14047.6,"user_usec":41.6,"real_usec":71.2,"est_time":2.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":51200,"user_time":13.71,"real_time":22.13,"user_ops":3734.5,"real_ops":2314.0,"user_usec":267.8,"real_usec":432.1,"est_time":2.59,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":26033,"user_time":15.14,"real_time":26.37,"user_ops":6877.9,"real_ops":3949.3,"user_usec":145.4,"real_usec":253.2,"est_time":2.53,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":8827,"user_time":15.34,"real_time":23.7,"user_ops":9206.8,"real_ops":5958.9,"user_usec":108.6,"real_usec":167.8,"est_time":3.4,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2370,"user_time":15.05,"real_time":21.68,"user_ops":10078.4,"real_ops":6995.3,"user_usec":99.2,"real_usec":143.0,"est_time":3.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":592,"user_time":15.02,"real_time":20.71,"user_ops":10090.0,"real_ops":7316.4,"user_usec":99.1,"real_usec":136.7,"est_time":3.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":148,"user_time":15.07,"real_time":20.26,"user_ops":10056.5,"real_ops":7481.4,"user_usec":99.4,"real_usec":133.7,"est_time":2.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":33,"user_time":14.97,"real_time":21.21,"user_ops":9029.3,"real_ops":6374.0,"user_usec":110.8,"real_usec":156.9,"est_time":2.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":28444,"user_time":15.33,"real_time":24.2,"user_ops":1855.4,"real_ops":1175.3,"user_usec":539.0,"real_usec":850.9,"est_time":2.42,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":9600,"user_time":14.76,"real_time":21.78,"user_ops":2601.6,"real_ops":1763.5,"user_usec":384.4,"real_usec":567.1,"est_time":2.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2704,"user_time":14.81,"real_time":19.7,"user_ops":2921.3,"real_ops":2196.2,"user_usec":342.3,"real_usec":455.3,"est_time":2.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":685,"user_time":15.23,"real_time":19.69,"user_ops":2878.5,"real_ops":2227.0,"user_usec":347.4,"real_usec":449.0,"est_time":2.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":176,"user_time":15.16,"real_time":19.36,"user_ops":2972.0,"real_ops":2327.4,"user_usec":336.5,"real_usec":429.7,"est_time":2.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":43,"user_time":14.84,"real_time":18.0,"user_ops":2967.1,"real_ops":2446.5,"user_usec":337.0,"real_usec":408.7,"est_time":1.76,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":9481,"user_time":14.87,"real_time":21.07,"user_ops":637.6,"real_ops":450.0,"user_usec":1568.4,"real_usec":2222.0,"est_time":2.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2594,"user_time":14.83,"real_time":19.9,"user_ops":699.7,"real_ops":521.3,"user_usec":1429.3,"real_usec":1918.2,"est_time":2.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":685,"user_time":14.63,"real_time":18.27,"user_ops":749.1,"real_ops":599.8,"user_usec":1334.9,"real_usec":1667.2,"est_time":2.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":179,"user_time":15.54,"real_time":21.93,"user_ops":737.2,"real_ops":522.5,"user_usec":1356.5,"real_usec":1914.0,"est_time":2.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":44,"user_time":15.17,"real_time":17.6,"user_ops":742.5,"real_ops":640.0,"user_usec":1346.8,"real_usec":1562.4,"est_time":1.29,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":80842,"user_time":16.45,"real_time":29.49,"user_ops":4914.4,"real_ops":2741.1,"user_usec":203.5,"real_usec":364.8,"est_time":3.42,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":52965,"user_time":13.46,"real_time":25.03,"user_ops":15740.0,"real_ops":8464.4,"user_usec":63.5,"real_usec":118.1,"est_time":3.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":27428,"user_time":14.91,"real_time":27.22,"user_ops":29433.1,"real_ops":16122.6,"user_usec":34.0,"real_usec":62.0,"est_time":3.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":9481,"user_time":15.19,"real_time":27.57,"user_ops":39946.3,"real_ops":22007.3,"user_usec":25.0,"real_usec":45.4,"est_time":4.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":2560,"user_time":15.04,"real_time":26.52,"user_ops":43574.5,"real_ops":24708.0,"user_usec":22.9,"real_usec":40.5,"est_time":4.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":666,"user_time":15.16,"real_time":26.05,"user_ops":44985.8,"real_ops":26184.1,"user_usec":22.2,"real_usec":38.2,"est_time":4.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":153,"user_time":14.58,"real_time":24.78,"user_ops":42982.7,"real_ops":25288.3,"user_usec":23.3,"real_usec":39.5,"est_time":4.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":76800,"user_time":15.3,"real_time":26.8,"user_ops":5019.6,"real_ops":2866.0,"user_usec":199.2,"real_usec":348.9,"est_time":3.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":51200,"user_time":16.34,"real_time":28.64,"user_ops":12533.7,"real_ops":7151.1,"user_usec":79.8,"real_usec":139.8,"est_time":2.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":21041,"user_time":15.27,"real_time":26.35,"user_ops":22046.9,"real_ops":12778.0,"user_usec":45.4,"real_usec":78.3,"est_time":3.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":6620,"user_time":15.06,"real_time":22.86,"user_ops":28132.8,"real_ops":18534.8,"user_usec":35.5,"real_usec":54.0,"est_time":3.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1811,"user_time":15.3,"real_time":22.45,"user_ops":30301.7,"real_ops":20653.2,"user_usec":33.0,"real_usec":48.4,"est_time":3.29,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":452,"user_time":15.01,"real_time":22.37,"user_ops":30836.0,"real_ops":20686.4,"user_usec":32.4,"real_usec":48.3,"est_time":2.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":109,"user_time":15.7,"real_time":23.32,"user_ops":28437.2,"real_ops":19143.2,"user_usec":35.2,"real_usec":52.2,"est_time":2.56,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":57962,"user_time":14.77,"real_time":24.68,"user_ops":3924.3,"real_ops":2348.9,"user_usec":254.8,"real_usec":425.7,"est_time":2.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":29538,"user_time":14.63,"real_time":23.01,"user_ops":8076.0,"real_ops":5134.6,"user_usec":123.8,"real_usec":194.8,"est_time":2.46,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":10971,"user_time":15.1,"real_time":21.74,"user_ops":11624.9,"real_ops":8074.9,"user_usec":86.0,"real_usec":123.8,"est_time":3.64,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3096,"user_time":15.02,"real_time":19.03,"user_ops":13192.0,"real_ops":10410.7,"user_usec":75.8,"real_usec":96.1,"est_time":2.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":800,"user_time":14.97,"real_time":18.16,"user_ops":13680.7,"real_ops":11280.5,"user_usec":73.1,"real_usec":88.6,"est_time":2.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":203,"user_time":14.98,"real_time":18.0,"user_ops":13876.6,"real_ops":11549.1,"user_usec":72.1,"real_usec":86.6,"est_time":2.54,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":50,"user_time":15.07,"real_time":18.82,"user_ops":13589.9,"real_ops":10882.0,"user_usec":73.6,"real_usec":91.9,"est_time":2.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":34909,"user_time":14.64,"real_time":21.6,"user_ops":2384.5,"real_ops":1616.1,"user_usec":419.4,"real_usec":618.8,"est_time":3.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":13016,"user_time":15.16,"real_time":21.17,"user_ops":3434.3,"real_ops":2459.7,"user_usec":291.2,"real_usec":406.6,"est_time":2.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3692,"user_time":14.65,"real_time":17.58,"user_ops":4032.2,"real_ops":3360.3,"user_usec":248.0,"real_usec":297.6,"est_time":1.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":999,"user_time":15.01,"real_time":16.92,"user_ops":4259.6,"real_ops":3778.2,"user_usec":234.8,"real_usec":264.7,"est_time":2.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":255,"user_time":15.2,"real_time":16.64,"user_ops":4294.7,"real_ops":3922.7,"user_usec":232.8,"real_usec":254.9,"est_time":2.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":62,"user_time":14.81,"real_time":16.07,"user_ops":4286.8,"real_ops":3951.5,"user_usec":233.3,"real_usec":253.1,"est_time":2.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":15,"user_time":14.51,"real_time":16.05,"user_ops":4234.3,"real_ops":3827.6,"user_usec":236.2,"real_usec":261.3,"est_time":2.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":13473,"user_time":15.04,"real_time":21.11,"user_ops":895.8,"real_ops":638.3,"user_usec":1116.3,"real_usec":1566.7,"est_time":2.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3999,"user_time":15.15,"real_time":17.98,"user_ops":1055.8,"real_ops":889.7,"user_usec":947.1,"real_usec":1124.0,"est_time":2.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1054,"user_time":15.1,"real_time":16.43,"user_ops":1116.8,"real_ops":1026.4,"user_usec":895.4,"real_usec":974.3,"est_time":2.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":266,"user_time":14.9,"real_time":16.01,"user_ops":1142.6,"real_ops":1063.3,"user_usec":875.2,"real_usec":940.5,"est_time":2.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":68,"user_time":15.16,"real_time":16.05,"user_ops":1148.3,"real_ops":1084.9,"user_usec":870.9,"real_usec":921.7,"est_time":1.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":16,"user_time":14.36,"real_time":15.2,"user_ops":1140.9,"real_ops":1077.7,"user_usec":876.5,"real_usec":927.9,"est_time":2.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":4,"user_time":14.3,"real_time":15.28,"user_ops":1145.7,"real_ops":1072.3,"user_usec":872.8,"real_usec":932.6,"est_time":8.25,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":4085,"user_time":15.2,"real_time":17.81,"user_ops":268.8,"real_ops":229.4,"user_usec":3720.9,"real_usec":4358.8,"est_time":2.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1066,"user_time":15.07,"real_time":16.32,"user_ops":282.9,"real_ops":261.2,"user_usec":3534.2,"real_usec":3828.5,"est_time":2.56,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":266,"user_time":14.23,"real_time":15.2,"user_ops":299.1,"real_ops":280.0,"user_usec":3343.5,"real_usec":3571.2,"est_time":2.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":71,"user_time":15.18,"real_time":15.98,"user_ops":299.3,"real_ops":284.3,"user_usec":3340.7,"real_usec":3517.3,"est_time":1.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":17,"user_time":14.35,"real_time":15.09,"user_ops":303.3,"real_ops":288.3,"user_usec":3297.3,"real_usec":3468.0,"est_time":2.31,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":4,"user_time":13.9,"real_time":14.73,"user_ops":294.7,"real_ops":278.0,"user_usec":3393.6,"real_usec":3597.0,"est_time":7.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1066,"user_time":15.03,"real_time":16.26,"user_ops":70.9,"real_ops":65.6,"user_usec":14099.4,"real_usec":15254.9,"est_time":2.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":272,"user_time":14.75,"real_time":15.91,"user_ops":73.8,"real_ops":68.4,"user_usec":13557.0,"real_usec":14627.5,"est_time":2.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":71,"user_time":14.93,"real_time":15.83,"user_ops":76.1,"real_ops":71.8,"user_usec":13142.6,"real_usec":13933.9,"est_time":1.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":18,"user_time":14.83,"real_time":15.62,"user_ops":77.7,"real_ops":73.7,"user_usec":12873.3,"real_usec":13560.4,"est_time":2.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":4,"user_time":13.84,"real_time":14.56,"user_ops":74.0,"real_ops":70.3,"user_usec":13515.6,"real_usec":14216.2,"est_time":7.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":84164,"user_time":16.27,"real_time":29.17,"user_ops":5173.0,"real_ops":2885.7,"user_usec":193.3,"real_usec":346.5,"est_time":3.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":63340,"user_time":14.94,"real_time":28.18,"user_ops":16958.5,"real_ops":8990.5,"user_usec":59.0,"real_usec":111.2,"est_time":4.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":30117,"user_time":14.85,"real_time":28.74,"user_ops":32449.3,"real_ops":16768.5,"user_usec":30.8,"real_usec":59.6,"est_time":3.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":11130,"user_time":15.05,"real_time":31.53,"user_ops":47330.2,"real_ops":22593.4,"user_usec":21.1,"real_usec":44.3,"est_time":4.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":3147,"user_time":15.11,"real_time":31.42,"user_ops":53317.8,"real_ops":25644.7,"user_usec":18.8,"real_usec":39.0,"est_time":4.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":813,"user_time":15.14,"real_time":29.42,"user_ops":54987.6,"real_ops":28298.5,"user_usec":18.2,"real_usec":35.3,"est_time":4.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":199,"user_time":15.31,"real_time":28.76,"user_ops":53240.0,"real_ops":28339.0,"user_usec":18.8,"real_usec":35.3,"est_time":3.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":73142,"user_time":15.67,"real_time":26.9,"user_ops":4667.6,"real_ops":2719.5,"user_usec":214.2,"real_usec":367.7,"est_time":3.6,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":41513,"user_time":14.63,"real_time":24.76,"user_ops":11350.1,"real_ops":6707.2,"user_usec":88.1,"real_usec":149.1,"est_time":3.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":18070,"user_time":15.13,"real_time":24.59,"user_ops":19109.1,"real_ops":11755.4,"user_usec":52.3,"real_usec":85.1,"est_time":4.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":5408,"user_time":14.92,"real_time":21.63,"user_ops":23197.9,"real_ops":16004.4,"user_usec":43.1,"real_usec":62.5,"est_time":3.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1454,"user_time":14.93,"real_time":20.07,"user_ops":24931.3,"real_ops":18546.6,"user_usec":40.1,"real_usec":53.9,"est_time":3.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":369,"user_time":14.85,"real_time":19.85,"user_ops":25444.8,"real_ops":19034.3,"user_usec":39.3,"real_usec":52.5,"est_time":3.08,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":89,"user_time":15.25,"real_time":21.51,"user_ops":23904.5,"real_ops":16948.0,"user_usec":41.8,"real_usec":59.0,"est_time":2.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":51200,"user_time":15.21,"real_time":23.84,"user_ops":3366.2,"real_ops":2147.3,"user_usec":297.1,"real_usec":465.7,"est_time":2.53,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":21942,"user_time":15.12,"real_time":22.38,"user_ops":5804.8,"real_ops":3922.4,"user_usec":172.3,"real_usec":254.9,"est_time":2.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":6857,"user_time":15.0,"real_time":19.69,"user_ops":7314.1,"real_ops":5572.3,"user_usec":136.7,"real_usec":179.5,"est_time":2.36,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1882,"user_time":14.96,"real_time":17.63,"user_ops":8051.3,"real_ops":6833.2,"user_usec":124.2,"real_usec":146.3,"est_time":2.2,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":484,"user_time":15.03,"real_time":17.09,"user_ops":8243.8,"real_ops":7251.4,"user_usec":121.3,"real_usec":137.9,"est_time":3.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":120,"user_time":15.0,"real_time":16.9,"user_ops":8192.0,"real_ops":7273.0,"user_usec":122.1,"real_usec":137.5,"est_time":2.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":28,"user_time":14.15,"real_time":16.39,"user_ops":8105.2,"real_ops":6997.0,"user_usec":123.4,"real_usec":142.9,"est_time":1.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":22588,"user_time":14.97,"real_time":22.01,"user_ops":1508.9,"real_ops":1026.4,"user_usec":662.7,"real_usec":974.3,"est_time":2.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":7384,"user_time":14.83,"real_time":18.77,"user_ops":1991.6,"real_ops":1573.7,"user_usec":502.1,"real_usec":635.5,"est_time":1.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1999,"user_time":14.69,"real_time":16.72,"user_ops":2177.3,"real_ops":1913.1,"user_usec":459.3,"real_usec":522.7,"est_time":2.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":521,"user_time":14.69,"real_time":15.99,"user_ops":2269.8,"real_ops":2085.0,"user_usec":440.6,"real_usec":479.6,"est_time":2.6,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":133,"user_time":15.48,"real_time":16.57,"user_ops":2199.5,"real_ops":2055.0,"user_usec":454.7,"real_usec":486.6,"est_time":2.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":32,"user_time":14.13,"real_time":15.16,"user_ops":2319.0,"real_ops":2161.7,"user_usec":431.2,"real_usec":462.6,"est_time":1.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":7,"user_time":13.13,"real_time":14.24,"user_ops":2183.7,"real_ops":2013.6,"user_usec":457.9,"real_usec":496.6,"est_time":4.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":7680,"user_time":15.03,"real_time":18.57,"user_ops":511.0,"real_ops":413.5,"user_usec":1957.0,"real_usec":2418.2,"est_time":3.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":2064,"user_time":14.81,"real_time":16.47,"user_ops":557.5,"real_ops":501.2,"user_usec":1793.8,"real_usec":1995.2,"est_time":2.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":539,"user_time":15.03,"real_time":16.15,"user_ops":573.8,"real_ops":534.0,"user_usec":1742.8,"real_usec":1872.7,"est_time":2.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":133,"user_time":14.95,"real_time":15.84,"user_ops":569.4,"real_ops":537.5,"user_usec":1756.3,"real_usec":1860.4,"est_time":2.2,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":34,"user_time":14.72,"real_time":15.51,"user_ops":591.3,"real_ops":561.2,"user_usec":1691.2,"real_usec":1781.8,"est_time":1.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":8,"user_time":13.42,"real_time":14.17,"user_ops":610.4,"real_ops":577.9,"user_usec":1638.2,"real_usec":1730.3,"est_time":4.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":2,"user_time":13.78,"real_time":14.65,"user_ops":594.5,"real_ops":559.1,"user_usec":1682.1,"real_usec":1788.5,"est_time":15.45,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":2157,"user_time":15.44,"real_time":17.14,"user_ops":139.7,"real_ops":125.9,"user_usec":7158.1,"real_usec":7945.8,"est_time":2.52,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":551,"user_time":14.98,"real_time":15.88,"user_ops":147.1,"real_ops":138.8,"user_usec":6796.7,"real_usec":7204.8,"est_time":2.24,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":136,"user_time":14.56,"real_time":15.46,"user_ops":149.5,"real_ops":140.7,"user_usec":6691.2,"real_usec":7105.6,"est_time":2.18,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":33,"user_time":14.62,"real_time":15.33,"user_ops":144.5,"real_ops":137.8,"user_usec":6922.3,"real_usec":7259.3,"est_time":1.45,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":8,"user_time":14.08,"real_time":14.96,"user_ops":145.5,"real_ops":136.9,"user_usec":6875.0,"real_usec":7303.7,"est_time":4.2,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":2,"user_time":13.79,"real_time":14.44,"user_ops":148.5,"real_ops":141.8,"user_usec":6733.4,"real_usec":7049.8,"est_time":14.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":551,"user_time":15.24,"real_time":16.19,"user_ops":36.2,"real_ops":34.0,"user_usec":27658.8,"real_usec":29382.8,"est_time":2.32,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":136,"user_time":14.28,"real_time":15.05,"user_ops":38.1,"real_ops":36.1,"user_usec":26250.0,"real_usec":27664.4,"est_time":2.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":35,"user_time":15.01,"real_time":15.67,"user_ops":37.3,"real_ops":35.7,"user_usec":26803.6,"real_usec":27985.4,"est_time":1.4,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":9,"user_time":14.84,"real_time":15.48,"user_ops":38.8,"real_ops":37.2,"user_usec":25763.9,"real_usec":26875.1,"est_time":3.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":2,"user_time":12.94,"real_time":13.64,"user_ops":39.6,"real_ops":37.5,"user_usec":25273.4,"real_usec":26632.4,"est_time":13.74,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":84164,"user_time":16.59,"real_time":29.93,"user_ops":5073.2,"real_ops":2812.4,"user_usec":197.1,"real_usec":355.6,"est_time":3.42,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":60235,"user_time":14.75,"real_time":28.22,"user_ops":16334.9,"real_ops":8537.1,"user_usec":61.2,"real_usec":117.1,"est_time":3.24,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":30117,"user_time":14.87,"real_time":28.88,"user_ops":32405.6,"real_ops":16682.5,"user_usec":30.9,"real_usec":59.9,"est_time":5.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":11130,"user_time":15.2,"real_time":31.42,"user_ops":46863.2,"real_ops":22669.1,"user_usec":21.3,"real_usec":44.1,"est_time":4.64,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":3147,"user_time":15.29,"real_time":30.91,"user_ops":52690.1,"real_ops":26062.5,"user_usec":19.0,"real_usec":38.4,"est_time":4.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":799,"user_time":15.13,"real_time":29.27,"user_ops":54076.4,"real_ops":27955.0,"user_usec":18.5,"real_usec":35.8,"est_time":4.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":193,"user_time":15.24,"real_time":28.63,"user_ops":51871.9,"real_ops":27613.2,"user_usec":19.3,"real_usec":36.2,"est_time":3.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":73142,"user_time":13.85,"real_time":24.11,"user_ops":5281.0,"real_ops":3033.5,"user_usec":189.4,"real_usec":329.7,"est_time":3.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":59076,"user_time":15.99,"real_time":29.25,"user_ops":14778.2,"real_ops":8079.8,"user_usec":67.7,"real_usec":123.8,"est_time":3.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":27927,"user_time":15.21,"real_time":29.19,"user_ops":29377.5,"real_ops":15305.8,"user_usec":34.0,"real_usec":65.3,"est_time":3.6,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":9481,"user_time":15.12,"real_time":31.08,"user_ops":40131.2,"real_ops":19523.0,"user_usec":24.9,"real_usec":51.2,"est_time":4.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":2594,"user_time":14.89,"real_time":28.67,"user_ops":44598.0,"real_ops":23162.8,"user_usec":22.4,"real_usec":43.2,"est_time":4.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":666,"user_time":15.09,"real_time":28.43,"user_ops":45194.4,"real_ops":23986.1,"user_usec":22.1,"real_usec":41.7,"est_time":4.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":113,"user_time":11.54,"real_time":20.71,"user_ops":40108.1,"real_ops":22344.0,"user_usec":24.9,"real_usec":44.8,"est_time":2.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":75851,"user_time":15.3,"real_time":26.66,"user_ops":4957.6,"real_ops":2845.0,"user_usec":201.7,"real_usec":351.5,"est_time":3.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":49548,"user_time":16.36,"real_time":28.87,"user_ops":12114.4,"real_ops":6864.8,"user_usec":82.5,"real_usec":145.7,"est_time":3.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":19948,"user_time":15.03,"real_time":26.2,"user_ops":21235.4,"real_ops":12180.1,"user_usec":47.1,"real_usec":82.1,"est_time":3.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":6193,"user_time":14.99,"real_time":24.47,"user_ops":26441.1,"real_ops":16195.6,"user_usec":37.8,"real_usec":61.7,"est_time":3.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1655,"user_time":15.01,"real_time":23.55,"user_ops":28226.5,"real_ops":17989.4,"user_usec":35.4,"real_usec":55.6,"est_time":3.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":406,"user_time":14.89,"real_time":22.97,"user_ops":27921.0,"real_ops":18103.3,"user_usec":35.8,"real_usec":55.2,"est_time":3.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":96,"user_time":14.92,"real_time":23.09,"user_ops":26355.0,"real_ops":17030.7,"user_usec":37.9,"real_usec":58.7,"est_time":2.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":57962,"user_time":15.32,"real_time":25.93,"user_ops":3783.4,"real_ops":2235.3,"user_usec":264.3,"real_usec":447.4,"est_time":2.31,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":27428,"user_time":14.82,"real_time":23.32,"user_ops":7403.0,"real_ops":4703.6,"user_usec":135.1,"real_usec":212.6,"est_time":2.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":9253,"user_time":14.79,"real_time":21.9,"user_ops":10010.0,"real_ops":6760.2,"user_usec":99.9,"real_usec":147.9,"est_time":3.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":2560,"user_time":14.99,"real_time":20.52,"user_ops":10930.0,"real_ops":7982.6,"user_usec":91.5,"real_usec":125.3,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":648,"user_time":15.13,"real_time":19.32,"user_ops":10964.2,"real_ops":8588.1,"user_usec":91.2,"real_usec":116.4,"est_time":2.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":160,"user_time":15.07,"real_time":19.3,"user_ops":10871.9,"real_ops":8488.6,"user_usec":92.0,"real_usec":117.8,"est_time":2.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":36,"user_time":14.78,"real_time":19.28,"user_ops":9976.7,"real_ops":7647.2,"user_usec":100.2,"real_usec":130.8,"est_time":2.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":31346,"user_time":15.09,"real_time":22.95,"user_ops":2077.3,"real_ops":1365.7,"user_usec":481.4,"real_usec":732.2,"est_time":3.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":10971,"user_time":15.14,"real_time":21.4,"user_ops":2898.5,"real_ops":2051.0,"user_usec":345.0,"real_usec":487.6,"est_time":2.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":3047,"user_time":14.85,"real_time":18.71,"user_ops":3283.0,"real_ops":2605.4,"user_usec":304.6,"real_usec":383.8,"est_time":2.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":761,"user_time":14.57,"real_time":18.11,"user_ops":3342.8,"real_ops":2689.1,"user_usec":299.2,"real_usec":371.9,"est_time":2.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":193,"user_time":14.9,"real_time":17.33,"user_ops":3316.0,"real_ops":2850.8,"user_usec":301.6,"real_usec":350.8,"est_time":1.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":48,"user_time":14.79,"real_time":16.73,"user_ops":3323.3,"real_ops":2937.7,"user_usec":300.9,"real_usec":340.4,"est_time":1.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":10,"user_time":14.04,"real_time":16.44,"user_ops":2917.4,"real_ops":2492.1,"user_usec":342.8,"real_usec":401.3,"est_time":3.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":11462,"user_time":15.37,"real_time":21.26,"user_ops":745.7,"real_ops":539.2,"user_usec":1341.0,"real_usec":1854.6,"est_time":2.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":3199,"user_time":15.17,"real_time":18.42,"user_ops":843.5,"real_ops":694.7,"user_usec":1185.5,"real_usec":1439.4,"est_time":2.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":827,"user_time":14.97,"real_time":17.13,"user_ops":883.9,"real_ops":772.6,"user_usec":1131.3,"real_usec":1294.4,"est_time":1.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":206,"user_time":14.82,"real_time":16.72,"user_ops":889.6,"real_ops":788.4,"user_usec":1124.1,"real_usec":1268.5,"est_time":1.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":52,"user_time":14.75,"real_time":16.28,"user_ops":902.5,"real_ops":817.5,"user_usec":1108.0,"real_usec":1223.2,"est_time":1.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":12,"user_time":13.9,"real_time":15.31,"user_ops":884.0,"real_ops":802.8,"user_usec":1131.2,"real_usec":1245.6,"est_time":3.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":2909,"user_time":14.9,"real_time":18.04,"user_ops":195.2,"real_ops":161.2,"user_usec":5122.0,"real_usec":6201.6,"est_time":2.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":761,"user_time":15.17,"real_time":17.21,"user_ops":200.7,"real_ops":176.9,"user_usec":4983.6,"real_usec":5654.0,"est_time":1.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":187,"user_time":14.46,"real_time":16.11,"user_ops":206.9,"real_ops":185.7,"user_usec":4832.9,"real_usec":5384.3,"est_time":1.76,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":49,"user_time":14.87,"real_time":16.14,"user_ops":210.9,"real_ops":194.3,"user_usec":4741.7,"real_usec":5145.8,"est_time":1.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":12,"user_time":14.66,"real_time":15.99,"user_ops":209.5,"real_ops":192.1,"user_usec":4772.1,"real_usec":5204.8,"est_time":3.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1955","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
]; // 395 minutes

View File

@ -1,590 +0,0 @@
exp_series_suite_insert_many_ruby = [
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":126680,"user_time":15.19,"real_time":16.59,"user_ops":8339.7,"real_ops":7634.6,"user_usec":119.9,"real_usec":131.0,"est_time":3.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":48761,"user_time":14.81,"real_time":15.34,"user_ops":13169.8,"real_ops":12717.0,"user_usec":75.9,"real_usec":78.6,"est_time":2.49,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":14769,"user_time":14.62,"real_time":14.79,"user_ops":16163.1,"real_ops":15972.8,"user_usec":61.9,"real_usec":62.6,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":3958,"user_time":14.78,"real_time":14.84,"user_ops":17138.8,"real_ops":17074.3,"user_usec":58.3,"real_usec":58.6,"est_time":3.43,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":1000,"user_time":14.8,"real_time":14.82,"user_ops":17297.3,"real_ops":17278.3,"user_usec":57.8,"real_usec":57.9,"est_time":3.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":242,"user_time":14.89,"real_time":14.9,"user_ops":16642.6,"real_ops":16627.6,"user_usec":60.1,"real_usec":60.1,"est_time":3.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":66,"user_time":14.76,"real_time":14.78,"user_ops":18315.4,"real_ops":18286.9,"user_usec":54.6,"real_usec":54.7,"est_time":2.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":135032,"user_time":15.02,"real_time":16.55,"user_ops":8990.1,"real_ops":8159.5,"user_usec":111.2,"real_usec":122.6,"est_time":2.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":53894,"user_time":15.0,"real_time":15.59,"user_ops":14371.7,"real_ops":13826.0,"user_usec":69.6,"real_usec":72.3,"est_time":2.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":16000,"user_time":14.69,"real_time":14.89,"user_ops":17426.8,"real_ops":17189.5,"user_usec":57.4,"real_usec":58.2,"est_time":3.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":4363,"user_time":15.06,"real_time":15.14,"user_ops":18541.3,"real_ops":18438.2,"user_usec":53.9,"real_usec":54.2,"est_time":3.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":1103,"user_time":15.03,"real_time":15.07,"user_ops":18787.0,"real_ops":18741.5,"user_usec":53.2,"real_usec":53.4,"est_time":3.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":275,"user_time":15.09,"real_time":15.11,"user_ops":18661.4,"real_ops":18632.4,"user_usec":53.6,"real_usec":53.7,"est_time":3.3,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":63,"user_time":14.6,"real_time":14.61,"user_ops":17674.5,"real_ops":17657.6,"user_usec":56.6,"real_usec":56.6,"est_time":2.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":132129,"user_time":14.97,"real_time":16.43,"user_ops":8826.3,"real_ops":8042.7,"user_usec":113.3,"real_usec":124.3,"est_time":3.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":52965,"user_time":14.96,"real_time":15.67,"user_ops":14161.8,"real_ops":13520.9,"user_usec":70.6,"real_usec":74.0,"est_time":2.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":16168,"user_time":15.03,"real_time":15.25,"user_ops":17211.4,"real_ops":16961.0,"user_usec":58.1,"real_usec":59.0,"est_time":3.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":4363,"user_time":15.17,"real_time":15.41,"user_ops":18406.9,"real_ops":18119.9,"user_usec":54.3,"real_usec":55.2,"est_time":3.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":1078,"user_time":14.94,"real_time":14.98,"user_ops":18471.8,"real_ops":18421.8,"user_usec":54.1,"real_usec":54.3,"est_time":3.41,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":269,"user_time":14.97,"real_time":15.11,"user_ops":18400.5,"real_ops":18226.8,"user_usec":54.3,"real_usec":54.9,"est_time":3.2,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":64,"user_time":14.6,"real_time":14.76,"user_ops":17955.1,"real_ops":17765.2,"user_usec":55.7,"real_usec":56.3,"est_time":3.27,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":128000,"user_time":14.74,"real_time":18.16,"user_ops":8683.9,"real_ops":7048.9,"user_usec":115.2,"real_usec":141.9,"est_time":3.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":51199,"user_time":15.08,"real_time":16.15,"user_ops":13580.6,"real_ops":12677.9,"user_usec":73.6,"real_usec":78.9,"est_time":2.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":14769,"user_time":14.57,"real_time":15.37,"user_ops":16218.5,"real_ops":15374.2,"user_usec":61.7,"real_usec":65.0,"est_time":2.43,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":4042,"user_time":15.02,"real_time":15.45,"user_ops":17222.9,"real_ops":16744.8,"user_usec":58.1,"real_usec":59.7,"est_time":3.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":1021,"user_time":14.95,"real_time":15.41,"user_ops":17483.3,"real_ops":16964.5,"user_usec":57.2,"real_usec":58.9,"est_time":3.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":255,"user_time":15.08,"real_time":15.79,"user_ops":17315.6,"real_ops":16540.0,"user_usec":57.8,"real_usec":60.5,"est_time":3.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":60,"user_time":14.85,"real_time":15.28,"user_ops":16549.5,"real_ops":16086.8,"user_usec":60.4,"real_usec":62.2,"est_time":3.35,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":120470,"user_time":14.98,"real_time":16.47,"user_ops":8042.1,"real_ops":7315.8,"user_usec":124.3,"real_usec":136.7,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":44521,"user_time":14.7,"real_time":15.51,"user_ops":12114.6,"real_ops":11481.3,"user_usec":82.5,"real_usec":87.1,"est_time":2.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":13473,"user_time":15.11,"real_time":16.68,"user_ops":14266.6,"real_ops":12920.9,"user_usec":70.1,"real_usec":77.4,"est_time":2.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":3622,"user_time":15.03,"real_time":16.47,"user_ops":15423.0,"real_ops":14075.9,"user_usec":64.8,"real_usec":71.0,"est_time":2.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":905,"user_time":15.28,"real_time":17.05,"user_ops":15162.3,"real_ops":13587.5,"user_usec":66.0,"real_usec":73.6,"est_time":2.51,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":218,"user_time":14.83,"real_time":16.49,"user_ops":15052.7,"real_ops":13538.2,"user_usec":66.4,"real_usec":73.9,"est_time":2.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":54,"user_time":15.26,"real_time":16.17,"user_ops":14494.4,"real_ops":13675.1,"user_usec":69.0,"real_usec":73.1,"est_time":1.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":100721,"user_time":15.11,"real_time":16.71,"user_ops":6665.9,"real_ops":6026.9,"user_usec":150.0,"real_usec":165.9,"est_time":2.31,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":35310,"user_time":15.48,"real_time":18.72,"user_ops":9124.0,"real_ops":7542.9,"user_usec":109.6,"real_usec":132.6,"est_time":3.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":9846,"user_time":14.87,"real_time":16.76,"user_ops":10594.2,"real_ops":9396.9,"user_usec":94.4,"real_usec":106.4,"est_time":2.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":2560,"user_time":14.82,"real_time":21.71,"user_ops":11055.3,"real_ops":7548.0,"user_usec":90.5,"real_usec":132.5,"est_time":2.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":648,"user_time":14.84,"real_time":16.09,"user_ops":11178.4,"real_ops":10313.0,"user_usec":89.5,"real_usec":97.0,"est_time":2.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":162,"user_time":14.95,"real_time":16.3,"user_ops":11096.2,"real_ops":10178.4,"user_usec":90.1,"real_usec":98.2,"est_time":2.27,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":38,"user_time":14.73,"real_time":15.54,"user_ops":10566.7,"real_ops":10019.0,"user_usec":94.6,"real_usec":99.8,"est_time":1.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":64673,"user_time":15.06,"real_time":17.96,"user_ops":4294.4,"real_ops":3601.6,"user_usec":232.9,"real_usec":277.7,"est_time":2.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert","iterations":19692,"user_time":15.0,"real_time":19.56,"user_ops":5251.2,"real_ops":4026.2,"user_usec":190.4,"real_usec":248.4,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert","iterations":5260,"user_time":14.92,"real_time":17.84,"user_ops":5640.8,"real_ops":4718.5,"user_usec":177.3,"real_usec":211.9,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert","iterations":1352,"user_time":15.0,"real_time":21.4,"user_ops":5768.5,"real_ops":4042.7,"user_usec":173.4,"real_usec":247.4,"est_time":2.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert","iterations":338,"user_time":14.96,"real_time":17.87,"user_ops":5784.0,"real_ops":4840.8,"user_usec":172.9,"real_usec":206.6,"est_time":2.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert","iterations":84,"user_time":14.83,"real_time":17.62,"user_ops":5800.1,"real_ops":4882.2,"user_usec":172.4,"real_usec":204.8,"est_time":1.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":136533,"user_time":15.01,"real_time":16.57,"user_ops":9096.1,"real_ops":8238.0,"user_usec":109.9,"real_usec":121.4,"est_time":2.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":54857,"user_time":14.55,"real_time":15.18,"user_ops":15081.0,"real_ops":14454.6,"user_usec":66.3,"real_usec":69.2,"est_time":2.36,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":17454,"user_time":15.07,"real_time":15.29,"user_ops":18531.1,"real_ops":18258.7,"user_usec":54.0,"real_usec":54.8,"est_time":3.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":4626,"user_time":14.94,"real_time":15.03,"user_ops":19816.9,"real_ops":19692.9,"user_usec":50.5,"real_usec":50.8,"est_time":3.28,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":1156,"user_time":14.76,"real_time":14.78,"user_ops":20049.9,"real_ops":20028.4,"user_usec":49.9,"real_usec":49.9,"est_time":3.2,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":285,"user_time":14.8,"real_time":14.81,"user_ops":19718.9,"real_ops":19706.5,"user_usec":50.7,"real_usec":50.7,"est_time":3.59,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":67,"user_time":14.79,"real_time":14.81,"user_ops":18555.2,"real_ops":18528.3,"user_usec":53.9,"real_usec":54.0,"est_time":2.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":138067,"user_time":15.31,"real_time":16.79,"user_ops":9018.1,"real_ops":8221.2,"user_usec":110.9,"real_usec":121.6,"est_time":2.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":55854,"user_time":15.01,"real_time":15.63,"user_ops":14884.5,"real_ops":14295.6,"user_usec":67.2,"real_usec":70.0,"est_time":2.31,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":17066,"user_time":14.84,"real_time":15.06,"user_ops":18400.0,"real_ops":18131.2,"user_usec":54.3,"real_usec":55.2,"est_time":3.27,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":4571,"user_time":15.06,"real_time":15.17,"user_ops":19425.2,"real_ops":19290.6,"user_usec":51.5,"real_usec":51.8,"est_time":3.27,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":1156,"user_time":14.92,"real_time":14.94,"user_ops":19834.9,"real_ops":19803.1,"user_usec":50.4,"real_usec":50.5,"est_time":3.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":285,"user_time":14.85,"real_time":14.9,"user_ops":19652.5,"real_ops":19584.4,"user_usec":50.9,"real_usec":51.1,"est_time":3.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":68,"user_time":14.89,"real_time":14.95,"user_ops":18705.7,"real_ops":18635.0,"user_usec":53.5,"real_usec":53.7,"est_time":2.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":135032,"user_time":15.06,"real_time":16.55,"user_ops":8966.3,"real_ops":8158.9,"user_usec":111.5,"real_usec":122.6,"est_time":3.14,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":53894,"user_time":14.75,"real_time":15.34,"user_ops":14615.3,"real_ops":14053.4,"user_usec":68.4,"real_usec":71.2,"est_time":2.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":17066,"user_time":14.93,"real_time":15.14,"user_ops":18289.1,"real_ops":18035.0,"user_usec":54.7,"real_usec":55.4,"est_time":3.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":4517,"user_time":14.82,"real_time":15.33,"user_ops":19506.6,"real_ops":18863.4,"user_usec":51.3,"real_usec":53.0,"est_time":3.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":1156,"user_time":15.25,"real_time":15.28,"user_ops":19405.6,"real_ops":19371.7,"user_usec":51.5,"real_usec":51.6,"est_time":3.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":289,"user_time":15.11,"real_time":15.12,"user_ops":19585.4,"real_ops":19571.5,"user_usec":51.1,"real_usec":51.1,"est_time":3.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":67,"user_time":14.82,"real_time":14.85,"user_ops":18517.7,"real_ops":18475.3,"user_usec":54.0,"real_usec":54.1,"est_time":2.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":129347,"user_time":14.82,"real_time":16.25,"user_ops":8727.9,"real_ops":7961.8,"user_usec":114.6,"real_usec":125.6,"est_time":3.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":52067,"user_time":15.03,"real_time":15.66,"user_ops":13856.8,"real_ops":13296.6,"user_usec":72.2,"real_usec":75.2,"est_time":2.62,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":16168,"user_time":15.09,"real_time":15.99,"user_ops":17143.0,"real_ops":16182.0,"user_usec":58.3,"real_usec":61.8,"est_time":3.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":4266,"user_time":14.92,"real_time":15.77,"user_ops":18299.2,"real_ops":17312.7,"user_usec":54.6,"real_usec":57.8,"est_time":3.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":1078,"user_time":14.88,"real_time":15.75,"user_ops":18546.2,"real_ops":17517.1,"user_usec":53.9,"real_usec":57.1,"est_time":3.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":263,"user_time":14.96,"real_time":15.27,"user_ops":18002.1,"real_ops":17637.2,"user_usec":55.5,"real_usec":56.7,"est_time":3.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":61,"user_time":15.04,"real_time":15.48,"user_ops":16612.8,"real_ops":16136.0,"user_usec":60.2,"real_usec":62.0,"est_time":3.28,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":120470,"user_time":14.8,"real_time":16.35,"user_ops":8139.9,"real_ops":7366.4,"user_usec":122.9,"real_usec":135.8,"est_time":2.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":46545,"user_time":14.92,"real_time":15.72,"user_ops":12478.6,"real_ops":11841.7,"user_usec":80.1,"real_usec":84.4,"est_time":2.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":13714,"user_time":14.77,"real_time":15.88,"user_ops":14856.1,"real_ops":13813.6,"user_usec":67.3,"real_usec":72.4,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":3622,"user_time":14.77,"real_time":16.57,"user_ops":15694.5,"real_ops":13987.4,"user_usec":63.7,"real_usec":71.5,"est_time":2.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":923,"user_time":14.96,"real_time":16.14,"user_ops":15794.7,"real_ops":14637.1,"user_usec":63.3,"real_usec":68.3,"est_time":2.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":230,"user_time":15.01,"real_time":16.21,"user_ops":15690.9,"real_ops":14525.2,"user_usec":63.7,"real_usec":68.8,"est_time":2.2,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":55,"user_time":14.83,"real_time":15.61,"user_ops":15190.8,"real_ops":14435.2,"user_usec":65.8,"real_usec":69.3,"est_time":1.69,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":99096,"user_time":14.74,"real_time":16.4,"user_ops":6722.9,"real_ops":6040.7,"user_usec":148.7,"real_usec":165.5,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":35310,"user_time":14.92,"real_time":16.74,"user_ops":9466.5,"real_ops":8439.4,"user_usec":105.6,"real_usec":118.5,"est_time":3.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":10378,"user_time":15.35,"real_time":16.81,"user_ops":10817.5,"real_ops":9880.4,"user_usec":92.4,"real_usec":101.2,"est_time":2.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":2666,"user_time":15.05,"real_time":16.35,"user_ops":11337.1,"real_ops":10433.6,"user_usec":88.2,"real_usec":95.8,"est_time":2.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":666,"user_time":15.0,"real_time":16.16,"user_ops":11366.4,"real_ops":10547.7,"user_usec":88.0,"real_usec":94.8,"est_time":2.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":162,"user_time":14.72,"real_time":16.17,"user_ops":11269.6,"real_ops":10256.1,"user_usec":88.7,"real_usec":97.5,"est_time":2.22,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":40,"user_time":15.2,"real_time":16.66,"user_ops":10778.9,"real_ops":9834.6,"user_usec":92.8,"real_usec":101.7,"est_time":1.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":63340,"user_time":15.06,"real_time":17.77,"user_ops":4205.8,"real_ops":3564.7,"user_usec":237.8,"real_usec":280.5,"est_time":2.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert","iterations":19200,"user_time":15.01,"real_time":18.79,"user_ops":5116.6,"real_ops":4086.8,"user_usec":195.4,"real_usec":244.7,"est_time":2.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert","iterations":5120,"user_time":14.82,"real_time":17.57,"user_ops":5527.7,"real_ops":4662.2,"user_usec":180.9,"real_usec":214.5,"est_time":2.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert","iterations":1297,"user_time":14.79,"real_time":19.37,"user_ops":5612.4,"real_ops":4286.3,"user_usec":178.2,"real_usec":233.3,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert","iterations":333,"user_time":15.16,"real_time":18.04,"user_ops":5623.2,"real_ops":4726.7,"user_usec":177.8,"real_usec":211.6,"est_time":2.41,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert","iterations":82,"user_time":15.01,"real_time":16.68,"user_ops":5594.1,"real_ops":5033.2,"user_usec":178.8,"real_usec":198.7,"est_time":1.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":109714,"user_time":14.73,"real_time":15.98,"user_ops":7448.3,"real_ops":6864.9,"user_usec":134.3,"real_usec":145.7,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":40960,"user_time":14.7,"real_time":15.21,"user_ops":11145.6,"real_ops":10770.1,"user_usec":89.7,"real_usec":92.8,"est_time":2.58,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":12000,"user_time":14.68,"real_time":14.83,"user_ops":13079.0,"real_ops":12944.7,"user_usec":76.5,"real_usec":77.3,"est_time":2.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":3147,"user_time":14.91,"real_time":14.95,"user_ops":13508.2,"real_ops":13468.1,"user_usec":74.0,"real_usec":74.2,"est_time":2.71,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":800,"user_time":14.85,"real_time":14.87,"user_ops":13791.2,"real_ops":13771.5,"user_usec":72.5,"real_usec":72.6,"est_time":2.36,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":199,"user_time":14.93,"real_time":14.94,"user_ops":13648.8,"real_ops":13640.8,"user_usec":73.3,"real_usec":73.3,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":46,"user_time":14.58,"real_time":14.6,"user_ops":12922.9,"real_ops":12902.5,"user_usec":77.4,"real_usec":77.5,"est_time":2.22,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":84164,"user_time":15.04,"real_time":15.91,"user_ops":5596.0,"real_ops":5290.9,"user_usec":178.7,"real_usec":189.0,"est_time":2.4,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":27927,"user_time":14.89,"real_time":15.21,"user_ops":7502.2,"real_ops":7345.8,"user_usec":133.3,"real_usec":136.1,"est_time":1.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":7917,"user_time":15.14,"real_time":15.24,"user_ops":8366.7,"real_ops":8313.6,"user_usec":119.5,"real_usec":120.3,"est_time":2.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":2021,"user_time":15.07,"real_time":15.1,"user_ops":8582.9,"real_ops":8564.9,"user_usec":116.5,"real_usec":116.8,"est_time":3.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":505,"user_time":15.03,"real_time":15.04,"user_ops":8601.5,"real_ops":8594.7,"user_usec":116.3,"real_usec":116.4,"est_time":2.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":124,"user_time":14.86,"real_time":14.87,"user_ops":8544.8,"real_ops":8539.5,"user_usec":117.0,"real_usec":117.1,"est_time":2.62,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":29,"user_time":14.83,"real_time":14.85,"user_ops":8009.7,"real_ops":7999.3,"user_usec":124.8,"real_usec":125.0,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":42666,"user_time":15.01,"real_time":15.54,"user_ops":2842.5,"real_ops":2746.1,"user_usec":351.8,"real_usec":364.1,"est_time":2.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":12190,"user_time":14.5,"real_time":14.68,"user_ops":3362.8,"real_ops":3322.2,"user_usec":297.4,"real_usec":301.0,"est_time":2.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":3310,"user_time":15.07,"real_time":15.11,"user_ops":3514.3,"real_ops":3505.1,"user_usec":284.6,"real_usec":285.3,"est_time":1.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":827,"user_time":14.95,"real_time":14.99,"user_ops":3540.3,"real_ops":3530.1,"user_usec":282.5,"real_usec":283.3,"est_time":1.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":206,"user_time":14.92,"real_time":14.93,"user_ops":3534.6,"real_ops":3533.0,"user_usec":282.9,"real_usec":283.0,"est_time":1.59,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":50,"user_time":14.69,"real_time":14.7,"user_ops":3485.4,"real_ops":3481.9,"user_usec":286.9,"real_usec":287.2,"est_time":0.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":11,"user_time":13.94,"real_time":13.97,"user_ops":3232.1,"real_ops":3225.1,"user_usec":309.4,"real_usec":310.1,"est_time":2.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":15058,"user_time":15.06,"real_time":15.23,"user_ops":999.9,"real_ops":988.6,"user_usec":1000.1,"real_usec":1011.6,"est_time":1.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":3958,"user_time":15.04,"real_time":15.09,"user_ops":1052.7,"real_ops":1048.9,"user_usec":950.0,"real_usec":953.3,"est_time":2.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":999,"user_time":15.02,"real_time":15.04,"user_ops":1064.2,"real_ops":1063.1,"user_usec":939.7,"real_usec":940.6,"est_time":2.48,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":252,"user_time":15.08,"real_time":15.08,"user_ops":1069.5,"real_ops":1069.2,"user_usec":935.0,"real_usec":935.3,"est_time":2.41,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":62,"user_time":14.91,"real_time":14.95,"user_ops":1064.5,"real_ops":1061.8,"user_usec":939.4,"real_usec":941.8,"est_time":1.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":15,"user_time":14.63,"real_time":14.69,"user_ops":1049.9,"real_ops":1045.5,"user_usec":952.5,"real_usec":956.4,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":3,"user_time":12.83,"real_time":12.87,"user_ops":957.8,"real_ops":954.5,"user_usec":1044.1,"real_usec":1047.7,"est_time":8.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":4129,"user_time":15.17,"real_time":15.23,"user_ops":272.2,"real_ops":271.2,"user_usec":3674.0,"real_usec":3687.5,"est_time":2.48,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":1043,"user_time":15.2,"real_time":15.22,"user_ops":274.5,"real_ops":274.1,"user_usec":3643.3,"real_usec":3647.8,"est_time":2.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":260,"user_time":14.96,"real_time":14.98,"user_ops":278.1,"real_ops":277.7,"user_usec":3596.2,"real_usec":3600.4,"est_time":2.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":64,"user_time":14.72,"real_time":14.73,"user_ops":278.3,"real_ops":278.2,"user_usec":3593.8,"real_usec":3595.1,"est_time":1.71,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":16,"user_time":14.71,"real_time":14.74,"user_ops":278.5,"real_ops":277.9,"user_usec":3591.3,"real_usec":3598.1,"est_time":1.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":4,"user_time":14.98,"real_time":15.0,"user_ops":273.4,"real_ops":273.0,"user_usec":3657.2,"real_usec":3662.6,"est_time":7.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.3,"est_time":32.64,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":1043,"user_time":14.95,"real_time":14.98,"user_ops":69.8,"real_ops":69.6,"user_usec":14333.7,"real_usec":14360.4,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":263,"user_time":14.93,"real_time":14.94,"user_ops":70.5,"real_ops":70.4,"user_usec":14192.0,"real_usec":14204.5,"est_time":2.21,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":65,"user_time":14.82,"real_time":14.83,"user_ops":70.2,"real_ops":70.1,"user_usec":14250.0,"real_usec":14258.6,"est_time":1.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":16,"user_time":14.61,"real_time":14.63,"user_ops":70.1,"real_ops":70.0,"user_usec":14267.6,"real_usec":14286.9,"est_time":1.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":4,"user_time":14.64,"real_time":14.66,"user_ops":69.9,"real_ops":69.9,"user_usec":14296.9,"real_usec":14314.1,"est_time":7.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":1,"user_time":14.88,"real_time":14.93,"user_ops":68.8,"real_ops":68.6,"user_usec":14531.3,"real_usec":14576.3,"est_time":29.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":252,"user_time":15.01,"real_time":15.08,"user_ops":16.8,"real_ops":16.7,"user_usec":59563.5,"real_usec":59824.6,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert","iterations":61,"user_time":14.52,"real_time":14.61,"user_ops":16.8,"real_ops":16.7,"user_usec":59508.2,"real_usec":59872.1,"est_time":1.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert","iterations":15,"user_time":14.44,"real_time":14.52,"user_ops":16.6,"real_ops":16.5,"user_usec":60166.7,"real_usec":60496.4,"est_time":1.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert","iterations":3,"user_time":11.4,"real_time":11.44,"user_ops":16.8,"real_ops":16.8,"user_usec":59375.0,"real_usec":59602.3,"est_time":7.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.3,"est_time":30.32,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":109714,"user_time":14.83,"real_time":16.06,"user_ops":7398.1,"real_ops":6832.2,"user_usec":135.2,"real_usec":146.4,"est_time":1.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":39384,"user_time":14.52,"real_time":14.96,"user_ops":10849.6,"real_ops":10532.9,"user_usec":92.2,"real_usec":94.9,"est_time":2.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":11815,"user_time":14.89,"real_time":15.04,"user_ops":12695.8,"real_ops":12571.2,"user_usec":78.8,"real_usec":79.5,"est_time":2.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":3047,"user_time":14.87,"real_time":14.92,"user_ops":13114.2,"real_ops":13071.7,"user_usec":76.3,"real_usec":76.5,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":774,"user_time":14.94,"real_time":14.96,"user_ops":13262.7,"real_ops":13249.0,"user_usec":75.4,"real_usec":75.5,"est_time":2.31,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":190,"user_time":14.8,"real_time":14.82,"user_ops":13145.9,"real_ops":13127.8,"user_usec":76.1,"real_usec":76.2,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":45,"user_time":14.88,"real_time":14.9,"user_ops":12387.1,"real_ops":12374.2,"user_usec":80.7,"real_usec":80.8,"est_time":2.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":81920,"user_time":15.09,"real_time":16.02,"user_ops":5428.8,"real_ops":5112.2,"user_usec":184.2,"real_usec":195.6,"est_time":2.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":26482,"user_time":14.77,"real_time":15.1,"user_ops":7171.8,"real_ops":7015.3,"user_usec":139.4,"real_usec":142.5,"est_time":2.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":7384,"user_time":14.8,"real_time":14.89,"user_ops":7982.7,"real_ops":7934.1,"user_usec":125.3,"real_usec":126.0,"est_time":1.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":1882,"user_time":14.6,"real_time":14.63,"user_ops":8249.9,"real_ops":8231.1,"user_usec":121.2,"real_usec":121.5,"est_time":1.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":484,"user_time":14.91,"real_time":14.92,"user_ops":8310.1,"real_ops":8307.1,"user_usec":120.3,"real_usec":120.4,"est_time":2.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":117,"user_time":14.63,"real_time":14.64,"user_ops":8189.2,"real_ops":8181.9,"user_usec":122.1,"real_usec":122.2,"est_time":1.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":28,"user_time":14.78,"real_time":14.81,"user_ops":7759.7,"real_ops":7744.0,"user_usec":128.9,"real_usec":129.1,"est_time":2.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":38886,"user_time":14.1,"real_time":14.53,"user_ops":2757.9,"real_ops":2676.6,"user_usec":362.6,"real_usec":373.6,"est_time":2.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":12000,"user_time":15.02,"real_time":15.17,"user_ops":3195.7,"real_ops":3163.2,"user_usec":312.9,"real_usec":316.1,"est_time":1.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":3096,"user_time":14.83,"real_time":14.87,"user_ops":3340.3,"real_ops":3330.2,"user_usec":299.4,"real_usec":300.3,"est_time":1.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":786,"user_time":14.85,"real_time":14.87,"user_ops":3387.5,"real_ops":3383.7,"user_usec":295.2,"real_usec":295.5,"est_time":1.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":196,"user_time":14.89,"real_time":14.9,"user_ops":3369.8,"real_ops":3367.5,"user_usec":296.8,"real_usec":297.0,"est_time":1.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":48,"user_time":14.81,"real_time":14.84,"user_ops":3318.8,"real_ops":3313.0,"user_usec":301.3,"real_usec":301.8,"est_time":1.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":11,"user_time":14.54,"real_time":14.56,"user_ops":3098.8,"real_ops":3094.3,"user_usec":322.7,"real_usec":323.2,"est_time":2.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":14222,"user_time":14.81,"real_time":14.99,"user_ops":960.3,"real_ops":948.8,"user_usec":1041.3,"real_usec":1053.9,"est_time":1.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":3692,"user_time":15.01,"real_time":15.06,"user_ops":983.9,"real_ops":980.5,"user_usec":1016.4,"real_usec":1019.9,"est_time":1.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":941,"user_time":14.96,"real_time":14.98,"user_ops":1006.4,"real_ops":1004.9,"user_usec":993.6,"real_usec":995.1,"est_time":1.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":240,"user_time":14.99,"real_time":15.0,"user_ops":1024.7,"real_ops":1024.3,"user_usec":975.9,"real_usec":976.3,"est_time":2.41,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":58,"user_time":14.49,"real_time":14.5,"user_ops":1024.7,"real_ops":1024.1,"user_usec":975.9,"real_usec":976.4,"est_time":0.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":14,"user_time":14.28,"real_time":14.3,"user_ops":1003.9,"real_ops":1002.6,"user_usec":996.1,"real_usec":997.4,"est_time":2.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":3,"user_time":13.49,"real_time":13.51,"user_ops":910.9,"real_ops":909.4,"user_usec":1097.8,"real_usec":1099.7,"est_time":8.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":3918,"user_time":14.87,"real_time":14.92,"user_ops":263.5,"real_ops":262.6,"user_usec":3795.3,"real_usec":3808.6,"est_time":2.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":989,"user_time":14.8,"real_time":14.82,"user_ops":267.3,"real_ops":266.9,"user_usec":3741.2,"real_usec":3746.8,"est_time":2.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":252,"user_time":15.15,"real_time":15.19,"user_ops":266.1,"real_ops":265.4,"user_usec":3757.4,"real_usec":3767.7,"est_time":2.28,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":61,"user_time":14.64,"real_time":14.65,"user_ops":266.7,"real_ops":266.5,"user_usec":3750.0,"real_usec":3751.8,"est_time":2.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":15,"user_time":14.34,"real_time":14.36,"user_ops":267.8,"real_ops":267.4,"user_usec":3734.4,"real_usec":3739.5,"est_time":1.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":3,"user_time":11.72,"real_time":11.73,"user_ops":262.1,"real_ops":261.9,"user_usec":3815.1,"real_usec":3818.5,"est_time":7.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":5.2,"est_time":34.27,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":1010,"user_time":14.97,"real_time":14.99,"user_ops":67.5,"real_ops":67.4,"user_usec":14821.8,"real_usec":14843.8,"est_time":2.63,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":252,"user_time":15.0,"real_time":15.01,"user_ops":67.2,"real_ops":67.2,"user_usec":14881.0,"real_usec":14888.7,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":63,"user_time":14.93,"real_time":14.96,"user_ops":67.5,"real_ops":67.4,"user_usec":14811.5,"real_usec":14842.3,"est_time":1.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":15,"user_time":14.27,"real_time":14.3,"user_ops":67.3,"real_ops":67.1,"user_usec":14864.6,"real_usec":14895.7,"est_time":1.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":3,"user_time":11.37,"real_time":11.38,"user_ops":67.5,"real_ops":67.5,"user_usec":14804.7,"real_usec":14821.7,"est_time":7.58,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":5.0,"est_time":30.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":244,"user_time":15.01,"real_time":15.07,"user_ops":16.3,"real_ops":16.2,"user_usec":61516.4,"real_usec":61751.2,"est_time":2.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert","iterations":58,"user_time":14.32,"real_time":14.39,"user_ops":16.2,"real_ops":16.1,"user_usec":61724.1,"real_usec":62022.4,"est_time":1.14,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert","iterations":14,"user_time":14.46,"real_time":14.53,"user_ops":15.5,"real_ops":15.4,"user_usec":64553.6,"real_usec":64865.6,"est_time":2.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert","iterations":3,"user_time":12.43,"real_time":12.5,"user_ops":15.4,"real_ops":15.4,"user_usec":64739.6,"real_usec":65081.7,"est_time":8.31,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.3,"est_time":31.31,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":136533,"user_time":15.07,"real_time":16.45,"user_ops":9059.9,"real_ops":8299.0,"user_usec":110.4,"real_usec":120.5,"est_time":3.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":54857,"user_time":14.96,"real_time":15.61,"user_ops":14667.6,"real_ops":14056.5,"user_usec":68.2,"real_usec":71.1,"est_time":2.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":16879,"user_time":14.78,"real_time":14.99,"user_ops":18272.3,"real_ops":18011.3,"user_usec":54.7,"real_usec":55.5,"est_time":3.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":4517,"user_time":14.98,"real_time":15.04,"user_ops":19298.3,"real_ops":19219.8,"user_usec":51.8,"real_usec":52.0,"est_time":3.25,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":1129,"user_time":14.67,"real_time":14.7,"user_ops":19701.7,"real_ops":19660.4,"user_usec":50.8,"real_usec":50.9,"est_time":3.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":285,"user_time":15.1,"real_time":15.11,"user_ops":19327.2,"real_ops":19311.3,"user_usec":51.7,"real_usec":51.8,"est_time":2.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":66,"user_time":14.79,"real_time":14.83,"user_ops":18278.3,"real_ops":18229.9,"user_usec":54.7,"real_usec":54.9,"est_time":2.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":62693,"user_time":15.18,"real_time":15.9,"user_ops":4130.0,"real_ops":3942.7,"user_usec":242.1,"real_usec":253.6,"est_time":2.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":19199,"user_time":14.77,"real_time":15.03,"user_ops":5199.5,"real_ops":5110.9,"user_usec":192.3,"real_usec":195.7,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":5260,"user_time":14.84,"real_time":14.92,"user_ops":5671.2,"real_ops":5642.5,"user_usec":176.3,"real_usec":177.2,"est_time":2.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":1352,"user_time":15.04,"real_time":15.07,"user_ops":5753.2,"real_ops":5742.5,"user_usec":173.8,"real_usec":174.1,"est_time":2.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":338,"user_time":15.07,"real_time":15.08,"user_ops":5741.7,"real_ops":5736.3,"user_usec":174.2,"real_usec":174.3,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":83,"user_time":14.9,"real_time":14.91,"user_ops":5704.2,"real_ops":5700.6,"user_usec":175.3,"real_usec":175.4,"est_time":1.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":19,"user_time":14.68,"real_time":14.7,"user_ops":5301.4,"real_ops":5294.2,"user_usec":188.6,"real_usec":188.9,"est_time":2.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":20210,"user_time":14.91,"real_time":15.15,"user_ops":1355.5,"real_ops":1333.6,"user_usec":737.8,"real_usec":749.8,"est_time":2.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":5408,"user_time":15.06,"real_time":15.13,"user_ops":1436.4,"real_ops":1429.5,"user_usec":696.2,"real_usec":699.6,"est_time":2.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":1371,"user_time":14.97,"real_time":14.99,"user_ops":1465.3,"real_ops":1463.7,"user_usec":682.4,"real_usec":683.2,"est_time":1.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":342,"user_time":14.85,"real_time":14.86,"user_ops":1473.9,"real_ops":1473.0,"user_usec":678.5,"real_usec":678.9,"est_time":1.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":84,"user_time":14.54,"real_time":14.55,"user_ops":1479.0,"real_ops":1478.0,"user_usec":676.2,"real_usec":676.6,"est_time":1.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":21,"user_time":14.84,"real_time":14.86,"user_ops":1449.1,"real_ops":1447.4,"user_usec":690.1,"real_usec":690.9,"est_time":1.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":4,"user_time":12.16,"real_time":12.17,"user_ops":1347.4,"real_ops":1346.5,"user_usec":742.2,"real_usec":742.7,"est_time":6.27,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":5120,"user_time":14.78,"real_time":14.87,"user_ops":346.4,"real_ops":344.3,"user_usec":2886.7,"real_usec":2904.6,"est_time":2.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":1315,"user_time":14.87,"real_time":14.89,"user_ops":353.7,"real_ops":353.3,"user_usec":2827.0,"real_usec":2830.4,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":324,"user_time":14.55,"real_time":14.57,"user_ops":356.3,"real_ops":355.8,"user_usec":2806.7,"real_usec":2810.8,"est_time":1.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":83,"user_time":14.88,"real_time":14.89,"user_ops":357.0,"real_ops":356.7,"user_usec":2801.2,"real_usec":2803.8,"est_time":1.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":20,"user_time":14.44,"real_time":14.46,"user_ops":354.6,"real_ops":354.2,"user_usec":2820.3,"real_usec":2823.6,"est_time":1.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":5,"user_time":14.52,"real_time":14.54,"user_ops":352.6,"real_ops":352.2,"user_usec":2835.9,"real_usec":2839.0,"est_time":5.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":1,"user_time":12.66,"real_time":12.68,"user_ops":323.5,"real_ops":323.1,"user_usec":3090.8,"real_usec":3095.4,"est_time":25.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1280,"user_time":15.09,"real_time":15.1,"user_ops":84.8,"real_ops":84.7,"user_usec":11789.1,"real_usec":11800.7,"est_time":2.28,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":320,"user_time":15.01,"real_time":15.05,"user_ops":85.3,"real_ops":85.0,"user_usec":11726.6,"real_usec":11760.2,"est_time":1.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":77,"user_time":14.45,"real_time":14.49,"user_ops":85.3,"real_ops":85.0,"user_usec":11728.9,"real_usec":11761.9,"est_time":1.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":19,"user_time":14.27,"real_time":14.29,"user_ops":85.2,"real_ops":85.1,"user_usec":11735.2,"real_usec":11750.1,"est_time":1.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":5,"user_time":14.95,"real_time":14.97,"user_ops":85.6,"real_ops":85.5,"user_usec":11679.7,"real_usec":11693.0,"est_time":5.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":1,"user_time":12.15,"real_time":12.16,"user_ops":84.3,"real_ops":84.2,"user_usec":11865.2,"real_usec":11876.3,"est_time":24.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":5.2,"est_time":103.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":307,"user_time":15.02,"real_time":15.04,"user_ops":20.4,"real_ops":20.4,"user_usec":48925.1,"real_usec":48984.9,"est_time":2.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":76,"user_time":14.8,"real_time":14.81,"user_ops":20.5,"real_ops":20.5,"user_usec":48684.2,"real_usec":48726.4,"est_time":1.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":19,"user_time":14.8,"real_time":14.82,"user_ops":20.5,"real_ops":20.5,"user_usec":48684.2,"real_usec":48759.1,"est_time":1.58,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":4,"user_time":12.43,"real_time":12.45,"user_ops":20.6,"real_ops":20.6,"user_usec":48554.7,"real_usec":48639.0,"est_time":6.22,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":1,"user_time":12.47,"real_time":12.51,"user_ops":20.5,"real_ops":20.5,"user_usec":48710.9,"real_usec":48862.1,"est_time":24.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":6.0,"est_time":100.41,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":71,"user_time":14.2,"real_time":14.23,"user_ops":5.0,"real_ops":5.0,"user_usec":200000.0,"real_usec":200481.1,"est_time":1.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert","iterations":18,"user_time":14.63,"real_time":14.71,"user_ops":4.9,"real_ops":4.9,"user_usec":203194.4,"real_usec":204245.6,"est_time":1.65,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert","iterations":4,"user_time":12.94,"real_time":12.97,"user_ops":4.9,"real_ops":4.9,"user_usec":202187.5,"real_usec":202690.8,"est_time":6.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert","iterations":1,"user_time":12.95,"real_time":12.98,"user_ops":4.9,"real_ops":4.9,"user_usec":202343.7,"real_usec":202873.0,"est_time":25.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.1,"est_time":103.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":132129,"user_time":14.81,"real_time":16.16,"user_ops":8921.6,"real_ops":8178.1,"user_usec":112.1,"real_usec":122.3,"est_time":2.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":52965,"user_time":14.5,"real_time":15.17,"user_ops":14611.0,"real_ops":13967.6,"user_usec":68.4,"real_usec":71.6,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":16695,"user_time":14.82,"real_time":15.02,"user_ops":18024.3,"real_ops":17780.4,"user_usec":55.5,"real_usec":56.2,"est_time":3.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":4413,"user_time":14.64,"real_time":14.7,"user_ops":19291.8,"real_ops":19211.1,"user_usec":51.8,"real_usec":52.1,"est_time":3.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":1142,"user_time":15.31,"real_time":15.34,"user_ops":19095.5,"real_ops":19062.7,"user_usec":52.4,"real_usec":52.5,"est_time":3.3,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":275,"user_time":14.94,"real_time":14.96,"user_ops":18848.7,"real_ops":18819.4,"user_usec":53.1,"real_usec":53.1,"est_time":3.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":64,"user_time":14.77,"real_time":14.81,"user_ops":17748.4,"real_ops":17702.9,"user_usec":56.3,"real_usec":56.5,"est_time":2.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":64673,"user_time":14.87,"real_time":15.52,"user_ops":4349.2,"real_ops":4167.2,"user_usec":229.9,"real_usec":240.0,"est_time":2.71,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":20210,"user_time":14.88,"real_time":15.15,"user_ops":5432.8,"real_ops":5336.9,"user_usec":184.1,"real_usec":187.4,"est_time":2.28,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":5485,"user_time":15.01,"real_time":15.11,"user_ops":5846.8,"real_ops":5807.2,"user_usec":171.0,"real_usec":172.2,"est_time":2.22,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":1391,"user_time":14.93,"real_time":14.95,"user_ops":5962.8,"real_ops":5954.6,"user_usec":167.7,"real_usec":167.9,"est_time":2.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":342,"user_time":14.6,"real_time":14.62,"user_ops":5996.7,"real_ops":5990.3,"user_usec":166.8,"real_usec":166.9,"est_time":2.41,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":86,"user_time":14.89,"real_time":14.9,"user_ops":5914.3,"real_ops":5911.3,"user_usec":169.1,"real_usec":169.2,"est_time":1.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":19,"user_time":14.19,"real_time":14.24,"user_ops":5484.4,"real_ops":5465.9,"user_usec":182.3,"real_usec":183.0,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":21041,"user_time":15.02,"real_time":15.31,"user_ops":1400.9,"real_ops":1374.0,"user_usec":713.8,"real_usec":727.8,"est_time":2.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":5647,"user_time":15.06,"real_time":15.18,"user_ops":1499.9,"real_ops":1488.0,"user_usec":666.7,"real_usec":672.0,"est_time":1.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":1432,"user_time":14.93,"real_time":14.96,"user_ops":1534.6,"real_ops":1531.7,"user_usec":651.6,"real_usec":652.9,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":358,"user_time":14.88,"real_time":14.93,"user_ops":1539.8,"real_ops":1535.1,"user_usec":649.4,"real_usec":651.4,"est_time":1.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":89,"user_time":14.83,"real_time":14.85,"user_ops":1536.3,"real_ops":1534.7,"user_usec":650.9,"real_usec":651.6,"est_time":1.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":21,"user_time":14.18,"real_time":14.21,"user_ops":1516.5,"real_ops":1513.5,"user_usec":659.4,"real_usec":660.7,"est_time":1.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":5,"user_time":14.41,"real_time":14.45,"user_ops":1421.2,"real_ops":1417.1,"user_usec":703.6,"real_usec":705.7,"est_time":5.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":5408,"user_time":14.78,"real_time":14.86,"user_ops":365.9,"real_ops":364.0,"user_usec":2733.0,"real_usec":2747.3,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":1411,"user_time":15.11,"real_time":15.14,"user_ops":373.5,"real_ops":372.8,"user_usec":2677.2,"real_usec":2682.7,"est_time":1.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":347,"user_time":14.81,"real_time":14.86,"user_ops":374.9,"real_ops":373.7,"user_usec":2667.5,"real_usec":2676.3,"est_time":1.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":88,"user_time":14.86,"real_time":14.91,"user_ops":379.0,"real_ops":377.8,"user_usec":2638.5,"real_usec":2646.6,"est_time":1.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":21,"user_time":14.39,"real_time":14.4,"user_ops":373.6,"real_ops":373.2,"user_usec":2676.7,"real_usec":2679.2,"est_time":1.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":5,"user_time":13.82,"real_time":13.83,"user_ops":370.5,"real_ops":370.2,"user_usec":2699.2,"real_usec":2701.4,"est_time":5.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":1,"user_time":11.79,"real_time":11.81,"user_ops":347.4,"real_ops":346.9,"user_usec":2878.4,"real_usec":2882.6,"est_time":23.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1333,"user_time":14.89,"real_time":14.91,"user_ops":89.5,"real_ops":89.4,"user_usec":11170.3,"real_usec":11188.7,"est_time":2.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":338,"user_time":14.94,"real_time":14.98,"user_ops":90.5,"real_ops":90.2,"user_usec":11050.3,"real_usec":11081.6,"est_time":1.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":83,"user_time":14.7,"real_time":14.7,"user_ops":90.3,"real_ops":90.3,"user_usec":11069.3,"real_usec":11070.5,"est_time":1.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":20,"user_time":14.2,"real_time":14.22,"user_ops":90.1,"real_ops":90.0,"user_usec":11093.7,"real_usec":11107.7,"est_time":1.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":5,"user_time":14.17,"real_time":14.19,"user_ops":90.3,"real_ops":90.2,"user_usec":11070.3,"real_usec":11082.5,"est_time":5.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":1,"user_time":11.51,"real_time":11.53,"user_ops":89.0,"real_ops":88.8,"user_usec":11240.2,"real_usec":11260.0,"est_time":23.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.1,"est_time":98.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":320,"user_time":14.83,"real_time":14.85,"user_ops":21.6,"real_ops":21.6,"user_usec":46343.7,"real_usec":46392.5,"est_time":1.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":80,"user_time":14.79,"real_time":14.8,"user_ops":21.6,"real_ops":21.6,"user_usec":46218.7,"real_usec":46242.9,"est_time":1.51,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":20,"user_time":14.79,"real_time":14.82,"user_ops":21.6,"real_ops":21.6,"user_usec":46218.7,"real_usec":46300.3,"est_time":1.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":5,"user_time":14.73,"real_time":14.75,"user_ops":21.7,"real_ops":21.7,"user_usec":46031.2,"real_usec":46078.7,"est_time":5.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":1,"user_time":11.82,"real_time":11.83,"user_ops":21.7,"real_ops":21.6,"user_usec":46171.9,"real_usec":46219.3,"est_time":23.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":5.2,"est_time":95.65,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":74,"user_time":14.89,"real_time":14.92,"user_ops":5.0,"real_ops":5.0,"user_usec":201216.2,"real_usec":201558.3,"est_time":1.62,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert","iterations":17,"user_time":13.62,"real_time":13.66,"user_ops":5.0,"real_ops":5.0,"user_usec":200294.1,"real_usec":200832.9,"est_time":1.69,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert","iterations":4,"user_time":12.78,"real_time":12.81,"user_ops":5.0,"real_ops":5.0,"user_usec":199687.5,"real_usec":200188.3,"est_time":6.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert","iterations":1,"user_time":12.73,"real_time":12.76,"user_ops":5.0,"real_ops":5.0,"user_usec":198906.2,"real_usec":199330.9,"est_time":25.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":5.0,"est_time":102.72,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0630","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":44521,"user_time":14.46,"real_time":22.19,"user_ops":3078.9,"real_ops":2006.3,"user_usec":324.8,"real_usec":498.4,"est_time":2.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":28981,"user_time":15.24,"real_time":24.76,"user_ops":7606.6,"real_ops":4681.7,"user_usec":131.5,"real_usec":213.6,"est_time":2.58,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":12387,"user_time":15.17,"real_time":22.98,"user_ops":13064.7,"real_ops":8624.7,"user_usec":76.5,"real_usec":115.9,"est_time":2.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":3692,"user_time":14.81,"real_time":19.7,"user_ops":15954.6,"real_ops":11994.2,"user_usec":62.7,"real_usec":83.4,"est_time":2.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":989,"user_time":15.07,"real_time":18.77,"user_ops":16800.5,"real_ops":13489.7,"user_usec":59.5,"real_usec":74.1,"est_time":3.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":240,"user_time":15.07,"real_time":18.32,"user_ops":16307.9,"real_ops":13413.1,"user_usec":61.3,"real_usec":74.6,"est_time":3.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":65,"user_time":14.99,"real_time":19.2,"user_ops":17761.2,"real_ops":13865.0,"user_usec":56.3,"real_usec":72.1,"est_time":3.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":47999,"user_time":14.02,"real_time":22.22,"user_ops":3423.6,"real_ops":2160.5,"user_usec":292.1,"real_usec":462.8,"est_time":2.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":32680,"user_time":15.94,"real_time":25.22,"user_ops":8200.8,"real_ops":5184.0,"user_usec":121.9,"real_usec":192.9,"est_time":3.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":13473,"user_time":15.09,"real_time":22.79,"user_ops":14285.5,"real_ops":9458.4,"user_usec":70.0,"real_usec":105.7,"est_time":2.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":3999,"user_time":14.85,"real_time":20.47,"user_ops":17234.7,"real_ops":12501.7,"user_usec":58.0,"real_usec":80.0,"est_time":4.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":1078,"user_time":14.86,"real_time":18.69,"user_ops":18571.2,"real_ops":14766.3,"user_usec":53.8,"real_usec":67.7,"est_time":3.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":269,"user_time":14.84,"real_time":18.27,"user_ops":18561.7,"real_ops":15075.4,"user_usec":53.9,"real_usec":66.3,"est_time":3.4,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":65,"user_time":14.86,"real_time":19.08,"user_ops":17916.6,"real_ops":13952.5,"user_usec":55.8,"real_usec":71.7,"est_time":3.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51200,"user_time":15.12,"real_time":23.35,"user_ops":3386.2,"real_ops":2193.0,"user_usec":295.3,"real_usec":456.0,"est_time":2.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":30117,"user_time":14.9,"real_time":23.57,"user_ops":8085.1,"real_ops":5111.7,"user_usec":123.7,"real_usec":195.6,"est_time":2.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":13016,"user_time":14.78,"real_time":22.82,"user_ops":14090.4,"real_ops":9127.2,"user_usec":71.0,"real_usec":109.6,"est_time":2.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":4042,"user_time":15.0,"real_time":20.18,"user_ops":17245.9,"real_ops":12816.0,"user_usec":58.0,"real_usec":78.0,"est_time":3.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":1066,"user_time":15.02,"real_time":18.92,"user_ops":18168.8,"real_ops":14424.9,"user_usec":55.0,"real_usec":69.3,"est_time":3.69,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":269,"user_time":15.2,"real_time":20.6,"user_ops":18122.1,"real_ops":13373.9,"user_usec":55.2,"real_usec":74.8,"est_time":3.27,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":65,"user_time":15.05,"real_time":19.7,"user_ops":17690.4,"real_ops":13514.2,"user_usec":56.5,"real_usec":74.0,"est_time":2.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":51199,"user_time":15.99,"real_time":25.21,"user_ops":3201.9,"real_ops":2030.5,"user_usec":312.3,"real_usec":492.5,"est_time":2.72,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":31346,"user_time":14.99,"real_time":27.12,"user_ops":8364.5,"real_ops":4624.1,"user_usec":119.6,"real_usec":216.3,"est_time":8.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":12387,"user_time":14.92,"real_time":27.28,"user_ops":13283.6,"real_ops":7266.1,"user_usec":75.3,"real_usec":137.6,"est_time":5.4,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":3692,"user_time":14.62,"real_time":31.57,"user_ops":16162.0,"real_ops":7485.7,"user_usec":61.9,"real_usec":133.6,"est_time":4.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":1000,"user_time":14.88,"real_time":18.64,"user_ops":17204.3,"real_ops":13734.7,"user_usec":58.1,"real_usec":72.8,"est_time":3.65,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":247,"user_time":14.83,"real_time":18.21,"user_ops":17055.2,"real_ops":13891.8,"user_usec":58.6,"real_usec":72.0,"est_time":3.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":58,"user_time":14.46,"real_time":18.71,"user_ops":16429.3,"real_ops":12694.5,"user_usec":60.9,"real_usec":78.8,"est_time":1.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":48761,"user_time":14.95,"real_time":22.39,"user_ops":3261.6,"real_ops":2177.4,"user_usec":306.6,"real_usec":459.3,"est_time":2.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":28444,"user_time":15.43,"real_time":24.09,"user_ops":7373.7,"real_ops":4723.3,"user_usec":135.6,"real_usec":211.7,"est_time":2.31,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":11462,"user_time":15.04,"real_time":22.48,"user_ops":12193.6,"real_ops":8157.1,"user_usec":82.0,"real_usec":122.6,"est_time":3.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":3368,"user_time":14.73,"real_time":20.07,"user_ops":14633.5,"real_ops":10738.4,"user_usec":68.3,"real_usec":93.1,"est_time":2.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":905,"user_time":15.07,"real_time":20.0,"user_ops":15373.6,"real_ops":11586.0,"user_usec":65.0,"real_usec":86.3,"est_time":2.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":226,"user_time":15.3,"real_time":19.8,"user_ops":15125.8,"real_ops":11690.3,"user_usec":66.1,"real_usec":85.5,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":54,"user_time":14.88,"real_time":19.07,"user_ops":14864.5,"real_ops":11598.1,"user_usec":67.3,"real_usec":86.2,"est_time":2.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":45850,"user_time":16.25,"real_time":25.86,"user_ops":2821.5,"real_ops":1773.1,"user_usec":354.4,"real_usec":564.0,"est_time":2.62,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":23272,"user_time":14.42,"real_time":21.87,"user_ops":6455.5,"real_ops":4256.7,"user_usec":154.9,"real_usec":234.9,"est_time":2.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":8727,"user_time":15.02,"real_time":21.87,"user_ops":9296.4,"real_ops":6383.3,"user_usec":107.6,"real_usec":156.7,"est_time":3.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":2461,"user_time":14.54,"real_time":19.41,"user_ops":10832.5,"real_ops":8115.6,"user_usec":92.3,"real_usec":123.2,"est_time":2.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":648,"user_time":14.77,"real_time":18.87,"user_ops":11231.4,"real_ops":8792.5,"user_usec":89.0,"real_usec":113.7,"est_time":2.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":162,"user_time":15.0,"real_time":19.41,"user_ops":11059.2,"real_ops":8544.4,"user_usec":90.4,"real_usec":117.0,"est_time":2.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":37,"user_time":14.22,"real_time":18.9,"user_ops":10657.7,"real_ops":8018.2,"user_usec":93.8,"real_usec":124.7,"est_time":2.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":35720,"user_time":15.1,"real_time":22.77,"user_ops":2365.6,"real_ops":1568.5,"user_usec":422.7,"real_usec":637.6,"est_time":3.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"value_string_size","operation":"insert_safe","iterations":15999,"user_time":15.08,"real_time":24.39,"user_ops":4243.8,"real_ops":2624.0,"user_usec":235.6,"real_usec":381.1,"est_time":4.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"value_string_size","operation":"insert_safe","iterations":4987,"user_time":15.13,"real_time":21.65,"user_ops":5273.8,"real_ops":3684.7,"user_usec":189.6,"real_usec":271.4,"est_time":2.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"value_string_size","operation":"insert_safe","iterations":1315,"user_time":14.89,"real_time":20.81,"user_ops":5652.1,"real_ops":4043.6,"user_usec":176.9,"real_usec":247.3,"est_time":2.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"value_string_size","operation":"insert_safe","iterations":338,"user_time":14.98,"real_time":20.32,"user_ops":5776.2,"real_ops":4258.5,"user_usec":173.1,"real_usec":234.8,"est_time":2.35,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"value_string_size","operation":"insert_safe","iterations":83,"user_time":14.81,"real_time":20.42,"user_ops":5738.8,"real_ops":4162.9,"user_usec":174.3,"real_usec":240.2,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"value_string_size","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":51199,"user_time":15.18,"real_time":23.64,"user_ops":3372.8,"real_ops":2165.5,"user_usec":296.5,"real_usec":461.8,"est_time":2.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":33032,"user_time":14.95,"real_time":23.42,"user_ops":8838.0,"real_ops":5640.7,"user_usec":113.1,"real_usec":177.3,"est_time":5.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":13473,"user_time":14.76,"real_time":22.74,"user_ops":14604.9,"real_ops":9481.3,"user_usec":68.5,"real_usec":105.5,"est_time":2.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":4219,"user_time":14.88,"real_time":22.41,"user_ops":18146.2,"real_ops":12048.3,"user_usec":55.1,"real_usec":83.0,"est_time":3.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":1129,"user_time":14.96,"real_time":18.78,"user_ops":19319.8,"real_ops":15390.5,"user_usec":51.8,"real_usec":65.0,"est_time":3.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":279,"user_time":14.7,"real_time":18.57,"user_ops":19435.1,"real_ops":15384.8,"user_usec":51.5,"real_usec":65.0,"est_time":3.64,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":66,"user_time":14.52,"real_time":18.83,"user_ops":18618.2,"real_ops":14359.5,"user_usec":53.7,"real_usec":69.6,"est_time":3.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":50360,"user_time":15.28,"real_time":23.53,"user_ops":3295.8,"real_ops":2140.0,"user_usec":303.4,"real_usec":467.3,"est_time":2.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":33391,"user_time":15.13,"real_time":22.41,"user_ops":8827.8,"real_ops":5959.2,"user_usec":113.3,"real_usec":167.8,"est_time":3.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":13714,"user_time":15.07,"real_time":22.44,"user_ops":14560.3,"real_ops":9776.9,"user_usec":68.7,"real_usec":102.3,"est_time":3.2,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":4129,"user_time":14.8,"real_time":19.44,"user_ops":17855.1,"real_ops":13596.2,"user_usec":56.0,"real_usec":73.5,"est_time":3.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":1116,"user_time":14.9,"real_time":18.84,"user_ops":19174.2,"real_ops":15166.4,"user_usec":52.2,"real_usec":65.9,"est_time":3.58,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":275,"user_time":14.65,"real_time":18.13,"user_ops":19221.8,"real_ops":15536.0,"user_usec":52.0,"real_usec":64.4,"est_time":3.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":68,"user_time":15.06,"real_time":18.88,"user_ops":18494.6,"real_ops":14753.7,"user_usec":54.1,"real_usec":67.8,"est_time":3.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":52965,"user_time":15.48,"real_time":23.76,"user_ops":3421.5,"real_ops":2229.6,"user_usec":292.3,"real_usec":448.5,"est_time":2.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":33391,"user_time":15.55,"real_time":23.9,"user_ops":8589.3,"real_ops":5587.4,"user_usec":116.4,"real_usec":179.0,"est_time":3.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":13714,"user_time":15.13,"real_time":23.51,"user_ops":14502.6,"real_ops":9332.1,"user_usec":69.0,"real_usec":107.2,"est_time":2.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":4219,"user_time":14.91,"real_time":19.93,"user_ops":18109.7,"real_ops":13551.4,"user_usec":55.2,"real_usec":73.8,"est_time":3.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":1129,"user_time":15.13,"real_time":19.13,"user_ops":19102.7,"real_ops":15109.8,"user_usec":52.3,"real_usec":66.2,"est_time":3.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":282,"user_time":14.93,"real_time":18.42,"user_ops":19341.5,"real_ops":15675.8,"user_usec":51.7,"real_usec":63.8,"est_time":3.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":67,"user_time":14.88,"real_time":18.45,"user_ops":18443.0,"real_ops":14874.9,"user_usec":54.2,"real_usec":67.2,"est_time":3.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":50360,"user_time":14.73,"real_time":22.71,"user_ops":3418.9,"real_ops":2217.7,"user_usec":292.5,"real_usec":450.9,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":31999,"user_time":15.76,"real_time":24.43,"user_ops":8121.6,"real_ops":5238.4,"user_usec":123.1,"real_usec":190.9,"est_time":3.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":12799,"user_time":14.78,"real_time":22.45,"user_ops":13855.5,"real_ops":9120.7,"user_usec":72.2,"real_usec":109.6,"est_time":2.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":4000,"user_time":15.02,"real_time":20.18,"user_ops":17043.9,"real_ops":12688.8,"user_usec":58.7,"real_usec":78.8,"est_time":3.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":1054,"user_time":14.95,"real_time":19.1,"user_ops":18048.4,"real_ops":14125.8,"user_usec":55.4,"real_usec":70.8,"est_time":3.62,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":260,"user_time":14.72,"real_time":18.13,"user_ops":18087.0,"real_ops":14688.8,"user_usec":55.3,"real_usec":68.1,"est_time":3.31,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":63,"user_time":14.74,"real_time":18.46,"user_ops":17506.6,"real_ops":13975.2,"user_usec":57.1,"real_usec":71.6,"est_time":3.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":50360,"user_time":15.8,"real_time":24.58,"user_ops":3187.3,"real_ops":2048.5,"user_usec":313.7,"real_usec":488.2,"est_time":2.64,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":29538,"user_time":15.17,"real_time":22.85,"user_ops":7788.5,"real_ops":5171.5,"user_usec":128.4,"real_usec":193.4,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":11462,"user_time":14.63,"real_time":21.93,"user_ops":12535.3,"real_ops":8364.5,"user_usec":79.8,"real_usec":119.6,"est_time":2.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":3428,"user_time":14.72,"real_time":20.08,"user_ops":14904.3,"real_ops":10926.9,"user_usec":67.1,"real_usec":91.5,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":923,"user_time":15.13,"real_time":19.71,"user_ops":15617.2,"real_ops":11990.2,"user_usec":64.0,"real_usec":83.4,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":230,"user_time":15.06,"real_time":19.97,"user_ops":15638.8,"real_ops":11792.9,"user_usec":63.9,"real_usec":84.8,"est_time":2.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":55,"user_time":14.84,"real_time":19.13,"user_ops":15180.6,"real_ops":11775.0,"user_usec":65.9,"real_usec":84.9,"est_time":1.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":42082,"user_time":13.88,"real_time":21.32,"user_ops":3031.8,"real_ops":1973.4,"user_usec":329.8,"real_usec":506.7,"est_time":2.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":24774,"user_time":15.15,"real_time":23.2,"user_ops":6541.0,"real_ops":4271.0,"user_usec":152.9,"real_usec":234.1,"est_time":2.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":8930,"user_time":14.94,"real_time":22.07,"user_ops":9563.6,"real_ops":6475.2,"user_usec":104.6,"real_usec":154.4,"est_time":3.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":2560,"user_time":14.9,"real_time":19.88,"user_ops":10996.0,"real_ops":8239.9,"user_usec":90.9,"real_usec":121.4,"est_time":2.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":657,"user_time":14.89,"real_time":19.45,"user_ops":11295.6,"real_ops":8646.3,"user_usec":88.5,"real_usec":115.7,"est_time":2.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":162,"user_time":14.89,"real_time":19.18,"user_ops":11140.9,"real_ops":8647.3,"user_usec":89.8,"real_usec":115.6,"est_time":2.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":39,"user_time":14.79,"real_time":19.39,"user_ops":10800.8,"real_ops":8238.0,"user_usec":92.6,"real_usec":121.4,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":33758,"user_time":14.43,"real_time":22.03,"user_ops":2339.4,"real_ops":1532.7,"user_usec":427.5,"real_usec":652.5,"est_time":3.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"key_string_size","operation":"insert_safe","iterations":15360,"user_time":15.02,"real_time":23.59,"user_ops":4090.5,"real_ops":2604.5,"user_usec":244.5,"real_usec":383.9,"est_time":3.72,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"key_string_size","operation":"insert_safe","iterations":4800,"user_time":14.99,"real_time":21.39,"user_ops":5123.4,"real_ops":3591.0,"user_usec":195.2,"real_usec":278.5,"est_time":2.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"key_string_size","operation":"insert_safe","iterations":1315,"user_time":15.09,"real_time":21.23,"user_ops":5577.2,"real_ops":3964.0,"user_usec":179.3,"real_usec":252.3,"est_time":2.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"key_string_size","operation":"insert_safe","iterations":333,"user_time":15.1,"real_time":20.24,"user_ops":5645.6,"real_ops":4211.5,"user_usec":177.1,"real_usec":237.4,"est_time":2.36,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"key_string_size","operation":"insert_safe","iterations":81,"user_time":14.94,"real_time":19.48,"user_ops":5551.8,"real_ops":4257.0,"user_usec":180.1,"real_usec":234.9,"est_time":2.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"key_string_size","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":45176,"user_time":14.32,"real_time":22.23,"user_ops":3154.7,"real_ops":2032.3,"user_usec":317.0,"real_usec":492.1,"est_time":2.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":27428,"user_time":15.1,"real_time":21.95,"user_ops":7265.7,"real_ops":4998.7,"user_usec":137.6,"real_usec":200.1,"est_time":2.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":9846,"user_time":14.3,"real_time":20.15,"user_ops":11016.5,"real_ops":7818.9,"user_usec":90.8,"real_usec":127.9,"est_time":3.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2953,"user_time":14.76,"real_time":18.5,"user_ops":12804.3,"real_ops":10215.7,"user_usec":78.1,"real_usec":97.9,"est_time":2.58,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":774,"user_time":14.82,"real_time":17.69,"user_ops":13370.0,"real_ops":11203.6,"user_usec":74.8,"real_usec":89.3,"est_time":2.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":196,"user_time":14.94,"real_time":17.73,"user_ops":13434.0,"real_ops":11317.7,"user_usec":74.4,"real_usec":88.4,"est_time":2.23,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":46,"user_time":15.34,"real_time":18.49,"user_ops":12282.7,"real_ops":10188.3,"user_usec":81.4,"real_usec":98.2,"est_time":1.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":41513,"user_time":15.38,"real_time":22.82,"user_ops":2699.2,"real_ops":1819.4,"user_usec":370.5,"real_usec":549.6,"est_time":3.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":20480,"user_time":14.95,"real_time":21.57,"user_ops":5479.6,"real_ops":3797.8,"user_usec":182.5,"real_usec":263.3,"est_time":2.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":6981,"user_time":15.08,"real_time":19.3,"user_ops":7406.9,"real_ops":5788.1,"user_usec":135.0,"real_usec":172.8,"est_time":2.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1920,"user_time":14.98,"real_time":17.68,"user_ops":8202.9,"real_ops":6951.7,"user_usec":121.9,"real_usec":143.9,"est_time":3.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":461,"user_time":13.74,"real_time":15.67,"user_ops":8589.2,"real_ops":7532.5,"user_usec":116.4,"real_usec":132.8,"est_time":4.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":122,"user_time":14.8,"real_time":16.57,"user_ops":8441.1,"real_ops":7537.9,"user_usec":118.5,"real_usec":132.7,"est_time":2.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":28,"user_time":14.68,"real_time":17.32,"user_ops":7812.5,"real_ops":6622.9,"user_usec":128.0,"real_usec":151.0,"est_time":2.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":26482,"user_time":14.67,"real_time":20.52,"user_ops":1805.2,"real_ops":1290.6,"user_usec":554.0,"real_usec":774.9,"est_time":2.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":10378,"user_time":14.83,"real_time":19.77,"user_ops":2799.2,"real_ops":2099.6,"user_usec":357.2,"real_usec":476.3,"est_time":2.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2999,"user_time":14.52,"real_time":16.91,"user_ops":3304.7,"real_ops":2837.6,"user_usec":302.6,"real_usec":352.4,"est_time":2.28,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":813,"user_time":15.22,"real_time":16.72,"user_ops":3418.7,"real_ops":3112.3,"user_usec":292.5,"real_usec":321.3,"est_time":1.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":193,"user_time":14.31,"real_time":15.56,"user_ops":3452.7,"real_ops":3174.5,"user_usec":289.6,"real_usec":315.0,"est_time":2.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":50,"user_time":14.8,"real_time":15.83,"user_ops":3459.5,"real_ops":3234.3,"user_usec":289.1,"real_usec":309.2,"est_time":1.21,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":11,"user_time":13.93,"real_time":15.28,"user_ops":3234.5,"real_ops":2947.8,"user_usec":309.2,"real_usec":339.2,"est_time":3.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":12387,"user_time":15.11,"real_time":19.7,"user_ops":819.8,"real_ops":628.7,"user_usec":1219.8,"real_usec":1590.6,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":3692,"user_time":15.36,"real_time":17.91,"user_ops":961.5,"real_ops":824.6,"user_usec":1040.1,"real_usec":1212.8,"est_time":1.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":969,"user_time":14.85,"real_time":15.98,"user_ops":1044.0,"real_ops":970.5,"user_usec":957.8,"real_usec":1030.4,"est_time":2.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":247,"user_time":14.94,"real_time":15.81,"user_ops":1058.1,"real_ops":999.8,"user_usec":945.1,"real_usec":1000.2,"est_time":2.43,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":61,"user_time":14.64,"real_time":15.38,"user_ops":1066.7,"real_ops":1015.5,"user_usec":937.5,"real_usec":984.7,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":15,"user_time":14.89,"real_time":15.73,"user_ops":1031.6,"real_ops":976.6,"user_usec":969.4,"real_usec":1023.9,"est_time":2.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":3,"user_time":12.9,"real_time":13.7,"user_ops":952.6,"real_ops":896.8,"user_usec":1049.8,"real_usec":1115.1,"est_time":9.4,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":3840,"user_time":15.02,"real_time":17.41,"user_ops":255.7,"real_ops":220.6,"user_usec":3911.5,"real_usec":4533.8,"est_time":2.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1032,"user_time":15.08,"real_time":16.29,"user_ops":273.7,"real_ops":253.4,"user_usec":3653.1,"real_usec":3946.6,"est_time":2.49,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":260,"user_time":15.07,"real_time":15.94,"user_ops":276.0,"real_ops":261.0,"user_usec":3622.6,"real_usec":3831.6,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":64,"user_time":14.83,"real_time":15.54,"user_ops":276.2,"real_ops":263.6,"user_usec":3620.6,"real_usec":3794.0,"est_time":1.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":16,"user_time":14.75,"real_time":15.75,"user_ops":277.7,"real_ops":260.1,"user_usec":3601.1,"real_usec":3844.7,"est_time":2.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":3,"user_time":11.29,"real_time":11.97,"user_ops":272.1,"real_ops":256.6,"user_usec":3675.1,"real_usec":3897.4,"est_time":8.22,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":3.8,"est_time":34.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1021,"user_time":14.8,"real_time":15.89,"user_ops":69.0,"real_ops":64.2,"user_usec":14495.6,"real_usec":15567.9,"est_time":2.64,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":260,"user_time":14.83,"real_time":15.57,"user_ops":70.1,"real_ops":66.8,"user_usec":14259.6,"real_usec":14969.4,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":65,"user_time":14.72,"real_time":15.5,"user_ops":70.7,"real_ops":67.1,"user_usec":14153.8,"real_usec":14907.0,"est_time":2.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":16,"user_time":14.47,"real_time":15.07,"user_ops":70.8,"real_ops":68.0,"user_usec":14130.9,"real_usec":14715.1,"est_time":2.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":4,"user_time":14.55,"real_time":15.17,"user_ops":70.4,"real_ops":67.5,"user_usec":14209.0,"real_usec":14810.0,"est_time":7.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1,"user_time":14.8,"real_time":15.43,"user_ops":69.2,"real_ops":66.4,"user_usec":14453.1,"real_usec":15066.9,"est_time":30.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":249,"user_time":14.83,"real_time":15.62,"user_ops":16.8,"real_ops":15.9,"user_usec":59558.2,"real_usec":62744.1,"est_time":2.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":63,"user_time":14.91,"real_time":15.61,"user_ops":16.9,"real_ops":16.1,"user_usec":59166.7,"real_usec":61950.1,"est_time":2.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":15,"user_time":14.14,"real_time":14.8,"user_ops":17.0,"real_ops":16.2,"user_usec":58916.7,"real_usec":61685.5,"est_time":2.49,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":3,"user_time":11.4,"real_time":12.02,"user_ops":16.8,"real_ops":16.0,"user_usec":59375.0,"real_usec":62622.2,"est_time":8.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":6.9,"est_time":31.22,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":47261,"user_time":15.84,"real_time":24.74,"user_ops":2983.6,"real_ops":1910.0,"user_usec":335.2,"real_usec":523.6,"est_time":2.58,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":26947,"user_time":14.98,"real_time":21.81,"user_ops":7195.5,"real_ops":4942.3,"user_usec":139.0,"real_usec":202.3,"est_time":2.41,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":9846,"user_time":14.83,"real_time":21.28,"user_ops":10622.8,"real_ops":7404.1,"user_usec":94.1,"real_usec":135.1,"est_time":3.21,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":2909,"user_time":14.94,"real_time":18.54,"user_ops":12461.6,"real_ops":10039.8,"user_usec":80.2,"real_usec":99.6,"est_time":2.64,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":750,"user_time":14.65,"real_time":17.49,"user_ops":13105.8,"real_ops":10976.7,"user_usec":76.3,"real_usec":91.1,"est_time":2.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":187,"user_time":14.84,"real_time":17.31,"user_ops":12903.5,"real_ops":11059.2,"user_usec":77.5,"real_usec":90.4,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":45,"user_time":15.0,"real_time":18.16,"user_ops":12288.0,"real_ops":10149.2,"user_usec":81.4,"real_usec":98.5,"est_time":1.97,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":38886,"user_time":15.01,"real_time":22.72,"user_ops":2590.7,"real_ops":1711.7,"user_usec":386.0,"real_usec":584.2,"est_time":3.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":19948,"user_time":15.48,"real_time":22.63,"user_ops":5154.5,"real_ops":3526.0,"user_usec":194.0,"real_usec":283.6,"est_time":2.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":6620,"user_time":14.74,"real_time":19.07,"user_ops":7185.9,"real_ops":5555.6,"user_usec":139.2,"real_usec":180.0,"est_time":2.23,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1846,"user_time":15.04,"real_time":17.83,"user_ops":7855.3,"real_ops":6624.8,"user_usec":127.3,"real_usec":150.9,"est_time":1.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":470,"user_time":14.82,"real_time":16.81,"user_ops":8118.8,"real_ops":7159.6,"user_usec":123.2,"real_usec":139.7,"est_time":2.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":117,"user_time":15.12,"real_time":16.88,"user_ops":7923.8,"real_ops":7098.5,"user_usec":126.2,"real_usec":140.9,"est_time":1.48,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":27,"user_time":14.57,"real_time":17.15,"user_ops":7590.4,"real_ops":6448.4,"user_usec":131.7,"real_usec":155.1,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":27428,"user_time":15.16,"real_time":20.93,"user_ops":1809.2,"real_ops":1310.3,"user_usec":552.7,"real_usec":763.2,"est_time":2.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":10240,"user_time":15.14,"real_time":20.06,"user_ops":2705.4,"real_ops":2042.1,"user_usec":369.6,"real_usec":489.7,"est_time":2.59,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":2953,"user_time":14.95,"real_time":17.29,"user_ops":3160.4,"real_ops":2732.4,"user_usec":316.4,"real_usec":366.0,"est_time":2.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":774,"user_time":14.9,"real_time":16.37,"user_ops":3324.6,"real_ops":3025.8,"user_usec":300.8,"real_usec":330.5,"est_time":1.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":193,"user_time":14.7,"real_time":15.94,"user_ops":3361.1,"real_ops":3099.9,"user_usec":297.5,"real_usec":322.6,"est_time":1.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":49,"user_time":15.04,"real_time":16.11,"user_ops":3336.2,"real_ops":3114.2,"user_usec":299.7,"real_usec":321.1,"est_time":1.21,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":11,"user_time":14.43,"real_time":15.73,"user_ops":3122.4,"real_ops":2863.7,"user_usec":320.3,"real_usec":349.2,"est_time":3.43,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":11815,"user_time":14.93,"real_time":19.95,"user_ops":791.4,"real_ops":592.2,"user_usec":1263.6,"real_usec":1688.5,"est_time":2.25,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3555,"user_time":15.22,"real_time":17.56,"user_ops":934.3,"real_ops":809.9,"user_usec":1070.3,"real_usec":1234.8,"est_time":1.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":923,"user_time":15.0,"real_time":16.35,"user_ops":984.5,"real_ops":903.4,"user_usec":1015.7,"real_usec":1106.9,"est_time":1.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":235,"user_time":14.81,"real_time":15.83,"user_ops":1015.5,"real_ops":950.0,"user_usec":984.7,"real_usec":1052.6,"est_time":1.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":57,"user_time":14.38,"real_time":15.12,"user_ops":1014.7,"real_ops":965.3,"user_usec":985.5,"real_usec":1035.9,"est_time":1.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":14,"user_time":14.26,"real_time":14.98,"user_ops":1005.3,"real_ops":957.1,"user_usec":994.7,"real_usec":1044.9,"est_time":2.65,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3,"user_time":13.17,"real_time":13.97,"user_ops":933.0,"real_ops":879.6,"user_usec":1071.8,"real_usec":1136.8,"est_time":9.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3692,"user_time":15.03,"real_time":17.42,"user_ops":245.6,"real_ops":211.9,"user_usec":4071.0,"real_usec":4719.3,"est_time":1.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":950,"user_time":14.66,"real_time":15.79,"user_ops":259.2,"real_ops":240.6,"user_usec":3857.9,"real_usec":4156.2,"est_time":2.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":249,"user_time":14.9,"real_time":15.67,"user_ops":267.4,"real_ops":254.3,"user_usec":3740.0,"real_usec":3932.7,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":62,"user_time":14.69,"real_time":15.4,"user_ops":270.1,"real_ops":257.7,"user_usec":3702.1,"real_usec":3880.5,"est_time":2.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":15,"user_time":14.33,"real_time":14.96,"user_ops":268.0,"real_ops":256.7,"user_usec":3731.8,"real_usec":3895.9,"est_time":2.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3,"user_time":11.81,"real_time":12.46,"user_ops":260.1,"real_ops":246.6,"user_usec":3844.4,"real_usec":4055.5,"est_time":8.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.1,"est_time":35.25,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":979,"user_time":14.91,"real_time":16.44,"user_ops":65.7,"real_ops":59.6,"user_usec":15229.8,"real_usec":16791.8,"est_time":2.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":255,"user_time":15.05,"real_time":15.81,"user_ops":67.8,"real_ops":64.5,"user_usec":14754.9,"real_usec":15503.9,"est_time":2.58,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":63,"user_time":14.86,"real_time":15.51,"user_ops":67.8,"real_ops":65.0,"user_usec":14742.1,"real_usec":15388.9,"est_time":2.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":15,"user_time":14.22,"real_time":14.86,"user_ops":67.5,"real_ops":64.6,"user_usec":14812.5,"real_usec":15475.2,"est_time":2.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3,"user_time":11.37,"real_time":11.98,"user_ops":67.5,"real_ops":64.1,"user_usec":14804.7,"real_usec":15593.3,"est_time":8.23,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.1,"est_time":31.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":235,"user_time":14.7,"real_time":15.61,"user_ops":16.0,"real_ops":15.1,"user_usec":62553.2,"real_usec":66422.5,"est_time":1.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"array_size_fixnum","operation":"insert_safe","iterations":58,"user_time":14.25,"real_time":14.93,"user_ops":16.3,"real_ops":15.5,"user_usec":61422.4,"real_usec":64365.7,"est_time":1.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"array_size_fixnum","operation":"insert_safe","iterations":15,"user_time":14.72,"real_time":15.45,"user_ops":16.3,"real_ops":15.5,"user_usec":61333.3,"real_usec":64364.1,"est_time":2.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3,"user_time":11.74,"real_time":12.36,"user_ops":16.4,"real_ops":15.5,"user_usec":61145.8,"real_usec":64366.3,"est_time":8.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"array_size_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.1,"est_time":32.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"array_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"array_size_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":50360,"user_time":15.03,"real_time":23.32,"user_ops":3350.6,"real_ops":2159.5,"user_usec":298.5,"real_usec":463.1,"est_time":2.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":33032,"user_time":15.86,"real_time":24.89,"user_ops":8330.9,"real_ops":5309.3,"user_usec":120.0,"real_usec":188.3,"est_time":3.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":13473,"user_time":14.96,"real_time":23.38,"user_ops":14409.6,"real_ops":9218.9,"user_usec":69.4,"real_usec":108.5,"est_time":2.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4129,"user_time":14.76,"real_time":20.07,"user_ops":17903.5,"real_ops":13169.6,"user_usec":55.9,"real_usec":75.9,"est_time":3.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1116,"user_time":15.05,"real_time":19.11,"user_ops":18983.1,"real_ops":14948.0,"user_usec":52.7,"real_usec":66.9,"est_time":3.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":272,"user_time":14.73,"real_time":18.23,"user_ops":18908.9,"real_ops":15277.9,"user_usec":52.9,"real_usec":65.5,"est_time":3.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":66,"user_time":15.03,"real_time":19.25,"user_ops":17986.4,"real_ops":14041.6,"user_usec":55.6,"real_usec":71.2,"est_time":3.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":36141,"user_time":15.54,"real_time":21.96,"user_ops":2325.7,"real_ops":1645.5,"user_usec":430.0,"real_usec":607.7,"est_time":3.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":15360,"user_time":15.06,"real_time":20.49,"user_ops":4079.7,"real_ops":2998.3,"user_usec":245.1,"real_usec":333.5,"est_time":3.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4800,"user_time":15.21,"real_time":18.43,"user_ops":5049.3,"real_ops":4167.6,"user_usec":198.0,"real_usec":239.9,"est_time":2.69,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1263,"user_time":14.72,"real_time":16.56,"user_ops":5491.3,"real_ops":4880.1,"user_usec":182.1,"real_usec":204.9,"est_time":2.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":328,"user_time":15.03,"real_time":16.62,"user_ops":5586.7,"real_ops":5052.3,"user_usec":179.0,"real_usec":197.9,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":81,"user_time":15.03,"real_time":16.44,"user_ops":5518.6,"real_ops":5046.1,"user_usec":181.2,"real_usec":198.2,"est_time":1.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":19,"user_time":14.89,"real_time":16.68,"user_ops":5226.6,"real_ops":4666.0,"user_usec":191.3,"real_usec":214.3,"est_time":2.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":14222,"user_time":13.87,"real_time":18.45,"user_ops":1025.4,"real_ops":770.7,"user_usec":975.2,"real_usec":1297.5,"est_time":1.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4860,"user_time":15.09,"real_time":17.79,"user_ops":1288.3,"real_ops":1092.4,"user_usec":776.2,"real_usec":915.4,"est_time":2.48,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1297,"user_time":14.81,"real_time":16.63,"user_ops":1401.2,"real_ops":1248.1,"user_usec":713.7,"real_usec":801.2,"est_time":2.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":338,"user_time":14.91,"real_time":15.84,"user_ops":1450.8,"real_ops":1365.7,"user_usec":689.3,"real_usec":732.2,"est_time":2.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":84,"user_time":14.7,"real_time":15.52,"user_ops":1462.9,"real_ops":1385.2,"user_usec":683.6,"real_usec":721.9,"est_time":1.63,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":21,"user_time":14.77,"real_time":15.55,"user_ops":1455.9,"real_ops":1383.3,"user_usec":686.8,"real_usec":722.9,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4,"user_time":12.33,"real_time":13.23,"user_ops":1328.8,"real_ops":1237.9,"user_usec":752.6,"real_usec":807.8,"est_time":7.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4626,"user_time":14.63,"real_time":17.24,"user_ops":316.2,"real_ops":268.4,"user_usec":3162.6,"real_usec":3726.4,"est_time":2.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1263,"user_time":14.66,"real_time":15.91,"user_ops":344.6,"real_ops":317.5,"user_usec":2901.8,"real_usec":3150.1,"est_time":2.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":324,"user_time":15.03,"real_time":16.0,"user_ops":344.9,"real_ops":324.0,"user_usec":2899.3,"real_usec":3086.4,"est_time":1.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":80,"user_time":14.56,"real_time":15.33,"user_ops":351.6,"real_ops":334.0,"user_usec":2843.8,"real_usec":2994.3,"est_time":1.69,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":20,"user_time":14.33,"real_time":14.98,"user_ops":357.3,"real_ops":341.7,"user_usec":2798.8,"real_usec":2926.2,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":5,"user_time":14.62,"real_time":15.26,"user_ops":350.2,"real_ops":335.4,"user_usec":2855.5,"real_usec":2981.1,"est_time":6.48,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1,"user_time":12.63,"real_time":14.47,"user_ops":324.3,"real_ops":283.1,"user_usec":3083.5,"real_usec":3532.0,"est_time":25.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1043,"user_time":12.78,"real_time":14.76,"user_ops":81.6,"real_ops":70.7,"user_usec":12253.1,"real_usec":14151.6,"est_time":5.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":311,"user_time":14.86,"real_time":15.67,"user_ops":83.7,"real_ops":79.4,"user_usec":11945.3,"real_usec":12597.8,"est_time":2.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":77,"user_time":14.97,"real_time":15.65,"user_ops":82.3,"real_ops":78.7,"user_usec":12151.0,"real_usec":12700.5,"est_time":1.69,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":19,"user_time":14.33,"real_time":15.0,"user_ops":84.9,"real_ops":81.0,"user_usec":11784.5,"real_usec":12339.5,"est_time":2.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4,"user_time":11.95,"real_time":12.54,"user_ops":85.7,"real_ops":81.7,"user_usec":11669.9,"real_usec":12246.5,"est_time":6.62,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1,"user_time":12.19,"real_time":12.76,"user_ops":84.0,"real_ops":80.2,"user_usec":11904.3,"real_usec":12462.5,"est_time":24.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":11.2,"est_time":105.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":303,"user_time":15.01,"real_time":15.82,"user_ops":20.2,"real_ops":19.2,"user_usec":49538.0,"real_usec":52196.5,"est_time":2.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":75,"user_time":14.69,"real_time":15.35,"user_ops":20.4,"real_ops":19.5,"user_usec":48966.7,"real_usec":51174.7,"est_time":1.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":18,"user_time":14.1,"real_time":14.71,"user_ops":20.4,"real_ops":19.6,"user_usec":48958.3,"real_usec":51064.9,"est_time":2.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4,"user_time":12.5,"real_time":13.07,"user_ops":20.5,"real_ops":19.6,"user_usec":48828.1,"real_usec":51040.2,"est_time":6.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1,"user_time":12.49,"real_time":13.07,"user_ops":20.5,"real_ops":19.6,"user_usec":48789.1,"real_usec":51041.2,"est_time":25.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":32.9,"est_time":102.23,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":73,"user_time":14.77,"real_time":15.44,"user_ops":4.9,"real_ops":4.7,"user_usec":202328.8,"real_usec":211488.4,"est_time":1.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":18,"user_time":14.62,"real_time":15.25,"user_ops":4.9,"real_ops":4.7,"user_usec":203055.6,"real_usec":211824.4,"est_time":2.21,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4,"user_time":12.85,"real_time":13.49,"user_ops":5.0,"real_ops":4.7,"user_usec":200781.3,"real_usec":210802.4,"est_time":7.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1,"user_time":12.78,"real_time":13.38,"user_ops":5.0,"real_ops":4.8,"user_usec":199687.5,"real_usec":209024.1,"est_time":26.35,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.1,"est_time":103.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":51199,"user_time":15.46,"real_time":23.68,"user_ops":3311.7,"real_ops":2162.1,"user_usec":302.0,"real_usec":462.5,"est_time":2.64,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":32336,"user_time":15.12,"real_time":22.61,"user_ops":8554.5,"real_ops":5721.1,"user_usec":116.9,"real_usec":174.8,"est_time":3.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":13241,"user_time":14.9,"real_time":21.85,"user_ops":14218.5,"real_ops":9695.6,"user_usec":70.3,"real_usec":103.1,"est_time":2.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":4173,"user_time":15.46,"real_time":20.71,"user_ops":17275.0,"real_ops":12897.2,"user_usec":57.9,"real_usec":77.5,"est_time":3.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1103,"user_time":15.27,"real_time":19.27,"user_ops":18491.7,"real_ops":14653.6,"user_usec":54.1,"real_usec":68.2,"est_time":3.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":266,"user_time":14.55,"real_time":17.93,"user_ops":18720.5,"real_ops":15190.0,"user_usec":53.4,"real_usec":65.8,"est_time":3.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":64,"user_time":14.97,"real_time":19.2,"user_ops":17511.3,"real_ops":13649.8,"user_usec":57.1,"real_usec":73.3,"est_time":3.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":34133,"user_time":14.59,"real_time":21.02,"user_ops":2339.5,"real_ops":1624.1,"user_usec":427.4,"real_usec":615.7,"est_time":3.21,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":15999,"user_time":15.29,"real_time":20.41,"user_ops":4185.5,"real_ops":3135.2,"user_usec":238.9,"real_usec":319.0,"est_time":3.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":4860,"user_time":14.58,"real_time":18.11,"user_ops":5333.3,"real_ops":4294.5,"user_usec":187.5,"real_usec":232.9,"est_time":2.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1352,"user_time":14.9,"real_time":17.07,"user_ops":5807.2,"real_ops":5069.4,"user_usec":172.2,"real_usec":197.3,"est_time":2.32,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":342,"user_time":15.0,"real_time":16.66,"user_ops":5836.8,"real_ops":5255.1,"user_usec":171.3,"real_usec":190.3,"est_time":2.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":85,"user_time":15.17,"real_time":16.59,"user_ops":5737.6,"real_ops":5246.4,"user_usec":174.3,"real_usec":190.6,"est_time":1.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":20,"user_time":15.06,"real_time":17.1,"user_ops":5439.6,"real_ops":4789.4,"user_usec":183.8,"real_usec":208.8,"est_time":2.43,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":16168,"user_time":15.22,"real_time":19.97,"user_ops":1062.3,"real_ops":809.5,"user_usec":941.4,"real_usec":1235.3,"est_time":3.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":4987,"user_time":14.64,"real_time":17.21,"user_ops":1362.6,"real_ops":1159.1,"user_usec":733.9,"real_usec":862.8,"est_time":2.4,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1371,"user_time":14.75,"real_time":16.33,"user_ops":1487.2,"real_ops":1343.6,"user_usec":672.4,"real_usec":744.3,"est_time":2.25,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":347,"user_time":14.97,"real_time":15.96,"user_ops":1483.5,"real_ops":1391.9,"user_usec":674.1,"real_usec":718.5,"est_time":1.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":89,"user_time":14.98,"real_time":15.8,"user_ops":1521.0,"real_ops":1442.4,"user_usec":657.5,"real_usec":693.3,"est_time":1.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":21,"user_time":14.28,"real_time":15.11,"user_ops":1505.9,"real_ops":1423.4,"user_usec":664.1,"real_usec":702.6,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":5,"user_time":14.47,"real_time":15.36,"user_ops":1415.3,"real_ops":1333.1,"user_usec":706.5,"real_usec":750.1,"est_time":6.68,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":5052,"user_time":14.9,"real_time":17.4,"user_ops":339.1,"real_ops":290.4,"user_usec":2949.3,"real_usec":3443.9,"est_time":2.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1371,"user_time":14.91,"real_time":16.26,"user_ops":367.8,"real_ops":337.2,"user_usec":2718.8,"real_usec":2965.7,"est_time":2.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":342,"user_time":14.58,"real_time":15.39,"user_ops":375.3,"real_ops":355.6,"user_usec":2664.5,"real_usec":2812.3,"est_time":1.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":86,"user_time":14.64,"real_time":15.36,"user_ops":376.0,"real_ops":358.3,"user_usec":2659.9,"real_usec":2791.2,"est_time":1.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":21,"user_time":14.54,"real_time":15.22,"user_ops":369.7,"real_ops":353.3,"user_usec":2704.6,"real_usec":2830.5,"est_time":2.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":5,"user_time":13.82,"real_time":14.45,"user_ops":370.5,"real_ops":354.4,"user_usec":2699.2,"real_usec":2821.9,"est_time":6.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1,"user_time":11.69,"real_time":12.35,"user_ops":350.4,"real_ops":331.7,"user_usec":2854.0,"real_usec":3014.6,"est_time":24.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1297,"user_time":14.84,"real_time":15.99,"user_ops":87.4,"real_ops":81.1,"user_usec":11441.8,"real_usec":12329.9,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":338,"user_time":15.17,"real_time":15.93,"user_ops":89.1,"real_ops":84.9,"user_usec":11220.4,"real_usec":11780.0,"est_time":1.92,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":83,"user_time":15.07,"real_time":15.74,"user_ops":88.1,"real_ops":84.4,"user_usec":11347.9,"real_usec":11855.0,"est_time":1.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":20,"user_time":14.3,"real_time":14.95,"user_ops":89.5,"real_ops":85.6,"user_usec":11171.9,"real_usec":11677.8,"est_time":2.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":5,"user_time":14.32,"real_time":14.95,"user_ops":89.4,"real_ops":85.6,"user_usec":11187.5,"real_usec":11681.4,"est_time":6.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1,"user_time":11.45,"real_time":12.04,"user_ops":89.4,"real_ops":85.0,"user_usec":11181.6,"real_usec":11762.3,"est_time":23.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":4.8,"est_time":99.63,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":303,"user_time":14.33,"real_time":15.11,"user_ops":21.1,"real_ops":20.1,"user_usec":47293.7,"real_usec":49856.5,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":78,"user_time":14.54,"real_time":15.25,"user_ops":21.5,"real_ops":20.5,"user_usec":46602.6,"real_usec":48864.6,"est_time":1.69,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":19,"user_time":14.18,"real_time":14.82,"user_ops":21.4,"real_ops":20.5,"user_usec":46644.7,"real_usec":48765.9,"est_time":2.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":4,"user_time":12.01,"real_time":12.58,"user_ops":21.3,"real_ops":20.4,"user_usec":46914.1,"real_usec":49130.2,"est_time":6.63,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1,"user_time":12.14,"real_time":12.72,"user_ops":21.1,"real_ops":20.1,"user_usec":47421.9,"real_usec":49670.1,"est_time":24.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":2.9,"est_time":98.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":0,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":74,"user_time":15.05,"real_time":15.75,"user_ops":4.9,"real_ops":4.7,"user_usec":203378.4,"real_usec":212776.1,"est_time":1.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":2,"multi_size":4,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":18,"user_time":14.6,"real_time":15.24,"user_ops":4.9,"real_ops":4.7,"user_usec":202777.8,"real_usec":211640.8,"est_time":2.21,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":4,"multi_size":16,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":4,"user_time":13.07,"real_time":13.79,"user_ops":4.9,"real_ops":4.6,"user_usec":204218.8,"real_usec":215393.3,"est_time":7.59,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":6,"multi_size":64,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1,"user_time":13.03,"real_time":13.63,"user_ops":4.9,"real_ops":4.7,"user_usec":203593.7,"real_usec":212954.0,"est_time":26.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":8,"multi_size":256,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":0.0,"real_time":0.0,"user_ops":0,"real_ops":0.0,"user_usec":0.0,"real_usec":2.9,"est_time":105.43,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":10,"multi_size":1024,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":12,"multi_size":4096,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":0,"user_time":1.0,"real_time":1.0,"user_ops":0.0,"real_ops":0.0,"user_usec":1000000.0,"real_usec":1000000.0,"est_time":1.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0915","tag":"suite_insert_many","status":"Mongo::InvalidOperation: Exceded maximum insert size of 16,000,000 bytes"},
]; // 345 minutes

View File

@ -1,190 +0,0 @@
exp_series_suite_insert_one_c = [
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":189046,"user_time":14.95,"real_time":16.83,"user_ops":12645.2,"real_ops":11234.0,"user_usec":79.1,"real_usec":89.0,"est_time":2.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":183402,"user_time":14.72,"real_time":16.76,"user_ops":12459.4,"real_ops":10943.2,"user_usec":80.3,"real_usec":91.4,"est_time":2.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":186181,"user_time":14.92,"real_time":16.91,"user_ops":12478.6,"real_ops":11009.5,"user_usec":80.1,"real_usec":90.8,"est_time":2.63,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":186181,"user_time":14.72,"real_time":16.65,"user_ops":12648.2,"real_ops":11185.3,"user_usec":79.1,"real_usec":89.4,"est_time":2.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":183402,"user_time":14.86,"real_time":16.89,"user_ops":12342.0,"real_ops":10860.4,"user_usec":81.0,"real_usec":92.1,"est_time":2.44,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":183402,"user_time":14.97,"real_time":16.98,"user_ops":12251.3,"real_ops":10799.0,"user_usec":81.6,"real_usec":92.6,"est_time":2.6,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":180705,"user_time":14.5,"real_time":16.23,"user_ops":12462.4,"real_ops":11131.9,"user_usec":80.2,"real_usec":89.8,"est_time":2.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":180705,"user_time":15.02,"real_time":17.18,"user_ops":12031.0,"real_ops":10519.7,"user_usec":83.1,"real_usec":95.1,"est_time":2.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":178086,"user_time":14.98,"real_time":17.29,"user_ops":11888.3,"real_ops":10300.9,"user_usec":84.1,"real_usec":97.1,"est_time":2.64,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":173070,"user_time":15.25,"real_time":17.68,"user_ops":11348.9,"real_ops":9790.1,"user_usec":88.1,"real_usec":102.1,"est_time":2.64,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":163840,"user_time":14.93,"real_time":17.49,"user_ops":10973.9,"real_ops":9365.9,"user_usec":91.1,"real_usec":106.8,"est_time":2.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":153600,"user_time":14.95,"real_time":18.09,"user_ops":10274.2,"real_ops":8492.8,"user_usec":97.3,"real_usec":117.7,"est_time":2.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":129347,"user_time":14.88,"real_time":20.22,"user_ops":8692.7,"real_ops":6397.7,"user_usec":115.0,"real_usec":156.3,"est_time":3.29,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":107789,"user_time":15.14,"real_time":22.13,"user_ops":7119.5,"real_ops":4870.1,"user_usec":140.5,"real_usec":205.3,"est_time":2.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":74024,"user_time":14.94,"real_time":43.03,"user_ops":4954.8,"real_ops":1720.2,"user_usec":201.8,"real_usec":581.3,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":43885,"user_time":14.4,"real_time":26.11,"user_ops":3047.6,"real_ops":1680.7,"user_usec":328.1,"real_usec":595.0,"est_time":2.44,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":186181,"user_time":15.25,"real_time":17.31,"user_ops":12208.6,"real_ops":10755.8,"user_usec":81.9,"real_usec":93.0,"est_time":2.44,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":183402,"user_time":14.74,"real_time":16.51,"user_ops":12442.5,"real_ops":11110.1,"user_usec":80.4,"real_usec":90.0,"est_time":2.53,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":178086,"user_time":14.79,"real_time":16.62,"user_ops":12041.0,"real_ops":10713.3,"user_usec":83.0,"real_usec":93.3,"est_time":2.54,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":183402,"user_time":15.19,"real_time":17.13,"user_ops":12073.9,"real_ops":10705.2,"user_usec":82.8,"real_usec":93.4,"est_time":2.46,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":183402,"user_time":15.2,"real_time":17.23,"user_ops":12065.9,"real_ops":10641.7,"user_usec":82.9,"real_usec":94.0,"est_time":2.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":178086,"user_time":14.72,"real_time":16.53,"user_ops":12098.2,"real_ops":10775.9,"user_usec":82.7,"real_usec":92.8,"est_time":3.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":183402,"user_time":15.03,"real_time":16.88,"user_ops":12202.4,"real_ops":10868.2,"user_usec":82.0,"real_usec":92.0,"est_time":2.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":180705,"user_time":14.77,"real_time":16.75,"user_ops":12234.6,"real_ops":10787.1,"user_usec":81.7,"real_usec":92.7,"est_time":2.54,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":178086,"user_time":14.89,"real_time":17.08,"user_ops":11960.1,"real_ops":10425.9,"user_usec":83.6,"real_usec":95.9,"est_time":2.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":166054,"user_time":14.68,"real_time":16.95,"user_ops":11311.6,"real_ops":9798.0,"user_usec":88.4,"real_usec":102.1,"est_time":2.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":153599,"user_time":14.35,"real_time":16.92,"user_ops":10703.8,"real_ops":9078.3,"user_usec":93.4,"real_usec":110.2,"est_time":2.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":151703,"user_time":15.37,"real_time":18.63,"user_ops":9870.1,"real_ops":8142.4,"user_usec":101.3,"real_usec":122.8,"est_time":2.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":121663,"user_time":14.93,"real_time":19.53,"user_ops":8148.9,"real_ops":6228.9,"user_usec":122.7,"real_usec":160.5,"est_time":3.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":93090,"user_time":14.72,"real_time":20.98,"user_ops":6324.0,"real_ops":4438.0,"user_usec":158.1,"real_usec":225.3,"est_time":2.31,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":63340,"user_time":15.21,"real_time":23.3,"user_ops":4164.4,"real_ops":2718.6,"user_usec":240.1,"real_usec":367.8,"est_time":3.24,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":37925,"user_time":15.0,"real_time":27.18,"user_ops":2528.3,"real_ops":1395.3,"user_usec":395.5,"real_usec":716.7,"est_time":2.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":170666,"user_time":14.82,"real_time":16.7,"user_ops":11515.9,"real_ops":10218.2,"user_usec":86.8,"real_usec":97.9,"est_time":2.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":166054,"user_time":15.06,"real_time":16.74,"user_ops":11026.2,"real_ops":9918.4,"user_usec":90.7,"real_usec":100.8,"est_time":2.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":148048,"user_time":14.98,"real_time":16.54,"user_ops":9883.0,"real_ops":8949.5,"user_usec":101.2,"real_usec":111.7,"est_time":3.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":129347,"user_time":14.92,"real_time":16.27,"user_ops":8669.4,"real_ops":7948.6,"user_usec":115.3,"real_usec":125.8,"est_time":3.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":97523,"user_time":15.06,"real_time":16.1,"user_ops":6475.6,"real_ops":6058.4,"user_usec":154.4,"real_usec":165.1,"est_time":2.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":64673,"user_time":14.88,"real_time":15.63,"user_ops":4346.3,"real_ops":4137.8,"user_usec":230.1,"real_usec":241.7,"est_time":2.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":38399,"user_time":15.01,"real_time":15.42,"user_ops":2558.2,"real_ops":2489.5,"user_usec":390.9,"real_usec":401.7,"est_time":2.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":21942,"user_time":15.34,"real_time":15.58,"user_ops":1430.4,"real_ops":1408.4,"user_usec":699.1,"real_usec":710.0,"est_time":2.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":11462,"user_time":14.94,"real_time":15.09,"user_ops":767.2,"real_ops":759.7,"user_usec":1303.4,"real_usec":1316.3,"est_time":1.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":6000,"user_time":15.23,"real_time":15.31,"user_ops":394.0,"real_ops":391.9,"user_usec":2538.3,"real_usec":2551.8,"est_time":1.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":3000,"user_time":14.72,"real_time":14.77,"user_ops":203.8,"real_ops":203.1,"user_usec":4906.7,"real_usec":4923.9,"est_time":1.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":1573,"user_time":15.26,"real_time":15.31,"user_ops":103.1,"real_ops":102.7,"user_usec":9701.2,"real_usec":9733.1,"est_time":1.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":774,"user_time":15.11,"real_time":15.16,"user_ops":51.2,"real_ops":51.1,"user_usec":19522.0,"real_usec":19587.6,"est_time":1.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":393,"user_time":15.06,"real_time":15.08,"user_ops":26.1,"real_ops":26.1,"user_usec":38320.6,"real_usec":38383.4,"est_time":1.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":190,"user_time":14.67,"real_time":15.03,"user_ops":13.0,"real_ops":12.6,"user_usec":77210.5,"real_usec":79110.5,"est_time":1.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":180705,"user_time":15.03,"real_time":16.77,"user_ops":12023.0,"real_ops":10772.6,"user_usec":83.2,"real_usec":92.8,"est_time":2.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":180705,"user_time":15.07,"real_time":17.04,"user_ops":11991.0,"real_ops":10606.8,"user_usec":83.4,"real_usec":94.3,"est_time":2.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":175542,"user_time":14.92,"real_time":16.73,"user_ops":11765.5,"real_ops":10494.1,"user_usec":85.0,"real_usec":95.3,"est_time":2.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":173070,"user_time":14.71,"real_time":16.31,"user_ops":11765.5,"real_ops":10608.8,"user_usec":85.0,"real_usec":94.3,"est_time":2.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":166054,"user_time":14.86,"real_time":16.82,"user_ops":11174.6,"real_ops":9873.3,"user_usec":89.5,"real_usec":101.3,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":157538,"user_time":15.13,"real_time":17.01,"user_ops":10412.3,"real_ops":9261.2,"user_usec":96.0,"real_usec":108.0,"est_time":2.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":135032,"user_time":15.11,"real_time":17.06,"user_ops":8936.6,"real_ops":7917.2,"user_usec":111.9,"real_usec":126.3,"est_time":3.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":109714,"user_time":14.62,"real_time":16.58,"user_ops":7504.4,"real_ops":6618.5,"user_usec":133.3,"real_usec":151.1,"est_time":1.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":78769,"user_time":14.9,"real_time":16.78,"user_ops":5286.5,"real_ops":4694.0,"user_usec":189.2,"real_usec":213.0,"est_time":2.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":52965,"user_time":15.28,"real_time":21.32,"user_ops":3466.3,"real_ops":2483.9,"user_usec":288.5,"real_usec":402.6,"est_time":2.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":31030,"user_time":15.53,"real_time":17.39,"user_ops":1998.1,"real_ops":1784.6,"user_usec":500.5,"real_usec":560.3,"est_time":2.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":16168,"user_time":15.07,"real_time":16.52,"user_ops":1072.9,"real_ops":978.4,"user_usec":932.1,"real_usec":1022.0,"est_time":2.59,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":7917,"user_time":14.79,"real_time":16.09,"user_ops":535.3,"real_ops":492.1,"user_usec":1868.1,"real_usec":2032.0,"est_time":2.6,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":5565,"user_time":15.04,"real_time":17.27,"user_ops":370.0,"real_ops":322.2,"user_usec":2702.6,"real_usec":3103.4,"est_time":2.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":2526,"user_time":14.98,"real_time":20.88,"user_ops":168.6,"real_ops":121.0,"user_usec":5930.3,"real_usec":8264.2,"est_time":2.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":1032,"user_time":14.95,"real_time":16.5,"user_ops":69.0,"real_ops":62.6,"user_usec":14486.4,"real_usec":15986.1,"est_time":2.52,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":545,"user_time":14.78,"real_time":16.92,"user_ops":36.9,"real_ops":32.2,"user_usec":27119.3,"real_usec":31049.9,"est_time":2.53,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":260,"user_time":15.34,"real_time":16.73,"user_ops":16.9,"real_ops":15.5,"user_usec":59000.0,"real_usec":64336.6,"est_time":2.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":198193,"user_time":15.06,"real_time":17.03,"user_ops":13160.2,"real_ops":11638.8,"user_usec":76.0,"real_usec":85.9,"est_time":2.57,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":170666,"user_time":14.89,"real_time":16.85,"user_ops":11461.8,"real_ops":10127.7,"user_usec":87.2,"real_usec":98.7,"est_time":2.52,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":139636,"user_time":14.91,"real_time":16.46,"user_ops":9365.3,"real_ops":8482.8,"user_usec":106.8,"real_usec":117.9,"est_time":2.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":104135,"user_time":15.19,"real_time":16.25,"user_ops":6855.5,"real_ops":6406.4,"user_usec":145.9,"real_usec":156.1,"est_time":2.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":67516,"user_time":14.89,"real_time":15.58,"user_ops":4534.3,"real_ops":4332.2,"user_usec":220.5,"real_usec":230.8,"est_time":2.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":40421,"user_time":15.26,"real_time":15.69,"user_ops":2648.8,"real_ops":2576.5,"user_usec":377.5,"real_usec":388.1,"est_time":2.26,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":22925,"user_time":15.48,"real_time":15.77,"user_ops":1480.9,"real_ops":1454.0,"user_usec":675.2,"real_usec":687.8,"est_time":1.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":12190,"user_time":14.29,"real_time":14.44,"user_ops":853.0,"real_ops":844.2,"user_usec":1172.3,"real_usec":1184.6,"est_time":2.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":5999,"user_time":14.75,"real_time":14.83,"user_ops":406.7,"real_ops":404.4,"user_usec":2458.7,"real_usec":2472.6,"est_time":2.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":3147,"user_time":15.09,"real_time":15.18,"user_ops":208.5,"real_ops":207.4,"user_usec":4795.0,"real_usec":4822.6,"est_time":1.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1548,"user_time":14.81,"real_time":14.85,"user_ops":104.5,"real_ops":104.2,"user_usec":9567.2,"real_usec":9593.4,"est_time":1.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":813,"user_time":14.88,"real_time":14.91,"user_ops":54.6,"real_ops":54.5,"user_usec":18302.6,"real_usec":18344.6,"est_time":1.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":413,"user_time":14.78,"real_time":14.81,"user_ops":27.9,"real_ops":27.9,"user_usec":35786.9,"real_usec":35850.2,"est_time":1.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":201442,"user_time":15.05,"real_time":17.42,"user_ops":13384.9,"real_ops":11567.1,"user_usec":74.7,"real_usec":86.5,"est_time":2.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":195047,"user_time":15.16,"real_time":17.33,"user_ops":12865.9,"real_ops":11255.4,"user_usec":77.7,"real_usec":88.8,"est_time":2.52,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":178086,"user_time":14.5,"real_time":16.53,"user_ops":12281.8,"real_ops":10773.0,"user_usec":81.4,"real_usec":92.8,"est_time":2.57,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":175542,"user_time":14.72,"real_time":16.74,"user_ops":11925.4,"real_ops":10488.3,"user_usec":83.9,"real_usec":95.3,"est_time":3.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":161684,"user_time":14.76,"real_time":16.92,"user_ops":10954.2,"real_ops":9558.2,"user_usec":91.3,"real_usec":104.6,"est_time":2.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":136533,"user_time":15.22,"real_time":17.07,"user_ops":8970.6,"real_ops":8000.2,"user_usec":111.5,"real_usec":125.0,"est_time":3.14,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":100721,"user_time":14.81,"real_time":16.69,"user_ops":6800.9,"real_ops":6033.4,"user_usec":147.0,"real_usec":165.7,"est_time":2.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":68266,"user_time":15.05,"real_time":16.44,"user_ops":4535.9,"real_ops":4152.7,"user_usec":220.5,"real_usec":240.8,"est_time":2.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":43267,"user_time":15.05,"real_time":16.17,"user_ops":2874.9,"real_ops":2675.3,"user_usec":347.8,"real_usec":373.8,"est_time":2.29,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":25180,"user_time":14.92,"real_time":16.19,"user_ops":1687.7,"real_ops":1555.7,"user_usec":592.5,"real_usec":642.8,"est_time":1.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":13714,"user_time":15.04,"real_time":16.23,"user_ops":911.8,"real_ops":844.7,"user_usec":1096.7,"real_usec":1183.8,"est_time":1.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":7111,"user_time":14.97,"real_time":15.74,"user_ops":475.0,"real_ops":451.8,"user_usec":2105.2,"real_usec":2213.5,"est_time":1.76,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":3622,"user_time":15.01,"real_time":15.9,"user_ops":241.3,"real_ops":227.8,"user_usec":4144.1,"real_usec":4389.9,"est_time":1.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1714,"user_time":15.1,"real_time":15.76,"user_ops":113.5,"real_ops":108.7,"user_usec":8809.8,"real_usec":9195.6,"est_time":1.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":705,"user_time":14.99,"real_time":16.04,"user_ops":47.0,"real_ops":44.0,"user_usec":21262.4,"real_usec":22750.0,"est_time":1.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":369,"user_time":14.98,"real_time":15.74,"user_ops":24.6,"real_ops":23.4,"user_usec":40596.2,"real_usec":42659.9,"est_time":1.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1452","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":79792,"user_time":15.34,"real_time":27.01,"user_ops":5201.6,"real_ops":2953.6,"user_usec":192.2,"real_usec":338.6,"est_time":3.34,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":71441,"user_time":14.03,"real_time":24.7,"user_ops":5092.0,"real_ops":2892.3,"user_usec":196.4,"real_usec":345.8,"est_time":3.76,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":78769,"user_time":14.87,"real_time":25.83,"user_ops":5297.2,"real_ops":3049.3,"user_usec":188.8,"real_usec":327.9,"est_time":3.66,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":69818,"user_time":13.41,"real_time":23.82,"user_ops":5206.4,"real_ops":2931.7,"user_usec":192.1,"real_usec":341.1,"est_time":3.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":78769,"user_time":15.54,"real_time":27.17,"user_ops":5068.8,"real_ops":2899.1,"user_usec":197.3,"real_usec":344.9,"est_time":3.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":79792,"user_time":15.48,"real_time":26.99,"user_ops":5154.5,"real_ops":2956.3,"user_usec":194.0,"real_usec":338.3,"est_time":3.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":79792,"user_time":15.67,"real_time":27.23,"user_ops":5092.0,"real_ops":2930.5,"user_usec":196.4,"real_usec":341.2,"est_time":3.52,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":78769,"user_time":15.18,"real_time":26.76,"user_ops":5189.0,"real_ops":2944.0,"user_usec":192.7,"real_usec":339.7,"est_time":3.49,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":70620,"user_time":13.96,"real_time":24.81,"user_ops":5058.7,"real_ops":2846.7,"user_usec":197.7,"real_usec":351.3,"est_time":3.59,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":75851,"user_time":15.08,"real_time":25.9,"user_ops":5029.9,"real_ops":2929.1,"user_usec":198.8,"real_usec":341.4,"est_time":3.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":74926,"user_time":15.58,"real_time":28.07,"user_ops":4809.1,"real_ops":2668.8,"user_usec":207.9,"real_usec":374.7,"est_time":3.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":72282,"user_time":15.66,"real_time":28.13,"user_ops":4615.7,"real_ops":2569.6,"user_usec":216.7,"real_usec":389.2,"est_time":3.8,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":67516,"user_time":15.75,"real_time":30.64,"user_ops":4286.7,"real_ops":2203.4,"user_usec":233.3,"real_usec":453.8,"est_time":4.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":57962,"user_time":16.03,"real_time":30.97,"user_ops":3615.8,"real_ops":1871.3,"user_usec":276.6,"real_usec":534.4,"est_time":2.42,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":43885,"user_time":14.0,"real_time":27.24,"user_ops":3134.6,"real_ops":1611.2,"user_usec":319.0,"real_usec":620.6,"est_time":3.07,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":32680,"user_time":15.31,"real_time":29.65,"user_ops":2134.6,"real_ops":1102.3,"user_usec":468.5,"real_usec":907.2,"est_time":3.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":74024,"user_time":14.87,"real_time":25.73,"user_ops":4978.1,"real_ops":2876.9,"user_usec":200.9,"real_usec":347.6,"est_time":3.4,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":78769,"user_time":15.67,"real_time":26.58,"user_ops":5026.7,"real_ops":2963.3,"user_usec":198.9,"real_usec":337.5,"est_time":3.25,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":70620,"user_time":14.1,"real_time":23.99,"user_ops":5008.5,"real_ops":2943.4,"user_usec":199.7,"real_usec":339.7,"est_time":3.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":77772,"user_time":15.12,"real_time":25.69,"user_ops":5143.7,"real_ops":3027.4,"user_usec":194.4,"real_usec":330.3,"est_time":3.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":70620,"user_time":14.26,"real_time":24.77,"user_ops":4952.3,"real_ops":2851.5,"user_usec":201.9,"real_usec":350.7,"est_time":3.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":74926,"user_time":14.51,"real_time":24.3,"user_ops":5163.7,"real_ops":3082.8,"user_usec":193.7,"real_usec":324.4,"est_time":3.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":77772,"user_time":15.59,"real_time":26.9,"user_ops":4988.6,"real_ops":2891.4,"user_usec":200.5,"real_usec":345.9,"est_time":3.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":69818,"user_time":13.78,"real_time":23.03,"user_ops":5066.6,"real_ops":3031.8,"user_usec":197.4,"real_usec":329.8,"est_time":3.79,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":75851,"user_time":15.84,"real_time":27.62,"user_ops":4788.6,"real_ops":2746.7,"user_usec":208.8,"real_usec":364.1,"est_time":3.47,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":69033,"user_time":14.19,"real_time":24.84,"user_ops":4864.9,"real_ops":2778.8,"user_usec":205.6,"real_usec":359.9,"est_time":3.63,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":66782,"user_time":13.89,"real_time":23.92,"user_ops":4807.9,"real_ops":2791.8,"user_usec":208.0,"real_usec":358.2,"est_time":3.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":70620,"user_time":15.87,"real_time":28.48,"user_ops":4449.9,"real_ops":2479.6,"user_usec":224.7,"real_usec":403.3,"est_time":3.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":63999,"user_time":15.02,"real_time":27.97,"user_ops":4260.9,"real_ops":2287.9,"user_usec":234.7,"real_usec":437.1,"est_time":4.15,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":53894,"user_time":15.07,"real_time":27.64,"user_ops":3576.2,"real_ops":1949.5,"user_usec":279.6,"real_usec":512.9,"est_time":2.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":42082,"user_time":15.12,"real_time":30.92,"user_ops":2783.2,"real_ops":1360.8,"user_usec":359.3,"real_usec":734.9,"est_time":3.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":27428,"user_time":14.95,"real_time":26.3,"user_ops":1834.6,"real_ops":1042.9,"user_usec":545.1,"real_usec":958.9,"est_time":2.59,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":71441,"user_time":14.11,"real_time":23.78,"user_ops":5063.1,"real_ops":3003.9,"user_usec":197.5,"real_usec":332.9,"est_time":3.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":69033,"user_time":13.83,"real_time":23.08,"user_ops":4991.5,"real_ops":2991.1,"user_usec":200.3,"real_usec":334.3,"est_time":3.64,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":64673,"user_time":13.92,"real_time":23.29,"user_ops":4646.0,"real_ops":2776.4,"user_usec":215.2,"real_usec":360.2,"est_time":3.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":61440,"user_time":14.81,"real_time":24.64,"user_ops":4148.5,"real_ops":2493.5,"user_usec":241.0,"real_usec":401.0,"est_time":4.0,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":54857,"user_time":15.57,"real_time":26.67,"user_ops":3523.2,"real_ops":2057.0,"user_usec":283.8,"real_usec":486.1,"est_time":2.51,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":45850,"user_time":14.82,"real_time":21.7,"user_ops":3093.8,"real_ops":2113.4,"user_usec":323.2,"real_usec":473.2,"est_time":2.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":30117,"user_time":14.42,"real_time":20.35,"user_ops":2088.6,"real_ops":1479.8,"user_usec":478.8,"real_usec":675.8,"est_time":1.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":19443,"user_time":15.33,"real_time":21.67,"user_ops":1268.3,"real_ops":897.3,"user_usec":788.5,"real_usec":1114.5,"est_time":2.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":10971,"user_time":14.68,"real_time":19.31,"user_ops":747.3,"real_ops":568.3,"user_usec":1338.1,"real_usec":1759.6,"est_time":2.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":5731,"user_time":14.19,"real_time":17.09,"user_ops":403.9,"real_ops":335.3,"user_usec":2476.0,"real_usec":2982.3,"est_time":2.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3147,"user_time":15.24,"real_time":17.22,"user_ops":206.5,"real_ops":182.7,"user_usec":4842.7,"real_usec":5472.4,"est_time":2.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1627,"user_time":14.89,"real_time":16.22,"user_ops":109.3,"real_ops":100.3,"user_usec":9151.8,"real_usec":9966.2,"est_time":1.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":857,"user_time":15.18,"real_time":16.28,"user_ops":56.5,"real_ops":52.6,"user_usec":17713.0,"real_usec":18999.3,"est_time":1.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":413,"user_time":14.49,"real_time":15.39,"user_ops":28.5,"real_ops":26.8,"user_usec":35084.7,"real_usec":37251.8,"est_time":1.7,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":210,"user_time":15.1,"real_time":16.35,"user_ops":13.9,"real_ops":12.8,"user_usec":71904.8,"real_usec":77870.3,"est_time":1.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":77772,"user_time":15.1,"real_time":25.47,"user_ops":5150.5,"real_ops":3053.2,"user_usec":194.2,"real_usec":327.5,"est_time":3.48,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":71441,"user_time":14.54,"real_time":25.02,"user_ops":4913.4,"real_ops":2855.2,"user_usec":203.5,"real_usec":350.2,"est_time":3.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":77772,"user_time":15.65,"real_time":26.87,"user_ops":4969.5,"real_ops":2894.4,"user_usec":201.2,"real_usec":345.5,"est_time":3.31,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":76800,"user_time":16.3,"real_time":28.67,"user_ops":4711.7,"real_ops":2678.8,"user_usec":212.2,"real_usec":373.3,"est_time":3.4,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":75851,"user_time":16.08,"real_time":27.69,"user_ops":4717.1,"real_ops":2739.7,"user_usec":212.0,"real_usec":365.0,"est_time":3.45,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":72282,"user_time":16.25,"real_time":27.47,"user_ops":4448.1,"real_ops":2631.7,"user_usec":224.8,"real_usec":380.0,"est_time":3.44,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":62693,"user_time":14.41,"real_time":23.87,"user_ops":4350.7,"real_ops":2626.8,"user_usec":229.9,"real_usec":380.7,"est_time":3.97,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":59076,"user_time":15.1,"real_time":24.32,"user_ops":3912.3,"real_ops":2429.5,"user_usec":255.6,"real_usec":411.6,"est_time":2.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":48761,"user_time":14.82,"real_time":23.16,"user_ops":3290.2,"real_ops":2105.7,"user_usec":303.9,"real_usec":474.9,"est_time":2.59,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":36571,"user_time":15.52,"real_time":23.61,"user_ops":2356.4,"real_ops":1548.7,"user_usec":424.4,"real_usec":645.7,"est_time":3.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":24000,"user_time":15.19,"real_time":22.55,"user_ops":1580.0,"real_ops":1064.1,"user_usec":632.9,"real_usec":939.7,"est_time":2.61,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":13963,"user_time":15.37,"real_time":25.84,"user_ops":908.5,"real_ops":540.3,"user_usec":1100.8,"real_usec":1850.7,"est_time":2.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":7245,"user_time":15.11,"real_time":19.5,"user_ops":479.5,"real_ops":371.5,"user_usec":2085.6,"real_usec":2691.4,"est_time":1.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":4923,"user_time":14.83,"real_time":18.98,"user_ops":332.0,"real_ops":259.4,"user_usec":3012.4,"real_usec":3855.2,"est_time":2.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":2493,"user_time":15.77,"real_time":19.9,"user_ops":158.1,"real_ops":125.3,"user_usec":6325.7,"real_usec":7982.8,"est_time":2.43,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1000,"user_time":14.92,"real_time":17.68,"user_ops":67.0,"real_ops":56.6,"user_usec":14920.0,"real_usec":17681.4,"est_time":2.67,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":539,"user_time":15.24,"real_time":17.85,"user_ops":35.4,"real_ops":30.2,"user_usec":28274.6,"real_usec":33113.0,"est_time":2.41,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":249,"user_time":14.76,"real_time":17.28,"user_ops":16.9,"real_ops":14.4,"user_usec":59277.1,"real_usec":69406.4,"est_time":3.03,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":86535,"user_time":14.6,"real_time":25.23,"user_ops":5927.1,"real_ops":3430.4,"user_usec":168.7,"real_usec":291.5,"est_time":3.04,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":84164,"user_time":15.52,"real_time":25.68,"user_ops":5422.9,"real_ops":3277.1,"user_usec":184.4,"real_usec":305.1,"est_time":3.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":72282,"user_time":14.93,"real_time":24.0,"user_ops":4841.4,"real_ops":3011.8,"user_usec":206.6,"real_usec":332.0,"est_time":3.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":60235,"user_time":15.08,"real_time":23.2,"user_ops":3994.4,"real_ops":2596.5,"user_usec":250.4,"real_usec":385.1,"est_time":2.17,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":45850,"user_time":15.14,"real_time":23.79,"user_ops":3028.4,"real_ops":1927.3,"user_usec":330.2,"real_usec":518.9,"est_time":2.84,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":31999,"user_time":15.07,"real_time":21.83,"user_ops":2123.4,"real_ops":1465.6,"user_usec":471.0,"real_usec":682.3,"est_time":3.22,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":19443,"user_time":15.72,"real_time":19.81,"user_ops":1236.8,"real_ops":981.7,"user_usec":808.5,"real_usec":1018.6,"est_time":2.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":9846,"user_time":14.49,"real_time":17.49,"user_ops":679.5,"real_ops":562.8,"user_usec":1471.7,"real_usec":1776.7,"est_time":2.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":5260,"user_time":14.7,"real_time":16.87,"user_ops":357.8,"real_ops":311.7,"user_usec":2794.7,"real_usec":3208.1,"est_time":2.23,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":2666,"user_time":14.0,"real_time":15.5,"user_ops":190.4,"real_ops":172.0,"user_usec":5251.3,"real_usec":5815.2,"est_time":2.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1548,"user_time":15.72,"real_time":16.97,"user_ops":98.5,"real_ops":91.2,"user_usec":10155.0,"real_usec":10962.4,"est_time":2.28,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":716,"user_time":13.41,"real_time":14.35,"user_ops":53.4,"real_ops":49.9,"user_usec":18729.1,"real_usec":20044.5,"est_time":1.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":400,"user_time":15.74,"real_time":16.71,"user_ops":25.4,"real_ops":23.9,"user_usec":39350.0,"real_usec":41763.7,"est_time":1.71,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":86535,"user_time":14.91,"real_time":25.28,"user_ops":5803.8,"real_ops":3422.7,"user_usec":172.3,"real_usec":292.2,"est_time":3.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":86535,"user_time":14.93,"real_time":25.3,"user_ops":5796.0,"real_ops":3420.0,"user_usec":172.5,"real_usec":292.4,"est_time":3.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":85333,"user_time":14.88,"real_time":25.4,"user_ops":5734.7,"real_ops":3360.1,"user_usec":174.4,"real_usec":297.6,"est_time":3.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":84164,"user_time":15.02,"real_time":25.43,"user_ops":5603.5,"real_ops":3310.0,"user_usec":178.5,"real_usec":302.1,"est_time":3.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":77772,"user_time":14.95,"real_time":24.35,"user_ops":5202.1,"real_ops":3193.8,"user_usec":192.2,"real_usec":313.1,"est_time":3.4,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":73142,"user_time":15.17,"real_time":24.23,"user_ops":4821.5,"real_ops":3018.2,"user_usec":207.4,"real_usec":331.3,"est_time":3.32,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":62060,"user_time":14.81,"real_time":23.22,"user_ops":4190.4,"real_ops":2672.1,"user_usec":238.6,"real_usec":374.2,"est_time":3.63,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":48761,"user_time":15.06,"real_time":22.15,"user_ops":3237.8,"real_ops":2201.8,"user_usec":308.9,"real_usec":454.2,"est_time":2.52,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":34909,"user_time":15.19,"real_time":20.99,"user_ops":2298.2,"real_ops":1663.5,"user_usec":435.1,"real_usec":601.2,"est_time":2.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":22260,"user_time":14.97,"real_time":19.27,"user_ops":1487.0,"real_ops":1155.4,"user_usec":672.5,"real_usec":865.5,"est_time":2.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":12590,"user_time":14.85,"real_time":18.6,"user_ops":847.8,"real_ops":676.7,"user_usec":1179.5,"real_usec":1477.7,"est_time":1.98,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":7111,"user_time":15.29,"real_time":18.37,"user_ops":465.1,"real_ops":387.1,"user_usec":2150.2,"real_usec":2583.3,"est_time":1.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":3368,"user_time":14.42,"real_time":16.66,"user_ops":233.6,"real_ops":202.2,"user_usec":4281.5,"real_usec":4945.7,"est_time":1.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1777,"user_time":16.53,"real_time":18.56,"user_ops":107.5,"real_ops":95.7,"user_usec":9302.2,"real_usec":10445.6,"est_time":1.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":676,"user_time":15.59,"real_time":17.08,"user_ops":43.4,"real_ops":39.6,"user_usec":23062.1,"real_usec":25271.2,"est_time":2.18,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":352,"user_time":15.13,"real_time":16.79,"user_ops":23.3,"real_ops":21.0,"user_usec":42983.0,"real_usec":47699.6,"est_time":1.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120510-1530","tag":"suite_insert_one","status":"OK"},
]; // 83 minutes

View File

@ -1,190 +0,0 @@
exp_series_suite_insert_one_ruby = [
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":125387,"user_time":15.11,"real_time":16.31,"user_ops":8298.3,"real_ops":7687.7,"user_usec":120.5,"real_usec":130.1,"est_time":3.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":125387,"user_time":15.21,"real_time":16.6,"user_ops":8243.7,"real_ops":7554.1,"user_usec":121.3,"real_usec":132.4,"est_time":3.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":122880,"user_time":14.93,"real_time":16.24,"user_ops":8230.4,"real_ops":7567.0,"user_usec":121.5,"real_usec":132.2,"est_time":3.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":121663,"user_time":14.59,"real_time":15.89,"user_ops":8338.8,"real_ops":7656.9,"user_usec":119.9,"real_usec":130.6,"est_time":3.3,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":122880,"user_time":14.78,"real_time":16.12,"user_ops":8313.9,"real_ops":7622.7,"user_usec":120.3,"real_usec":131.2,"est_time":3.2,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":120470,"user_time":14.91,"real_time":16.28,"user_ops":8079.8,"real_ops":7400.4,"user_usec":123.8,"real_usec":135.1,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":120470,"user_time":15.18,"real_time":16.39,"user_ops":7936.1,"real_ops":7348.8,"user_usec":126.0,"real_usec":136.1,"est_time":2.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":115924,"user_time":15.2,"real_time":16.41,"user_ops":7626.6,"real_ops":7064.0,"user_usec":131.1,"real_usec":141.6,"est_time":2.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":104135,"user_time":13.91,"real_time":15.28,"user_ops":7486.3,"real_ops":6815.6,"user_usec":133.6,"real_usec":146.7,"est_time":2.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":107789,"user_time":15.07,"real_time":16.6,"user_ops":7152.6,"real_ops":6495.1,"user_usec":139.8,"real_usec":154.0,"est_time":2.14,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":94523,"user_time":14.91,"real_time":16.49,"user_ops":6339.6,"real_ops":5732.3,"user_usec":157.7,"real_usec":174.4,"est_time":2.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":80842,"user_time":15.07,"real_time":16.97,"user_ops":5364.4,"real_ops":4762.6,"user_usec":186.4,"real_usec":210.0,"est_time":2.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":60235,"user_time":14.88,"real_time":19.31,"user_ops":4048.1,"real_ops":3120.0,"user_usec":247.0,"real_usec":320.5,"est_time":1.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":40960,"user_time":15.08,"real_time":16.94,"user_ops":2716.2,"real_ops":2417.4,"user_usec":368.2,"real_usec":413.7,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":23272,"user_time":14.53,"real_time":17.18,"user_ops":1601.7,"real_ops":1354.6,"user_usec":624.4,"real_usec":738.2,"est_time":2.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert","iterations":14490,"user_time":15.03,"real_time":17.89,"user_ops":964.1,"real_ops":810.0,"user_usec":1037.3,"real_usec":1234.6,"est_time":1.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":127999,"user_time":15.13,"real_time":16.45,"user_ops":8459.9,"real_ops":7783.2,"user_usec":118.2,"real_usec":128.5,"est_time":3.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":125387,"user_time":15.13,"real_time":16.53,"user_ops":8287.3,"real_ops":7585.3,"user_usec":120.7,"real_usec":131.8,"est_time":3.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":124121,"user_time":14.68,"real_time":15.86,"user_ops":8455.1,"real_ops":7826.5,"user_usec":118.3,"real_usec":127.8,"est_time":3.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":120470,"user_time":14.34,"real_time":15.49,"user_ops":8401.0,"real_ops":7778.6,"user_usec":119.0,"real_usec":128.6,"est_time":1.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":125387,"user_time":14.9,"real_time":16.21,"user_ops":8415.2,"real_ops":7736.4,"user_usec":118.8,"real_usec":129.3,"est_time":3.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":120470,"user_time":14.76,"real_time":16.12,"user_ops":8161.9,"real_ops":7474.0,"user_usec":122.5,"real_usec":133.8,"est_time":1.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":121663,"user_time":14.98,"real_time":16.3,"user_ops":8121.7,"real_ops":7462.3,"user_usec":123.1,"real_usec":134.0,"est_time":3.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":118153,"user_time":15.04,"real_time":16.42,"user_ops":7855.9,"real_ops":7195.3,"user_usec":127.3,"real_usec":139.0,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":111709,"user_time":14.79,"real_time":16.08,"user_ops":7553.0,"real_ops":6946.2,"user_usec":132.4,"real_usec":144.0,"est_time":1.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":105931,"user_time":14.98,"real_time":16.47,"user_ops":7071.5,"real_ops":6430.7,"user_usec":141.4,"real_usec":155.5,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":93090,"user_time":14.77,"real_time":16.23,"user_ops":6302.6,"real_ops":5735.5,"user_usec":158.7,"real_usec":174.4,"est_time":2.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":77772,"user_time":15.02,"real_time":16.59,"user_ops":5177.9,"real_ops":4689.0,"user_usec":193.1,"real_usec":213.3,"est_time":2.51,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":57962,"user_time":14.84,"real_time":17.83,"user_ops":3905.8,"real_ops":3250.0,"user_usec":256.0,"real_usec":307.7,"est_time":1.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":39384,"user_time":15.06,"real_time":17.85,"user_ops":2615.1,"real_ops":2206.1,"user_usec":382.4,"real_usec":453.3,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":23630,"user_time":14.96,"real_time":18.07,"user_ops":1579.5,"real_ops":1307.8,"user_usec":633.1,"real_usec":764.6,"est_time":2.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert","iterations":13963,"user_time":15.13,"real_time":18.23,"user_ops":922.9,"real_ops":765.8,"user_usec":1083.6,"real_usec":1305.9,"est_time":1.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":99096,"user_time":14.81,"real_time":15.93,"user_ops":6691.2,"real_ops":6222.5,"user_usec":149.5,"real_usec":160.7,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":89043,"user_time":14.85,"real_time":15.85,"user_ops":5996.2,"real_ops":5617.3,"user_usec":166.8,"real_usec":178.0,"est_time":2.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":74024,"user_time":15.11,"real_time":15.89,"user_ops":4899.0,"real_ops":4659.5,"user_usec":204.1,"real_usec":214.6,"est_time":2.51,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":54857,"user_time":14.89,"real_time":15.52,"user_ops":3684.2,"real_ops":3535.1,"user_usec":271.4,"real_usec":282.9,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":36571,"user_time":15.05,"real_time":15.46,"user_ops":2430.0,"real_ops":2365.7,"user_usec":411.5,"real_usec":422.7,"est_time":2.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":21942,"user_time":14.65,"real_time":14.91,"user_ops":1497.7,"real_ops":1472.1,"user_usec":667.7,"real_usec":679.3,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":12190,"user_time":14.59,"real_time":14.73,"user_ops":835.5,"real_ops":827.7,"user_usec":1196.9,"real_usec":1208.2,"est_time":2.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":6620,"user_time":15.09,"real_time":15.17,"user_ops":438.7,"real_ops":436.3,"user_usec":2279.5,"real_usec":2292.0,"est_time":1.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":3428,"user_time":15.13,"real_time":15.17,"user_ops":226.6,"real_ops":225.9,"user_usec":4413.7,"real_usec":4425.8,"est_time":1.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":1714,"user_time":14.79,"real_time":14.83,"user_ops":115.9,"real_ops":115.6,"user_usec":8628.9,"real_usec":8649.9,"est_time":2.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":857,"user_time":14.82,"real_time":14.84,"user_ops":57.8,"real_ops":57.7,"user_usec":17292.9,"real_usec":17319.0,"est_time":1.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":428,"user_time":15.03,"real_time":15.07,"user_ops":28.5,"real_ops":28.4,"user_usec":35116.8,"real_usec":35211.2,"est_time":1.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":210,"user_time":14.82,"real_time":14.86,"user_ops":14.2,"real_ops":14.1,"user_usec":70571.4,"real_usec":70741.6,"est_time":1.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":103,"user_time":15.15,"real_time":15.2,"user_ops":6.8,"real_ops":6.8,"user_usec":147087.4,"real_usec":147614.9,"est_time":1.36,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert","iterations":50,"user_time":14.73,"real_time":14.8,"user_ops":3.4,"real_ops":3.4,"user_usec":294600.0,"real_usec":296016.1,"est_time":1.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":100721,"user_time":14.8,"real_time":15.91,"user_ops":6805.5,"real_ops":6330.4,"user_usec":146.9,"real_usec":158.0,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":93090,"user_time":15.09,"real_time":16.1,"user_ops":6169.0,"real_ops":5782.0,"user_usec":162.1,"real_usec":173.0,"est_time":2.31,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":74926,"user_time":14.93,"real_time":15.76,"user_ops":5018.5,"real_ops":4754.4,"user_usec":199.3,"real_usec":210.3,"est_time":2.64,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":54857,"user_time":14.69,"real_time":15.3,"user_ops":3734.3,"real_ops":3584.5,"user_usec":267.8,"real_usec":279.0,"est_time":1.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":37012,"user_time":14.83,"real_time":15.28,"user_ops":2495.8,"real_ops":2422.2,"user_usec":400.7,"real_usec":412.9,"est_time":2.49,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":22260,"user_time":14.7,"real_time":14.97,"user_ops":1514.3,"real_ops":1487.3,"user_usec":660.4,"real_usec":672.3,"est_time":2.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":12590,"user_time":14.59,"real_time":14.73,"user_ops":862.9,"real_ops":854.7,"user_usec":1158.9,"real_usec":1170.1,"est_time":1.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":6736,"user_time":14.8,"real_time":14.88,"user_ops":455.1,"real_ops":452.7,"user_usec":2197.1,"real_usec":2209.1,"est_time":1.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":3490,"user_time":14.77,"real_time":14.81,"user_ops":236.3,"real_ops":235.6,"user_usec":4232.1,"real_usec":4244.7,"est_time":1.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":1777,"user_time":14.93,"real_time":14.96,"user_ops":119.0,"real_ops":118.8,"user_usec":8401.8,"real_usec":8416.6,"est_time":1.72,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":872,"user_time":14.81,"real_time":14.82,"user_ops":58.9,"real_ops":58.8,"user_usec":16983.9,"real_usec":16998.6,"est_time":1.71,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":421,"user_time":14.84,"real_time":14.85,"user_ops":28.4,"real_ops":28.3,"user_usec":35249.4,"real_usec":35276.9,"est_time":1.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":200,"user_time":15.02,"real_time":15.1,"user_ops":13.3,"real_ops":13.2,"user_usec":75100.0,"real_usec":75524.3,"est_time":1.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":125,"user_time":14.76,"real_time":14.84,"user_ops":8.5,"real_ops":8.4,"user_usec":118080.0,"real_usec":118739.9,"est_time":2.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":58,"user_time":14.25,"real_time":14.31,"user_ops":4.1,"real_ops":4.1,"user_usec":245689.7,"real_usec":246795.2,"est_time":0.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":26,"user_time":14.29,"real_time":14.36,"user_ops":1.8,"real_ops":1.8,"user_usec":549615.4,"real_usec":552262.9,"est_time":1.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":14,"user_time":14.12,"real_time":14.19,"user_ops":1.0,"real_ops":1.0,"user_usec":1008571.4,"real_usec":1013872.0,"est_time":2.05,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert","iterations":7,"user_time":13.94,"real_time":14.03,"user_ops":0.5,"real_ops":0.5,"user_usec":1991428.6,"real_usec":2004297.9,"est_time":4.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":138067,"user_time":14.98,"real_time":16.4,"user_ops":9216.8,"real_ops":8416.6,"user_usec":108.5,"real_usec":118.8,"est_time":2.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":100721,"user_time":15.09,"real_time":16.21,"user_ops":6674.7,"real_ops":6214.2,"user_usec":149.8,"real_usec":160.9,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":63999,"user_time":14.95,"real_time":15.63,"user_ops":4280.9,"real_ops":4094.0,"user_usec":233.6,"real_usec":244.3,"est_time":2.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":37012,"user_time":14.88,"real_time":15.3,"user_ops":2487.4,"real_ops":2419.1,"user_usec":402.0,"real_usec":413.4,"est_time":2.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":20210,"user_time":14.77,"real_time":15.04,"user_ops":1368.3,"real_ops":1344.1,"user_usec":730.8,"real_usec":744.0,"est_time":2.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":10666,"user_time":15.12,"real_time":15.25,"user_ops":705.4,"real_ops":699.2,"user_usec":1417.6,"real_usec":1430.2,"est_time":2.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":5260,"user_time":14.96,"real_time":15.03,"user_ops":351.6,"real_ops":350.0,"user_usec":2844.1,"real_usec":2857.1,"est_time":2.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":2630,"user_time":14.97,"real_time":15.02,"user_ops":175.7,"real_ops":175.1,"user_usec":5692.0,"real_usec":5712.2,"est_time":2.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1297,"user_time":14.87,"real_time":14.9,"user_ops":87.2,"real_ops":87.1,"user_usec":11464.9,"real_usec":11485.9,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":640,"user_time":14.85,"real_time":14.87,"user_ops":43.1,"real_ops":43.0,"user_usec":23203.1,"real_usec":23233.0,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":315,"user_time":14.9,"real_time":14.92,"user_ops":21.1,"real_ops":21.1,"user_usec":47301.6,"real_usec":47380.6,"est_time":2.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":153,"user_time":14.75,"real_time":14.77,"user_ops":10.4,"real_ops":10.4,"user_usec":96405.2,"real_usec":96521.4,"est_time":2.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":75,"user_time":14.8,"real_time":14.85,"user_ops":5.1,"real_ops":5.1,"user_usec":197333.3,"real_usec":197963.7,"est_time":1.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":138067,"user_time":14.88,"real_time":16.3,"user_ops":9278.7,"real_ops":8470.8,"user_usec":107.8,"real_usec":118.1,"est_time":3.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":102400,"user_time":14.85,"real_time":15.85,"user_ops":6895.6,"real_ops":6460.3,"user_usec":145.0,"real_usec":154.8,"est_time":2.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":66064,"user_time":14.87,"real_time":15.63,"user_ops":4442.8,"real_ops":4226.3,"user_usec":225.1,"real_usec":236.6,"est_time":2.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":38886,"user_time":14.76,"real_time":15.24,"user_ops":2634.6,"real_ops":2552.1,"user_usec":379.6,"real_usec":391.8,"est_time":2.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":21333,"user_time":14.9,"real_time":15.17,"user_ops":1431.7,"real_ops":1406.1,"user_usec":698.4,"real_usec":711.2,"est_time":2.14,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":11130,"user_time":14.87,"real_time":15.04,"user_ops":748.5,"real_ops":740.0,"user_usec":1336.0,"real_usec":1351.4,"est_time":2.25,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":5647,"user_time":14.94,"real_time":15.05,"user_ops":378.0,"real_ops":375.3,"user_usec":2645.7,"real_usec":2664.5,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":2823,"user_time":14.98,"real_time":15.02,"user_ops":188.5,"real_ops":187.9,"user_usec":5306.4,"real_usec":5322.3,"est_time":1.95,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1371,"user_time":14.76,"real_time":14.79,"user_ops":92.9,"real_ops":92.7,"user_usec":10765.9,"real_usec":10789.7,"est_time":1.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":676,"user_time":14.9,"real_time":14.92,"user_ops":45.4,"real_ops":45.3,"user_usec":22041.4,"real_usec":22072.1,"est_time":2.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":333,"user_time":14.87,"real_time":14.89,"user_ops":22.4,"real_ops":22.4,"user_usec":44654.7,"real_usec":44714.6,"est_time":1.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":164,"user_time":14.98,"real_time":14.99,"user_ops":10.9,"real_ops":10.9,"user_usec":91341.5,"real_usec":91427.1,"est_time":1.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":80,"user_time":15.05,"real_time":15.08,"user_ops":5.3,"real_ops":5.3,"user_usec":188125.0,"real_usec":188557.7,"est_time":1.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":37,"user_time":14.36,"real_time":14.43,"user_ops":2.6,"real_ops":2.6,"user_usec":388108.1,"real_usec":390024.8,"est_time":0.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":17,"user_time":14.4,"real_time":14.5,"user_ops":1.2,"real_ops":1.2,"user_usec":847058.8,"real_usec":852695.0,"est_time":1.71,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":9,"user_time":14.95,"real_time":15.09,"user_ops":0.6,"real_ops":0.6,"user_usec":1661111.1,"real_usec":1677129.5,"est_time":3.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0524","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":45850,"user_time":14.84,"real_time":22.19,"user_ops":3089.6,"real_ops":2066.3,"user_usec":323.7,"real_usec":484.0,"est_time":2.65,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":44521,"user_time":15.0,"real_time":23.0,"user_ops":2968.1,"real_ops":1935.5,"user_usec":336.9,"real_usec":516.7,"est_time":2.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":47261,"user_time":15.0,"real_time":22.17,"user_ops":3150.7,"real_ops":2132.1,"user_usec":317.4,"real_usec":469.0,"est_time":2.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":47261,"user_time":15.48,"real_time":23.25,"user_ops":3053.0,"real_ops":2032.5,"user_usec":327.5,"real_usec":492.0,"est_time":2.57,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":44521,"user_time":14.3,"real_time":20.86,"user_ops":3113.4,"real_ops":2134.3,"user_usec":321.2,"real_usec":468.5,"est_time":2.63,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":46545,"user_time":14.84,"real_time":22.24,"user_ops":3136.5,"real_ops":2092.7,"user_usec":318.8,"real_usec":477.8,"est_time":2.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":45850,"user_time":14.74,"real_time":21.73,"user_ops":3110.6,"real_ops":2110.3,"user_usec":321.5,"real_usec":473.9,"est_time":2.72,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":47261,"user_time":15.35,"real_time":22.42,"user_ops":3078.9,"real_ops":2108.0,"user_usec":324.8,"real_usec":474.4,"est_time":2.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":42666,"user_time":14.91,"real_time":22.91,"user_ops":2861.6,"real_ops":1862.7,"user_usec":349.5,"real_usec":536.9,"est_time":2.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":40960,"user_time":13.96,"real_time":21.24,"user_ops":2934.1,"real_ops":1928.0,"user_usec":340.8,"real_usec":518.7,"est_time":3.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":39896,"user_time":14.78,"real_time":22.98,"user_ops":2699.3,"real_ops":1735.9,"user_usec":370.5,"real_usec":576.1,"est_time":3.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":38399,"user_time":14.84,"real_time":22.77,"user_ops":2587.5,"real_ops":1686.2,"user_usec":386.5,"real_usec":593.0,"est_time":3.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":32336,"user_time":15.45,"real_time":24.4,"user_ops":2092.9,"real_ops":1325.2,"user_usec":477.8,"real_usec":754.6,"est_time":3.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":25600,"user_time":14.9,"real_time":22.87,"user_ops":1718.1,"real_ops":1119.2,"user_usec":582.0,"real_usec":893.5,"est_time":2.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":17655,"user_time":15.15,"real_time":22.7,"user_ops":1165.3,"real_ops":777.8,"user_usec":858.1,"real_usec":1285.7,"est_time":2.99,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"value_string_size","operation":"insert_safe","iterations":11294,"user_time":14.73,"real_time":22.0,"user_ops":766.7,"real_ops":513.4,"user_usec":1304.2,"real_usec":1947.7,"est_time":2.35,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":47261,"user_time":15.04,"real_time":22.45,"user_ops":3142.4,"real_ops":2105.6,"user_usec":318.2,"real_usec":474.9,"est_time":2.48,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":47261,"user_time":15.25,"real_time":22.88,"user_ops":3099.1,"real_ops":2065.8,"user_usec":322.7,"real_usec":484.1,"est_time":2.41,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":48000,"user_time":15.16,"real_time":22.24,"user_ops":3166.2,"real_ops":2157.8,"user_usec":315.8,"real_usec":463.4,"est_time":2.59,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":48000,"user_time":15.07,"real_time":21.71,"user_ops":3185.1,"real_ops":2211.1,"user_usec":314.0,"real_usec":452.3,"est_time":2.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":48000,"user_time":15.17,"real_time":22.43,"user_ops":3164.1,"real_ops":2140.2,"user_usec":316.0,"real_usec":467.2,"est_time":2.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":47261,"user_time":14.93,"real_time":21.24,"user_ops":3165.5,"real_ops":2224.7,"user_usec":315.9,"real_usec":449.5,"est_time":2.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":47261,"user_time":15.07,"real_time":22.54,"user_ops":3136.1,"real_ops":2096.5,"user_usec":318.9,"real_usec":477.0,"est_time":2.85,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":45850,"user_time":14.8,"real_time":22.13,"user_ops":3098.0,"real_ops":2072.3,"user_usec":322.8,"real_usec":482.6,"est_time":2.46,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":46545,"user_time":15.39,"real_time":22.78,"user_ops":3024.4,"real_ops":2043.2,"user_usec":330.6,"real_usec":489.4,"est_time":2.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":43885,"user_time":15.41,"real_time":23.41,"user_ops":2847.8,"real_ops":1874.3,"user_usec":351.1,"real_usec":533.5,"est_time":3.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":39896,"user_time":14.52,"real_time":22.41,"user_ops":2747.7,"real_ops":1780.0,"user_usec":363.9,"real_usec":561.8,"est_time":3.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":38400,"user_time":15.2,"real_time":23.08,"user_ops":2526.3,"real_ops":1663.4,"user_usec":395.8,"real_usec":601.2,"est_time":3.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":31030,"user_time":14.73,"real_time":22.98,"user_ops":2106.6,"real_ops":1350.2,"user_usec":474.7,"real_usec":740.6,"est_time":3.49,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":25599,"user_time":15.08,"real_time":22.59,"user_ops":1697.5,"real_ops":1133.4,"user_usec":589.1,"real_usec":882.3,"est_time":2.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":17655,"user_time":15.14,"real_time":23.23,"user_ops":1166.1,"real_ops":760.0,"user_usec":857.5,"real_usec":1315.7,"est_time":3.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"key_string_size","operation":"insert_safe","iterations":11130,"user_time":14.92,"real_time":22.44,"user_ops":746.0,"real_ops":496.0,"user_usec":1340.5,"real_usec":2016.1,"est_time":2.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":43885,"user_time":15.92,"real_time":23.79,"user_ops":2756.6,"real_ops":1844.6,"user_usec":362.8,"real_usec":542.1,"est_time":2.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":38886,"user_time":14.95,"real_time":22.66,"user_ops":2601.1,"real_ops":1716.2,"user_usec":384.5,"real_usec":582.7,"est_time":3.02,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":35310,"user_time":14.85,"real_time":22.44,"user_ops":2377.8,"real_ops":1573.5,"user_usec":420.6,"real_usec":635.5,"est_time":3.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":31670,"user_time":15.31,"real_time":22.8,"user_ops":2068.6,"real_ops":1388.7,"user_usec":483.4,"real_usec":720.1,"est_time":3.48,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":23272,"user_time":14.91,"real_time":22.43,"user_ops":1560.8,"real_ops":1037.7,"user_usec":640.7,"real_usec":963.7,"est_time":2.52,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":16516,"user_time":15.12,"real_time":21.58,"user_ops":1092.3,"real_ops":765.5,"user_usec":915.5,"real_usec":1306.3,"est_time":3.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":10240,"user_time":14.84,"real_time":19.8,"user_ops":690.0,"real_ops":517.1,"user_usec":1449.2,"real_usec":1933.8,"est_time":2.55,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":5907,"user_time":14.78,"real_time":18.19,"user_ops":399.7,"real_ops":324.7,"user_usec":2502.1,"real_usec":3079.6,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":3254,"user_time":15.08,"real_time":17.39,"user_ops":215.8,"real_ops":187.1,"user_usec":4634.3,"real_usec":5345.6,"est_time":2.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":1684,"user_time":15.12,"real_time":16.45,"user_ops":111.4,"real_ops":102.3,"user_usec":8978.6,"real_usec":9771.3,"est_time":1.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":813,"user_time":14.2,"real_time":15.19,"user_ops":57.3,"real_ops":53.5,"user_usec":17466.2,"real_usec":18684.2,"est_time":1.96,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":421,"user_time":14.84,"real_time":15.69,"user_ops":28.4,"real_ops":26.8,"user_usec":35249.4,"real_usec":37267.6,"est_time":1.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":210,"user_time":14.89,"real_time":15.76,"user_ops":14.1,"real_ops":13.3,"user_usec":70904.8,"real_usec":75025.8,"est_time":1.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":103,"user_time":14.75,"real_time":15.64,"user_ops":7.0,"real_ops":6.6,"user_usec":143203.9,"real_usec":151855.9,"est_time":1.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"array_size_fixnum","operation":"insert_safe","iterations":49,"user_time":14.35,"real_time":15.09,"user_ops":3.4,"real_ops":3.2,"user_usec":292857.1,"real_usec":307862.1,"est_time":1.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":43885,"user_time":15.47,"real_time":22.82,"user_ops":2836.8,"real_ops":1923.1,"user_usec":352.5,"real_usec":520.0,"est_time":2.69,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":40960,"user_time":14.75,"real_time":20.98,"user_ops":2776.9,"real_ops":1952.5,"user_usec":360.1,"real_usec":512.2,"est_time":2.8,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":35720,"user_time":14.47,"real_time":21.71,"user_ops":2468.6,"real_ops":1645.4,"user_usec":405.1,"real_usec":607.8,"est_time":3.2,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":32680,"user_time":15.47,"real_time":23.05,"user_ops":2112.5,"real_ops":1417.8,"user_usec":473.4,"real_usec":705.3,"est_time":3.5,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":24774,"user_time":15.04,"real_time":21.53,"user_ops":1647.2,"real_ops":1150.8,"user_usec":607.1,"real_usec":868.9,"est_time":2.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":17258,"user_time":15.26,"real_time":21.75,"user_ops":1130.9,"real_ops":793.5,"user_usec":884.2,"real_usec":1260.2,"est_time":3.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":10520,"user_time":14.93,"real_time":19.78,"user_ops":704.6,"real_ops":531.8,"user_usec":1419.2,"real_usec":1880.3,"est_time":2.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":6193,"user_time":15.08,"real_time":18.13,"user_ops":410.7,"real_ops":341.5,"user_usec":2435.0,"real_usec":2928.0,"est_time":2.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":3310,"user_time":15.02,"real_time":17.29,"user_ops":220.4,"real_ops":191.4,"user_usec":4537.8,"real_usec":5224.2,"est_time":2.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":1745,"user_time":15.29,"real_time":16.81,"user_ops":114.1,"real_ops":103.8,"user_usec":8762.2,"real_usec":9631.7,"est_time":1.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":857,"user_time":14.87,"real_time":15.97,"user_ops":57.6,"real_ops":53.7,"user_usec":17351.2,"real_usec":18637.0,"est_time":1.91,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":421,"user_time":15.0,"real_time":15.88,"user_ops":28.1,"real_ops":26.5,"user_usec":35629.5,"real_usec":37712.1,"est_time":1.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":199,"user_time":14.97,"real_time":15.79,"user_ops":13.3,"real_ops":12.6,"user_usec":75226.1,"real_usec":79344.2,"est_time":1.67,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":124,"user_time":14.88,"real_time":15.65,"user_ops":8.3,"real_ops":7.9,"user_usec":120000.0,"real_usec":126182.7,"est_time":2.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":60,"user_time":14.93,"real_time":15.67,"user_ops":4.0,"real_ops":3.8,"user_usec":248833.3,"real_usec":261195.1,"est_time":2.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":27,"user_time":14.87,"real_time":15.57,"user_ops":1.8,"real_ops":1.7,"user_usec":550740.7,"real_usec":576507.2,"est_time":1.7,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":16,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":14,"user_time":14.31,"real_time":14.96,"user_ops":1.0,"real_ops":0.9,"user_usec":1022142.9,"real_usec":1068694.6,"est_time":2.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":17,"size":131072,"exp2":17,"multi_power":-1,"multi_size":1,"generator":"hash_size_fixnum","operation":"insert_safe","iterations":7,"user_time":14.17,"real_time":14.91,"user_ops":0.5,"real_ops":0.5,"user_usec":2024285.7,"real_usec":2130625.8,"est_time":4.71,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":52067,"user_time":15.34,"real_time":24.25,"user_ops":3394.2,"real_ops":2146.9,"user_usec":294.6,"real_usec":465.8,"est_time":2.66,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":46545,"user_time":15.2,"real_time":23.07,"user_ops":3062.2,"real_ops":2018.0,"user_usec":326.6,"real_usec":495.5,"est_time":2.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":36141,"user_time":15.76,"real_time":23.09,"user_ops":2293.2,"real_ops":1565.5,"user_usec":436.1,"real_usec":638.8,"est_time":3.33,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":24380,"user_time":14.3,"real_time":19.56,"user_ops":1704.9,"real_ops":1246.5,"user_usec":586.5,"real_usec":802.2,"est_time":2.38,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":15835,"user_time":14.85,"real_time":20.37,"user_ops":1066.3,"real_ops":777.2,"user_usec":937.8,"real_usec":1286.6,"est_time":3.22,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":9142,"user_time":14.91,"real_time":19.18,"user_ops":613.1,"real_ops":476.6,"user_usec":1630.9,"real_usec":2098.2,"est_time":2.81,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":4923,"user_time":15.06,"real_time":17.72,"user_ops":326.9,"real_ops":277.9,"user_usec":3059.1,"real_usec":3599.0,"est_time":2.72,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":2526,"user_time":14.93,"real_time":16.7,"user_ops":169.2,"real_ops":151.2,"user_usec":5910.5,"real_usec":6612.4,"est_time":2.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":1263,"user_time":14.86,"real_time":16.42,"user_ops":85.0,"real_ops":76.9,"user_usec":11765.6,"real_usec":13000.2,"est_time":2.31,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":623,"user_time":14.73,"real_time":15.71,"user_ops":42.3,"real_ops":39.7,"user_usec":23643.7,"real_usec":25220.4,"est_time":2.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":311,"user_time":14.92,"real_time":16.08,"user_ops":20.8,"real_ops":19.3,"user_usec":47974.3,"real_usec":51716.6,"est_time":2.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":153,"user_time":14.93,"real_time":15.92,"user_ops":10.2,"real_ops":9.6,"user_usec":97581.7,"real_usec":104032.4,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert_safe","iterations":75,"user_time":14.82,"real_time":15.6,"user_ops":5.1,"real_ops":4.8,"user_usec":197600.0,"real_usec":207976.5,"est_time":1.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":52067,"user_time":14.91,"real_time":23.29,"user_ops":3492.1,"real_ops":2235.5,"user_usec":286.4,"real_usec":447.3,"est_time":2.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":1,"size":2,"exp2":1,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":43267,"user_time":15.06,"real_time":23.23,"user_ops":2873.0,"real_ops":1862.7,"user_usec":348.1,"real_usec":536.9,"est_time":2.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":2,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":35310,"user_time":15.18,"real_time":22.41,"user_ops":2326.1,"real_ops":1575.7,"user_usec":429.9,"real_usec":634.6,"est_time":3.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":3,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":25600,"user_time":14.53,"real_time":20.41,"user_ops":1761.9,"real_ops":1254.5,"user_usec":567.6,"real_usec":797.1,"est_time":2.61,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":4,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":16695,"user_time":14.94,"real_time":21.35,"user_ops":1117.5,"real_ops":782.0,"user_usec":894.9,"real_usec":1278.8,"est_time":3.18,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":5,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":9600,"user_time":14.91,"real_time":19.74,"user_ops":643.9,"real_ops":486.3,"user_usec":1553.1,"real_usec":2056.2,"est_time":2.89,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":6,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":5189,"user_time":14.88,"real_time":17.86,"user_ops":348.7,"real_ops":290.5,"user_usec":2867.6,"real_usec":3442.6,"est_time":2.51,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":7,"size":128,"exp2":7,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":2704,"user_time":14.98,"real_time":17.14,"user_ops":180.5,"real_ops":157.8,"user_usec":5539.9,"real_usec":6337.4,"est_time":2.4,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":8,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":1352,"user_time":15.0,"real_time":16.55,"user_ops":90.1,"real_ops":81.7,"user_usec":11094.7,"real_usec":12242.7,"est_time":2.11,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":9,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":676,"user_time":15.07,"real_time":16.01,"user_ops":44.9,"real_ops":42.2,"user_usec":22292.9,"real_usec":23685.1,"est_time":1.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":10,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":328,"user_time":14.88,"real_time":15.73,"user_ops":22.0,"real_ops":20.8,"user_usec":45365.9,"real_usec":47962.6,"est_time":1.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":11,"size":2048,"exp2":11,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":160,"user_time":14.78,"real_time":15.76,"user_ops":10.8,"real_ops":10.2,"user_usec":92375.0,"real_usec":98492.2,"est_time":2.0,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":12,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":77,"user_time":14.72,"real_time":15.47,"user_ops":5.2,"real_ops":5.0,"user_usec":191168.8,"real_usec":200849.9,"est_time":1.77,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":13,"size":8192,"exp2":13,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":36,"user_time":14.25,"real_time":14.92,"user_ops":2.5,"real_ops":2.4,"user_usec":395833.3,"real_usec":414344.1,"est_time":1.37,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":14,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":17,"user_time":14.47,"real_time":15.22,"user_ops":1.2,"real_ops":1.1,"user_usec":851176.5,"real_usec":895174.3,"est_time":2.32,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
{"base":2,"power":15,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert_safe","iterations":8,"user_time":13.39,"real_time":14.08,"user_ops":0.6,"real_ops":0.6,"user_usec":1673750.0,"real_usec":1760232.6,"est_time":3.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-0554","tag":"suite_insert_one","status":"OK"},
]; // 67 minutes

View File

@ -1,86 +0,0 @@
exp_series_suite_nest_c = [
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":192000,"user_time":15.09,"real_time":17.11,"user_ops":12723.7,"real_ops":11224.1,"user_usec":78.6,"real_usec":89.1,"est_time":2.55,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":149853,"user_time":14.94,"real_time":16.62,"user_ops":10030.3,"real_ops":9019.0,"user_usec":99.7,"real_usec":110.9,"est_time":2.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":90352,"user_time":15.0,"real_time":16.08,"user_ops":6023.5,"real_ops":5620.0,"user_usec":166.0,"real_usec":177.9,"est_time":2.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":33758,"user_time":15.25,"real_time":15.65,"user_ops":2213.6,"real_ops":2156.8,"user_usec":451.7,"real_usec":463.7,"est_time":2.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":10240,"user_time":15.85,"real_time":15.97,"user_ops":646.1,"real_ops":641.0,"user_usec":1547.9,"real_usec":1560.0,"est_time":2.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":2526,"user_time":14.83,"real_time":14.9,"user_ops":170.3,"real_ops":169.5,"user_usec":5870.9,"real_usec":5899.3,"est_time":2.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":640,"user_time":14.83,"real_time":14.85,"user_ops":43.2,"real_ops":43.1,"user_usec":23171.9,"real_usec":23201.7,"est_time":2.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":191999,"user_time":15.1,"real_time":17.29,"user_ops":12715.2,"real_ops":11107.6,"user_usec":78.6,"real_usec":90.0,"est_time":2.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":136533,"user_time":14.96,"real_time":16.29,"user_ops":9126.5,"real_ops":8379.5,"user_usec":109.6,"real_usec":119.3,"est_time":3.11,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":37463,"user_time":14.92,"real_time":15.36,"user_ops":2510.9,"real_ops":2439.7,"user_usec":398.3,"real_usec":409.9,"est_time":2.38,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":5999,"user_time":14.59,"real_time":14.68,"user_ops":411.2,"real_ops":408.8,"user_usec":2432.1,"real_usec":2446.4,"est_time":1.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":786,"user_time":14.7,"real_time":14.73,"user_ops":53.5,"real_ops":53.4,"user_usec":18702.3,"real_usec":18738.4,"est_time":1.72,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":183402,"user_time":14.48,"real_time":16.33,"user_ops":12665.9,"real_ops":11233.4,"user_usec":79.0,"real_usec":89.0,"est_time":2.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":100721,"user_time":14.94,"real_time":16.15,"user_ops":6741.7,"real_ops":6236.4,"user_usec":148.3,"real_usec":160.3,"est_time":2.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":12190,"user_time":15.15,"real_time":15.29,"user_ops":804.6,"real_ops":797.0,"user_usec":1242.8,"real_usec":1254.7,"est_time":2.13,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":857,"user_time":14.92,"real_time":15.03,"user_ops":57.4,"real_ops":57.0,"user_usec":17409.6,"real_usec":17532.3,"est_time":1.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":189046,"user_time":15.13,"real_time":17.35,"user_ops":12494.8,"real_ops":10896.9,"user_usec":80.0,"real_usec":91.8,"est_time":2.78,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":69033,"user_time":14.82,"real_time":15.61,"user_ops":4658.1,"real_ops":4423.7,"user_usec":214.7,"real_usec":226.1,"est_time":2.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":3490,"user_time":15.83,"real_time":16.1,"user_ops":220.5,"real_ops":216.7,"user_usec":4535.8,"real_usec":4614.5,"est_time":1.68,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":186181,"user_time":14.87,"real_time":16.92,"user_ops":12520.6,"real_ops":11005.6,"user_usec":79.9,"real_usec":90.9,"est_time":2.66,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":183402,"user_time":15.13,"real_time":17.15,"user_ops":12121.7,"real_ops":10696.5,"user_usec":82.5,"real_usec":93.5,"est_time":2.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":163840,"user_time":14.7,"real_time":16.66,"user_ops":11145.6,"real_ops":9831.9,"user_usec":89.7,"real_usec":101.7,"est_time":2.89,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":115924,"user_time":14.59,"real_time":16.12,"user_ops":7945.4,"real_ops":7189.5,"user_usec":125.9,"real_usec":139.1,"est_time":2.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":55854,"user_time":14.9,"real_time":16.18,"user_ops":3748.6,"real_ops":3451.5,"user_usec":266.8,"real_usec":289.7,"est_time":1.82,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":19199,"user_time":15.49,"real_time":16.38,"user_ops":1239.4,"real_ops":1171.8,"user_usec":806.8,"real_usec":853.4,"est_time":2.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":6736,"user_time":15.03,"real_time":16.06,"user_ops":448.2,"real_ops":419.5,"user_usec":2231.3,"real_usec":2383.7,"est_time":1.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":7,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1371,"user_time":15.15,"real_time":16.52,"user_ops":90.5,"real_ops":83.0,"user_usec":11050.3,"real_usec":12052.6,"est_time":2.02,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":8,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":380,"user_time":14.95,"real_time":16.23,"user_ops":25.4,"real_ops":23.4,"user_usec":39342.1,"real_usec":42712.3,"est_time":1.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":195047,"user_time":14.56,"real_time":16.56,"user_ops":13396.1,"real_ops":11781.5,"user_usec":74.6,"real_usec":84.9,"est_time":2.69,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":191999,"user_time":15.35,"real_time":17.56,"user_ops":12508.1,"real_ops":10931.7,"user_usec":79.9,"real_usec":91.5,"est_time":3.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":149853,"user_time":14.94,"real_time":17.09,"user_ops":10030.3,"real_ops":8768.0,"user_usec":99.7,"real_usec":114.1,"est_time":2.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":56888,"user_time":15.27,"real_time":17.27,"user_ops":3725.5,"real_ops":3293.3,"user_usec":268.4,"real_usec":303.6,"est_time":1.86,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":9974,"user_time":14.83,"real_time":16.12,"user_ops":672.6,"real_ops":618.6,"user_usec":1486.9,"real_usec":1616.5,"est_time":2.16,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":198193,"user_time":14.92,"real_time":17.16,"user_ops":13283.7,"real_ops":11552.3,"user_usec":75.3,"real_usec":86.6,"est_time":2.37,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":186181,"user_time":14.84,"real_time":17.13,"user_ops":12545.9,"real_ops":10867.5,"user_usec":79.7,"real_usec":92.0,"est_time":2.53,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":91701,"user_time":14.86,"real_time":16.74,"user_ops":6171.0,"real_ops":5476.7,"user_usec":162.0,"real_usec":182.6,"est_time":2.19,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":11130,"user_time":15.0,"real_time":16.19,"user_ops":742.0,"real_ops":687.6,"user_usec":1347.7,"real_usec":1454.3,"est_time":1.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":16,"power":4,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":533,"user_time":14.91,"real_time":19.28,"user_ops":35.7,"real_ops":27.6,"user_usec":27973.7,"real_usec":36171.6,"est_time":2.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":198193,"user_time":14.52,"real_time":16.87,"user_ops":13649.7,"real_ops":11750.3,"user_usec":73.3,"real_usec":85.1,"est_time":2.54,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":173070,"user_time":14.82,"real_time":17.04,"user_ops":11678.1,"real_ops":10156.0,"user_usec":85.6,"real_usec":98.5,"est_time":2.62,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":38886,"user_time":15.03,"real_time":16.67,"user_ops":2587.2,"real_ops":2333.4,"user_usec":386.5,"real_usec":428.6,"est_time":2.35,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":32,"power":3,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1476,"user_time":15.29,"real_time":16.75,"user_ops":96.5,"real_ops":88.1,"user_usec":10359.1,"real_usec":11347.2,"est_time":1.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0451","tag":"suite_nest","status":"OK"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":84164,"user_time":14.02,"real_time":23.35,"user_ops":6003.1,"real_ops":3604.8,"user_usec":166.6,"real_usec":277.4,"est_time":2.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":84164,"user_time":14.04,"real_time":23.23,"user_ops":5994.6,"real_ops":3622.5,"user_usec":166.8,"real_usec":276.1,"est_time":2.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":87771,"user_time":14.95,"real_time":25.22,"user_ops":5871.0,"real_ops":3479.6,"user_usec":170.3,"real_usec":287.4,"est_time":2.95,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":78769,"user_time":14.79,"real_time":24.87,"user_ops":5325.8,"real_ops":3166.7,"user_usec":187.8,"real_usec":315.8,"est_time":3.27,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":66782,"user_time":14.76,"real_time":22.85,"user_ops":4524.5,"real_ops":2922.1,"user_usec":221.0,"real_usec":342.2,"est_time":3.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":39896,"user_time":14.92,"real_time":20.96,"user_ops":2674.0,"real_ops":1903.7,"user_usec":374.0,"real_usec":525.3,"est_time":2.75,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":15058,"user_time":14.92,"real_time":19.01,"user_ops":1009.2,"real_ops":791.9,"user_usec":990.8,"real_usec":1262.7,"est_time":2.1,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":89043,"user_time":14.67,"real_time":24.23,"user_ops":6069.7,"real_ops":3674.2,"user_usec":164.8,"real_usec":272.2,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":87771,"user_time":14.52,"real_time":23.74,"user_ops":6044.8,"real_ops":3697.9,"user_usec":165.4,"real_usec":270.4,"est_time":3.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":85333,"user_time":15.06,"real_time":24.95,"user_ops":5666.2,"real_ops":3419.7,"user_usec":176.5,"real_usec":292.4,"est_time":2.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":66782,"user_time":14.97,"real_time":22.89,"user_ops":4461.1,"real_ops":2917.7,"user_usec":224.2,"real_usec":342.7,"est_time":3.39,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":23999,"user_time":14.44,"real_time":19.11,"user_ops":1662.0,"real_ops":1256.0,"user_usec":601.7,"real_usec":796.2,"est_time":2.65,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":84164,"user_time":13.43,"real_time":21.62,"user_ops":6266.9,"real_ops":3893.7,"user_usec":159.6,"real_usec":256.8,"est_time":3.09,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":85333,"user_time":14.67,"real_time":24.66,"user_ops":5816.8,"real_ops":3460.8,"user_usec":171.9,"real_usec":289.0,"est_time":3.2,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":83027,"user_time":16.52,"real_time":28.15,"user_ops":5025.8,"real_ops":2949.2,"user_usec":199.0,"real_usec":339.1,"est_time":2.92,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":30117,"user_time":14.3,"real_time":20.16,"user_ops":2106.1,"real_ops":1493.9,"user_usec":474.8,"real_usec":669.4,"est_time":2.12,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":96000,"user_time":16.03,"real_time":26.62,"user_ops":5988.8,"real_ops":3606.4,"user_usec":167.0,"real_usec":277.3,"est_time":2.73,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":91701,"user_time":15.66,"real_time":26.58,"user_ops":5855.7,"real_ops":3449.6,"user_usec":170.8,"real_usec":289.9,"est_time":2.81,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":60235,"user_time":14.52,"real_time":22.83,"user_ops":4148.4,"real_ops":2638.5,"user_usec":241.1,"real_usec":379.0,"est_time":2.32,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":84164,"user_time":14.23,"real_time":24.01,"user_ops":5914.5,"real_ops":3505.7,"user_usec":169.1,"real_usec":285.2,"est_time":2.93,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":90352,"user_time":16.55,"real_time":28.5,"user_ops":5459.3,"real_ops":3169.9,"user_usec":183.2,"real_usec":315.5,"est_time":2.83,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":83027,"user_time":15.66,"real_time":25.2,"user_ops":5301.9,"real_ops":3295.2,"user_usec":188.6,"real_usec":303.5,"est_time":2.99,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":60235,"user_time":15.96,"real_time":24.35,"user_ops":3774.1,"real_ops":2473.5,"user_usec":265.0,"real_usec":404.3,"est_time":1.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":28981,"user_time":15.09,"real_time":19.64,"user_ops":1920.5,"real_ops":1475.6,"user_usec":520.7,"real_usec":677.7,"est_time":1.94,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":11294,"user_time":14.95,"real_time":18.83,"user_ops":755.5,"real_ops":599.7,"user_usec":1323.7,"real_usec":1667.6,"est_time":2.32,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":3096,"user_time":15.01,"real_time":16.85,"user_ops":206.3,"real_ops":183.8,"user_usec":4848.2,"real_usec":5441.1,"est_time":1.91,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":7,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":774,"user_time":14.61,"real_time":15.82,"user_ops":53.0,"real_ops":48.9,"user_usec":18876.0,"real_usec":20434.7,"est_time":1.85,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":4,"power":8,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":206,"user_time":15.16,"real_time":16.23,"user_ops":13.6,"real_ops":12.7,"user_usec":73592.2,"real_usec":78805.8,"est_time":1.9,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":94523,"user_time":14.77,"real_time":25.21,"user_ops":6399.7,"real_ops":3748.7,"user_usec":156.3,"real_usec":266.8,"est_time":2.88,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":90352,"user_time":15.59,"real_time":27.32,"user_ops":5795.5,"real_ops":3307.3,"user_usec":172.5,"real_usec":302.4,"est_time":2.87,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":71441,"user_time":15.98,"real_time":25.86,"user_ops":4470.7,"real_ops":2762.5,"user_usec":223.7,"real_usec":362.0,"est_time":3.33,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":26482,"user_time":15.06,"real_time":18.99,"user_ops":1758.4,"real_ops":1394.5,"user_usec":568.7,"real_usec":717.1,"est_time":2.01,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":4465,"user_time":15.06,"real_time":17.47,"user_ops":296.5,"real_ops":255.5,"user_usec":3372.9,"real_usec":3913.2,"est_time":2.5,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":94523,"user_time":14.63,"real_time":24.83,"user_ops":6460.9,"real_ops":3806.1,"user_usec":154.8,"real_usec":262.7,"est_time":2.77,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":84164,"user_time":15.02,"real_time":26.38,"user_ops":5603.5,"real_ops":3190.3,"user_usec":178.5,"real_usec":313.4,"est_time":3.06,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":42666,"user_time":14.57,"real_time":20.17,"user_ops":2928.3,"real_ops":2114.8,"user_usec":341.5,"real_usec":472.8,"est_time":2.59,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":4923,"user_time":14.63,"real_time":17.06,"user_ops":336.5,"real_ops":288.6,"user_usec":2971.8,"real_usec":3464.8,"est_time":2.3,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":16,"power":4,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":282,"user_time":15.05,"real_time":16.16,"user_ops":18.7,"real_ops":17.5,"user_usec":53368.8,"real_usec":57295.7,"est_time":2.36,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":102399,"user_time":16.35,"real_time":28.18,"user_ops":6262.9,"real_ops":3633.7,"user_usec":159.7,"real_usec":275.2,"est_time":2.63,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":83027,"user_time":15.42,"real_time":26.15,"user_ops":5384.4,"real_ops":3175.1,"user_usec":185.7,"real_usec":315.0,"est_time":2.96,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":17655,"user_time":14.69,"real_time":17.9,"user_ops":1201.8,"real_ops":986.1,"user_usec":832.1,"real_usec":1014.0,"est_time":2.63,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
{"base":32,"power":3,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":607,"user_time":15.1,"real_time":16.27,"user_ops":40.2,"real_ops":37.3,"user_usec":24876.4,"real_usec":26811.5,"est_time":2.21,"mode":"c","hostname":"osprey","osname":"Darwin","date":"20120511-0506","tag":"suite_nest","status":"OK"},
]; // 33 minutes

View File

@ -1,86 +0,0 @@
exp_series_suite_nest_ruby = [
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":125387,"user_time":15.32,"real_time":16.82,"user_ops":8184.5,"real_ops":7455.5,"user_usec":122.2,"real_usec":134.1,"est_time":3.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":74024,"user_time":15.03,"real_time":15.92,"user_ops":4925.1,"real_ops":4650.6,"user_usec":203.0,"real_usec":215.0,"est_time":2.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":27927,"user_time":14.82,"real_time":15.17,"user_ops":1884.4,"real_ops":1841.3,"user_usec":530.7,"real_usec":543.1,"est_time":1.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":8170,"user_time":15.05,"real_time":15.15,"user_ops":542.9,"real_ops":539.3,"user_usec":1842.1,"real_usec":1854.2,"est_time":2.47,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":2042,"user_time":14.82,"real_time":14.86,"user_ops":137.8,"real_ops":137.4,"user_usec":7257.6,"real_usec":7277.2,"est_time":2.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":516,"user_time":15.09,"real_time":15.11,"user_ops":34.2,"real_ops":34.2,"user_usec":29244.2,"real_usec":29274.5,"est_time":2.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":124,"user_time":14.87,"real_time":14.89,"user_ops":8.3,"real_ops":8.3,"user_usec":119919.4,"real_usec":120118.2,"est_time":2.14,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":124121,"user_time":14.94,"real_time":16.32,"user_ops":8308.0,"real_ops":7605.0,"user_usec":120.4,"real_usec":131.5,"est_time":3.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":54857,"user_time":15.36,"real_time":15.99,"user_ops":3571.4,"real_ops":3430.2,"user_usec":280.0,"real_usec":291.5,"est_time":1.82,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":10240,"user_time":15.49,"real_time":15.63,"user_ops":661.1,"real_ops":655.3,"user_usec":1512.7,"real_usec":1526.0,"est_time":2.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":1333,"user_time":15.29,"real_time":15.32,"user_ops":87.2,"real_ops":87.0,"user_usec":11470.4,"real_usec":11489.1,"est_time":2.01,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":164,"user_time":15.14,"real_time":15.16,"user_ops":10.8,"real_ops":10.8,"user_usec":92317.1,"real_usec":92429.8,"est_time":1.78,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":122880,"user_time":14.81,"real_time":16.17,"user_ops":8297.1,"real_ops":7599.0,"user_usec":120.5,"real_usec":131.6,"est_time":3.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":36571,"user_time":15.1,"real_time":15.55,"user_ops":2421.9,"real_ops":2351.5,"user_usec":412.9,"real_usec":425.3,"est_time":2.48,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":3000,"user_time":14.99,"real_time":15.03,"user_ops":200.1,"real_ops":199.6,"user_usec":4996.7,"real_usec":5010.4,"est_time":1.87,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":181,"user_time":14.69,"real_time":14.72,"user_ops":12.3,"real_ops":12.3,"user_usec":81160.2,"real_usec":81313.8,"est_time":1.65,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":121663,"user_time":14.75,"real_time":16.11,"user_ops":8248.3,"real_ops":7551.5,"user_usec":121.2,"real_usec":132.4,"est_time":3.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":21942,"user_time":14.99,"real_time":15.26,"user_ops":1463.8,"real_ops":1438.1,"user_usec":683.2,"real_usec":695.4,"est_time":2.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"insert","iterations":800,"user_time":14.88,"real_time":14.94,"user_ops":53.8,"real_ops":53.6,"user_usec":18600.0,"real_usec":18673.2,"est_time":1.72,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":125387,"user_time":15.19,"real_time":16.66,"user_ops":8254.6,"real_ops":7524.8,"user_usec":121.1,"real_usec":132.9,"est_time":3.08,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":75851,"user_time":15.05,"real_time":15.94,"user_ops":5039.9,"real_ops":4759.5,"user_usec":198.4,"real_usec":210.1,"est_time":2.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":27927,"user_time":14.55,"real_time":14.91,"user_ops":1919.4,"real_ops":1872.5,"user_usec":521.0,"real_usec":534.0,"est_time":1.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":8533,"user_time":15.09,"real_time":15.2,"user_ops":565.5,"real_ops":561.4,"user_usec":1768.4,"real_usec":1781.2,"est_time":2.42,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":2086,"user_time":14.49,"real_time":14.53,"user_ops":144.0,"real_ops":143.6,"user_usec":6946.3,"real_usec":6963.9,"est_time":2.44,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":510,"user_time":14.69,"real_time":14.72,"user_ops":34.7,"real_ops":34.7,"user_usec":28803.9,"real_usec":28854.6,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":146,"user_time":15.09,"real_time":15.12,"user_ops":9.7,"real_ops":9.7,"user_usec":103356.2,"real_usec":103588.8,"est_time":2.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":7,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":32,"user_time":14.93,"real_time":14.99,"user_ops":2.1,"real_ops":2.1,"user_usec":466562.5,"real_usec":468553.6,"est_time":1.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":8,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":8,"user_time":14.13,"real_time":14.22,"user_ops":0.6,"real_ops":0.6,"user_usec":1766250.0,"real_usec":1777441.1,"est_time":3.6,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":138067,"user_time":15.13,"real_time":16.64,"user_ops":9125.4,"real_ops":8294.9,"user_usec":109.6,"real_usec":120.6,"est_time":2.9,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":63340,"user_time":14.95,"real_time":15.67,"user_ops":4236.8,"real_ops":4042.2,"user_usec":236.0,"real_usec":247.4,"est_time":2.72,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":12190,"user_time":14.84,"real_time":15.0,"user_ops":821.4,"real_ops":812.8,"user_usec":1217.4,"real_usec":1230.3,"est_time":1.88,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":1627,"user_time":15.14,"real_time":15.17,"user_ops":107.5,"real_ops":107.3,"user_usec":9305.5,"real_usec":9323.5,"est_time":1.75,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":199,"user_time":15.13,"real_time":15.17,"user_ops":13.2,"real_ops":13.1,"user_usec":76030.2,"real_usec":76239.8,"est_time":1.73,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":136533,"user_time":14.9,"real_time":16.46,"user_ops":9163.3,"real_ops":8293.0,"user_usec":109.1,"real_usec":120.6,"est_time":2.98,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":43267,"user_time":15.13,"real_time":15.69,"user_ops":2859.7,"real_ops":2757.1,"user_usec":349.7,"real_usec":362.7,"est_time":2.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":3622,"user_time":14.74,"real_time":14.8,"user_ops":245.7,"real_ops":244.8,"user_usec":4069.6,"real_usec":4085.0,"est_time":1.62,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":226,"user_time":15.0,"real_time":15.03,"user_ops":15.1,"real_ops":15.0,"user_usec":66371.7,"real_usec":66519.0,"est_time":1.39,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":16,"power":4,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":10,"user_time":14.12,"real_time":14.17,"user_ops":0.7,"real_ops":0.7,"user_usec":1412000.0,"real_usec":1416706.2,"est_time":2.76,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":136533,"user_time":15.1,"real_time":16.62,"user_ops":9041.9,"real_ops":8216.4,"user_usec":110.6,"real_usec":121.7,"est_time":3.16,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":26033,"user_time":14.74,"real_time":15.12,"user_ops":1766.1,"real_ops":1721.9,"user_usec":566.2,"real_usec":580.8,"est_time":1.94,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":979,"user_time":15.04,"real_time":15.06,"user_ops":65.1,"real_ops":65.0,"user_usec":15362.6,"real_usec":15388.1,"est_time":2.56,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":32,"power":3,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"insert","iterations":28,"user_time":15.08,"real_time":15.14,"user_ops":1.9,"real_ops":1.8,"user_usec":538571.4,"real_usec":540554.3,"est_time":1.12,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1356","tag":"suite_nest","status":"OK"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":73142,"user_time":15.13,"real_time":23.51,"user_ops":4834.2,"real_ops":3111.0,"user_usec":206.9,"real_usec":321.4,"est_time":3.15,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":57962,"user_time":15.83,"real_time":23.27,"user_ops":3661.5,"real_ops":2490.7,"user_usec":273.1,"real_usec":401.5,"est_time":2.1,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":28444,"user_time":14.49,"real_time":18.35,"user_ops":1963.0,"real_ops":1550.1,"user_usec":509.4,"real_usec":645.1,"est_time":2.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":9974,"user_time":14.83,"real_time":17.9,"user_ops":672.6,"real_ops":557.2,"user_usec":1486.9,"real_usec":1794.5,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":2782,"user_time":15.23,"real_time":16.52,"user_ops":182.7,"real_ops":168.4,"user_usec":5474.5,"real_usec":5937.4,"est_time":2.06,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":695,"user_time":15.04,"real_time":15.9,"user_ops":46.2,"real_ops":43.7,"user_usec":21640.3,"real_usec":22872.2,"est_time":2.13,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":166,"user_time":14.75,"real_time":15.41,"user_ops":11.3,"real_ops":10.8,"user_usec":88855.4,"real_usec":92831.2,"est_time":2.2,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":69033,"user_time":14.26,"real_time":22.38,"user_ops":4841.0,"real_ops":3084.5,"user_usec":206.6,"real_usec":324.2,"est_time":3.35,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":48761,"user_time":15.03,"real_time":21.02,"user_ops":3244.2,"real_ops":2320.1,"user_usec":308.2,"real_usec":431.0,"est_time":2.26,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":13473,"user_time":15.09,"real_time":18.37,"user_ops":892.8,"real_ops":733.4,"user_usec":1120.0,"real_usec":1363.4,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":1959,"user_time":14.83,"real_time":16.07,"user_ops":132.1,"real_ops":121.9,"user_usec":7570.2,"real_usec":8203.6,"est_time":2.69,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":244,"user_time":14.92,"real_time":15.63,"user_ops":16.4,"real_ops":15.6,"user_usec":61147.5,"real_usec":64060.5,"est_time":2.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":73142,"user_time":15.42,"real_time":24.19,"user_ops":4743.3,"real_ops":3023.9,"user_usec":210.8,"real_usec":330.7,"est_time":3.27,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":37463,"user_time":15.01,"real_time":20.15,"user_ops":2495.9,"real_ops":1859.5,"user_usec":400.7,"real_usec":537.8,"est_time":2.79,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":4314,"user_time":14.52,"real_time":16.46,"user_ops":297.1,"real_ops":262.1,"user_usec":3365.8,"real_usec":3815.4,"est_time":2.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":279,"user_time":14.75,"real_time":15.51,"user_ops":18.9,"real_ops":18.0,"user_usec":52867.4,"real_usec":55577.2,"est_time":2.59,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":69033,"user_time":13.78,"real_time":20.86,"user_ops":5009.7,"real_ops":3309.8,"user_usec":199.6,"real_usec":302.1,"est_time":3.35,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":26482,"user_time":15.25,"real_time":19.3,"user_ops":1736.5,"real_ops":1372.4,"user_usec":575.9,"real_usec":728.7,"est_time":1.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"array_nest_fixnum","operation":"find_one","iterations":1215,"user_time":14.88,"real_time":15.82,"user_ops":81.7,"real_ops":76.8,"user_usec":12246.9,"real_usec":13023.2,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":73142,"user_time":15.3,"real_time":24.1,"user_ops":4780.5,"real_ops":3035.3,"user_usec":209.2,"real_usec":329.5,"est_time":3.19,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":1,"size":4,"exp2":2,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":59076,"user_time":15.88,"real_time":23.73,"user_ops":3720.2,"real_ops":2490.0,"user_usec":268.8,"real_usec":401.6,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":2,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":29538,"user_time":14.84,"real_time":19.43,"user_ops":1990.4,"real_ops":1520.1,"user_usec":502.4,"real_usec":657.8,"est_time":1.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":3,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":10378,"user_time":14.83,"real_time":17.62,"user_ops":699.8,"real_ops":588.9,"user_usec":1429.0,"real_usec":1698.2,"est_time":2.29,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":4,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":2909,"user_time":14.84,"real_time":16.44,"user_ops":196.0,"real_ops":176.9,"user_usec":5101.4,"real_usec":5652.1,"est_time":2.07,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":5,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":727,"user_time":15.11,"real_time":15.85,"user_ops":48.1,"real_ops":45.9,"user_usec":20784.0,"real_usec":21800.3,"est_time":2.04,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":6,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":187,"user_time":14.57,"real_time":15.25,"user_ops":12.8,"real_ops":12.3,"user_usec":77914.4,"real_usec":81544.9,"est_time":2.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":7,"size":16384,"exp2":14,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":43,"user_time":14.3,"real_time":15.0,"user_ops":3.0,"real_ops":2.9,"user_usec":332558.1,"real_usec":348767.9,"est_time":1.74,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":4,"power":8,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":9,"user_time":13.79,"real_time":14.59,"user_ops":0.7,"real_ops":0.6,"user_usec":1532222.2,"real_usec":1620925.4,"est_time":5.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":74024,"user_time":14.93,"real_time":24.7,"user_ops":4958.1,"real_ops":2996.7,"user_usec":201.7,"real_usec":333.7,"est_time":3.2,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":1,"size":8,"exp2":3,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":52067,"user_time":14.48,"real_time":20.82,"user_ops":3595.8,"real_ops":2501.0,"user_usec":278.1,"real_usec":399.8,"est_time":2.24,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":2,"size":64,"exp2":6,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":15835,"user_time":15.17,"real_time":18.56,"user_ops":1043.8,"real_ops":853.4,"user_usec":958.0,"real_usec":1171.8,"est_time":2.86,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":3,"size":512,"exp2":9,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":2370,"user_time":15.08,"real_time":16.28,"user_ops":157.2,"real_ops":145.6,"user_usec":6362.9,"real_usec":6870.0,"est_time":2.34,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":8,"power":4,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":285,"user_time":14.85,"real_time":15.62,"user_ops":19.2,"real_ops":18.2,"user_usec":52105.3,"real_usec":54817.0,"est_time":2.45,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":16,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":80842,"user_time":16.3,"real_time":26.83,"user_ops":4959.6,"real_ops":3012.9,"user_usec":201.6,"real_usec":331.9,"est_time":2.93,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":16,"power":1,"size":16,"exp2":4,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":42666,"user_time":15.05,"real_time":20.53,"user_ops":2835.0,"real_ops":2078.4,"user_usec":352.7,"real_usec":481.1,"est_time":2.54,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":16,"power":2,"size":256,"exp2":8,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":5189,"user_time":14.96,"real_time":17.24,"user_ops":346.9,"real_ops":300.9,"user_usec":2883.0,"real_usec":3323.3,"est_time":2.21,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":16,"power":3,"size":4096,"exp2":12,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":338,"user_time":15.07,"real_time":15.77,"user_ops":22.4,"real_ops":21.4,"user_usec":44585.8,"real_usec":46654.1,"est_time":2.17,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":16,"power":4,"size":65536,"exp2":16,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":18,"user_time":14.48,"real_time":15.22,"user_ops":1.2,"real_ops":1.2,"user_usec":804444.4,"real_usec":845653.3,"est_time":3.53,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":32,"power":0,"size":1,"exp2":0,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":77772,"user_time":14.9,"real_time":23.8,"user_ops":5219.6,"real_ops":3267.7,"user_usec":191.6,"real_usec":306.0,"est_time":3.03,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":32,"power":1,"size":32,"exp2":5,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":30117,"user_time":15.3,"real_time":19.7,"user_ops":1968.4,"real_ops":1529.0,"user_usec":508.0,"real_usec":654.0,"est_time":1.84,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":32,"power":2,"size":1024,"exp2":10,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":1454,"user_time":15.05,"real_time":15.99,"user_ops":96.6,"real_ops":90.9,"user_usec":10350.8,"real_usec":10998.1,"est_time":2.09,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
{"base":32,"power":3,"size":32768,"exp2":15,"multi_power":-1,"multi_size":1,"generator":"hash_nest_fixnum","operation":"find_one","iterations":40,"user_time":14.69,"real_time":15.44,"user_ops":2.7,"real_ops":2.6,"user_usec":367250.0,"real_usec":386045.2,"est_time":1.83,"mode":"ruby","hostname":"osprey","osname":"Darwin","date":"20120511-1409","tag":"suite_nest","status":"OK"},
]; // 28 minutes

View File

@ -3,6 +3,7 @@ require 'rubygems'
require 'mongo'
include Mongo
include GridFS
db = Connection.new['benchmark-gridfs']
sample_data = File.open(File.join(File.dirname(__FILE__), 'sample_file.pdf'), 'r').read
@ -14,22 +15,20 @@ length = sample_data.length
mb = T * length / 1048576.0
@grid = Grid.new(db)
@grid_file_system = GridFileSystem.new(db)
t1 = Time.now
ids = []
T.times do |n|
ids << @grid.put(sample_data, :filename => "mongodb-new-#{n}.pdf")
ids << @grid.put(sample_data, "mongodb-new-#{n}.pdf")
end
puts "Grid Write: #{mb / (Time.now - t1)} mb/s"
t1 = Time.now
T.times do |n|
@grid_file_system.open("mongodb.pdf-#{n}", 'w') do |f|
GridStore.open(db, "mongodb.pdf-#{n}", 'w') do |f|
f.write(sample_data)
end
end
puts "GridFileSystem Write: #{mb / (Time.now - t1)} mb/s"
puts "GridStore Write: #{mb / (Time.now - t1)} mb/s"
t1 = Time.now
T.times do |n|
@ -39,8 +38,8 @@ puts "Grid Read: #{mb / (Time.now - t1)} mb/s"
t1 = Time.now
T.times do |n|
old_data = @grid_file_system.open("mongodb.pdf-#{n}", 'r') do |f|
old_data = GridStore.open(db, "mongodb.pdf-#{n}", 'r') do |f|
f.read
end
end
puts "GridFileSystem Read: #{mb / (Time.now - t1)} mb/s"
puts "GridStore Read: #{mb / (Time.now - t1)} mb/s"

File diff suppressed because it is too large Load Diff

8316
bench/jquery.js vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,95 +0,0 @@
#!/usr/bin/env ruby
$LOAD_PATH.unshift(File.expand_path("../../lib", __FILE__))
def set_mongo_driver_mode(mode)
case mode
when :c
ENV.delete('TEST_MODE')
ENV['C_EXT'] = 'TRUE'
when :ruby
ENV['TEST_MODE'] = 'TRUE'
ENV.delete('C_EXT')
else
raise 'mode must be :c or :ruby'
end
ENV['MONGO_DRIVER_MODE'] = mode.to_s
end
$mode = ARGV[0].to_sym if ARGV[0]
set_mongo_driver_mode($mode || :c)
require 'rubygems'
require 'mongo'
require 'benchmark'
require 'ruby-prof'
def array_size_fixnum(base, power)
n = base ** power
return [n, {n.to_s => Array.new(n, n)}]
end
def array_size_fixnum(base, power)
n = base ** power
return [n, {n.to_s => Array.new(n, n)}]
end
def insert(coll, h)
h.delete(:_id) # delete :_id to insert
coll.insert(h) # note that insert stores :_id in h and subsequent inserts are updates
end
def benchmark(iterations)
btms = Benchmark.measure do
(0...iterations).each do
yield
end
end
utime = btms.utime
p ({'ops' => (iterations.to_f / utime.to_f).round(1)})
end
def ruby_prof(iterations)
RubyProf.start
puts Benchmark.measure {
iterations.times { yield }
}
result = RubyProf.stop
# Print a flat profile to text
printer = RubyProf::FlatPrinter.new(result)
printer.print(STDOUT)
# Print a graph profile to text
printer = RubyProf::GraphPrinter.new(result)
printer.print(STDOUT, {})
end
#def perftools(iterations)
# profile_file_name = '/tmp/profile_array.perftools'
# PerfTools::CpuProfiler.start(profile_file_name) do
# iterations.times { yield }
# end
# cmd = "pprof.rb --ignore=IO --text \"#{profile_file_name}\""
# system(cmd)
#end
conn = Mongo::Connection.new
db = conn['benchmark']
coll = db['profile']
coll.remove
#puts "coll.count: #{coll.count}"
base = 2
power = 6
n, doc = array_size_fixnum(base, power)
p ({'generator' => 'array_size_fixnum', 'operation' => 'insert', 'base' => base, 'power' => power})
benchmark(10000) { insert(coll, doc)} # valgrind --tool=callgrind ruby bench/profile_array.rb; callgrind_annotate ...
#ruby_prof(1000) { insert(coll, doc) }
#perftools(10000) { insert(coll, doc) }
#puts "coll.count: #{coll.count}"
coll.remove

View File

@ -1,5 +1,5 @@
#!/usr/bin/env ruby
$LOAD_PATH[0,0] = File.join(File.dirname(__FILE__), '..', 'lib')
#$LOAD_PATH[0,0] = File.join(File.dirname(__FILE__), '..', 'lib')
#
# Note: Ruby 1.9 is faster than 1.8, as expected.
# This suite will be run against the installed version of ruby-mongo-driver.

View File

@ -1,4 +1,4 @@
#!/usr/bin/env ruby
#!/usr/bin/ruby
# encoding: UTF-8
# --

View File

@ -1,4 +1,4 @@
#!/usr/bin/env ruby
#!/usr/bin/ruby
# encoding: UTF-8
# --

View File

@ -1,5 +1,4 @@
$:.unshift(File.join(File.dirname(__FILE__), 'lib'))
require 'bson'
require "./lib/bson"
Gem::Specification.new do |s|
s.name = 'bson'
@ -15,7 +14,7 @@ Gem::Specification.new do |s|
s.files = ['LICENSE.txt']
s.files += ['lib/bson.rb'] + Dir['lib/bson/**/*.rb']
s.files += ['bin/b2json', 'bin/j2bson']
s.test_files = Dir['test/bson/*.rb', 'test/support/hash_with_indifferent_access.rb']
s.test_files = Dir['test/bson/*.rb']
s.executables = ['b2json', 'j2bson']

View File

@ -1,5 +1,4 @@
$:.unshift(File.join(File.dirname(__FILE__), 'lib'))
require 'bson'
require "./lib/bson"
Gem::Specification.new do |s|
s.name = 'bson'
@ -15,7 +14,7 @@ Gem::Specification.new do |s|
s.files = ['LICENSE.txt']
s.files += ['lib/bson.rb'] + Dir['lib/bson/**/*.rb']
s.files += ['bin/b2json', 'bin/j2bson']
s.files += ['ext/java/jar/jbson.jar', 'ext/java/jar/mongo-2.6.5.jar']
s.files += ["ext/java/jar/bson-2.2.jar", "ext/java/jar/jbson.jar", "ext/java/jar/mongo-2.4.jar"]
s.test_files = Dir['test/bson/*.rb']
s.executables = ['b2json', 'j2bson']

View File

@ -1,8 +1,6 @@
$:.unshift(File.join(File.dirname(__FILE__), 'lib'))
require 'bson'
require './lib/bson'
VERSION_HEADER = File.open(File.join(File.dirname(__FILE__), 'ext', 'cbson', 'version.h'), "r")
VERSION = VERSION_HEADER.read.scan(/VERSION "(\d[^"]+)"/)[0][0]
VERSION = VERSION_HEADER.read.scan(/VERSION\s+"(\d+\.\d+(\.[\w\d]+\w*)?)\"/)[0][0]
Gem::Specification.new do |s|
s.name = 'bson_ext'
@ -19,8 +17,7 @@ Gem::Specification.new do |s|
s.has_rdoc = false
s.extensions << 'ext/cbson/extconf.rb'
s.authors = ['Mike Dirolf', 'Kyle Banker', 'Tyler Brock', 'Gary Murakami']
s.author = 'Mike Dirolf'
s.email = 'mongodb-dev@googlegroups.com'
s.homepage = 'http://www.mongodb.org'
s.add_dependency('bson', "~> #{BSON::VERSION}")
end

21
docs/1.0_UPGRADE.md Normal file
View File

@ -0,0 +1,21 @@
You can upgrade freely from v0.20 to v1.0.
However, if you're running a version < 0.20, upgrade to 0.20
before upgrading to 1.0.
The upgrade to 0.20 requires some minor code upgrades.
1. Note the exception changes in HISTORY. Certain exceptions are now scoped under the BSON
module; if you're catching these, you will need to modify your code.
2. The BSON types are now scoped under the BSON module.
3. Note that mongo_ext no longer exists. The new gems are bson and bson_ext.
4. Indexes on GridFS chunks collections should be unique. If you have existing GridFS
collections, you should drop the current index and replace with a unique one. Before you do this,
make sure that index doesn't exist; no need to go through process unnecessarily.
If you do need to create the index, once you have the chunks collection, here are the commands you can run:
@chunks.drop_index('files_id_1_n_1')
@chunks.create_index([['files_id', Mongo::ASCENDING], ['n', Mongo::ASCENDING]], :unique => true)

View File

@ -88,7 +88,7 @@ Deleting a file is as simple as providing the id:
### The GridFileSystem class
[GridFileSystem](Mongo/GridFileSystem.html) is a light emulation of a file system and therefore has a couple of unique properties. The first is that filenames are assumed to be unique. The second, a consequence of the first, is that files are versioned. To see what this means, let's create a GridFileSystem instance:
[GridFileSystem](http://api.mongodb.org/ruby/current/Mongo/GridFileSystem.html) is a light emulation of a file system and therefore has a couple of unique properties. The first is that filenames are assumed to be unique. The second, a consequence of the first, is that files are versioned. To see what this means, let's create a GridFileSystem instance:
#### Saving files
@ -154,5 +154,5 @@ All of the options for storing metadata and saving in safe mode are available fo
### Advanced Users
Astute code readers will notice that the Grid and GridFileSystem classes are merely thin wrappers around an underlying [GridIO class](Mongo/GridIO.html). This means that it's easy to customize the GridFS implementation presented here; just use GridIO for all the low-level work, and build the API you need in an external manager class similar to Grid or GridFileSystem.
Astute code readers will notice that the Grid and GridFileSystem classes are merely thin wrappers around an underlying [GridIO class](http://api.mongodb.org/ruby/current/Mongo/GridIO.html). This means that it's easy to customize the GridFS implementation presented here; just use GridIO for all the low-level work, and build the API you need in an external manager class similar to Grid or GridFileSystem.

View File

@ -1,156 +1,5 @@
# MongoDB Ruby Driver History
### 1.6.2
2012-04-05
* Implements socket timeouts via non-blocking IO instead of Timeout module
which should greately increase performance in highly threaded applications
* Added ability to authentication via secondary if primary node unavailable
* Replica set refresh interval now enforces a lower bound of 60 seconds
* Added documentation for dropping indexes, collections, databases
* Test output cleanup (...)s unless failure occurs
### 1.6.1
2012-03-07
* Added thread affinity to Mongo::Pool
* Added deploy tasks
* Added Travis CI support (Cyril Mougel)
* Logging warning message is only displayed for level :debug
### 1.6.0
2012-02-22
* Added Gemfile
* ReplSetConnection seed format is now array of 'host:port' strings
* Added read preference :secondary_only
* Added ability to log duration -- enabled by default (Cyril Mougel)
* Added read_only option for DB#add_user (Ariel Salomon)
* Added :collect_on_error option for bulk-insert (Masahiro Nakagawa)
* Added and updated URI options (now case insensitive)
* Bug fix for ReplSet refresh attempting to close a closed socket
* Default op_timeout for ReplSetConnection is now disabled (was 30 seconds)
* Support db output option for map reduce (John Ewart)
* Support for keeping limited versions of files using GridFS (VvanGemert)
### 1.5.2
2011-12-13
* Lots of fixes for replica set connection edge cases.
* Set default op_timeout and connect_timeout to 30 seconds.
* Support GeoHaystack indexing.
### 1.5.1
2011-11-29
Release due to corrupted gemspec. This was a bug having
to do with rubygems. Apparently, gems must still be
built with Ruby 1.8.
### 1.5.0
2011-11-28
This releases fixes bugs introduced in 1.4.0 and 1.4.1 that
were introduced as a result of adding replica set refresh modes.
* Removed :async refresh mode.
* Disabled auto refresh mode by default. If you want the driver
to automatically check the state of the replica set, you must
use :sync mode. Note that replica set refresh is designed only to
account for benign changes to the replica set (adding and removing
nodes that don't affect current connections).
* Fixed bug with commands being sent to secondary nodes. The next
release will allow you to specify where commands can be sent.
* Support :j safe mode option.
* Fix :max_scan and :show_disk_loc Cursor options.
You can see the remaining issues at https://jira.mongodb.org/secure/ReleaseNote.jspa?projectId=10005&version=10992
### 1.5.0.rc0
2011-11-18
Fix bugs associated with replica set refresh.
### 1.4.1
2011-10-17
If you're using 1.4.0, this is a necessary upgrade.
* Simplified replica set refresh.
* Fix bugs associated with replica set refresh.
* Make cursor smart enough to continue functioning
even if a refresh is triggered.
### 1.4.0
2011-9-19
* Attempt to automatically refresh internal replica set state using ReplSetConnection#refresh.
* Two automated refresh modes: :async and :sync. Automated refresh can also be disabled.
* Choose secondary for reads based on ping time.
* Read preference API: specify whether queries should go to primary or secondary on a per-query basis.
* Pass :require_primary => false to ReplSetConnection to connect without requiring a primary node.
* Enable exhaust-mode queries with OP_QUERY_EXHAUST.
* Collection#count takes a query selector.
* Support continue_on_error flag for bulk inserts (use :continue_on_error => true)
* Add Cursor#add_option. Deprecate Cursor#query_opts and replace with Cursor#options.
* Initial SSL support (connect with :ssl => true)
* Update to latest Java driver for JRuby.
* Check max BSON size on a per-connection basis.
* Fixed two platform-specific BSON serialization issues.
* Lots of bug fixes and code cleanup.
### 1.3.1
2011-5-10
* Fix GridIO#gets infinite loop error (Ryan McGeary)
* Fix BSON::OrderedHash#reject! leaving keys with null values (rpt. by Ben Poweski)
* Minor semantic fix for OrderedHash#reject!
* Fix Mongo::DB to allow symbols in method traversing collection names (rpt. by Chris Griego)
* Support new server regex option "s" (dotall). This is folded in with \m in Ruby.
* Fix so that Cursor#close hits the right node when :read_secondary is enabled.
* Support maxScan, showDiskLoc, and returnKey cursor options.
* Make DB#validate_collection compatible with server v1.9.1.
* Fix so that GridIO#gets returns local md5 with md5 matches server md5 (Steve Tantra).
* Fix bug in BSON::OrderedHash that prevents YAML.load (Ian Warshak).
* Fix example from /examples.
* Ensure that we do not modify hash arguments by calling Hash#dup when appropriate.
* Ensure that JRuby deserializer preserves binary subtypes properly.
* Fix for streaming an empty file into GridFS (Daniël van de Burgt).
* Minor doc fixes.
### 1.3.0
2011-4-04
* Add option to set timeouts on socket read calls using the
Mongo::Connection :op_timeout option.
* Add StringIO methods to GridIO objects
* Support for BSON timestamp type with BSON::Timestamp
* Change the BSON binary subtype from 2 to 0
* Remove private method Connection#reset_conection
and deprecate public method ReplSetConnection#reset_connection
* ByteBuffer#== and OrderedHash#dup (Hongli Lai)
* Better check for UTF8 validity in Ruby 1.9
* Added previously removed Connection#host and Connection#port
* Added transformers to allow Mongo::Cursor to allow instantiated objects (John Nunemaker)
* Automated reconnection on fork
* Added Cursor#next alias for Cursor#next_document
* Audit tests after enabling warnings (Wojciech Piekutowski)
* Various bug fixes thanks to Datanoise, Hongli Lai, and Mauro Pompilio
### 1.2.4
2011-2-23
* Fix the exception message shown when there's an IOError (Mauro Pompilio)
* Another update to map-reduce docs for v1.8. Note that if you use the new
output option `{:out => {:inline => true}}`, then you must also specify
`:raw => true`.
### 1.2.3
2011-2-22
* Update docs for map-reduce command
* Minor doc fix
### 1.2.2
2011-2-15

View File

@ -1,39 +0,0 @@
# Read Preference in Ruby
## Setting the read preference
You can using the `:read` option to specify a query's read preference. There are for now two possible options:
@collection.find({:doc => 'foo'}, :read => :primary)
@collection.find({:doc => 'foo'}, :read => :secondary)
In the first case, the query will be directed to the primary node in a replica set. In the second, the query will be sent
to a secondary node. The driver will attempt to choose a secondary node that's nearby, as determined by ping time. If more
than one secondary node is closeby (e.g, responds to pings within 10ms), then a random node within this subset will be chosen.
## Read preference inheritance
The Ruby driver allows you to set read preference on each of four levels: the connection, database, collection, and cursor (or read operation).
Objects will inherit the default read preference from their parents. Thus, if you set a read preference of `{:read => :secondary}` when creating
a new connection, then all databases and collections created from that connection will inherit the same setting. See this code example:
@con = Mongo::ReplSetConnection.new(['localhost:27017','localhost:27018'], :read => :secondary)
@db = @con['test']
@collection = @db['foo']
@collection.find({:name => 'foo'})
@collection.find({:name => 'bar'}, :read => :primary)
Here, the first call to Collection#find will use the inherited read preference, `{:read => :secondary}`. But the second call
to Collection#find overrides this setting by setting the preference to `:primary`.
You can examine the read preference on any object by calling its `read_preference` method:
@con.read_preference
@db.read_preference
@collection.read_preference
## Future work
In the v2.0 release of the driver, you'll also be able to specify a read preference consisting of a set of tags. This way,
you'll be able to direct reads to a replica set member. You can follow this issue's progress here: (https://jira.mongodb.org/browse/RUBY-326).

View File

@ -1,54 +0,0 @@
# MongoDB Ruby Driver Release Plan
This is a description of a formalized release plan that will take effect
with version 1.3.0.
## Semantic versioning
The most significant difference is that releases will now adhere to the conventions of
[semantic versioning](http://semver.org). In particular, we will strictly abide by the
following release rules:
1. Patch versions of the driver (Z in x.y.Z) will be released only when backward-compatible bug fixes are introduced. A bug fix is defined as an internal change that fixes incorrect behavior.
2. Minor versions (Y in x.Y.z) will be released if new, backward-compatible functionality is introduced to the public API.
3. Major versions (X in X.y.z) will be incremented if any backward-incompatible changes are introduced to the public API.
This policy will clearly indicate to users when an upgrade may affect their code. As a side effect, version numbers will climb more quickly than before.
## Release checklist
Before each relese to Rubygems.org, the following steps will be taken:
1. All driver tests will be run on Linux, OS X, and Windows via continuous integration system.
2. Update the HISTORY file and document all significant commits.
3. Update the version in lib/bson.rb, lib/mongo/version.rb, and ext/version.h.
4. Commit: "Release [VERSION]"
5. git tag [version]
6. Build gems. Ensure that they have the correct versions.
7. Push tags and commit to GitHub (git push origin master, git push --tags).
8. Build and push docs.
9. Push gems to Rubygems.org.
10. Test that the gem is downloadable from Rubygems.org.
11. Close out release in JIRA.
12. Annouce release on mongodb-user and mongodb-dev.
## Rake Deploy Tasks
1. rake deploy:change_version[1.6.1]
2. rake deploy:git_prepare
3. rake deploy:git_push
4. rake deploy:gem_build
5. rake deploy:gem_push

View File

@ -6,19 +6,18 @@ Here follow a few considerations for those using the MongoDB Ruby driver with [r
First, make sure that you've configured and initialized a replica set.
Use `ReplSetConnection.new` to connect to a replica set. This method, which accepts a variable number of arugments,
takes a list of seed nodes followed by any connection options. You'll want to specify at least two seed nodes. This gives
the driver more chances to connect in the event that any one seed node is offline. Once the driver connects, it will
cache the replica set topology as reported by the given seed node and use that information if a failover is later required.
Use `ReplSetConnection.new` to connect to a replica set:
@connection = ReplSetConnection.new(['n1.mydb.net:27017', 'n2.mydb.net:27017', 'n3.mydb.net:27017'])
@connection = ReplSetConnection.new(['n1.mydb.net', 27017], ['n2.mydb.net', 27017], ['n3.mydb.net', 27017])
The driver will attempt to connect to a master node and, when found, will replace all seed nodes with known members of the replica set.
### Read slaves
If you want to read from a secondary node, you can pass :read => :secondary to ReplSetConnection#new.
If you want to read from a seconday node, you can pass :read_secondary => true to ReplSetConnection#new.
@connection = ReplSetConnection.new(['n1.mydb.net:27017', 'n2.mydb.net:27017', 'n3.mydb.net:27017'],
:read => :secondary)
@connection = ReplSetConnection.new(['n1.mydb.net', 27017], ['n2.mydb.net', 27017], ['n3.mydb.net', 27017],
:read_secondary => true)
A random secondary will be chosen to be read from. In a typical multi-process Ruby application, you'll have a good distribution of reads across secondary nodes.
@ -28,51 +27,10 @@ Imagine that either the master node or one of the read nodes goes offline. How w
If any read operation fails, the driver will raise a *ConnectionFailure* exception. It then becomes the client's responsibility to decide how to handle this.
If the client decides to retry, it's not guaranteed that another member of the replica set will have been promoted to master right away, so it's still possible that the driver will raise another *ConnectionFailure*. However, once a member has been promoted to master, typically within a few seconds, subsequent operations will succeed. *Note that this does not prevent
exception in the event of a primary failover.*
If the client decides to retry, it's not guaranteed that another member of the replica set will have been promoted to master right away, so it's still possible that the driver will raise another *ConnectionFailure*. However, once a member has been promoted to master, typically within a few seconds, subsequent operations will succeed.
The driver will essentially cycle through all known seed addresses until a node identifies itself as master.
### Refresh mode
You can now specify a refresh mode and refresh interval for a replica set connection. This will help to ensure that
changes to a replica set's configuration are quickly reflected on the driver side. In particular, if you change
the state of any secondary node, the automated refresh will ensure that this state is recorded on the client side.
There are two secenarios in which refresh is helpful and does not raise exceptions:
1. You add a new secondary node to an existing replica set
2. You remove an unused secondary from an existing replica set
If using MongoDB earlier than 2.0 any changes to replica set state will raise exceptions therefore refresh mode will not be useful.
If you add a secondary that responds to pings much faster than the existing nodes, then the new secondary will
be used for reads if :read_preference is :secondary or :secondary_only
Refresh mode is disabled by default.
However, if you expect to make live changes to your secondaries, and you want this to be reflected without
having to manually restart your app server, then you should enable it. You can enable this mode
synchronously, which will refresh the replica set data in a synchronous fashion (which may
ocassionally slow down your queries):
@connection = ReplSetConnection.new(['n1.mydb.net:27017'], :refresh_mode => :sync)
If you want to change the default refresh interval of 90 seconds, you can do so like this:
@connection = ReplSetConnection.new(['n1.mydb.net:27017'], :refresh_mode => :sync,
:refresh_interval => 60)
Do not set this value to anything lower than 30, or you may start to experience performance issues.
You can also disable refresh mode altogether:
@connection = ReplSetConnection.new(['n1.mydb.net:27017'], :refresh_mode => false)
And you can call `refresh` manually on any replica set connection:
@connection.refresh
### Recovery
Driver users may wish to wrap their database calls with failure recovery code. Here's one possibility, which will attempt to connection

View File

@ -1,51 +0,0 @@
# Tailable cursors in Ruby
Tailable cursors are cursors that remain open even after they've returned
a final result. This way, if more documents are added to a collection (i.e.,
to the cursor's result set), then you can continue to call `Cursor#next` to
retrieve those results. Here's a complete test case that demonstrates the use
of tailable cursors.
Note that tailable cursors are for capped collections only.
require 'mongo'
require 'test/unit'
class TestTailable < Test::Unit::TestCase
include Mongo
def test_tailable
# Create a connection and capped collection.
@con = Connection.new
@db = @con['test']
@db.drop_collection('log')
@capped = @db.create_collection('log', :capped => true, :size => 1024)
# Insert 10 documents.
10.times do |n|
@capped.insert({:n => n})
end
# Create a tailable cursor that iterates the collection in natural order
@tail = Cursor.new(@capped, :tailable => true, :order => [['$natural', 1]])
# Call Cursor#next 10 times. Each call returns a document.
10.times do
assert @tail.next
end
# But the 11th time, the cursor returns nothing.
assert_nil @tail.next
# Add a document to the capped collection.
@capped.insert({:n => 100})
# Now call Cursor#next again. This will return the just-inserted result.
assert @tail.next
# Close the cursor.
@tail.close
end
end

View File

@ -9,16 +9,13 @@ As always, the [latest source for the Ruby driver](http://github.com/mongodb/mon
## Installation
The mongo-ruby-driver gem is served through Rubygems.org. To install, make sure you have the latest version of rubygems.
gem update --system
Next, install the mongo rubygem:
gem install mongo
The required `bson` gem will be installed automatically.
For optimum performance, install the bson\_ext gem:
For optimum performance, install the bson_ext gem:
gem install bson_ext
@ -26,46 +23,35 @@ After installing, you may want to look at the [examples](http://github.com/mongo
## Getting started
Note that the output in the following has been updated to Ruby 1.9, so if you are using Ruby 1.8, you will see some minor differences. To follow this tutorial interactively, at the command line, run the Interactive Ruby Shell.
#### Using the gem
irb
As you execute commands, irb will output the result using the `inspect` method. If you are editing and running a script for this tutorial, you can view output using the `puts` or `p` methods.
### Using the gem
Use the `mongo` gem via the `require` kernel method.
All of the code here assumes that you have already executed the following Ruby code:
require 'rubygems' # not necessary for Ruby 1.9
require 'mongo'
### Making a Connection
#### Making a Connection
An `Mongo::Connection` instance represents a connection to MongoDB. You can optionally specify the MongoDB server address and port when connecting. The following example shows three ways to connect to the local machine:
An `Mongo::Connection` instance represents a connection to MongoDB. You use a Connection instance to obtain an Mongo:DB instance, which represents a named database. The database doesn't have to exist - if it doesn't, MongoDB will create it for you.
connection = Mongo::Connection.new # (optional host/port args)
connection = Mongo::Connection.new("localhost")
connection = Mongo::Connection.new("localhost", 27017)
You can optionally specify the MongoDB server address and port when connecting. The following example shows three ways to connect to the database "mydb" on the local machine:
### Listing All Databases
connection.database_names
connection.database_info.each { |info| puts info.inspect }
The `database_info` method returns a hash mapping database names to the size of the database in bytes.
## Using a Database
You use a Connection instance to obtain an Mongo::DB instance, which represents a named database. The database doesn't have to exist - if it doesn't, MongoDB will create it for you. The following examples use the database "mydb":
db = connection.db("mydb")
db = Mongo::Connection.new.db("mydb")
db = Mongo::Connection.new("localhost").db("mydb")
db = Mongo::Connection.new("localhost", 27017).db("mydb")
At this point, the `db` object will be a connection to a MongoDB server for the specified database. Each DB instance uses a separate socket connection to the server.
If you're trying to connect to a replica set, see [Replica Sets in Ruby](http://www.mongodb.org/display/DOCS/Replica+Sets+in+Ruby).
### Authentication
#### Listing All Databases
connection = Mongo::Connection.new # (optional host/port args)
connection.database_names.each { |name| puts name }
connection.database_info.each { |info| puts info.inspect}
#### Dropping a Database
connection.drop_database('database_name')
MongoDB can be run in a secure mode where access to databases is controlled through name and password authentication. When run in this mode, any client application must provide a name and password before doing any operations. In the Ruby driver, you simply do the following with the connected mongo object:
@ -73,21 +59,31 @@ MongoDB can be run in a secure mode where access to databases is controlled thro
If the name and password are valid for the database, `auth` will be `true`. Otherwise, it will be `false`. You should look at the MongoDB log for further information if available.
## Using a Collection
#### Getting a List Of Collections
Each database has zero or more collections. You can retrieve a list of them from the db (and print out any that are there):
db.collection_names.each { |name| puts name }
and assuming that there are two collections, name and address, in the database, you would see
name
address
as the output.
#### Getting a Collection
You can get a collection to use using the `collection` method:
coll = db.collection("testCollection")
This is aliased to the \[\] method:
coll = db["testCollection"]
Once you have this collection object, you can now do create, read, update, and delete (CRUD) functions on persistent storage.
Once you have this collection object, you can now do things like insert data, query for data, etc.
### Creating Documents with `insert`
#### Inserting a Document
Once you have the collection object, you can create or `insert` documents into the collection. For example, lets make a little document that in JSON would be represented as
Once you have the collection object, you can insert documents into the collection. For example, lets make a little document that in JSON would be represented as
{
"name" : "MongoDB",
@ -99,170 +95,115 @@ Once you have the collection object, you can create or `insert` documents into t
}
}
Notice that the above has an "inner" document embedded within it. To do this, we can use a Hash or the driver's OrderedHash (which preserves key order) to create the document (including the inner document), and then just simply insert it into the collection using the `insert` method.
Notice that the above has an "inner" document embedded within it. To do this, we can use a Hash or the driver's OrderedHash (which preserves key order) to create the document (including the inner document), and then just simply insert it into the collection using the `insert()` method.
doc = {"name" => "MongoDB", "type" => "database", "count" => 1, "info" => {"x" => 203, "y" => '102'}}
id = coll.insert(doc)
doc = {"name" => "MongoDB", "type" => "database", "count" => 1,
"info" => {"x" => 203, "y" => '102'`
coll.insert(doc)
We have saved the `id` for future use below. Now the collection has been created and you can list it.
#### Updating a Document
#### Getting a List Of Collections
We can update the previous document using the `update` method. There are a couple ways to update a document. We can rewrite it:
Each database has zero or more collections. You can retrieve a list of them from the db (and print out any that are there):
doc["name"] = "MongoDB Ruby"
coll.update({"_id" => doc["_id"]}, doc)
db.collection_names
Or we can use an atomic operator to change a single value:
You should see
coll.update({"_id" => doc["_id"]}, {"$set" => {"name" => "MongoDB Ruby"`)
\["testCollection", "system.indexes"\]
Read [more about updating documents|Updating].
#### Finding the First Document In a Collection using `find_one()`
To show that the document we inserted in the previous step is there, we can do a simple `find_one()` operation to get the first document in the collection. This method returns a single document (rather than the `Cursor` that the `find()` operation returns).
my_doc = coll.find_one()
puts my_doc.inspect
and you should see:
{"_id"=>#<BSON::ObjectID:0x118576c ...>, "name"=>"MongoDB",
"info"=>{"x"=>203, "y"=>102}, "type"=>"database", "count"=>1}
Note the `\_id` element has been added automatically by MongoDB to your document.
#### Adding Multiple Documents
To demonstrate some more interesting queries, let's add multiple simple documents to the collection. These documents will have the following form:
{
"i" : value
}
{
"i" : value
}
Here's how to insert them:
100.times { |i| coll.insert("i" => i) }
100.times { |i| coll.insert("i" => i) }
Notice that we can insert documents of different "shapes" into the same collection. These records are in the same collection as the complex record we inserted above. This aspect is what we mean when we say that MongoDB is "schema-free".
### Reading Documents with `find_one` and `find`
#### Counting Documents in a Collection
#### Reading the First Document in a Collection using `find_one`
Now that we've inserted 101 documents (the 100 we did in the loop, plus the first one), we can check to see if we have them all using the `count()` method.
To retrieve the document that we inserted, we can do a simple `find_one` method to get the first document in the collection. This method returns a single document directly.
puts coll.count()
coll.find_one
and it should print `101`.
and you should something like:
#### Using a Cursor to get all of the Documents
{"_id"=>BSON::ObjectId('4f7b1ea6e4d30b35c9000001'), "name"=>"MongoDB", "type"=>"database", "count"=>1, "info"=>{"x"=>203, "y"=>"102"}}
To get all the documents from the collection, we use the `find()` method. `find()` returns a `Cursor` object, which allows us to iterate over the set of documents that matches our query. The Ruby driver's Cursor implemented Enumerable, which allows us to use `Enumerable#each`, `Enumerable#map}, etc. For instance:
Note the `_id` element has been added automatically by MongoDB to your document.
coll.find().each { |row| puts row.inspect }
#### Reading All of the Documents with a Cursor using `find`
and that should print all 101 documents in the collection.
To get all the documents from the collection, we use the `find` method. `find` returns a `Cursor` object, which allows us to iterate over the set of documents that matches our query. The Ruby driver's Cursor implemented Enumerable, which allows us to use `Enumerable#each`, `Enumerable#map}, etc. For instance:
#### Getting a Single Document with a Query
coll.find.each { |row| puts row.inspect }
We can create a _query_ hash to pass to the `find()` method to get a subset of the documents in our collection. For example, if we wanted to find the document for which the value of the "i" field is 71, we would do the following ;
and that should print all 101 documents in the collection. You can take advantage of `Enumerable#to_a`.
puts coll.find.to_a
Important note - using `to_a` pulls all of the full result set into memory and is inefficient if you can process by each individual document. To process with more memory efficiency, use the `each` method with a code block for the cursor.
#### Specific Queries
We can create a _query_ hash to pass to the `find` method to get a subset of the documents in our collection. To check that our update worked, find the document by id:
coll.find("_id" => id).to_a
If we wanted to find the document for which the value of the "i" field is 71, we would do the following:
coll.find("i" => 71).to_a
coll.find("i" => 71).each { |row| puts row.inspect }
and it should just print just one document:
{"_id"=>BSON::ObjectId('4f7b20b4e4d30b35c9000049'), "i"=>71}
#### Sorting Documents in a Collection
To sort documents, simply use the `sort` method. The method can either take a key or an array of [key, direction] pairs to sort by.
Direction defaults to ascending order but can be specified as Mongo::ASCENDING, :ascending, or :asc whereas descending order can be specified with Mongo::DESCENDING, :descending, or :desc.
# Sort in ascending order by :i
coll.find.sort(:i)
# Sort in descending order by :i
coll.find.sort([:i, :desc])
#### Counting Documents in a Collection
Now that we've inserted 101 documents (the 100 we did in the loop, plus the first one), we can check to see if we have them all using the `count` method.
coll.count
and it should print `101`.
{"_id"=>#<BSON::ObjectID:0x117de90 ...>, "i"=>71}
#### Getting a Set of Documents With a Query
We can use the query to get a set of documents from our collection. For example, if we wanted to get all documents where "i" > 50, we could write:
puts coll.find("i" => {"$gt" => 50}).to_a
coll.find("i" => {"$gt" => 50}).each { |row| puts row }
which should print the documents where i > 50. We could also get a range, say 20 < i <= 30:
puts coll.find("i" => {"$gt" => 20, "$lte" => 30}).to_a
coll.find("i" => {"$gt" => 20, "$lte" => 30}).each { |row| puts row }
#### Selecting a Subset of Fields for a Query
#### Selecting a subset of fields for a query
Use the `:fields` option to specify fields to return.
Use the `:fields` option. If you just want fields "a" and "b":
puts coll.find("_id" => id, :fields => ["name", "type"]).to_a
coll.find("i" => {"$gt" => 50}, :fields => ["a", "b"]).each { |row| puts row }
#### Querying with Regular Expressions
Regular expressions can be used to query MongoDB. To find all names that begin with 'a':
puts coll.find({"name" => /^M/}).to_a
coll.find({"name" => /^a/})
You can also construct a regular expression dynamically. To match a given search string:
params = {'search' => 'DB'}
search_string = params['search']
# Constructor syntax
puts coll.find({"name" => Regexp.new(search_string)}).to_a
coll.find({"name" => Regexp.new(search_string)})
# Literal syntax
puts coll.find({"name" => /#{search_string}/}).to_a
coll.find({"name" => /#{search_string}/})
Although MongoDB isn't vulnerable to anything like SQL-injection, it may be worth checking the search string for anything malicious.
### Updating Documents with `update`
We can update the previous document using the `update` method. There are a couple ways to update a document. We can rewrite it:
doc["name"] = "MongoDB Ruby"
coll.update({"_id" => id}, doc)
Or we can use an atomic operator to change a single value:
coll.update({"_id" => id}, {"$set" => {"name" => "MongoDB Ruby"}})
Verify the update.
puts coll.find("_id" => id).to_a
Read [more about updating documents|Updating].
### Deleting Documents with `remove`
Use the `remove` method to delete documents.
coll.count
coll.remove("i" => 71)
coll.count
puts coll.find("i" => 71).to_a
The above shows that the count has been reduced and that the document can no longer be found.
Without arguments, the `remove` method deletes all documents.
coll.remove
coll.count
Please program carefully.
## Indexing
### Creating An Index
#### Creating An Index
MongoDB supports indexes, and they are very easy to add on a collection. To create an index, you specify an index name and an array of field names to be indexed, or a single field name. The following creates an ascending index on the "i" field:
@ -274,21 +215,7 @@ To specify complex indexes or a descending index you need to use a slightly more
# Explicit "ascending"
coll.create_index([["i", Mongo::ASCENDING]])
Use the `explain` method on the cursor to show how MongoDB will run the query.
coll.find("_id" => id).explain
coll.find("i" => 71).explain
coll.find("type" => "database").explain
The above shows that the query by `_id` and `i` will use faster indexed BtreeCursor, while the query by `type` will use a slower BasicCursor.
### Getting a List of Indexes on a Collection
You can get a list of the indexes on a collection.
coll.index_information
### Creating and Querying on a Geospatial Index
#### Creating and querying on a geospatial index
First, create the index on a field containing long-lat values:
@ -300,45 +227,9 @@ Then get a list of the twenty locations nearest to the point 50, 50:
puts p.inspect
end
## Dropping
#### Getting a List of Indexes on a Collection
### Drop an Index
To drop a secondary index, use the `drop_index` method on the collection.
coll.drop_index("i_1")
coll.index_information
The dropped index is no longer listed.
### Drop All Indexes
To drop all secondary indexes, use the `drop_indexes` method on the collection.
coll.drop_indexes
coll.index_information
Only the primary index "_id_" is listed.
### Drop a Collection
To drop a collection, use the `drop` method on the collection.
coll.drop
db.collection_names
The dropped collection is no longer listed. The `drop_collection` method can be used on the database as an alternative.
db.drop_collection("testCollection")
### Drop a Database
To drop a database, use the `drop_database` method on the connection.
connection.drop_database("mydb")
connection.database_names
The dropped database is no longer listed.
You can get a list of the indexes on a collection using `coll.index_information()`.
## Database Administration

View File

@ -7,12 +7,9 @@ Write concern is set using the `:safe` option. There are several possible option
@collection.save({:doc => 'foo'}, :safe => true)
@collection.save({:doc => 'foo'}, :safe => {:w => 2})
@collection.save({:doc => 'foo'}, :safe => {:w => 2, :wtimeout => 200})
@collection.save({:doc => 'foo'}, :safe => {:w => 2, :wtimeout => 200, :j => true})
@collection.save({:doc => 'foo'}, :safe => {:w => 2, :wtimeout => 200, :fsync => true})
The first, `true`, simply indicates that we should request a response from the server to ensure that no errors have occurred. The second, `{:w => 2}`, forces the server to wait until at least two servers have recorded the write. The third does the same but will time out if the replication can't be completed in 200 milliseconds.
Setting a value for `wtimeout` is encouraged.
Finally, the fourth example forces the journal to sync to disk if journaling is enabled.
The first, `true`, simply indicates that we should request a response from the server to ensure that to errors have occurred. The second, `{:w => 2}`forces the server to wait until at least two servers have recorded the write. The third does the same but will time out if the replication can't be completed in 200 milliseconds. The fourth forces an fsync on each server being written to (note: this option is rarely necessary and will have a dramaticly negative effect on performance).
## Write concern inheritance

View File

@ -19,56 +19,52 @@ coll.remove
coll.insert('a' => 1)
coll.insert('a' => 2)
coll.insert('b' => 3)
coll.insert('c' => 'foo')
coll.insert('c' => 'bar')
# Count.
puts "There are #{coll.count} records."
puts "There are #{coll.count()} records."
# Find all records. find() returns a Cursor.
puts "Find all records:"
pp cursor = coll.find.to_a
cursor = coll.find()
# Print them. Note that all records have an _id automatically added by the
# database. See pk.rb for an example of how to use a primary key factory to
# generate your own values for _id.
puts "Print each document individually:"
pp cursor.each { |row| pp row }
cursor.each { |row| pp row }
# Cursor has a to_a method that slurps all records into memory.
rows = coll.find().to_a
rows.each { |row| pp row }
# See Collection#find. From now on in this file, we won't be printing the
# records we find.
puts "Find one record:"
pp coll.find('a' => 1).to_a
coll.find('a' => 1)
# Find records sort by 'a', skip 1, limit 2 records.
# Sort can be single name, array, or hash.
puts "Skip 1, limit 2, sort by 'a':"
pp coll.find({}, {:skip => 1, :limit => 2, :sort => 'a'}).to_a
coll.find({}, {:skip => 1, :limit => 2, :sort => 'a'})
# Find all records with 'a' > 1. There is also $lt, $gte, and $lte.
coll.find({'a' => {'$gt' => 1}})
coll.find({'a' => {'$gt' => 1, '$lte' => 3}})
# Find all records with 'a' in a set of values.
puts "Find all records where a is $in [1, 2]:"
pp coll.find('a' => {'$in' => [1,2]}).to_a
coll.find('a' => {'$in' => [1,2]})
puts "Find by regex:"
pp coll.find({'c' => /f/}).to_a
# Find by regexp
coll.find('a' => /[1|2]/)
# Print query explanation
puts "Print an explain:"
pp coll.find({'c' => /f/}).explain
pp coll.find('a' => /[1|2]/).explain()
# Use a hint with a query. Need an index. Hints can be stored with the
# collection, in which case they will be used with all queries, or they can be
# specified per query, in which case that hint overrides the hint associated
# with the collection if any.
coll.create_index('c')
coll.hint = 'c'
coll.create_index('a')
coll.hint = 'a'
puts "Print an explain with index:"
pp coll.find('c' => /[f|b]/).explain
# You will see a different explanation now that the hint is in place
pp coll.find('a' => /[1|2]/).explain()
puts "Print an explain with natural order hint:"
pp coll.find({'c' => /[f|b]/}, :hint => '$natural').explain
# Override hint for single query
coll.find({'a' => 1}, :hint => 'b')

View File

@ -4,7 +4,7 @@ require 'mongo'
cons = []
10.times do
cons << Mongo::ReplSetConnection(['localhost:27017'], :read => :secondary)
cons << Mongo::Connection.multi([['localhost', 27017]], :read_secondary => true)
end
ports = cons.map do |con|

View File

@ -1,6 +1,5 @@
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require 'rubygems'
require 'mongo'
include Mongo

View File

@ -17,23 +17,21 @@
#include <stdlib.h>
#include <string.h>
#include "bson_buffer.h"
#include "buffer.h"
#define INITIAL_BUFFER_SIZE 256
#define DEFAULT_MAX_SIZE 4 * 1024 * 1024
struct bson_buffer {
struct buffer {
char* buffer;
int size;
int position;
int max_size;
};
/* Allocate and return a new buffer.
* Return NULL on allocation failure. */
bson_buffer_t bson_buffer_new(void) {
bson_buffer_t buffer;
buffer = (bson_buffer_t)malloc(sizeof(struct bson_buffer));
buffer_t buffer_new(void) {
buffer_t buffer;
buffer = (buffer_t)malloc(sizeof(struct buffer));
if (buffer == NULL) {
return NULL;
}
@ -45,22 +43,13 @@ bson_buffer_t bson_buffer_new(void) {
free(buffer);
return NULL;
}
buffer->max_size = DEFAULT_MAX_SIZE;
return buffer;
}
void bson_buffer_set_max_size(bson_buffer_t buffer, int max_size) {
buffer->max_size = max_size;
}
int bson_buffer_get_max_size(bson_buffer_t buffer) {
return buffer->max_size;
}
/* Free the memory allocated for `buffer`.
* Return non-zero on failure. */
int bson_buffer_free(bson_buffer_t buffer) {
int buffer_free(buffer_t buffer) {
if (buffer == NULL) {
return 1;
}
@ -71,19 +60,14 @@ int bson_buffer_free(bson_buffer_t buffer) {
/* Grow `buffer` to at least `min_length`.
* Return non-zero on allocation failure. */
static int buffer_grow(bson_buffer_t buffer, int min_length) {
static int buffer_grow(buffer_t buffer, int min_length) {
int size = buffer->size;
int old_size;
char* old_buffer = buffer->buffer;
if (size >= min_length) {
return 0;
}
while (size < min_length) {
old_size = size;
size *= 2;
/* Prevent potential overflow. */
if( size < old_size )
size = min_length;
}
buffer->buffer = (char*)realloc(buffer->buffer, sizeof(char) * size);
if (buffer->buffer == NULL) {
@ -97,7 +81,7 @@ static int buffer_grow(bson_buffer_t buffer, int min_length) {
/* Assure that `buffer` has at least `size` free bytes (and grow if needed).
* Return non-zero on allocation failure. */
static int buffer_assure_space(bson_buffer_t buffer, int size) {
static int buffer_assure_space(buffer_t buffer, int size) {
if (buffer->position + size <= buffer->size) {
return 0;
}
@ -106,7 +90,7 @@ static int buffer_assure_space(bson_buffer_t buffer, int size) {
/* Save `size` bytes from the current position in `buffer` (and grow if needed).
* Return offset for writing, or -1 on allocation failure. */
bson_buffer_position bson_buffer_save_space(bson_buffer_t buffer, int size) {
buffer_position buffer_save_space(buffer_t buffer, int size) {
int position = buffer->position;
if (buffer_assure_space(buffer, size) != 0) {
return -1;
@ -117,7 +101,7 @@ bson_buffer_position bson_buffer_save_space(bson_buffer_t buffer, int size) {
/* Write `size` bytes from `data` to `buffer` (and grow if needed).
* Return non-zero on allocation failure. */
int bson_buffer_write(bson_buffer_t buffer, const char* data, int size) {
int buffer_write(buffer_t buffer, const char* data, int size) {
if (buffer_assure_space(buffer, size) != 0) {
return 1;
}
@ -130,10 +114,10 @@ int bson_buffer_write(bson_buffer_t buffer, const char* data, int size) {
/* Write `size` bytes from `data` to `buffer` at position `position`.
* Does not change the internal position of `buffer`.
* Return non-zero if buffer isn't large enough for write. */
int bson_buffer_write_at_position(bson_buffer_t buffer, bson_buffer_position position,
int buffer_write_at_position(buffer_t buffer, buffer_position position,
const char* data, int size) {
if (position + size > buffer->size) {
bson_buffer_free(buffer);
buffer_free(buffer);
return 1;
}
@ -142,10 +126,10 @@ int bson_buffer_write_at_position(bson_buffer_t buffer, bson_buffer_position pos
}
int bson_buffer_get_position(bson_buffer_t buffer) {
int buffer_get_position(buffer_t buffer) {
return buffer->position;
}
char* bson_buffer_get_buffer(bson_buffer_t buffer) {
char* buffer_get_buffer(buffer_t buffer) {
return buffer->buffer;
}

View File

@ -14,47 +14,42 @@
* limitations under the License.
*/
#ifndef _BSON_BUFFER_H
#define _BSON_BUFFER_H
#ifndef BUFFER_H
#define BUFFER_H
/* Note: if any of these functions return a failure condition then the buffer
* has already been freed. */
/* A buffer */
typedef struct bson_buffer* bson_buffer_t;
typedef struct buffer* buffer_t;
/* A position in the buffer */
typedef int bson_buffer_position;
typedef int buffer_position;
/* Allocate and return a new buffer.
* Return NULL on allocation failure. */
bson_buffer_t bson_buffer_new(void);
/* Set the max size for this buffer.
* Note: this is not a hard limit. */
void bson_buffer_set_max_size(bson_buffer_t buffer, int max_size);
int bson_buffer_get_max_size(bson_buffer_t buffer);
buffer_t buffer_new(void);
/* Free the memory allocated for `buffer`.
* Return non-zero on failure. */
int bson_buffer_free(bson_buffer_t buffer);
int buffer_free(buffer_t buffer);
/* Save `size` bytes from the current position in `buffer` (and grow if needed).
* Return offset for writing, or -1 on allocation failure. */
bson_buffer_position bson_buffer_save_space(bson_buffer_t buffer, int size);
buffer_position buffer_save_space(buffer_t buffer, int size);
/* Write `size` bytes from `data` to `buffer` (and grow if needed).
* Return non-zero on allocation failure. */
int bson_buffer_write(bson_buffer_t buffer, const char* data, int size);
int buffer_write(buffer_t buffer, const char* data, int size);
/* Write `size` bytes from `data` to `buffer` at position `position`.
* Does not change the internal position of `buffer`.
* Return non-zero if buffer isn't large enough for write. */
int bson_buffer_write_at_position(bson_buffer_t buffer, bson_buffer_position position, const char* data, int size);
int buffer_write_at_position(buffer_t buffer, buffer_position position, const char* data, int size);
/* Getters for the internals of a bson_buffer_t.
/* Getters for the internals of a buffer_t.
* Should try to avoid using these as much as possible
* since they break the abstraction. */
bson_buffer_position bson_buffer_get_position(bson_buffer_t buffer);
char* bson_buffer_get_buffer(bson_buffer_t buffer);
buffer_position buffer_get_position(buffer_t buffer);
char* buffer_get_buffer(buffer_t buffer);
#endif

View File

@ -21,7 +21,6 @@
*/
#include "ruby.h"
#include "version.h"
/* Ensure compatibility with early releases of Ruby 1.8.5 */
#ifndef RSTRING_PTR
@ -62,16 +61,16 @@
#include <time.h>
#include "version.h"
#include "bson_buffer.h"
#include "buffer.h"
#include "encoding_helpers.h"
#define SAFE_WRITE(buffer, data, size) \
if (bson_buffer_write((buffer), (data), (size)) != 0) \
rb_raise(rb_eNoMemError, "failed to allocate memory in bson_buffer.c")
if (buffer_write((buffer), (data), (size)) != 0) \
rb_raise(rb_eNoMemError, "failed to allocate memory in buffer.c")
#define SAFE_WRITE_AT_POS(buffer, position, data, size) \
if (bson_buffer_write_at_position((buffer), (position), (data), (size)) != 0) \
rb_raise(rb_eRuntimeError, "invalid write at position in bson_buffer.c")
if (buffer_write_at_position((buffer), (position), (data), (size)) != 0) \
rb_raise(rb_eRuntimeError, "invalid write at position in buffer.c")
#define MAX_HOSTNAME_LENGTH 256
@ -87,7 +86,6 @@ static VALUE DBRef;
static VALUE Code;
static VALUE MinKey;
static VALUE MaxKey;
static VALUE Timestamp;
static VALUE Regexp;
static VALUE OrderedHash;
static VALUE InvalidKeyName;
@ -109,22 +107,34 @@ static int max_bson_size;
} \
_str; \
})
/* MUST call TO_UTF8 before calling write_utf8. */
#define TO_UTF8(string) rb_str_export_to_enc((string), rb_utf8_encoding())
static void write_utf8(buffer_t buffer, VALUE string, char check_null) {
result_t status = check_string(RSTRING_PTR(string), RSTRING_LENINT(string),
0, check_null);
if (status == HAS_NULL) {
buffer_free(buffer);
rb_raise(InvalidDocument, "Key names / regex patterns must not contain the NULL byte");
}
SAFE_WRITE(buffer, RSTRING_PTR(string), RSTRING_LENINT(string));
}
#else
#define STR_NEW(p,n) rb_str_new((p), (n))
#endif
static void write_utf8(bson_buffer_t buffer, VALUE string, char check_null) {
/* MUST call TO_UTF8 before calling write_utf8. */
#define TO_UTF8(string) (string)
static void write_utf8(buffer_t buffer, VALUE string, char check_null) {
result_t status = check_string(RSTRING_PTR(string), RSTRING_LEN(string),
1, check_null);
if (status == HAS_NULL) {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidDocument, "Key names / regex patterns must not contain the NULL byte");
} else if (status == NOT_UTF_8) {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidStringEncoding, "String not valid UTF-8");
}
SAFE_WRITE(buffer, RSTRING_PTR(string), (int)RSTRING_LEN(string));
SAFE_WRITE(buffer, RSTRING_PTR(string), RSTRING_LEN(string));
}
#endif
// this sucks. but for some reason these moved around between 1.8 and 1.9
#ifdef ONIGURUMA_H
@ -190,23 +200,24 @@ static int cmp_char(const void* a, const void* b) {
return *(char*)a - *(char*)b;
}
static void write_doc(bson_buffer_t buffer, VALUE hash, VALUE check_keys, VALUE move_id);
static void write_doc(buffer_t buffer, VALUE hash, VALUE check_keys, VALUE move_id);
static int write_element_with_id(VALUE key, VALUE value, VALUE extra);
static int write_element_without_id(VALUE key, VALUE value, VALUE extra);
static VALUE elements_to_hash(const char* buffer, int max);
static VALUE pack_extra(bson_buffer_t buffer, VALUE check_keys) {
static VALUE pack_extra(buffer_t buffer, VALUE check_keys) {
return rb_ary_new3(2, LL2NUM((long long)buffer), check_keys);
}
static void write_name_and_type(bson_buffer_t buffer, VALUE name, char type) {
static void write_name_and_type(buffer_t buffer, VALUE name, char type) {
SAFE_WRITE(buffer, &type, 1);
name = TO_UTF8(name);
write_utf8(buffer, name, 1);
SAFE_WRITE(buffer, &zero, 1);
}
static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
bson_buffer_t buffer = (bson_buffer_t)NUM2LL(rb_ary_entry(extra, 0));
buffer_t buffer = (buffer_t)NUM2LL(rb_ary_entry(extra, 0));
VALUE check_keys = rb_ary_entry(extra, 1);
if (TYPE(key) == T_SYMBOL) {
@ -215,7 +226,7 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
}
if (TYPE(key) != T_STRING) {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(rb_eTypeError, "keys must be strings or symbols");
}
@ -226,12 +237,12 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
if (check_keys == Qtrue) {
int i;
if (RSTRING_LEN(key) > 0 && RSTRING_PTR(key)[0] == '$') {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidKeyName, "%s - key must not start with '$'", RSTRING_PTR(key));
}
for (i = 0; i < RSTRING_LEN(key); i++) {
if (RSTRING_PTR(key)[i] == '.') {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidKeyName, "%s - key must not contain '.'", RSTRING_PTR(key));
}
}
@ -242,7 +253,7 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
{
if (rb_funcall(value, gt_operator, 1, LL2NUM(9223372036854775807LL)) == Qtrue ||
rb_funcall(value, lt_operator, 1, LL2NUM(-9223372036854775808ULL)) == Qtrue) {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(rb_eRangeError, "MongoDB can only handle 8-byte ints");
}
}
@ -296,15 +307,15 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
}
case T_ARRAY:
{
bson_buffer_position length_location, start_position, obj_length;
buffer_position length_location, start_position, obj_length;
int items, i;
VALUE* values;
write_name_and_type(buffer, key, 0x04);
start_position = bson_buffer_get_position(buffer);
start_position = buffer_get_position(buffer);
// save space for length
length_location = bson_buffer_save_space(buffer, 4);
length_location = buffer_save_space(buffer, 4);
if (length_location == -1) {
rb_raise(rb_eNoMemError, "failed to allocate memory in buffer.c");
}
@ -321,7 +332,7 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
// write null byte and fill in length
SAFE_WRITE(buffer, &zero, 1);
obj_length = bson_buffer_get_position(buffer) - start_position;
obj_length = buffer_get_position(buffer) - start_position;
SAFE_WRITE_AT_POS(buffer, length_location, (const char*)&obj_length, 4);
break;
}
@ -329,6 +340,7 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
{
int length;
write_name_and_type(buffer, key, 0x02);
value = TO_UTF8(value);
length = RSTRING_LENINT(value) + 1;
SAFE_WRITE(buffer, (char*)&length, 4);
write_utf8(buffer, value, 0);
@ -378,14 +390,14 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
break;
}
if (strcmp(cls, "BSON::DBRef") == 0) {
bson_buffer_position length_location, start_position, obj_length;
buffer_position length_location, start_position, obj_length;
VALUE ns, oid;
write_name_and_type(buffer, key, 0x03);
start_position = bson_buffer_get_position(buffer);
start_position = buffer_get_position(buffer);
// save space for length
length_location = bson_buffer_save_space(buffer, 4);
length_location = buffer_save_space(buffer, 4);
if (length_location == -1) {
rb_raise(rb_eNoMemError, "failed to allocate memory in buffer.c");
}
@ -397,18 +409,18 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
// write null byte and fill in length
SAFE_WRITE(buffer, &zero, 1);
obj_length = bson_buffer_get_position(buffer) - start_position;
obj_length = buffer_get_position(buffer) - start_position;
SAFE_WRITE_AT_POS(buffer, length_location, (const char*)&obj_length, 4);
break;
}
if (strcmp(cls, "BSON::Code") == 0) {
bson_buffer_position length_location, start_position, total_length;
buffer_position length_location, start_position, total_length;
int length;
VALUE code_str;
write_name_and_type(buffer, key, 0x0F);
start_position = bson_buffer_get_position(buffer);
length_location = bson_buffer_save_space(buffer, 4);
start_position = buffer_get_position(buffer);
length_location = buffer_save_space(buffer, 4);
if (length_location == -1) {
rb_raise(rb_eNoMemError, "failed to allocate memory in buffer.c");
}
@ -420,7 +432,7 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
SAFE_WRITE(buffer, &zero, 1);
write_doc(buffer, rb_funcall(value, rb_intern("scope"), 0), Qfalse, Qfalse);
total_length = bson_buffer_get_position(buffer) - start_position;
total_length = buffer_get_position(buffer) - start_position;
SAFE_WRITE_AT_POS(buffer, length_location, (const char*)&total_length, 4);
break;
}
@ -432,32 +444,17 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
write_name_and_type(buffer, key, 0xff);
break;
}
if (strcmp(cls, "BSON::Timestamp") == 0) {
unsigned int seconds;
unsigned int increment;
write_name_and_type(buffer, key, 0x11);
seconds = NUM2UINT(
rb_funcall(value, rb_intern("seconds"), 0));
increment = NUM2UINT(
rb_funcall(value, rb_intern("increment"), 0));
SAFE_WRITE(buffer, (const char*)&increment, 4);
SAFE_WRITE(buffer, (const char*)&seconds, 4);
break;
}
if (strcmp(cls, "DateTime") == 0 || strcmp(cls, "Date") == 0 || strcmp(cls, "ActiveSupport::TimeWithZone") == 0) {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidDocument, "%s is not currently supported; use a UTC Time instance instead.", cls);
break;
}
if(strcmp(cls, "Complex") == 0 || strcmp(cls, "Rational") == 0 || strcmp(cls, "BigDecimal") == 0) {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidDocument, "Cannot serialize the Numeric type %s as BSON; only Bignum, Fixnum, and Float are supported.", cls);
break;
}
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidDocument, "Cannot serialize an object of class %s into BSON.", cls);
break;
}
@ -471,18 +468,12 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
SAFE_WRITE(buffer, (const char*)&time_since_epoch, 8);
break;
}
// Date classes are TYPE T_DATA in Ruby >= 1.9.3
if (strcmp(cls, "DateTime") == 0 || strcmp(cls, "Date") == 0 || strcmp(cls, "ActiveSupport::TimeWithZone") == 0) {
bson_buffer_free(buffer);
rb_raise(InvalidDocument, "%s is not currently supported; use a UTC Time instance instead.", cls);
break;
}
if(strcmp(cls, "BigDecimal") == 0) {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidDocument, "Cannot serialize the Numeric type %s as BSON; only Bignum, Fixnum, and Float are supported.", cls);
break;
}
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidDocument, "Cannot serialize an object of class %s into BSON.", cls);
break;
}
@ -494,6 +485,7 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
write_name_and_type(buffer, key, 0x0B);
pattern = TO_UTF8(pattern);
write_utf8(buffer, pattern, 1);
SAFE_WRITE(buffer, &zero, 1);
@ -503,9 +495,7 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
}
if (flags & MULTILINE) {
char multiline = 'm';
char dotall = 's';
SAFE_WRITE(buffer, &multiline, 1);
SAFE_WRITE(buffer, &dotall, 1);
}
if (flags & EXTENDED) {
char extended = 'x';
@ -515,9 +505,9 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
has_extra = rb_funcall(value, rb_intern("respond_to?"), 1, rb_str_new2("extra_options_str"));
if (TYPE(has_extra) == T_TRUE) {
VALUE extra = rb_funcall(value, rb_intern("extra_options_str"), 0);
bson_buffer_position old_position = bson_buffer_get_position(buffer);
buffer_position old_position = buffer_get_position(buffer);
SAFE_WRITE(buffer, RSTRING_PTR(extra), RSTRING_LENINT(extra));
qsort(bson_buffer_get_buffer(buffer) + old_position, RSTRING_LEN(extra), sizeof(char), cmp_char);
qsort(buffer_get_buffer(buffer) + old_position, RSTRING_LEN(extra), sizeof(char), cmp_char);
}
SAFE_WRITE(buffer, &zero, 1);
@ -526,7 +516,7 @@ static int write_element(VALUE key, VALUE value, VALUE extra, int allow_id) {
default:
{
const char* cls = rb_obj_classname(value);
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidDocument, "Cannot serialize an object of class %s (type %d) into BSON.", cls, TYPE(value));
break;
}
@ -542,10 +532,10 @@ static int write_element_with_id(VALUE key, VALUE value, VALUE extra) {
return write_element(key, value, extra, 1);
}
static void write_doc(bson_buffer_t buffer, VALUE hash, VALUE check_keys, VALUE move_id) {
bson_buffer_position start_position = bson_buffer_get_position(buffer);
bson_buffer_position length_location = bson_buffer_save_space(buffer, 4);
bson_buffer_position length;
static void write_doc(buffer_t buffer, VALUE hash, VALUE check_keys, VALUE move_id) {
buffer_position start_position = buffer_get_position(buffer);
buffer_position length_location = buffer_save_space(buffer, 4);
buffer_position length;
int allow_id;
int (*write_function)(VALUE, VALUE, VALUE) = NULL;
VALUE id_str = rb_str_new2("_id");
@ -598,39 +588,34 @@ static void write_doc(bson_buffer_t buffer, VALUE hash, VALUE check_keys, VALUE
} else if (rb_obj_is_kind_of(hash, RB_HASH) == Qtrue) {
rb_hash_foreach(hash, write_function, pack_extra(buffer, check_keys));
} else {
bson_buffer_free(buffer);
buffer_free(buffer);
rb_raise(InvalidDocument, "BSON.serialize takes a Hash but got a %s", rb_obj_classname(hash));
}
// write null byte and fill in length
SAFE_WRITE(buffer, &zero, 1);
length = bson_buffer_get_position(buffer) - start_position;
length = buffer_get_position(buffer) - start_position;
// make sure that length doesn't exceed 4MB
if (length > bson_buffer_get_max_size(buffer)) {
bson_buffer_free(buffer);
rb_raise(InvalidDocument,
"Document too large: This BSON documents is limited to %d bytes.",
bson_buffer_get_max_size(buffer));
if (length > max_bson_size) {
buffer_free(buffer);
rb_raise(InvalidDocument, "Document too large: BSON documents are limited to %d bytes.", max_bson_size);
return;
}
SAFE_WRITE_AT_POS(buffer, length_location, (const char*)&length, 4);
}
static VALUE method_serialize(VALUE self, VALUE doc, VALUE check_keys,
VALUE move_id, VALUE max_size) {
static VALUE method_serialize(VALUE self, VALUE doc, VALUE check_keys, VALUE move_id) {
VALUE result;
bson_buffer_t buffer = bson_buffer_new();
bson_buffer_set_max_size(buffer, FIX2INT(max_size));
buffer_t buffer = buffer_new();
if (buffer == NULL) {
rb_raise(rb_eNoMemError, "failed to allocate memory in buffer.c");
}
write_doc(buffer, doc, check_keys, move_id);
result = rb_str_new(bson_buffer_get_buffer(buffer), bson_buffer_get_position(buffer));
if (bson_buffer_free(buffer) != 0) {
result = rb_str_new(buffer_get_buffer(buffer), buffer_get_position(buffer));
if (buffer_free(buffer) != 0) {
rb_raise(rb_eRuntimeError, "failed to free buffer");
}
return result;
@ -744,23 +729,10 @@ static VALUE get_value(const char* buffer, int* position, int type) {
}
case 9:
{
int64_t millis;
long long millis;
memcpy(&millis, buffer + *position, 8);
// Support 64-bit time values in 32 bit environments in Ruby > 1.9
// Note: rb_time_num_new is not available pre Ruby 1.9
#if RUBY_API_VERSION_CODE >= 10900
#define add(x,y) (rb_funcall((x), '+', 1, (y)))
#define mul(x,y) (rb_funcall((x), '*', 1, (y)))
#define quo(x,y) (rb_funcall((x), rb_intern("quo"), 1, (y)))
VALUE d, timev;
d = LL2NUM(1000LL);
timev = add(LL2NUM(millis / 1000), quo(LL2NUM(millis % 1000), d));
value = rb_time_num_new(timev, Qnil);
#else
value = rb_time_new(millis / 1000, (millis % 1000) * 1000);
#endif
value = rb_time_new(millis / 1000, (millis % 1000) * 1000);
value = rb_funcall(value, utc_method, 0);
*position += 8;
break;
@ -787,9 +759,6 @@ static VALUE get_value(const char* buffer, int* position, int type) {
else if (flag == 'm') {
flags |= MULTILINE;
}
else if (flag == 's') {
flags |= MULTILINE;
}
else if (flag == 'x') {
flags |= EXTENDED;
}
@ -856,13 +825,11 @@ static VALUE get_value(const char* buffer, int* position, int type) {
}
case 17:
{
unsigned int sec, inc;
VALUE argv[2];
memcpy(&inc, buffer + *position, 4);
memcpy(&sec, buffer + *position + 4, 4);
argv[0] = UINT2NUM(sec);
argv[1] = UINT2NUM(inc);
value = rb_class_new_instance(2, argv, Timestamp);
int i;
int j;
memcpy(&i, buffer + *position, 4);
memcpy(&j, buffer + *position + 4, 4);
value = rb_ary_new3(2, LL2NUM(i), LL2NUM(j));
*position += 8;
break;
}
@ -914,7 +881,7 @@ static VALUE method_deserialize(VALUE self, VALUE bson) {
return elements_to_hash(buffer, remaining);
}
static VALUE objectid_generate(int argc, VALUE* args, VALUE self)
static VALUE objectid_generate(VALUE self)
{
VALUE oid;
unsigned char oid_bytes[12];
@ -922,11 +889,7 @@ static VALUE objectid_generate(int argc, VALUE* args, VALUE self)
unsigned short pid;
int i;
if(argc == 0 || (argc == 1 && *args == Qnil)) {
t = htonl((int)time(NULL));
} else {
t = htonl(NUM2UINT(rb_funcall(*args, rb_intern("to_i"), 0)));
}
t = htonl((int)time(NULL));
MEMCPY(&oid_bytes, &t, unsigned char, 4);
MEMCPY(&oid_bytes[4], hostname_digest, unsigned char, 3);
@ -985,8 +948,6 @@ void Init_cbson() {
rb_require("bson/types/min_max_keys");
MinKey = rb_const_get(bson, rb_intern("MinKey"));
MaxKey = rb_const_get(bson, rb_intern("MaxKey"));
rb_require("bson/types/timestamp");
Timestamp = rb_const_get(bson, rb_intern("Timestamp"));
Regexp = rb_const_get(rb_cObject, rb_intern("Regexp"));
rb_require("bson/exceptions");
InvalidKeyName = rb_const_get(bson, rb_intern("InvalidKeyName"));
@ -999,7 +960,7 @@ void Init_cbson() {
CBson = rb_define_module("CBson");
ext_version = rb_str_new2(VERSION);
rb_define_const(CBson, "VERSION", ext_version);
rb_define_module_function(CBson, "serialize", method_serialize, 4);
rb_define_module_function(CBson, "serialize", method_serialize, 3);
rb_define_module_function(CBson, "deserialize", method_deserialize, 1);
rb_define_module_function(CBson, "max_bson_size", method_max_bson_size, 0);
rb_define_module_function(CBson, "update_max_bson_size", method_update_max_bson_size, 1);
@ -1008,7 +969,7 @@ void Init_cbson() {
Digest = rb_const_get(rb_cObject, rb_intern("Digest"));
DigestMD5 = rb_const_get(Digest, rb_intern("MD5"));
rb_define_method(ObjectId, "generate", objectid_generate, -1);
rb_define_method(ObjectId, "generate", objectid_generate, 0);
if (gethostname(hostname, MAX_HOSTNAME_LENGTH) != 0) {
rb_raise(rb_eRuntimeError, "failed to get hostname");

View File

@ -87,7 +87,7 @@ static unsigned char isLegalUTF8(const unsigned char* source, int length) {
return 1;
}
result_t check_string(const unsigned char* string, const long length,
result_t check_string(const unsigned char* string, const int length,
const char check_utf8, const char check_null) {
int position = 0;
/* By default we go character by character. Will be different for checking

View File

@ -23,7 +23,7 @@ typedef enum {
HAS_NULL
} result_t;
result_t check_string(const unsigned char* string, const long length,
result_t check_string(const unsigned char* string, const int length,
const char check_utf8, const char check_null);
#endif

View File

@ -14,4 +14,4 @@
* limitations under the License.
*/
#define VERSION "1.6.2"
#define VERSION "1.2.2"

BIN
ext/java/jar/bson-2.2.jar Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
ext/java/jar/mongo-2.4.jar Normal file

Binary file not shown.

Binary file not shown.

View File

@ -9,7 +9,6 @@ import org.jruby.runtime.builtin.IRubyObject;
import org.jruby.runtime.Block;
import org.jruby.runtime.CallType;
import org.jruby.runtime.callsite.CacheEntry;
import org.jruby.util.RegexpOptions;
import org.jruby.javasupport.JavaEmbedUtils;
import org.jruby.javasupport.JavaUtil;
@ -33,7 +32,6 @@ public class RubyBSONCallback implements BSONCallback {
private RubyModule _rbclsBinary;
private RubyModule _rbclsMinKey;
private RubyModule _rbclsMaxKey;
private RubyModule _rbclsTimestamp;
private RubyModule _rbclsDBRef;
private RubyModule _rbclsCode;
private final LinkedList<RubyObject> _stack = new LinkedList<RubyObject>();
@ -49,7 +47,6 @@ public class RubyBSONCallback implements BSONCallback {
_rbclsCode = _lookupConstant( _runtime, "BSON::Code" );
_rbclsMinKey = _lookupConstant( _runtime, "BSON::MinKey" );
_rbclsMaxKey = _lookupConstant( _runtime, "BSON::MaxKey" );
_rbclsTimestamp = _lookupConstant( _runtime, "BSON::Timestamp" );
_rbclsObjectId = _lookupConstant( _runtime, "BSON::ObjectId");
}
@ -227,23 +224,19 @@ public class RubyBSONCallback implements BSONCallback {
public void gotRegex( String name , String pattern , String flags ){
int f = 0;
RegexpOptions opts = new RegexpOptions();
ByteList b = new ByteList(pattern.getBytes());
if(flags.contains("i")) {
opts.setIgnorecase(true);
f = f | ReOptions.RE_OPTION_IGNORECASE;
}
if(flags.contains("m")) {
opts.setMultiline(true);
}
if(flags.contains("s")) {
opts.setMultiline(true);
f = f | ReOptions.RE_OPTION_MULTILINE;
}
if(flags.contains("x")) {
opts.setExtended(true);
f = f | ReOptions.RE_OPTION_EXTENDED;
}
_put( name , RubyRegexp.newRegexp(_runtime, b, opts) );
_put( name , RubyRegexp.newRegexp(_runtime, b, f) );
}
public void gotString( String name , String v ){
@ -257,16 +250,17 @@ public class RubyBSONCallback implements BSONCallback {
_put( name , symbol );
}
// Timestamp is currently rendered in Ruby as a two-element array.
public void gotTimestamp( String name , int time , int inc ){
RubyFixnum rtime = RubyFixnum.newFixnum( _runtime, time );
RubyFixnum rinc = RubyFixnum.newFixnum( _runtime, inc );
RubyObject[] args = new RubyObject[2];
args[0] = rtime;
args[1] = rinc;
args[0] = rinc;
args[1] = rtime;
Object result = JavaEmbedUtils.invokeMethod(_runtime, _rbclsTimestamp, "new", args, Object.class);
RubyArray result = RubyArray.newArray( _runtime, args );
_put ( name , (RubyObject)result );
_put ( name , result );
}
public void gotObjectId( String name , ObjectId id ){
@ -299,9 +293,14 @@ public class RubyBSONCallback implements BSONCallback {
return result;
}
@Deprecated
public void gotBinaryArray( String name , byte[] b ) {
/* Deprecated */
RubyArray a = ja2ra( b );
Object[] args = new Object[] { a, 2 };
Object result = JavaEmbedUtils.invokeMethod(_runtime, _rbclsBinary, "new", args, Object.class);
_put( name, (RubyObject)result );
}
// TODO: fix abs stuff here. some kind of bad type issue

View File

@ -12,26 +12,16 @@ import org.bson.*;
import org.bson.io.*;
import org.bson.types.*;
public class RubyBSONDecoder extends BasicBSONDecoder {
public class RubyBSONDecoder extends BSONDecoder {
protected void _binary( String name )
throws IOException {
final int totalLen = _in.readInt();
final byte bType = _in.read();
// public int decode( RubyString s , BSONCallback callback ){
// byte[] b = s.getBytes();
// try {
// return decode( new Input( new ByteArrayInputStream(b) ) , callback );
// }
// catch ( IOException ioe ){
// throw new RuntimeException( "should be impossible" , ioe );
// }
// }
if( bType == 2 ) {
final int len = _in.readInt();
if ( len + 4 != totalLen )
throw new IllegalArgumentException( "bad data size subtype 2 len: " + len + "totalLen: " + totalLen );
final byte[] data = new byte[len];
_in.fill( data );
_callback.gotBinary( name, (byte)2, data );
}
else {
byte[] data = new byte[totalLen];
_in.fill( data );
_callback.gotBinary( name, bType, data );
}
}
}

View File

@ -69,8 +69,7 @@ public class RubyBSONEncoder extends BSONEncoder {
private static final BigInteger LONG_MIN = BigInteger.valueOf(-MAX - 1);
public RubyBSONEncoder(Ruby runtime, boolean check_keys, boolean move_id, int max_bson_size){
_max_bson_size = max_bson_size;
public RubyBSONEncoder(Ruby runtime, boolean check_keys, boolean move_id){
_check_keys = check_keys;
_move_id = move_id;
_runtime = runtime;
@ -282,9 +281,6 @@ public class RubyBSONEncoder extends BSONEncoder {
else if ( val instanceof Iterable)
putIterable( name , (Iterable)val );
else if ( val instanceof Date )
putDate( name , ((Date)val).getTime() );
else if ( val instanceof byte[] )
putBinary( name , (byte[])val );
@ -385,9 +381,6 @@ public class RubyBSONEncoder extends BSONEncoder {
else if ( klass.equals("BSON::MaxKey") ) {
_put( MAXKEY, name );
}
else if ( klass.equals("BSON::Timestamp") ) {
putRubyTimestamp( name, (RubyObject)val );
}
else if ( klass.equals("BSON::DBRef") ) {
RubyHash ref = (RubyHash)JavaEmbedUtils.invokeMethod(_runtime, val,
"to_hash", new Object[] {}, Object.class);
@ -508,18 +501,6 @@ public class RubyBSONEncoder extends BSONEncoder {
_buf.writeInt( ts.getTime() );
}
protected void putRubyTimestamp(String name, RubyObject ts ){
_put( TIMESTAMP , name );
Number inc = (Number)JavaEmbedUtils.invokeMethod(_runtime, ts,
"increment", new Object[] {}, Object.class);
Number sec = (Number)JavaEmbedUtils.invokeMethod(_runtime, ts,
"seconds", new Object[] {}, Object.class);
_buf.writeInt( (int)inc.longValue() );
_buf.writeInt( (int)sec.longValue() );
}
protected void putRubyCodeWScope( String name , RubyObject code ){
_put( CODE_W_SCOPE , name );
int temp = _buf.getPosition();
@ -559,7 +540,7 @@ public class RubyBSONEncoder extends BSONEncoder {
long subtype = rbSubtype.longValue();
byte[] data = ra2ba( rarray );
if ( subtype == 2 ) {
putBinaryTypeTwo( name, data );
putBinary( name, data );
}
else {
_put( BINARY , name );
@ -569,12 +550,11 @@ public class RubyBSONEncoder extends BSONEncoder {
}
}
/* We have a special method because type 2 has a different format. */
protected void putBinaryTypeTwo( String name , byte[] data ){
protected void putBinary( String name , byte[] data ){
_put( BINARY , name );
_buf.writeInt( 4 + data.length );
_buf.write( 2 );
_buf.write( B_BINARY );
_buf.writeInt( data.length );
int before = _buf.getPosition();
_buf.write( data );
@ -583,13 +563,6 @@ public class RubyBSONEncoder extends BSONEncoder {
com.mongodb.util.MyAsserts.assertEquals( after - before , data.length );
}
protected void putBinary( String name , byte[] data ){
_put( BINARY , name );
_buf.writeInt( data.length );
_buf.write( 0 );
_buf.write( data );
}
protected void putBinary( String name , Binary val ){
_put( BINARY , name );
_buf.writeInt( val.length() );
@ -651,10 +624,8 @@ public class RubyBSONEncoder extends BSONEncoder {
if( (regexOptions & ReOptions.RE_OPTION_IGNORECASE) != 0 )
options = options.concat( "i" );
if( (regexOptions & ReOptions.RE_OPTION_MULTILINE) != 0 ) {
if( (regexOptions & ReOptions.RE_OPTION_MULTILINE) != 0 )
options = options.concat( "m" );
options = options.concat( "s" );
}
if( (regexOptions & ReOptions.RE_OPTION_EXTENDED) != 0 )
options = options.concat( "x" );

View File

@ -16,9 +16,13 @@
# limitations under the License.
# ++
require 'bson/version'
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
MINIMUM_BSON_EXT_VERSION = "1.2.2"
module BSON
VERSION = "1.2.2"
if defined? Mongo::DEFAULT_MAX_BSON_SIZE
DEFAULT_MAX_BSON_SIZE = Mongo::DEFAULT_MAX_BSON_SIZE
else
@ -52,7 +56,8 @@ end
if RUBY_PLATFORM =~ /java/
jar_dir = File.join(File.dirname(__FILE__), '..', 'ext', 'java', 'jar')
require File.join(jar_dir, 'mongo-2.6.5.jar')
require File.join(jar_dir, 'mongo-2.4.jar')
require File.join(jar_dir, 'bson-2.2.jar')
require File.join(jar_dir, 'jbson.jar')
require 'bson/bson_java'
module BSON
@ -63,12 +68,15 @@ else
# Need this for running test with and without c ext in Ruby 1.9.
raise LoadError if ENV['TEST_MODE'] && !ENV['C_EXT']
# Raise LoadError unless little endian, since the C extensions
# only work on little-endian architectures.
# Raise LoadError unless little endian
raise LoadError unless "\x01\x00\x00\x00".unpack("i").first == 1
require 'bson_ext/cbson'
raise LoadError unless defined?(CBson::VERSION)
if CBson::VERSION < MINIMUM_BSON_EXT_VERSION
puts "Able to load bson_ext version #{CBson::VERSION}, but >= #{MINIMUM_BSON_EXT_VERSION} is required."
raise LoadError
end
require 'bson/bson_c'
module BSON
BSON_CODER = BSON_C
@ -92,7 +100,6 @@ require 'bson/types/code'
require 'bson/types/dbref'
require 'bson/types/object_id'
require 'bson/types/min_max_keys'
require 'bson/types/timestamp'
require 'base64'
require 'bson/ordered_hash'

View File

@ -20,8 +20,8 @@
module BSON
class BSON_C
def self.serialize(obj, check_keys=false, move_id=false, max_bson_size=BSON::DEFAULT_MAX_BSON_SIZE)
ByteBuffer.new(CBson.serialize(obj, check_keys, move_id, max_bson_size))
def self.serialize(obj, check_keys=false, move_id=false)
ByteBuffer.new(CBson.serialize(obj, check_keys, move_id))
end
def self.deserialize(buf=nil)
@ -29,12 +29,10 @@ module BSON
end
def self.max_bson_size
warn "BSON::BSON_CODER.max_bson_size is deprecated and will be removed in v2.0."
CBson.max_bson_size
end
def self.update_max_bson_size(connection)
warn "BSON::BSON_CODER.update_max_bson_size is deprecated and now a no-op. It will be removed in v2.0."
CBson.update_max_bson_size(connection)
end
end

View File

@ -4,26 +4,24 @@ module BSON
# TODO: Pool or cache instances of RubyBSONEncoder so that
# we don't create a new one on each call to #serialize.
def self.serialize(obj, check_keys=false, move_id=false, max_bson_size=BSON::DEFAULT_MAX_BSON_SIZE)
def self.serialize(obj, check_keys=false, move_id=false)
raise InvalidDocument, "BSON_JAVA.serialize takes a Hash" unless obj.is_a?(Hash)
enc = Java::OrgJbson::RubyBSONEncoder.new(JRuby.runtime, check_keys, move_id, max_bson_size)
enc = Java::OrgJbson::RubyBSONEncoder.new(JRuby.runtime, check_keys, move_id)
ByteBuffer.new(enc.encode(obj))
end
def self.deserialize(buf)
dec = Java::OrgJbson::RubyBSONDecoder.new
dec = Java::OrgBson::BSONDecoder.new
callback = Java::OrgJbson::RubyBSONCallback.new(JRuby.runtime)
dec.decode(buf.to_s.to_java_bytes, callback)
callback.get
end
def self.max_bson_size
warn "BSON::BSON_CODER.max_bson_size is deprecated and will be removed in v2.0."
Java::OrgJbson::RubyBSONEncoder.max_bson_size(self)
end
def self.update_max_bson_size(connection)
warn "BSON::BSON_CODER.update_max_bson_size is deprecated and now a no-op. It will be removed in v2.0."
Java::OrgJbson::RubyBSONEncoder.update_max_bson_size(self, connection)
end
end

View File

@ -46,8 +46,8 @@ module BSON
NUMBER_LONG = 18
MAXKEY = 127
def initialize(max_bson_size=BSON::DEFAULT_MAX_BSON_SIZE)
@buf = ByteBuffer.new('', max_bson_size)
def initialize
@buf = ByteBuffer.new
@encoder = BSON_RUBY
end
@ -57,12 +57,7 @@ module BSON
BINARY_ENCODING = Encoding.find('binary')
def self.to_utf8_binary(str)
begin
str.unpack("U*")
rescue
raise InvalidStringEncoding, "String not valid utf-8: #{str.inspect}"
end
str.dup.force_encoding(BINARY_ENCODING)
str.encode(UTF8_ENCODING).force_encoding(BINARY_ENCODING)
end
else
NULL_BYTE = "\0"
@ -70,7 +65,7 @@ module BSON
def self.to_utf8_binary(str)
begin
str.unpack("U*")
rescue
rescue => ex
raise InvalidStringEncoding, "String not valid utf-8: #{str.inspect}"
end
str
@ -78,12 +73,10 @@ module BSON
end
def self.update_max_bson_size(connection)
warn "BSON::BSON_CODER.update_max_bson_size is deprecated and now a no-op. It will be removed in v2.0."
@@max_bson_size = connection.max_bson_size
end
def self.max_bson_size
warn "BSON::BSON_CODER.max_bson_size is deprecated and will be removed in v2.0."
@@max_bson_size
end
@ -107,8 +100,8 @@ module BSON
# Serializes an object.
# Implemented to ensure an API compatible with BSON extension.
def self.serialize(obj, check_keys=false, move_id=false, max_bson_size=BSON::DEFAULT_MAX_BSON_SIZE)
new(max_bson_size).serialize(obj, check_keys, move_id)
def self.serialize(obj, check_keys=false, move_id=false)
new.serialize(obj, check_keys, move_id)
end
def self.deserialize(buf=nil)
@ -139,9 +132,8 @@ module BSON
end
serialize_eoo_element(@buf)
if @buf.size > @buf.max_size
raise InvalidDocument, "Document is too large (#{@buf.size}). " +
"This BSON documents is limited to #{@buf.max_size} bytes."
if @buf.size > @@max_bson_size
raise InvalidDocument, "Document is too large (#{@buf.size}). BSON documents are limited to #{@@max_bson_size} bytes."
end
@buf.put_int(@buf.size, 0)
@buf
@ -195,8 +187,6 @@ module BSON
serialize_max_key_element(@buf, k)
when MINKEY
serialize_min_key_element(@buf, k)
when TIMESTAMP
serialize_timestamp_element(@buf, k, v)
else
raise "unhandled type #{type}"
end
@ -266,7 +256,8 @@ module BSON
doc[key] = deserialize_code_w_scope_data(@buf)
when TIMESTAMP
key = deserialize_cstr(@buf)
doc[key] = deserialize_timestamp_data(@buf)
doc[key] = [deserialize_number_int_data(@buf),
deserialize_number_int_data(@buf)]
when MAXKEY
key = deserialize_cstr(@buf)
doc[key] = MaxKey.new
@ -346,17 +337,10 @@ module BSON
opts = 0
opts |= Regexp::IGNORECASE if options_str.include?('i')
opts |= Regexp::MULTILINE if options_str.include?('m')
opts |= Regexp::MULTILINE if options_str.include?('s')
opts |= Regexp::EXTENDED if options_str.include?('x')
Regexp.new(str, opts)
end
def deserialize_timestamp_data(buf)
increment = buf.get_int
seconds = buf.get_int
Timestamp.new(seconds, increment)
end
def encoded_str(str)
if RUBY_VERSION >= '1.9'
str.force_encoding("utf-8")
@ -504,10 +488,7 @@ module BSON
options = val.options
options_str = ''
options_str << 'i' if ((options & Regexp::IGNORECASE) != 0)
if ((options & Regexp::MULTILINE) != 0)
options_str << 'm'
options_str << 's'
end
options_str << 'm' if ((options & Regexp::MULTILINE) != 0)
options_str << 'x' if ((options & Regexp::EXTENDED) != 0)
options_str << val.extra_options_str if val.respond_to?(:extra_options_str)
# Must store option chars in alphabetical order
@ -524,14 +505,6 @@ module BSON
self.class.serialize_key(buf, key)
end
def serialize_timestamp_element(buf, key, val)
buf.put(TIMESTAMP)
self.class.serialize_key(buf, key)
buf.put_int(val.increment)
buf.put_int(val.seconds)
end
def serialize_oid_element(buf, key, val)
buf.put(OID)
self.class.serialize_key(buf, key)
@ -620,8 +593,6 @@ module BSON
MAXKEY
when MinKey
MINKEY
when Timestamp
TIMESTAMP
when Numeric
raise InvalidDocument, "Cannot serialize the Numeric type #{o.class} as BSON; only Fixum, Bignum, and Float are supported."
when Date, DateTime

View File

@ -20,9 +20,9 @@
module BSON
class ByteBuffer
attr_reader :order, :max_size
attr_reader :order
def initialize(initial_data="", max_size=BSON::DEFAULT_MAX_BSON_SIZE)
def initialize(initial_data="")
@str = case initial_data
when String then
if initial_data.respond_to?(:force_encoding)
@ -40,7 +40,6 @@ module BSON
@order = :little_endian
@int_pack_order = 'V'
@double_pack_order = 'E'
@max_size = max_size
end
if RUBY_VERSION >= '1.9'
@ -57,7 +56,7 @@ module BSON
def self.to_utf8_binary(str)
begin
str.unpack("U*")
rescue
rescue => ex
raise InvalidStringEncoding, "String not valid utf-8: #{str.inspect}"
end
str
@ -233,16 +232,12 @@ module BSON
@cursor < @str.size
end
def ==(other)
other.respond_to?(:to_s) && @str == other.to_s
def to_a
@str.unpack("C*")
end
def to_a(format="C*")
@str.unpack(format)
end
def unpack(format="C*")
to_a(format)
def unpack(args)
to_a
end
def to_s
@ -250,6 +245,7 @@ module BSON
end
def dump
i = 0
@str.each_byte do |c, i|
$stderr.puts "#{'%04d' % i}: #{'%02x' % c} #{'%03o' % c} #{'%s' % c.chr} #{'%3d' % c}"
i += 1

View File

@ -29,7 +29,10 @@ module BSON
# Raised when given a string is not valid utf-8 (Ruby 1.8 only).
class InvalidStringEncoding < BSONError; end
# Raised when attempting to initialize an invalid ObjectId.
# Raised when attempting to initialize an invalid ObjectID.
class InvalidObjectID < BSONError; end
# Raised when attempting to initialize an invalid ObjectID.
class InvalidObjectId < BSONError; end
# Raised when trying to insert a document that exceeds the 4MB limit or

View File

@ -57,20 +57,16 @@ module BSON
end
def initialize(*a, &b)
@ordered_keys = []
super
end
def yaml_initialize(tag, val)
@ordered_keys = []
super
end
def keys
@ordered_keys.dup
@ordered_keys || []
end
def []=(key, value)
@ordered_keys ||= []
unless has_key?(key)
@ordered_keys << key
end
@ -78,12 +74,14 @@ module BSON
end
def each
@ordered_keys ||= []
@ordered_keys.each { |k| yield k, self[k] }
self
end
alias :each_pair :each
def to_a
@ordered_keys ||= []
@ordered_keys.map { |k| [k, self[k]] }
end
@ -91,11 +89,6 @@ module BSON
collect { |k, v| v }
end
def replace(other)
@ordered_keys.replace(other.keys)
super
end
def merge(other)
oh = self.dup
oh.merge!(other)
@ -103,6 +96,7 @@ module BSON
end
def merge!(other)
@ordered_keys ||= []
@ordered_keys += other.keys # unordered if not an BSON::OrderedHash
@ordered_keys.uniq!
super(other)
@ -110,18 +104,10 @@ module BSON
alias :update :merge!
def dup
result = OrderedHash.new
@ordered_keys.each do |key|
result[key] = self[key]
end
result
end
def inspect
str = "#<BSON::OrderedHash:0x#{self.object_id.to_s(16)} {"
str = '{'
str << (@ordered_keys || []).collect { |k| "\"#{k}\"=>#{self.[](k).inspect}" }.join(", ")
str << '}>'
str << '}'
end
def delete(key, &block)
@ -130,12 +116,11 @@ module BSON
end
def delete_if(&block)
keys.each do |key|
if yield key, self[key]
delete(key)
self.each { |k,v|
if yield k, v
delete(k)
end
end
self
}
end
def reject(&block)
@ -144,38 +129,25 @@ module BSON
clone.delete_if(&block)
end
def reject!(&block)
changed = false
self.each do |k,v|
if yield k, v
changed = true
delete(k)
end
end
changed ? self : nil
end
def clear
super
@ordered_keys = []
end
if RUBY_VERSION =~ /1.8.6/
def hash
code = 17
each_pair do |key, value|
code = 37 * code + key.hash
code = 37 * code + value.hash
end
code & 0x7fffffff
def hash
code = 17
each_pair do |key, value|
code = 37 * code + key.hash
code = 37 * code + value.hash
end
code & 0x7fffffff
end
def eql?(o)
if o.instance_of? BSON::OrderedHash
self.hash == o.hash
else
false
end
def eql?(o)
if o.instance_of? BSON::OrderedHash
self.hash == o.hash
else
false
end
end

View File

@ -43,7 +43,7 @@ module BSON
# SUBTYPE_BYTES, SUBTYPE_UUID, SUBTYPE_MD5, and SUBTYPE_USER_DEFINED.
#
# @see http://www.mongodb.org/display/DOCS/BSON#BSON-noteondatabinary BSON binary subtypes.
def initialize(data=[], subtype=SUBTYPE_SIMPLE)
def initialize(data=[], subtype=SUBTYPE_BYTES)
super(data)
@subtype = subtype
end

View File

@ -26,7 +26,7 @@ module BSON
# Create a DBRef. Use this class in conjunction with DB#dereference.
#
# @param [String] a collection name
# @param [ObjectId] an object id
# @param [ObjectID] an object id
#
# @core dbrefs constructor_details
def initialize(namespace, object_id)

View File

@ -30,7 +30,8 @@ module BSON
#
# @core objectids
class ObjectId
attr_accessor :data
@@lock = Mutex.new
@@index = 0
# Create a new object id. If no parameter is given, an id corresponding
# to the ObjectId BSON data type will be created. This is a 12-byte value
@ -39,15 +40,12 @@ module BSON
#
# @param [Array] data should be an array of bytes. If you want
# to generate a standard MongoDB object id, leave this argument blank.
#
# @option opts :data (nil) An array of bytes to use as the object id.
# @option opts :time (nil) The value of this object ids timestamp. Note that
# the remaining bytes will consist of the standard machine id, pid, and counter. If
# you need a zeroed timestamp, used ObjectId.from_time.
def initialize(data=nil, time=nil)
@data = data || generate(time)
def initialize(data=nil)
@data = data || generate
end
attr_accessor :data
# Determine if the supplied string is legal. Legal strings will
# consist of 24 hexadecimal characters.
#
@ -64,30 +62,21 @@ module BSON
#
# @param [Time] time a utc time to encode as an object id.
#
# @option opts [:unique] (false) If false, the object id's bytes
# succeeding the timestamp will be zeroed; if true, they'll
# consist of the standard machine id, pid, and counter.
#
# @return [BSON::ObjectId]
# @return [Mongo::ObjectId]
#
# @example Return all document created before Jan 1, 2010.
# time = Time.utc(2010, 1, 1)
# time_id = ObjectId.from_time(time)
# collection.find({'_id' => {'$lt' => time_id}})
def self.from_time(time, opts={})
unique = opts.fetch(:unique, false)
if unique
self.new(nil, time)
else
self.new([time.to_i,0,0].pack("NNN").unpack("C12"))
end
def self.from_time(time)
self.new([time.to_i,0,0].pack("NNN").unpack("C12"))
end
# Adds a primary key to the given document if needed.
#
# @param [Hash] doc a document requiring an _id.
#
# @return [BSON::ObjectId, Object] returns a newly-created or
# @return [Mongo::ObjectId, Object] returns a newly-created or
# current _id for the given document.
def self.create_pk(doc)
doc.has_key?(:_id) || doc.has_key?('_id') ? doc : doc.merge!(:_id => self.new)
@ -95,9 +84,9 @@ module BSON
# Check equality of this object id with another.
#
# @param [BSON::ObjectId] object_id
# @param [Mongo::ObjectId] object_id
def eql?(object_id)
object_id.kind_of?(BSON::ObjectId) and self.data == object_id.data
@data == object_id.instance_variable_get("@data")
end
alias_method :==, :eql?
@ -116,11 +105,11 @@ module BSON
@data.dup
end
# Returns the object id as a single element in an array for use with Kernel#Array
# Get the array representation without cloning.
#
# @return [Array]
def to_ary
[ self ]
def data
@data
end
# Given a string representation of an ObjectId, return a new ObjectId
@ -128,9 +117,9 @@ module BSON
#
# @param [String] str
#
# @return [BSON::ObjectId]
# @return [Mongo::ObjectId]
def self.from_string(str)
raise InvalidObjectId, "illegal ObjectId format: #{str}" unless legal?(str)
raise InvalidObjectId, "illegal ObjectId format" unless legal?(str)
data = []
12.times do |i|
data[i] = str[i * 2, 2].to_i(16)
@ -174,63 +163,31 @@ module BSON
Time.at(@data.pack("C4").unpack("N")[0]).utc
end
def self.machine_id
@@machine_id
end
private
if RUBY_PLATFORM =~ /java/
@@generator = Java::OrgBsonTypes::ObjectId
@@machine_id = [@@generator.genMachineId].pack("N")[0,3]
# This gets overwritten by the C extension if it loads.
def generate
oid = ''
def generate(oid_time=nil)
data = (oid_time ? @@generator.new(oid_time) : @@generator.new)
# 4 bytes current time
time = Time.new.to_i
oid += [time].pack("N")
oid = ''
oid += [data.timeSecond].pack("N")
oid += [data._machine].pack("N")
oid += [data._inc].pack("N")
oid.unpack("C12")
end
# 3 bytes machine
oid += Digest::MD5.digest(Socket.gethostname)[0, 3]
else
@@lock = Mutex.new
@@index = 0
@@machine_id = Digest::MD5.digest(Socket.gethostname)[0, 3]
# 2 bytes pid
oid += [Process.pid % 0xFFFF].pack("n")
# We need to check whether BSON_CODER is defined because it's required by
# the BSON C extensions.
if defined?(BSON::BSON_CODER) && BSON::BSON_CODER == BSON::BSON_RUBY
# This gets overwritten by the C extension if it loads.
def generate(oid_time=nil)
oid = ''
# 3 bytes inc
oid += [get_inc].pack("N")[1, 3]
# 4 bytes current time
if oid_time
t = oid_time.to_i
else
t = Time.new.to_i
end
oid += [t].pack("N")
oid.unpack("C12")
end
# 3 bytes machine
oid += @@machine_id
# 2 bytes pid
oid += [Process.pid % 0xFFFF].pack("n")
# 3 bytes inc
oid += [get_inc].pack("N")[1, 3]
oid.unpack("C12")
end
def get_inc
@@lock.synchronize do
@@index = (@@index + 1) % 0xFFFFFF
end
end
def get_inc
@@lock.synchronize do
@@index = (@@index + 1) % 0xFFFFFF
end
end
end

View File

@ -1,76 +0,0 @@
# encoding: UTF-8
# --
# Copyright (C) 2008-2011 10gen Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ++
module BSON
# A class for representing BSON Timestamps. The Timestamp type is used
# by MongoDB internally; thus, it should be used by application developers
# for diagnostic purposes only.
class Timestamp
include Enumerable
attr_reader :seconds, :increment
# Create a new BSON Timestamp.
#
# @param [Integer] seconds The number of seconds
# @param increment
def initialize(seconds, increment)
@seconds = seconds
@increment = increment
end
def to_s
"seconds: #{seconds}, increment: #{increment}"
end
def ==(other)
self.seconds == other.seconds &&
self.increment == other.increment
end
# This is for backward-compatibility. Timestamps in the Ruby
# driver used to deserialize as arrays. So we provide
# an equivalent interface.
#
# @deprecated
def [](index)
warn "Timestamps are no longer deserialized as arrays. If you're working " +
"with BSON Timestamp objects, see the BSON::Timestamp class. This usage will " +
"be deprecated in Ruby Driver v2.0."
if index == 0
self.increment
elsif index == 1
self.seconds
else
nil
end
end
# This method exists only for backward-compatibility.
#
# @deprecated
def each
i = 0
while i < 2
yield self[i]
i += 1
end
end
end
end

View File

@ -1,3 +0,0 @@
module BSON
VERSION = "1.6.2"
end

View File

@ -16,13 +16,16 @@
# limitations under the License.
# ++
require 'mongo/version'
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
module Mongo
ASCENDING = 1
DESCENDING = -1
GEO2D = '2d'
GEOHAYSTACK = 'geoHaystack'
VERSION = "1.2.2"
end
module Mongo
ASCENDING = 1
DESCENDING = -1
GEO2D = '2d'
DEFAULT_MAX_BSON_SIZE = 4 * 1024 * 1024
@ -55,17 +58,11 @@ require 'bson'
require 'mongo/util/conversions'
require 'mongo/util/support'
require 'mongo/util/core_ext'
require 'mongo/util/logging'
require 'mongo/util/node'
require 'mongo/util/pool'
require 'mongo/util/pool_manager'
require 'mongo/util/server_version'
require 'mongo/util/ssl_socket'
require 'mongo/util/tcp_socket'
require 'mongo/util/uri_parser'
require 'mongo/collection'
require 'mongo/networking'
require 'mongo/connection'
require 'mongo/repl_set_connection'
require 'mongo/cursor'
@ -78,3 +75,5 @@ if RUBY_PLATFORM =~ /java/
require 'mongo/gridfs/grid_io_fix'
end
require 'mongo/gridfs/grid_file_system'

View File

@ -19,7 +19,6 @@ module Mongo
# A named collection of documents in a database.
class Collection
include Mongo::Logging
attr_reader :db, :name, :pk_factory, :hint, :safe
@ -35,11 +34,6 @@ module Mongo
# for insert, update, and remove method called on this Collection instance. If no
# value is provided, the default value set on this instance's DB will be used. This
# default can be overridden for any invocation of insert, update, or remove.
# @option options [:primary, :secondary] :read The default read preference for queries
# initiates from this connection object. If +:secondary+ is chosen, reads will be sent
# to one of the closest available secondary nodes. If a secondary node cannot be located, the
# read will be sent to the primary. If this option is left unspecified, the value of the read
# preference for this collection's associated Mongo::DB object will be used.
#
# @raise [InvalidNSName]
# if collection name is empty, contains '$', or starts or ends with '.'
@ -53,8 +47,7 @@ module Mongo
def initialize(name, db, opts={})
if db.is_a?(String) && name.is_a?(Mongo::DB)
warn "Warning: the order of parameters to initialize a collection have changed. " +
"Please specify the collection name first, followed by the db. This will be made permanent" +
"in v2.0."
"Please specify the collection name first, followed by the db."
db, name = name, db
end
@ -86,36 +79,19 @@ module Mongo
@db, @name = db, name
@connection = @db.connection
@logger = @connection.logger
@cache_time = @db.cache_time
@cache = Hash.new(0)
unless pk_factory
@safe = opts.fetch(:safe, @db.safe)
if value = opts[:read]
Mongo::Support.validate_read_preference(value)
else
value = @db.read_preference
end
@read_preference = value.is_a?(Hash) ? value.dup : value
end
@pk_factory = pk_factory || opts[:pk] || BSON::ObjectId
@hint = nil
end
# Indicate whether this is a capped collection.
#
# @raise [Mongo::OperationFailure]
# if the collection doesn't exist.
#
# @return [Boolean]
def capped?
@db.command({:collstats => @name})['capped'] == 1
end
# Return a sub-collection of this collection by name. If 'users' is a collection, then
# 'users.comments' is a sub-collection of users.
#
# @param [String, Symbol] name
# @param [String] name
# the collection to return
#
# @raise [Mongo::InvalidNSName]
@ -125,8 +101,7 @@ module Mongo
# the specified sub-collection
def [](name)
name = "#{self.name}.#{name}"
return Collection.new(name, db) if !db.strict? ||
db.collection_names.include?(name.to_s)
return Collection.new(name, db) if !db.strict? || db.collection_names.include?(name)
raise "Collection #{name} doesn't exist. Currently in strict mode."
end
@ -168,34 +143,20 @@ module Mongo
# you can cut down on network traffic and decoding time. If using a Hash, keys should be field
# names and values should be either 1 or 0, depending on whether you want to include or exclude
# the given field.
# @option opts [:primary, :secondary] :read The default read preference for queries
# initiates from this connection object. If +:secondary+ is chosen, reads will be sent
# to one of the closest available secondary nodes. If a secondary node cannot be located, the
# read will be sent to the primary. If this option is left unspecified, the value of the read
# preference for this Collection object will be used.
# @option opts [Integer] :skip number of documents to skip from the beginning of the result set
# @option opts [Integer] :limit maximum number of documents to return
# @option opts [Array] :sort an array of [key, direction] pairs to sort by. Direction should
# be specified as Mongo::ASCENDING (or :ascending / :asc) or Mongo::DESCENDING (or :descending / :desc)
# @option opts [String, Array, OrderedHash] :hint hint for query optimizer, usually not necessary if
# using MongoDB > 1.1
# @option opts [String, Array, OrderedHash] :hint hint for query optimizer, usually not necessary if using MongoDB > 1.1
# @option opts [Boolean] :snapshot (false) if true, snapshot mode will be used for this query.
# Snapshot mode assures no duplicates are returned, or objects missed, which were preset at both the start and
# end of the query's execution.
# For details see http://www.mongodb.org/display/DOCS/How+to+do+Snapshotting+in+the+Mongo+Database
# @option opts [Boolean] :batch_size (100) the number of documents to returned by the database per
# GETMORE operation. A value of 0 will let the database server decide how many results to return.
# This option can be ignored for most use cases.
# end of the query's execution. For details see http://www.mongodb.org/display/DOCS/How+to+do+Snapshotting+in+the+Mongo+Database
# @option opts [Boolean] :batch_size (100) the number of documents to returned by the database per GETMORE operation. A value of 0
# will let the database server decide how many results to returns. This option can be ignored for most use cases.
# @option opts [Boolean] :timeout (true) when +true+, the returned cursor will be subject to
# the normal cursor timeout behavior of the mongod process. When +false+, the returned cursor will
# never timeout. Note that disabling timeout will only work when #find is invoked with a block.
# This is to prevent any inadvertant failure to close the cursor, as the cursor is explicitly
# closed when block code finishes.
# @option opts [Integer] :max_scan (nil) Limit the number of items to scan on both collection scans and indexed queries..
# @option opts [Boolean] :show_disk_loc (false) Return the disk location of each query result (for debugging).
# @option opts [Boolean] :return_key (false) Return the index key used to obtain the result (for debugging).
# @option opts [Block] :transformer (nil) a block for tranforming returned documents.
# This is normally used by object mappers to convert each returned document to an instance of a class.
# the normal cursor timeout behavior of the mongod process. When +false+, the returned cursor will never timeout. Note
# that disabling timeout will only work when #find is invoked with a block. This is to prevent any inadvertant failure to
# close the cursor, as the cursor is explicitly closed when block code finishes.
#
# @raise [ArgumentError]
# if timeout is set to false and find is not invoked in a block
@ -205,7 +166,6 @@ module Mongo
#
# @core find find-instance_method
def find(selector={}, opts={})
opts = opts.dup
fields = opts.delete(:fields)
fields = ["_id"] if fields && fields.empty?
skip = opts.delete(:skip) || skip || 0
@ -215,11 +175,6 @@ module Mongo
snapshot = opts.delete(:snapshot)
batch_size = opts.delete(:batch_size)
timeout = (opts.delete(:timeout) == false) ? false : true
max_scan = opts.delete(:max_scan)
return_key = opts.delete(:return_key)
transformer = opts.delete(:transformer)
show_disk_loc = opts.delete(:show_disk_loc)
read = opts.delete(:read) || @read_preference
if timeout == false && !block_given?
raise ArgumentError, "Collection#find must be invoked with a block when timeout is disabled."
@ -233,22 +188,8 @@ module Mongo
raise RuntimeError, "Unknown options [#{opts.inspect}]" unless opts.empty?
cursor = Cursor.new(self, {
:selector => selector,
:fields => fields,
:skip => skip,
:limit => limit,
:order => sort,
:hint => hint,
:snapshot => snapshot,
:timeout => timeout,
:batch_size => batch_size,
:transformer => transformer,
:max_scan => max_scan,
:show_disk_loc => show_disk_loc,
:return_key => return_key,
:read => read
})
cursor = Cursor.new(self, :selector => selector, :fields => fields, :skip => skip, :limit => limit,
:order => sort, :hint => hint, :snapshot => snapshot, :timeout => timeout, :batch_size => batch_size)
if block_given?
yield cursor
@ -304,6 +245,8 @@ module Mongo
# for DB#error.
#
# @raise [OperationFailure] when :safe mode fails.
#
# @see DB#remove for options that can be passed to :safe.
def save(doc, opts={})
if doc.has_key?(:_id) || doc.has_key?('_id')
id = doc[:_id] || doc['_id']
@ -321,10 +264,6 @@ module Mongo
#
# @return [ObjectId, Array]
# The _id of the inserted document or a list of _ids of all inserted documents.
# @return [[ObjectId, Array], [Hash, Array]]
# 1st, the _id of the inserted document or a list of _ids of all inserted documents.
# 2nd, a list of invalid documents.
# Return this result format only when :collect_on_error is true.
#
# @option opts [Boolean, Hash] :safe (+false+)
# run the operation in safe mode, which run a getlasterror command on the
@ -334,23 +273,14 @@ module Mongo
# its database object, or the current connection. See the options on
# for DB#get_last_error.
#
# @option opts [Boolean] :continue_on_error (+false+) If true, then
# continue a bulk insert even if one of the documents inserted
# triggers a database assertion (as in a duplicate insert, for instance).
# If not using safe mode, the list of ids returned will
# include the object ids of all documents attempted on insert, even
# if some are rejected on error. When safe mode is
# enabled, any error will raise an OperationFailure exception.
# MongoDB v2.0+.
# @option opts [Boolean] :collect_on_error (+false+) if true, then
# collects invalid documents as an array. Note that this option changes the result format.
# @see DB#remove for options that can be passed to :safe.
#
# @core insert insert-instance_method
def insert(doc_or_docs, opts={})
doc_or_docs = [doc_or_docs] unless doc_or_docs.is_a?(Array)
doc_or_docs.collect! { |doc| @pk_factory.create_pk(doc) }
safe = opts.fetch(:safe, @safe)
result = insert_documents(doc_or_docs, @name, true, safe, opts)
result = insert_documents(doc_or_docs, @name, true, safe)
result.size > 1 ? result : result.first
end
alias_method :<<, :insert
@ -380,6 +310,8 @@ module Mongo
# @raise [Mongo::OperationFailure] an exception will be raised iff safe mode is enabled
# and the operation fails.
#
# @see DB#remove for options that can be passed to :safe.
#
# @core remove remove-instance_method
def remove(selector={}, opts={})
# Initial byte is 0.
@ -387,9 +319,9 @@ module Mongo
message = BSON::ByteBuffer.new("\0\0\0\0")
BSON::BSON_RUBY.serialize_cstr(message, "#{@db.name}.#{@name}")
message.put_int(0)
message.put_binary(BSON::BSON_CODER.serialize(selector, false, true, @connection.max_bson_size).to_s)
message.put_binary(BSON::BSON_CODER.serialize(selector, false, true).to_s)
instrument(:remove, :database => @db.name, :collection => @name, :selector => selector) do
@connection.instrument(:remove, :database => @db.name, :collection => @name, :selector => selector) do
if safe
@connection.send_message_with_safe_check(Mongo::Constants::OP_DELETE, message, @db.name, nil, safe)
else
@ -434,13 +366,13 @@ module Mongo
update_options += 2 if opts[:multi]
message.put_int(update_options)
message.put_binary(BSON::BSON_CODER.serialize(selector, false, true).to_s)
message.put_binary(BSON::BSON_CODER.serialize(document, false, true, @connection.max_bson_size).to_s)
message.put_binary(BSON::BSON_CODER.serialize(document, false, true).to_s)
instrument(:update, :database => @db.name, :collection => @name, :selector => selector, :document => document) do
@connection.instrument(:update, :database => @db.name, :collection => @name, :selector => selector, :document => document) do
if safe
@connection.send_message_with_safe_check(Mongo::Constants::OP_UPDATE, message, @db.name, nil, safe)
else
@connection.send_message(Mongo::Constants::OP_UPDATE, message)
@connection.send_message(Mongo::Constants::OP_UPDATE, message, nil)
end
end
end
@ -488,9 +420,8 @@ module Mongo
#
# @core indexes create_index-instance_method
def create_index(spec, opts={})
opts[:dropDups] = opts[:drop_dups] if opts[:drop_dups]
opts[:dropDups] = opts.delete(:drop_dups) if opts[:drop_dups]
field_spec = parse_index_spec(spec)
opts = opts.dup
name = opts.delete(:name) || generate_index_name(field_spec)
name = name.to_s if name
@ -516,10 +447,9 @@ module Mongo
# @return [String] the name of the index.
def ensure_index(spec, opts={})
now = Time.now.utc.to_i
opts[:dropDups] = opts[:drop_dups] if opts[:drop_dups]
field_spec = parse_index_spec(spec)
name = opts[:name] || generate_index_name(field_spec)
name = opts.delete(:name) || generate_index_name(field_spec)
name = name.to_s if name
if !@cache[name] || @cache[name] <= now
@ -537,9 +467,6 @@ module Mongo
#
# @core indexes
def drop_index(name)
if name.is_a?(Array)
return drop_index(index_name(name))
end
@cache[name.to_s] = nil
@db.drop_index(@name, name)
end
@ -582,7 +509,7 @@ module Mongo
@db.command(cmd)['value']
end
# Perform a map-reduce operation on the current collection.
# Perform a map/reduce operation on the current collection.
#
# @param [String, BSON::Code] map a map function, written in JavaScript.
# @param [String, BSON::Code] reduce a reduce function, written in JavaScript.
@ -594,20 +521,13 @@ module Mongo
# @option opts [Integer] :limit (nil) if passing a query, number of objects to return from the collection.
# @option opts [String, BSON::Code] :finalize (nil) a javascript function to apply to the result set after the
# map/reduce operation has finished.
# @option opts [String] :out (nil) a valid output type. In versions of MongoDB prior to v1.7.6,
# this option takes the name of a collection for the output results. In versions 1.7.6 and later,
# this option specifies the output type. See the core docs for available output types.
# @option opts [Boolean] :keeptemp (false) if true, the generated collection will be persisted. The defualt
# is false. Note that this option has no effect is versions of MongoDB > v1.7.6.
# @option opts [String] :out (nil) the name of the output collection. If specified, the collection will not be treated as temporary.
# @option opts [Boolean] :keeptemp (false) if true, the generated collection will be persisted. default is false.
# @option opts [Boolean ] :verbose (false) if true, provides statistics on job execution time.
# @option opts [Boolean] :raw (false) if true, return the raw result object from the map_reduce command, and not
# the instantiated collection that's returned by default. Note if a collection name isn't returned in the
# map-reduce output (as, for example, when using :out => { :inline => 1 }), then you must specify this option
# or an ArgumentError will be raised.
# the instantiated collection that's returned by default.
#
# @return [Collection, Hash] a Mongo::Collection object or a Hash with the map-reduce command's results.
#
# @raise ArgumentError if you specify { :out => { :inline => true }} but don't specify :raw => true.
# @return [Collection] a collection containing the results of the operation.
#
# @see http://www.mongodb.org/display/DOCS/MapReduce Offical MongoDB map/reduce documentation.
#
@ -622,9 +542,6 @@ module Mongo
hash['map'] = map
hash['reduce'] = reduce
hash.merge! opts
if hash[:sort]
hash[:sort] = Mongo::Support.format_order_clause(hash[:sort])
end
result = @db.command(hash)
unless Mongo::Support.ok?(result)
@ -633,16 +550,8 @@ module Mongo
if raw
result
elsif result["result"]
if result['result'].is_a? BSON::OrderedHash and result['result'].has_key? 'db' and result['result'].has_key? 'collection'
otherdb = @db.connection[result['result']['db']]
otherdb[result['result']['collection']]
else
@db[result["result"]]
end
else
raise ArgumentError, "Could not instantiate collection from result. If you specified " +
"{:out => {:inline => true}}, then you must also specify :raw => true to get the results."
@db[result["result"]]
end
end
alias :mapreduce :map_reduce
@ -667,7 +576,7 @@ module Mongo
if opts.is_a?(Hash)
return new_group(opts)
else
warn "Collection#group no longer take a list of parameters. This usage is deprecated and will be remove in v2.0." +
warn "Collection#group no longer take a list of parameters. This usage is deprecated." +
"Check out the new API at http://api.mongodb.org/ruby/current/Mongo/Collection.html#group-instance_method"
end
@ -714,13 +623,6 @@ module Mongo
end
end
# The value of the read preference. This will be
# either +:primary+, +:secondary+, or an object
# representing the tags to be read from.
def read_preference
@read_preference
end
private
def new_group(opts={})
@ -857,15 +759,9 @@ module Mongo
# Get the number of documents in this collection.
#
# @option opts [Hash] :query ({}) A query selector for filtering the documents counted.
# @option opts [Integer] :skip (nil) The number of documents to skip.
# @option opts [Integer] :limit (nil) The number of documents to limit.
#
# @return [Integer]
def count(opts={})
find(opts[:query],
:skip => opts[:skip],
:limit => opts[:limit]).count(true)
def count
find().count()
end
alias :size :count
@ -889,21 +785,13 @@ module Mongo
private
def index_name(spec)
field_spec = parse_index_spec(spec)
index_information.each do |index|
return index[0] if index[1]['key'] == field_spec
end
nil
end
def parse_index_spec(spec)
field_spec = BSON::OrderedHash.new
if spec.is_a?(String) || spec.is_a?(Symbol)
field_spec[spec.to_s] = 1
elsif spec.is_a?(Array) && spec.all? {|field| field.is_a?(Array) }
spec.each do |f|
if [Mongo::ASCENDING, Mongo::DESCENDING, Mongo::GEO2D, Mongo::GEOHAYSTACK].include?(f[1])
if [Mongo::ASCENDING, Mongo::DESCENDING, Mongo::GEO2D].include?(f[1])
field_spec[f[0].to_s] = f[1]
else
raise MongoArgumentError, "Invalid index field #{f[1].inspect}; " +
@ -943,51 +831,23 @@ module Mongo
# Sends a Mongo::Constants::OP_INSERT message to the database.
# Takes an array of +documents+, an optional +collection_name+, and a
# +check_keys+ setting.
def insert_documents(documents, collection_name=@name, check_keys=true, safe=false, flags={})
if flags[:continue_on_error]
message = BSON::ByteBuffer.new
message.put_int(1)
else
message = BSON::ByteBuffer.new("\0\0\0\0")
end
collect_on_error = !!flags[:collect_on_error]
error_docs = [] if collect_on_error
def insert_documents(documents, collection_name=@name, check_keys=true, safe=false)
# Initial byte is 0.
message = BSON::ByteBuffer.new("\0\0\0\0")
BSON::BSON_RUBY.serialize_cstr(message, "#{@db.name}.#{collection_name}")
documents =
if collect_on_error
documents.select do |doc|
begin
message.put_binary(BSON::BSON_CODER.serialize(doc, check_keys, true, @connection.max_bson_size).to_s)
true
rescue StandardError # StandardError will be replaced with BSONError
doc.delete(:_id)
error_docs << doc
false
end
end
else
documents.each do |doc|
message.put_binary(BSON::BSON_CODER.serialize(doc, check_keys, true, @connection.max_bson_size).to_s)
end
end
documents.each do |doc|
message.put_binary(BSON::BSON_CODER.serialize(doc, check_keys, true).to_s)
end
raise InvalidOperation, "Exceded maximum insert size of 16,000,000 bytes" if message.size > 16_000_000
instrument(:insert, :database => @db.name, :collection => collection_name, :documents => documents) do
@connection.instrument(:insert, :database => @db.name, :collection => collection_name, :documents => documents) do
if safe
@connection.send_message_with_safe_check(Mongo::Constants::OP_INSERT, message, @db.name, nil, safe)
else
@connection.send_message(Mongo::Constants::OP_INSERT, message)
@connection.send_message(Mongo::Constants::OP_INSERT, message, nil)
end
end
doc_ids = documents.collect { |o| o[:_id] || o['_id'] }
if collect_on_error
return doc_ids, error_docs
else
doc_ids
end
documents.collect { |o| o[:_id] || o['_id'] }
end
def generate_index_name(spec)

View File

@ -19,34 +19,29 @@
require 'set'
require 'socket'
require 'thread'
module Mongo
# Instantiates and manages self.connections to MongoDB.
# Instantiates and manages connections to MongoDB.
class Connection
include Mongo::Logging
include Mongo::Networking
TCPSocket = Mongo::TCPSocket
TCPSocket = ::TCPSocket
Mutex = ::Mutex
ConditionVariable = ::ConditionVariable
# Abort connections if a ConnectionError is raised.
Thread.abort_on_exception = true
DEFAULT_HOST = 'localhost'
DEFAULT_PORT = 27017
GENERIC_OPTS = [:ssl, :auths, :pool_size, :pool_timeout, :timeout, :op_timeout, :connect_timeout, :safe, :logger, :connect]
CONNECTION_OPTS = [:slave_ok]
STANDARD_HEADER_SIZE = 16
RESPONSE_HEADER_SIZE = 20
mongo_thread_local_accessor :connections
attr_reader :logger, :size, :auths, :primary, :safe, :primary_pool, :host_to_try, :pool_size
attr_reader :logger, :size, :auths, :primary, :safe, :host_to_try,
:pool_size, :connect_timeout, :pool_timeout,
:primary_pool, :socket_class, :op_timeout
# Counter for generating unique request ids.
@@current_request_id = 0
# Create a connection to single MongoDB instance.
#
# If no args are provided, it will check <code>ENV["MONGODB_URI"]</code>.
#
# You may specify whether connection to slave is permitted.
# In all cases, the default host is "localhost" and the default port is 27017.
#
@ -57,7 +52,7 @@ module Mongo
# Connection#arbiters. This is useful if your application needs to connect manually to nodes other
# than the primary.
#
# @param [String, Hash] host
# @param [String, Hash] host.
# @param [Integer] port specify a port number here if only one host is being specified.
#
# @option opts [Boolean, Hash] :safe (false) Set the default safe-mode options
@ -68,65 +63,39 @@ module Mongo
# to a single, slave node.
# @option opts [Logger, #debug] :logger (nil) A Logger instance for debugging driver ops. Note that
# logging negatively impacts performance; therefore, it should not be used for high-performance apps.
# @option opts [Integer] :pool_size (1) The maximum number of socket self.connections allowed per
# @option opts [Integer] :pool_size (1) The maximum number of socket connections allowed per
# connection pool. Note: this setting is relevant only for multi-threaded applications.
# @option opts [Float] :timeout (5.0) When all of the self.connections a pool are checked out,
# @option opts [Float] :timeout (5.0) When all of the connections a pool are checked out,
# this is the number of seconds to wait for a new connection to be released before throwing an exception.
# Note: this setting is relevant only for multi-threaded applications (which in Ruby are rare).
# @option opts [Float] :op_timeout (nil) The number of seconds to wait for a read operation to time out.
# Disabled by default.
# @option opts [Float] :connect_timeout (nil) The number of seconds to wait before timing out a
# connection attempt.
# @option opts [Boolean] :ssl (false) If true, create the connection to the server using SSL.
#
# @example localhost, 27017 (or <code>ENV["MONGODB_URI"]</code> if available)
# Mongo::Connection.new
#
# @example localhost, 27017
# Mongo::Connection.new("localhost")
# Connection.new
#
# @example localhost, 3000, max 5 self.connections, with max 5 seconds of wait time.
# Mongo::Connection.new("localhost", 3000, :pool_size => 5, :timeout => 5)
# @example localhost, 27017
# Connection.new("localhost")
#
# @example localhost, 3000, max 5 connections, with max 5 seconds of wait time.
# Connection.new("localhost", 3000, :pool_size => 5, :timeout => 5)
#
# @example localhost, 3000, where this node may be a slave
# Mongo::Connection.new("localhost", 3000, :slave_ok => true)
# Connection.new("localhost", 3000, :slave_ok => true)
#
# @see http://api.mongodb.org/ruby/current/file.REPLICA_SETS.html Replica sets in Ruby
#
# @raise [ReplicaSetConnectionError] This is raised if a replica set name is specified and the
# driver fails to connect to a replica set with that name.
#
# @raise [MongoArgumentError] If called with no arguments and <code>ENV["MONGODB_URI"]</code> implies a replica set.
#
# @core self.connections
# @core connections
def initialize(host=nil, port=nil, opts={})
if host.nil? and ENV.has_key?('MONGODB_URI')
parser = URIParser.new ENV['MONGODB_URI'], opts
if parser.replicaset?
raise MongoArgumentError, "Mongo::Connection.new called with no arguments, but ENV['MONGODB_URI'] implies a replica set."
end
opts = parser.connection_options
@host_to_try = [parser.host, parser.port]
elsif host.is_a?(String)
@host_to_try = [host, (port || DEFAULT_PORT).to_i]
else
@host_to_try = [DEFAULT_HOST, DEFAULT_PORT]
end
@host_to_try = format_pair(host, port)
# Host and port of current master.
@host = @port = nil
# Default maximum BSON object size
@max_bson_size = Mongo::DEFAULT_MAX_BSON_SIZE
# slave_ok can be true only if one node is specified
@slave_ok = opts[:slave_ok]
# Lock for request ids.
@id_lock = Mutex.new
# Connection pool for primay node
@primary = nil
@primary_pool = nil
check_opts(opts)
setup(opts)
end
@ -147,24 +116,23 @@ module Mongo
# to send reads to.
#
# @example
# Mongo::Connection.multi([["db1.example.com", 27017], ["db2.example.com", 27017]])
# Connection.multi([["db1.example.com", 27017], ["db2.example.com", 27017]])
#
# @example This connection will read from a random secondary node.
# Mongo::Connection.multi([["db1.example.com", 27017], ["db2.example.com", 27017], ["db3.example.com", 27017]],
# Connection.multi([["db1.example.com", 27017], ["db2.example.com", 27017], ["db3.example.com", 27017]],
# :read_secondary => true)
#
# @return [Mongo::Connection]
#
# @deprecated
def self.multi(nodes, opts={})
warn "Connection.multi is now deprecated and will be removed in v2.0. Please use ReplSetConnection.new instead."
warn "Connection.multi is now deprecated. Please use ReplSetConnection.new instead."
ReplSetConnection.new(*(nodes+[opts]))
nodes << opts
ReplSetConnection.new(*nodes)
end
# Initialize a connection to MongoDB using the MongoDB URI spec.
#
# Since Connection.new cannot be used with any <code>ENV["MONGODB_URI"]</code> that has multiple hosts (implying a replicaset), you may use this when the type of your connection varies by environment and should be determined solely from <code>ENV["MONGODB_URI"]</code>.
# Initialize a connection to MongoDB using the MongoDB URI spec:
#
# @param uri [String]
# A string of the format mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/database]
@ -172,23 +140,21 @@ module Mongo
# @param opts Any of the options available for Connection.new
#
# @return [Mongo::Connection, Mongo::ReplSetConnection]
def self.from_uri(uri = ENV['MONGODB_URI'], extra_opts={})
parser = URIParser.new uri, extra_opts
parser.connection
end
def self.from_uri(string, extra_opts={})
uri = URIParser.new(string)
opts = uri.connection_options
opts.merge!(extra_opts)
# The host name used for this connection.
#
# @return [String]
def host
@primary_pool.host
end
# The port used for this connection.
#
# @return [Integer]
def port
@primary_pool.port
if uri.nodes.length == 1
opts.merge!({:auths => uri.auths})
Connection.new(uri.nodes[0][0], uri.nodes[0][1], opts)
elsif uri.nodes.length > 1
nodes = uri.nodes.clone
nodes_with_opts = nodes << opts
ReplSetConnection.new(*nodes_with_opts)
else
raise MongoArgumentError, "No nodes specified. Please ensure that you've provided at least one node."
end
end
# Fsync, then lock the mongod process against writes. Use this to get
@ -324,7 +290,7 @@ module Mongo
#
# @core databases []-instance_method
def [](db_name)
DB.new(db_name, self)
DB.new(db_name, self, :safe => @safe)
end
# Drop a database.
@ -342,7 +308,7 @@ module Mongo
# @param [String] from_host host of the 'from' database.
# @param [String] username username for authentication against from_db (>=1.3.x).
# @param [String] password password for authentication against from_db (>=1.3.x).
def copy_database(from, to, from_host=DEFAULT_HOST, username=nil, password=nil)
def copy_database(from, to, from_host="localhost", username=nil, password=nil)
oh = BSON::OrderedHash.new
oh[:copydb] = 1
oh[:fromhost] = from_host
@ -363,22 +329,13 @@ module Mongo
self["admin"].command(oh)
end
# Checks if a server is alive. This command will return immediately
# even if the server is in a lock.
#
# @return [Hash]
def ping
self["admin"].command({:ping => 1})
end
# Get the build information for the current connection.
# Get the build information for the current connection.
#
# @return [Hash]
def server_info
self["admin"].command({:buildinfo => 1})
end
# Get the build version of the current server.
#
# @return [Mongo::ServerVersion]
@ -394,6 +351,97 @@ module Mongo
@slave_ok
end
# Send a message to MongoDB, adding the necessary headers.
#
# @param [Integer] operation a MongoDB opcode.
# @param [BSON::ByteBuffer] message a message to send to the database.
#
# @return [Integer] number of bytes sent
def send_message(operation, message, log_message=nil)
begin
add_message_headers(message, operation)
packed_message = message.to_s
socket = checkout_writer
send_message_on_socket(packed_message, socket)
ensure
checkin_writer(socket)
end
end
# Sends a message to the database, waits for a response, and raises
# an exception if the operation has failed.
#
# @param [Integer] operation a MongoDB opcode.
# @param [BSON::ByteBuffer] message a message to send to the database.
# @param [String] db_name the name of the database. used on call to get_last_error.
# @param [Hash] last_error_params parameters to be sent to getLastError. See DB#error for
# available options.
#
# @see DB#get_last_error for valid last error params.
#
# @return [Hash] The document returned by the call to getlasterror.
def send_message_with_safe_check(operation, message, db_name, log_message=nil, last_error_params=false)
docs = num_received = cursor_id = ''
add_message_headers(message, operation)
last_error_message = BSON::ByteBuffer.new
build_last_error_message(last_error_message, db_name, last_error_params)
last_error_id = add_message_headers(last_error_message, Mongo::Constants::OP_QUERY)
packed_message = message.append!(last_error_message).to_s
begin
sock = checkout_writer
@safe_mutexes[sock].synchronize do
send_message_on_socket(packed_message, sock)
docs, num_received, cursor_id = receive(sock, last_error_id)
end
ensure
checkin_writer(sock)
end
if num_received == 1 && (error = docs[0]['err'] || docs[0]['errmsg'])
close if error == "not master"
error = "wtimeout" if error == "timeout"
raise Mongo::OperationFailure, docs[0]['code'].to_s + ': ' + error
end
docs[0]
end
# Sends a message to the database and waits for the response.
#
# @param [Integer] operation a MongoDB opcode.
# @param [BSON::ByteBuffer] message a message to send to the database.
# @param [Socket] socket a socket to use in lieu of checking out a new one.
#
# @return [Array]
# An array whose indexes include [0] documents returned, [1] number of document received,
# and [3] a cursor_id.
def receive_message(operation, message, log_message=nil, socket=nil, command=false)
request_id = add_message_headers(message, operation)
packed_message = message.to_s
begin
if socket
sock = socket
checkin = false
else
sock = (command ? checkout_writer : checkout_reader)
checkin = true
end
result = ''
@safe_mutexes[sock].synchronize do
send_message_on_socket(packed_message, sock)
result = receive(sock, request_id)
end
ensure
if checkin
command ? checkin_writer(sock) : checkin_reader(sock)
end
end
result
end
# Create a new socket and attempt to connect to master.
# If successful, sets host and port to master and returns the socket.
#
@ -402,7 +450,7 @@ module Mongo
#
# @raise [ConnectionFailure] if unable to connect to any host or port.
def connect
close
reset_connection
config = check_is_master(@host_to_try)
if config
@ -412,37 +460,26 @@ module Mongo
@read_primary = false
end
@max_bson_size = config['maxBsonObjectSize'] || Mongo::DEFAULT_MAX_BSON_SIZE
set_primary(@host_to_try)
end
if !connected?
if connected?
BSON::BSON_CODER.update_max_bson_size(self)
else
raise ConnectionFailure, "Failed to connect to a master node at #{@host_to_try[0]}:#{@host_to_try[1]}"
end
end
alias :reconnect :connect
def connecting?
@nodes_to_try.length > 0
end
# It's possible that we defined connected as all nodes being connected???
# NOTE: Do check if this needs to be more stringent.
# Probably not since if any node raises a connection failure, all nodes will be closed.
def connected?
@primary_pool && !@primary_pool.closed?
end
# Determine if the connection is active. In a normal case the *server_info* operation
# will be performed without issues, but if the connection was dropped by the server or
# for some reason the sockets are unsynchronized, a ConnectionFailure will be raised and
# the return will be false.
#
# @return [Boolean]
def active?
return false unless connected?
ping
true
rescue ConnectionFailure
false
@primary_pool && @primary_pool.host && @primary_pool.port
end
# Determine whether we're reading from a primary node. If false,
@ -454,27 +491,10 @@ module Mongo
end
alias :primary? :read_primary?
# The socket pool that this connection reads from.
#
# @return [Mongo::Pool]
def read_pool
@primary_pool
end
# The value of the read preference.
def read_preference
if slave_ok?
:secondary
else
:primary
end
end
# Close the connection to the database.
def close
@primary_pool.close if @primary_pool
@primary_pool = nil
@primary = nil
end
# Returns the maximum BSON object size as returned by the core server.
@ -482,13 +502,8 @@ module Mongo
#
# @return [Integer]
def max_bson_size
@max_bson_size
end
# Prefer primary pool but fall back to secondary
def checkout_best
connect unless connected?
@primary_pool.checkout
config = self['admin'].command({:ismaster => 1})
config['maxBsonObjectSize'] || Mongo::DEFAULT_MAX_BSON_SIZE
end
# Checkout a socket for reading (i.e., a secondary node).
@ -508,93 +523,98 @@ module Mongo
# Checkin a socket used for reading.
# Note: this is overridden in ReplSetConnection.
def checkin_reader(socket)
checkin(socket)
if @primary_pool
@primary_pool.checkin(socket)
end
end
# Checkin a socket used for writing.
# Note: this is overridden in ReplSetConnection.
def checkin_writer(socket)
checkin(socket)
end
# Check a socket back into its pool.
def checkin(socket)
if @primary_pool && socket
socket.pool.checkin(socket)
if @primary_pool
@primary_pool.checkin(socket)
end
end
# Excecutes block with the best available socket
def best_available_socket
socket = nil
begin
socket = checkout_best
yield socket
ensure
if socket
socket.pool.checkin(socket)
end
end
# Execute the block and log the operation described by name
# and payload.
# TODO: Not sure if this should take a block.
def instrument(name, payload = {}, &blk)
res = yield
log_operation(name, payload)
res
end
protected
def valid_opts
GENERIC_OPTS + CONNECTION_OPTS
end
def check_opts(opts)
bad_opts = opts.keys.reject { |opt| valid_opts.include?(opt) }
unless bad_opts.empty?
bad_opts.each {|opt| warn "#{opt} is not a valid option for #{self.class}"}
end
end
# Parse option hash
# Generic initialization code.
def setup(opts)
# slave_ok can be true only if one node is specified
@slave_ok = opts[:slave_ok]
# Determine whether to use SSL.
@ssl = opts.fetch(:ssl, false)
if @ssl
@socket_class = Mongo::SSLSocket
else
@socket_class = Mongo::TCPSocket
end
# Authentication objects
@auths = opts.fetch(:auths, [])
# Lock for request ids.
@id_lock = Mutex.new
# Pool size and timeout.
@pool_size = opts[:pool_size] || 1
if opts[:timeout]
warn "The :timeout option has been deprecated " +
"and will be removed in the 2.0 release. Use :pool_timeout instead."
end
@pool_timeout = opts[:pool_timeout] || opts[:timeout] || 5.0
@timeout = opts[:timeout] || 5.0
# Timeout on socket read operation.
@op_timeout = opts[:op_timeout] || nil
# Timeout on socket connect.
@connect_timeout = opts[:connect_timeout] || nil
# Mutex for synchronizing pool access
@connection_mutex = Mutex.new
# Global safe option. This is false by default.
@safe = opts[:safe] || false
@logger = opts.fetch(:logger, nil)
# Create a mutex when a new key, in this case a socket,
# is added to the hash.
@safe_mutexes = Hash.new { |h, k| h[k] = Mutex.new }
# Condition variable for signal and wait
@queue = ConditionVariable.new
# Connection pool for primay node
@primary = nil
@primary_pool = nil
@logger = opts[:logger] || nil
if @logger
write_logging_startup_message
@logger.debug("MongoDB logging. Please note that logging negatively impacts performance " +
"and should be disabled for high-performance production apps.")
end
if opts.fetch(:connect, true)
connect
should_connect = opts.fetch(:connect, true)
connect if should_connect
end
## Configuration helper methods
# Returns a host-port pair.
#
# @return [Array]
#
# @private
def format_pair(host, port)
case host
when String
[host, port ? port.to_i : DEFAULT_PORT]
when nil
['localhost', DEFAULT_PORT]
end
end
## Logging methods
def log_operation(name, payload)
return unless @logger
msg = "#{payload[:database]}['#{payload[:collection]}'].#{name}("
msg += payload.values_at(:selector, :document, :documents, :fields ).compact.map(&:inspect).join(', ') + ")"
msg += ".skip(#{payload[:skip]})" if payload[:skip]
msg += ".limit(#{payload[:limit]})" if payload[:limit]
msg += ".sort(#{payload[:sort]})" if payload[:sort]
@logger.debug "MONGODB #{msg}"
end
private
## Methods for establishing a connection:
@ -604,22 +624,20 @@ module Mongo
# TODO: evaluate whether this method is actually necessary
def reset_connection
close
@primary = nil
end
def check_is_master(node)
begin
host, port = *node
socket = nil
config = nil
socket = TCPSocket.new(host, port)
socket.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1)
socket = @socket_class.new(host, port, @op_timeout, @connect_timeout)
config = self['admin'].command({:ismaster => 1}, :socket => socket)
rescue OperationFailure, SocketError, SystemCallError, IOError
rescue OperationFailure, SocketError, SystemCallError, IOError => ex
close
ensure
if socket
socket.close unless socket.closed?
end
socket.close if socket
end
config
@ -629,7 +647,180 @@ module Mongo
def set_primary(node)
host, port = *node
@primary = [host, port]
@primary_pool = Pool.new(self, host, port, :size => @pool_size, :timeout => @pool_timeout)
@primary_pool = Pool.new(self, host, port, :size => @pool_size, :timeout => @timeout)
end
## Low-level connection methods.
def receive(sock, expected_response)
begin
receive_header(sock, expected_response)
number_received, cursor_id = receive_response_header(sock)
read_documents(number_received, cursor_id, sock)
rescue Mongo::ConnectionFailure => ex
close
raise ex
end
end
def receive_header(sock, expected_response)
header = receive_message_on_socket(16, sock)
size, request_id, response_to = header.unpack('VVV')
if expected_response != response_to
raise Mongo::ConnectionFailure, "Expected response #{expected_response} but got #{response_to}"
end
unless header.size == STANDARD_HEADER_SIZE
raise "Short read for DB response header: " +
"expected #{STANDARD_HEADER_SIZE} bytes, saw #{header.size}"
end
nil
end
def receive_response_header(sock)
header_buf = receive_message_on_socket(RESPONSE_HEADER_SIZE, sock)
if header_buf.length != RESPONSE_HEADER_SIZE
raise "Short read for DB response header; " +
"expected #{RESPONSE_HEADER_SIZE} bytes, saw #{header_buf.length}"
end
flags, cursor_id_a, cursor_id_b, starting_from, number_remaining = header_buf.unpack('VVVVV')
check_response_flags(flags)
cursor_id = (cursor_id_b << 32) + cursor_id_a
[number_remaining, cursor_id]
end
def check_response_flags(flags)
if flags & Mongo::Constants::REPLY_CURSOR_NOT_FOUND != 0
raise Mongo::OperationFailure, "Query response returned CURSOR_NOT_FOUND. " +
"Either an invalid cursor was specified, or the cursor may have timed out on the server."
elsif flags & Mongo::Constants::REPLY_QUERY_FAILURE != 0
# Getting odd failures when a exception is raised here.
end
end
def read_documents(number_received, cursor_id, sock)
docs = []
number_remaining = number_received
while number_remaining > 0 do
buf = receive_message_on_socket(4, sock)
size = buf.unpack('V')[0]
buf << receive_message_on_socket(size - 4, sock)
number_remaining -= 1
docs << BSON::BSON_CODER.deserialize(buf)
end
[docs, number_received, cursor_id]
end
# Constructs a getlasterror message. This method is used exclusively by
# Connection#send_message_with_safe_check.
#
# Because it modifies message by reference, we don't need to return it.
def build_last_error_message(message, db_name, opts)
message.put_int(0)
BSON::BSON_RUBY.serialize_cstr(message, "#{db_name}.$cmd")
message.put_int(0)
message.put_int(-1)
cmd = BSON::OrderedHash.new
cmd[:getlasterror] = 1
if opts.is_a?(Hash)
opts.assert_valid_keys(:w, :wtimeout, :fsync)
cmd.merge!(opts)
end
message.put_binary(BSON::BSON_CODER.serialize(cmd, false).to_s)
nil
end
# Prepares a message for transmission to MongoDB by
# constructing a valid message header.
#
# Note: this method modifies message by reference.
#
# @return [Integer] the request id used in the header
def add_message_headers(message, operation)
headers = [
# Message size.
16 + message.size,
# Unique request id.
request_id = get_request_id,
# Response id.
0,
# Opcode.
operation
].pack('VVVV')
message.prepend!(headers)
request_id
end
# Increment and return the next available request id.
#
# return [Integer]
def get_request_id
request_id = ''
@id_lock.synchronize do
request_id = @@current_request_id += 1
end
request_id
end
# Low-level method for sending a message on a socket.
# Requires a packed message and an available socket,
#
# @return [Integer] number of bytes sent
def send_message_on_socket(packed_message, socket)
begin
total_bytes_sent = socket.send(packed_message, 0)
if total_bytes_sent != packed_message.size
packed_message.slice!(0, total_bytes_sent)
while packed_message.size > 0
byte_sent = socket.send(packed_message, 0)
total_bytes_sent += byte_sent
packed_message.slice!(0, byte_sent)
end
end
total_bytes_sent
rescue => ex
close
raise ConnectionFailure, "Operation failed with the following exception: #{ex}"
end
end
# Low-level method for receiving data from socket.
# Requires length and an available socket.
def receive_message_on_socket(length, socket)
begin
message = new_binary_string
socket.read(length, message)
raise ConnectionFailure, "connection closed" unless message && message.length > 0
if message.length < length
chunk = new_binary_string
while message.length < length
socket.read(length - message.length, chunk)
raise ConnectionFailure, "connection closed" unless chunk.length > 0
message << chunk
end
end
rescue => ex
close
raise ConnectionFailure, "Operation failed with the following exception: #{ex}"
end
message
end
if defined?(Encoding)
BINARY_ENCODING = Encoding.find("binary")
def new_binary_string
"".force_encoding(BINARY_ENCODING)
end
else
def new_binary_string
""
end
end
end
end

View File

@ -18,15 +18,12 @@ module Mongo
# A cursor over query results. Returned objects are hashes.
class Cursor
include Enumerable
include Mongo::Constants
include Mongo::Conversions
include Mongo::Logging
include Enumerable
attr_reader :collection, :selector, :fields,
:order, :hint, :snapshot, :timeout,
:full_collection_name, :transformer,
:options, :cursor_id, :show_disk_loc
:full_collection_name
# Create a new cursor.
#
@ -37,97 +34,42 @@ module Mongo
#
# @core cursors constructor_details
def initialize(collection, opts={})
@cursor_id = nil
@db = collection.db
@collection = collection
@connection = @db.connection
@logger = @connection.logger
# Query selector
@selector = opts[:selector] || {}
# Special operators that form part of $query
@order = opts[:order]
@explain = opts[:explain]
@hint = opts[:hint]
@snapshot = opts[:snapshot]
@max_scan = opts.fetch(:max_scan, nil)
@return_key = opts.fetch(:return_key, nil)
@show_disk_loc = opts.fetch(:show_disk_loc, nil)
# Wire-protocol settings
@fields = convert_fields_for_query(opts[:fields])
@skip = opts[:skip] || 0
@limit = opts[:limit] || 0
@tailable = opts[:tailable] || false
@order = opts[:order]
@hint = opts[:hint]
@snapshot = opts[:snapshot]
@timeout = opts.fetch(:timeout, true)
@options = 0
# Use this socket for the query
@explain = opts[:explain]
@socket = opts[:socket]
@tailable = opts[:tailable] || false
@closed = false
@query_run = false
@transformer = opts[:transformer]
if value = opts[:read]
Mongo::Support.validate_read_preference(value)
else
value = collection.read_preference
end
@read_preference = value.is_a?(Hash) ? value.dup : value
batch_size(opts[:batch_size] || 0)
@full_collection_name = "#{@collection.db.name}.#{@collection.name}"
@cache = []
@returned = 0
if(!@timeout)
add_option(OP_QUERY_NO_CURSOR_TIMEOUT)
end
if(@read_preference != :primary)
add_option(OP_QUERY_SLAVE_OK)
end
if(@tailable)
add_option(OP_QUERY_TAILABLE)
end
if @collection.name =~ /^\$cmd/ || @collection.name =~ /^system/
@command = true
else
@command = false
end
@checkin_read_pool = false
@checkin_connection = false
@read_pool = nil
end
# Guess whether the cursor is alive on the server.
#
# Note that this method only checks whether we have
# a cursor id. The cursor may still have timed out
# on the server. This will be indicated in the next
# call to Cursor#next.
#
# @return [Boolean]
def alive?
@cursor_id && @cursor_id != 0
end
# Get the next document specified the cursor options.
#
# @return [Hash, Nil] the next document or Nil if no documents remain.
def next
if @cache.length == 0
if @query_run && (@options & OP_QUERY_EXHAUST != 0)
close
return nil
else
refresh
end
end
def next_document
refresh if @cache.length == 0
doc = @cache.shift
if doc && doc['$err']
@ -136,21 +78,16 @@ module Mongo
# If the server has stopped being the master (e.g., it's one of a
# pair but it has died or something like that) then we close that
# connection. The next request will re-open on master server.
if err.include?("not master")
if err == "not master"
@connection.close
raise ConnectionFailure.new(err, doc['code'], doc)
raise ConnectionFailure, err
end
raise OperationFailure.new(err, doc['code'], doc)
raise OperationFailure, err
end
if @transformer.nil?
doc
else
@transformer.call(doc) if doc
end
doc
end
alias :next_document :next
# Reset this cursor on the server. Cursor options, such as the
# query string and the values for skip and limit, are preserved.
@ -191,7 +128,7 @@ module Mongo
response = @db.command(command)
return response['n'].to_i if Mongo::Support.ok?(response)
return 0 if response['errmsg'] == "ns missing"
raise OperationFailure.new("Count failed: #{response['errmsg']}", response['code'], response)
raise OperationFailure, "Count failed: #{response['errmsg']}"
end
# Sort this cursor's results.
@ -259,20 +196,16 @@ module Mongo
# Note that the batch size will take effect only on queries
# where the number to be returned is greater than 100.
#
# This can not override MongoDB's limit on the amount of data it will
# return to the client. Depending on server version this can be 4-16mb.
#
# @param [Integer] size either 0 or some integer greater than 1. If 0,
# the server will determine the batch size.
#
# @return [Cursor]
def batch_size(size=nil)
return @batch_size unless size
def batch_size(size=0)
check_modifiable
if size < 0 || size == 1
raise ArgumentError, "Invalid value for batch_size #{size}; must be 0 or > 1."
else
@batch_size = @limit != 0 && size > @limit ? @limit : size
@batch_size = size > @limit ? @limit : size
end
self
@ -290,8 +223,11 @@ module Mongo
# puts doc['user']
# end
def each
while doc = self.next
yield doc
#num_returned = 0
#while has_next? && (@limit <= 0 || num_returned < @limit)
while doc = next_document
yield doc #next_document
#num_returned += 1
end
end
@ -317,8 +253,7 @@ module Mongo
#
# @core explain explain-instance_method
def explain
c = Cursor.new(@collection,
query_options_hash.merge(:limit => -@limit.abs, :explain => true))
c = Cursor.new(@collection, query_options_hash.merge(:limit => -@limit.abs, :explain => true))
explanation = c.next_document
c.close
@ -340,8 +275,8 @@ module Mongo
message = BSON::ByteBuffer.new([0, 0, 0, 0])
message.put_int(1)
message.put_long(@cursor_id)
log(:debug, "Cursor#close #{@cursor_id}")
@connection.send_message(Mongo::Constants::OP_KILL_CURSORS, message, :connection => :reader)
@logger.debug("MONGODB cursor.close #{@cursor_id}") if @logger
@connection.send_message(Mongo::Constants::OP_KILL_CURSORS, message, nil)
end
@cursor_id = 0
@closed = true
@ -350,9 +285,7 @@ module Mongo
# Is this cursor closed?
#
# @return [Boolean]
def closed?
@closed
end
def closed?; @closed; end
# Returns an integer indicating which query options have been selected.
#
@ -361,43 +294,11 @@ module Mongo
# @see http://www.mongodb.org/display/DOCS/Mongo+Wire+Protocol#MongoWireProtocol-Mongo::Constants::OPQUERY
# The MongoDB wire protocol.
def query_opts
warn "The method Cursor#query_opts has been deprecated " +
"and will removed in v2.0. Use Cursor#options instead."
@options
end
# Add an option to the query options bitfield.
#
# @param opt a valid query option
#
# @raise InvalidOperation if this method is run after the cursor has bee
# iterated for the first time.
#
# @return [Integer] the current value of the options bitfield for this cursor.
#
# @see http://www.mongodb.org/display/DOCS/Mongo+Wire+Protocol#MongoWireProtocol-Mongo::Constants::OPQUERY
def add_option(opt)
check_modifiable
@options |= opt
@options
end
# Remove an option from the query options bitfield.
#
# @param opt a valid query option
#
# @raise InvalidOperation if this method is run after the cursor has bee
# iterated for the first time.
#
# @return [Integer] the current value of the options bitfield for this cursor.
#
# @see http://www.mongodb.org/display/DOCS/Mongo+Wire+Protocol#MongoWireProtocol-Mongo::Constants::OPQUERY
def remove_option(opt)
check_modifiable
@options &= ~opt
@options
opts = 0
opts |= Mongo::Constants::OP_QUERY_NO_CURSOR_TIMEOUT unless @timeout
opts |= Mongo::Constants::OP_QUERY_SLAVE_OK if @connection.slave_ok?
opts |= Mongo::Constants::OP_QUERY_TAILABLE if @tailable
opts
end
# Get the query options for this Cursor.
@ -406,21 +307,18 @@ module Mongo
def query_options_hash
{ :selector => @selector,
:fields => @fields,
:skip => @skip,
:limit => @limit,
:skip => @skip_num,
:limit => @limit_num,
:order => @order,
:hint => @hint,
:snapshot => @snapshot,
:timeout => @timeout,
:max_scan => @max_scan,
:return_key => @return_key,
:show_disk_loc => @show_disk_loc }
:timeout => @timeout }
end
# Clean output for inspect.
def inspect
"<Mongo::Cursor:0x#{object_id.to_s(16)} namespace='#{@db.name}.#{@collection.name}' " +
"@selector=#{@selector.inspect} @cursor_id=#{@cursor_id}>"
"@selector=#{@selector.inspect}>"
end
private
@ -442,49 +340,12 @@ module Mongo
# Return the number of documents remaining for this cursor.
def num_remaining
if @cache.length == 0
if @query_run && (@options & OP_QUERY_EXHAUST != 0)
close
return 0
else
refresh
end
end
refresh if @cache.length == 0
@cache.length
end
# Refresh the documents in @cache. This means either
# sending the initial query or sending a GET_MORE operation.
def refresh
if !@query_run
send_initial_query
elsif !@cursor_id.zero?
send_get_more
end
end
def send_initial_query
message = construct_query_message
sock = @socket || checkout_socket_from_connection
instrument(:find, instrument_payload) do
begin
results, @n_received, @cursor_id = @connection.receive_message(
Mongo::Constants::OP_QUERY, message, nil, sock, @command,
nil, @options & OP_QUERY_EXHAUST != 0)
rescue ConnectionFailure, OperationFailure, OperationTimeout => ex
force_checkin_socket(sock) unless @socket
raise ex
end
checkin_socket(sock) unless @socket
@returned += @n_received
@cache += results
@query_run = true
close_cursor_if_query_complete
end
end
def send_get_more
return if send_initial_query || @cursor_id.zero?
message = BSON::ByteBuffer.new([0, 0, 0, 0])
# DB name.
@ -503,103 +364,37 @@ module Mongo
# Cursor id.
message.put_long(@cursor_id)
log(:debug, "cursor.refresh() for cursor #{@cursor_id}") if @logger
sock = @socket || checkout_socket_for_op_get_more
begin
@logger.debug("MONGODB cursor.refresh() for cursor #{@cursor_id}") if @logger
results, @n_received, @cursor_id = @connection.receive_message(
Mongo::Constants::OP_GET_MORE, message, nil, sock, @command, nil)
rescue ConnectionFailure, OperationFailure, OperationTimeout => ex
force_checkin_socket(sock)
raise ex
end
checkin_socket(sock) unless @socket
Mongo::Constants::OP_GET_MORE, message, nil, @socket, @command)
@returned += @n_received
@cache += results
close_cursor_if_query_complete
end
def checkout_socket_from_connection
socket = nil
begin
@checkin_connection = true
if @command || @read_preference == :primary
socket = @connection.checkout_writer
elsif @read_preference == :secondary_only
socket = @connection.checkout_secondary
else
@read_pool = @connection.read_pool
socket = @connection.checkout_reader
end
rescue SystemStackError, NoMemoryError, SystemCallError => ex
@connection.close
raise ex
end
socket
end
def checkout_socket_for_op_get_more
if @read_pool && (@read_pool != @connection.read_pool)
checkout_socket_from_read_pool
# Run query the first time we request an object from the wire
# TODO: should we be calling instrument_payload even if logging
# is disabled?
def send_initial_query
if @query_run
false
else
checkout_socket_from_connection
end
end
def checkout_socket_from_read_pool
new_pool = @connection.secondary_pools.detect do |pool|
pool.host == @read_pool.host && pool.port == @read_pool.port
end
if new_pool
sock = nil
begin
@read_pool = new_pool
sock = new_pool.checkout
@checkin_read_pool = true
rescue SystemStackError, NoMemoryError, SystemCallError => ex
@connection.close
raise ex
message = construct_query_message
@connection.instrument(:find, instrument_payload) do
results, @n_received, @cursor_id = @connection.receive_message(
Mongo::Constants::OP_QUERY, message, nil, @socket, @command)
@returned += @n_received
@cache += results
@query_run = true
close_cursor_if_query_complete
end
return sock
else
raise Mongo::OperationFailure, "Failure to continue iterating " +
"cursor because the the replica set member persisting this " +
"cursor at #{@read_pool.host_string} cannot be found."
end
end
def checkin_socket(sock)
if @checkin_read_pool
@read_pool.checkin(sock)
@checkin_read_pool = false
elsif @checkin_connection
if @command || @read_preference == :primary
@connection.checkin_writer(sock)
else
@connection.checkin_reader(sock)
end
@checkin_connection = false
end
end
def force_checkin_socket(sock)
if @checkin_read_pool
@read_pool.checkin(sock)
@checkin_read_pool = false
else
if @command || @read_preference == :primary
@connection.checkin_writer(sock)
else
@connection.checkin_reader(sock)
end
@checkin_connection = false
true
end
end
def construct_query_message
message = BSON::ByteBuffer.new
message.put_int(@options)
message.put_int(query_opts)
BSON::BSON_RUBY.serialize_cstr(message, "#{@db.name}.#{@collection.name}")
message.put_int(@skip)
message.put_int(@limit)
@ -611,10 +406,10 @@ module Mongo
def instrument_payload
log = { :database => @db.name, :collection => @collection.name, :selector => selector }
log[:fields] = @fields if @fields
log[:skip] = @skip if @skip && (@skip != 0)
log[:limit] = @limit if @limit && (@limit != 0)
log[:order] = @order if @order
log[:fields] = @fields if @fields
log[:skip] = @skip if @skip && (@skip > 0)
log[:limit] = @limit if @limit && (@limit > 0)
log[:order] = @order if @order
log
end
@ -626,16 +421,16 @@ module Mongo
spec['$hint'] = @hint if @hint && @hint.length > 0
spec['$explain'] = true if @explain
spec['$snapshot'] = true if @snapshot
spec['$maxScan'] = @max_scan if @max_scan
spec['$returnKey'] = true if @return_key
spec['$showDiskLoc'] = true if @show_disk_loc
spec
end
# Returns true if the query contains order, explain, hint, or snapshot.
def query_contains_special_fields?
@order || @explain || @hint || @snapshot || @show_disk_loc ||
@max_scan || @return_key
@order || @explain || @hint || @snapshot
end
def to_s
"DBResponse(flags=#@result_flags, cursor_id=#@cursor_id, start=#@starting_from)"
end
def close_cursor_if_query_complete

View File

@ -17,6 +17,7 @@
# ++
require 'socket'
require 'timeout'
require 'thread'
module Mongo
@ -62,13 +63,13 @@ module Mongo
# @option opts [Boolean] :strict (False) If true, collections must exist to be accessed and must
# not exist to be created. See DB#collection and DB#create_collection.
#
# @option opts [Object, #create_pk(doc)] :pk (BSON::ObjectId) A primary key factory object,
# @option opts [Object, #create_pk(doc)] :pk (Mongo::ObjectId) A primary key factory object,
# which should take a hash and return a hash which merges the original hash with any primary key
# fields the factory wishes to inject. (NOTE: if the object already has a primary key,
# the factory should not inject a new key).
#
# @option opts [Boolean, Hash] :safe (false) Set the default safe-mode options
# propagated to Collection objects instantiated off of this DB. If no
# propogated to Collection objects instantiated off of this DB. If no
# value is provided, the default value set on this instance's Connection object will be used. This
# default can be overridden upon instantiation of any collection by explicity setting a :safe value
# on initialization
@ -81,12 +82,6 @@ module Mongo
@strict = opts[:strict]
@pk_factory = opts[:pk]
@safe = opts.fetch(:safe, @connection.safe)
if value = opts[:read]
Mongo::Support.validate_read_preference(value)
else
value = @connection.read_preference
end
@read_preference = value.is_a?(Hash) ? value.dup : value
@cache_time = opts[:cache_time] || 300 #5 minutes.
end
@ -110,13 +105,10 @@ module Mongo
if !save_auth
raise MongoArgumentError, "If using connection pooling, :save_auth must be set to true."
end
@connection.authenticate_pools
end
@connection.best_available_socket do |socket|
issue_authentication(username, password, save_auth, :socket => socket)
end
@connection.authenticate_pools
issue_authentication(username, password, save_auth)
end
def issue_authentication(username, password, save_auth=true, opts={})
@ -129,14 +121,13 @@ module Mongo
auth['user'] = username
auth['nonce'] = nonce
auth['key'] = Mongo::Support.auth_key(username, password, nonce)
if ok?(doc = self.command(auth, :check_response => false, :socket => opts[:socket]))
if ok?(self.command(auth, :check_response => false, :socket => opts[:socket]))
if save_auth
@connection.add_auth(@name, username, password)
end
true
else
message = "Failed to authenticate user '#{username}' on db '#{self.name}'"
raise Mongo::AuthenticationError.new(message, doc['code'], doc)
raise(Mongo::AuthenticationError, "Failed to authenticate user '#{username}' on db '#{self.name}'")
end
end
@ -175,15 +166,12 @@ module Mongo
#
# @param [String] username
# @param [String] password
# @param [Boolean] read_only
# Create a read-only user.
#
# @return [Hash] an object representing the user.
def add_user(username, password, read_only = false)
def add_user(username, password)
users = self[SYSTEM_USER_COLLECTION]
user = users.find_one({:user => username}) || {:user => username}
user['pwd'] = Mongo::Support.hash_password(username, password)
user['readOnly'] = true if read_only;
users.save(user)
return user
end
@ -263,31 +251,28 @@ module Mongo
# new collection. If +strict+ is true, will raise an error if
# collection +name+ already exists.
#
# @param [String, Symbol] name the name of the new collection.
# @param [String] name the name of the new collection.
#
# @option opts [Boolean] :capped (False) created a capped collection.
#
# @option opts [Integer] :size (Nil) If +capped+ is +true+,
# specifies the maximum number of bytes for the capped collection.
# If +false+, specifies the number of bytes allocated
# @option opts [Integer] :size (Nil) If +capped+ is +true+, specifies the maximum number of
# bytes for the capped collection. If +false+, specifies the number of bytes allocated
# for the initial extent of the collection.
#
# @option opts [Integer] :max (Nil) If +capped+ is +true+, indicates
# the maximum number of records in a capped collection.
# @option opts [Integer] :max (Nil) If +capped+ is +true+, indicates the maximum number of records
# in a capped collection.
#
# @raise [MongoDBError] raised under two conditions:
# either we're in +strict+ mode and the collection
# @raise [MongoDBError] raised under two conditions: either we're in +strict+ mode and the collection
# already exists or collection creation fails on the server.
#
# @return [Mongo::Collection]
def create_collection(name, opts={})
name = name.to_s
# Does the collection already exist?
if collection_names.include?(name)
if strict?
raise MongoDBError, "Collection #{name} already exists. " +
"Currently in strict mode."
raise MongoDBError, "Collection #{name} already exists. Currently in strict mode."
else
return Collection.new(name, self, opts)
return Collection.new(name, self)
end
end
@ -301,19 +286,16 @@ module Mongo
# Get a collection by name.
#
# @param [String, Symbol] name the collection name.
# @param [Hash] opts any valid options that can be passed to Collection#new.
# @param [String] name the collection name.
# @param [Hash] opts any valid options that can me passed to Collection#new.
#
# @raise [MongoDBError] if collection does not already exist and we're in
# +strict+ mode.
# @raise [MongoDBError] if collection does not already exist and we're in +strict+ mode.
#
# @return [Mongo::Collection]
def collection(name, opts={})
if strict? && !collection_names.include?(name.to_s)
raise Mongo::MongoDBError, "Collection #{name} doesn't exist. " +
"Currently in strict mode."
if strict? && !collection_names.include?(name)
raise Mongo::MongoDBError, "Collection #{name} doesn't exist. Currently in strict mode."
else
opts = opts.dup
opts[:safe] = opts.fetch(:safe, @safe)
opts.merge!(:pk => @pk_factory) unless opts[:pk]
Collection.new(name, self, opts)
@ -323,11 +305,11 @@ module Mongo
# Drop a collection by +name+.
#
# @param [String, Symbol] name
# @param [String] name
#
# @return [Boolean] +true+ on success or +false+ if the collection name doesn't exist.
def drop_collection(name)
return true unless collection_names.include?(name.to_s)
return true unless collection_names.include?(name)
ok?(command(:drop => name))
end
@ -337,7 +319,6 @@ module Mongo
# @option opts [Boolean] :fsync (false)
# @option opts [Integer] :w (nil)
# @option opts [Integer] :wtimeout (nil)
# @option opts [Boolean] :j (false)
#
# @return [Hash] the entire response to getlasterror.
#
@ -438,7 +419,7 @@ module Mongo
#
# @return [True] returns +true+ on success.
#
# @raise MongoDBError if there's an error dropping the index.
# @raise MongoDBError if there's an error renaming the collection.
def drop_index(collection_name, index_name)
oh = BSON::OrderedHash.new
oh[:deleteIndexes] = collection_name
@ -517,13 +498,7 @@ module Mongo
if result.nil?
raise OperationFailure, "Database command '#{selector.keys.first}' failed: returned null."
elsif (check_response && !ok?(result))
message = "Database command '#{selector.keys.first}' failed: ("
message << result.map do |key, value|
"#{key}: '#{value}'"
end.join('; ')
message << ').'
code = result['code'] || result['assertionCode']
raise OperationFailure.new(message, code, result)
raise OperationFailure, "Database command '#{selector.keys.first}' failed: #{result.inspect}"
else
result
end
@ -615,26 +590,14 @@ module Mongo
# @raise [MongoDBError] if the command fails or there's a problem with the validation
# data, or if the collection is invalid.
def validate_collection(name)
cmd = BSON::OrderedHash.new
cmd[:validate] = name
cmd[:full] = true
doc = command(cmd, :check_response => false)
if !ok?(doc)
raise MongoDBError, "Error with validate command: #{doc.inspect}"
end
if (doc.has_key?('valid') && !doc['valid']) || (doc['result'] =~ /\b(exception|corrupt)\b/i)
raise MongoDBError, "Error: invalid collection #{name}: #{doc.inspect}"
end
doc = command({:validate => name}, :check_response => false)
raise MongoDBError, "Error with validate command: #{doc.inspect}" unless ok?(doc)
result = doc['result']
raise MongoDBError, "Error with validation data: #{doc.inspect}" unless result.kind_of?(String)
raise MongoDBError, "Error: invalid collection #{name}: #{doc.inspect}" if result =~ /\b(exception|corrupt)\b/i
doc
end
# The value of the read preference. This will be
# either +:primary+, +:secondary+, or an object
# representing the tags to be read from.
def read_preference
@read_preference
end
private
def system_command_collection

View File

@ -22,20 +22,10 @@ module Mongo
class MongoRubyError < StandardError; end
# Raised when MongoDB itself has returned an error.
class MongoDBError < RuntimeError
class MongoDBError < RuntimeError; end
# @return The entire failed command's response object, if available.
attr_reader :result
# @return The failed command's error code, if availab.e
attr_reader :error_code
def initialize(message=nil, error_code=nil, result=nil)
@error_code = error_code
@result = result
super(message)
end
end
# Raised when configuration options cause connections, queries, etc., to fail.
class ConfigurationError < MongoRubyError; end
# Raised on fatal errors to GridFS.
class GridError < MongoRubyError; end
@ -58,9 +48,6 @@ module Mongo
# Raised on failures in connection to the database server.
class ConnectionTimeoutError < MongoRubyError; end
# Raised when no tags in a read preference maps to a given connection.
class NodeWithTagsNotFound < MongoRubyError; end
# Raised when a connection operation fails.
class ConnectionFailure < MongoDBError; end
@ -70,9 +57,6 @@ module Mongo
# Raised when a database operation fails.
class OperationFailure < MongoDBError; end
# Raised when a socket read operation times out.
class OperationTimeout < SocketError; end
# Raised when a client attempts to perform an invalid operation.
class InvalidOperation < MongoDBError; end

View File

@ -38,10 +38,8 @@ module Mongo
@chunks = @db["#{fs_name}.chunks"]
@fs_name = fs_name
# Create indexes only if we're connected to a primary node.
connection = @db.connection
if (connection.class == Connection && connection.read_primary?) ||
(connection.class == ReplSetConnection && connection.primary)
# Ensure indexes only if not connected to slave.
unless db.connection.slave_ok?
@chunks.create_index([['files_id', Mongo::ASCENDING], ['n', Mongo::ASCENDING]], :unique => true)
end
end
@ -65,12 +63,11 @@ module Mongo
# @option opts [Boolean] :safe (false) When safe mode is enabled, the chunks sent to the server
# will be validated using an md5 hash. If validation fails, an exception will be raised.
#
# @return [BSON::ObjectId] the file's id.
# @return [Mongo::ObjectId] the file's id.
def put(data, opts={})
opts = opts.dup
filename = opts.delete(:filename)
filename = opts.delete :filename
opts.merge!(default_grid_io_opts)
file = GridIO.new(@files, @chunks, filename, 'w', opts)
file = GridIO.new(@files, @chunks, filename, 'w', opts=opts)
file.write(data)
file.close
file.files_id

View File

@ -33,19 +33,19 @@ module Mongo
# @example
#
# # Check for the existence of a given filename
# @grid = Mongo::GridFileSystem.new(@db)
# @grid = GridFileSystem.new(@db)
# @grid.exist?(:filename => 'foo.txt')
#
# # Check for existence filename and content type
# @grid = Mongo::GridFileSystem.new(@db)
# @grid = GridFileSystem.new(@db)
# @grid.exist?(:filename => 'foo.txt', :content_type => 'image/jpg')
#
# # Check for existence by _id
# @grid = Mongo::Grid.new(@db)
# @grid = Grid.new(@db)
# @grid.exist?(:_id => BSON::ObjectId.from_string('4bddcd24beffd95a7db9b8c8'))
#
# # Check for existence by an arbitrary attribute.
# @grid = Mongo::Grid.new(@db)
# @grid = Grid.new(@db)
# @grid.exist?(:tags => {'$in' => ['nature', 'zen', 'photography']})
#
# @return [nil, Hash] either nil for the file's metadata as a hash.

View File

@ -39,10 +39,8 @@ module Mongo
@default_query_opts = {:sort => [['filename', 1], ['uploadDate', -1]], :limit => 1}
# Create indexes only if we're connected to a primary node.
connection = @db.connection
if (connection.class == Connection && connection.read_primary?) ||
(connection.class == ReplSetConnection && connection.primary)
# Ensure indexes only if not connected to slave.
unless db.connection.slave_ok?
@files.create_index([['filename', 1], ['uploadDate', -1]])
@chunks.create_index([['files_id', Mongo::ASCENDING], ['n', Mongo::ASCENDING]], :unique => true)
end
@ -71,41 +69,32 @@ module Mongo
# GridFileSystem#delete.
# @option opts [Boolean] :safe (false) When safe mode is enabled, the chunks sent to the server
# will be validated using an md5 hash. If validation fails, an exception will be raised.
# @option opts [Integer] :versions (false) deletes all versions which exceed the number specified to
# retain ordered by uploadDate. This option only works in 'w' mode. Certain precautions must be taken when
# deleting GridFS files. See the notes under GridFileSystem#delete.
#
# @example
#
# # Store the text "Hello, world!" in the grid file system.
# @grid = Mongo::GridFileSystem.new(@db)
# @grid = GridFileSystem.new(@db)
# @grid.open('filename', 'w') do |f|
# f.write "Hello, world!"
# end
#
# # Output "Hello, world!"
# @grid = Mongo::GridFileSystem.new(@db)
# @grid = GridFileSystem.new(@db)
# @grid.open('filename', 'r') do |f|
# puts f.read
# end
#
# # Write a file on disk to the GridFileSystem
# @file = File.open('image.jpg')
# @grid = Mongo::GridFileSystem.new(@db)
# @grid = GridFileSystem.new(@db)
# @grid.open('image.jpg, 'w') do |f|
# f.write @file
# end
#
# @return [Mongo::GridIO]
def open(filename, mode, opts={})
opts = opts.dup
opts.merge!(default_grid_io_opts(filename))
if mode == 'w'
versions = opts.delete(:versions)
if opts.delete(:delete_old) || (versions && versions < 1)
versions = 1
end
end
del = opts.delete(:delete_old) && mode == 'w'
file = GridIO.new(@files, @chunks, filename, mode, opts)
return file unless block_given?
result = nil
@ -113,9 +102,9 @@ module Mongo
result = yield file
ensure
id = file.close
if versions
if del
self.delete do
@files.find({'filename' => filename, '_id' => {'$ne' => id}}, :fields => ['_id'], :sort => ['uploadDate', -1], :skip => (versions - 1))
@files.find({'filename' => filename, '_id' => {'$ne' => id}}, :fields => ['_id'])
end
end
end

View File

@ -17,6 +17,10 @@
# ++
require 'digest/md5'
begin
require 'mime/types'
rescue LoadError
end
module Mongo
@ -55,7 +59,6 @@ module Mongo
@chunks = chunks
@filename = filename
@mode = mode
opts = opts.dup
@query = opts.delete(:query) || {}
@query_opts = opts.delete(:query_opts) || {}
@fs_name = opts.delete(:fs_name) || Grid::DEFAULT_FS_NAME
@ -169,57 +172,6 @@ module Mongo
def tell
@file_position
end
alias :pos :tell
# Rewind the file. This is equivalent to seeking to the zeroth position.
#
# @return [Integer] the position of the file after rewinding (always zero).
def rewind
raise GridError, "file not opened for read" unless @mode[0] == ?r
seek(0)
end
# Return a boolean indicating whether the position pointer is
# at the end of the file.
#
# @return [Boolean]
def eof
raise GridError, "file not opened for read #{@mode}" unless @mode[0] == ?r
@file_position >= @file_length
end
alias :eof? :eof
# Return the next line from a GridFS file. This probably
# makes sense only if you're storing plain text. This method
# has a somewhat tricky API, which it inherits from Ruby's
# StringIO#gets.
#
# @param [String, Integer] separator or length. If a separator,
# read up to the separator. If a length, read the +length+ number
# of bytes. If nil, read the entire file.
# @param [Integer] length If a separator is provided, then
# read until either finding the separator or
# passing over the +length+ number of bytes.
#
# @return [String]
def gets(separator="\n", length=nil)
if separator.nil?
read_all
elsif separator.is_a?(Integer)
read_length(separator)
elsif separator.length > 1
read_to_string(separator, length)
else
read_to_character(separator, length)
end
end
# Return the next byte from the GridFS file.
#
# @return [String]
def getc
read_length(1)
end
# Creates or updates the document from the files collection that
# stores the chunks' metadata. The file becomes available only after
@ -253,7 +205,6 @@ module Mongo
return read_all unless block_given?
while chunk = read(chunk_size)
yield chunk
break if chunk.empty?
end
self
end
@ -275,7 +226,7 @@ module Mongo
end
def save_chunk(chunk)
@chunks.save(chunk)
@chunks.insert(chunk)
end
def get_chunk(n)
@ -284,18 +235,21 @@ module Mongo
chunk
end
def last_chunk_number
(@file_length / @chunk_size).to_i
end
# Read a file in its entirety.
def read_all
buf = ''
if @current_chunk
buf << @current_chunk['data'].to_s
while buf.size < @file_length
@current_chunk = get_chunk(@current_chunk['n'] + 1)
break if @current_chunk.nil?
buf << @current_chunk['data'].to_s
while chunk = get_chunk(@current_chunk['n'] + 1)
buf << chunk['data'].to_s
@current_chunk = chunk
end
@file_position = @file_length
end
@file_position = @file_length
buf
end
@ -306,7 +260,7 @@ module Mongo
if length.nil?
to_read = remaining
else
to_read = length > remaining ? remaining : length
to_read = length > remaining ? remaining : length
end
return nil unless remaining > 0
@ -326,48 +280,6 @@ module Mongo
buf
end
def read_to_character(character="\n", length=nil)
result = ''
len = 0
while char = getc
result << char
len += 1
break if char == character || (length ? len >= length : false)
end
result.length > 0 ? result : nil
end
def read_to_string(string="\n", length=nil)
result = ''
len = 0
match_idx = 0
match_num = string.length - 1
to_match = string[match_idx].chr
if length
matcher = lambda {|idx, num| idx < num && len < length }
else
matcher = lambda {|idx, num| idx < num}
end
while matcher.call(match_idx, match_num) && char = getc
result << char
len += 1
if char == to_match
while match_idx < match_num do
match_idx += 1
to_match = string[match_idx].chr
char = getc
result << char
if char != to_match
match_idx = 0
to_match = string[match_idx].chr
break
end
end
end
end
result.length > 0 ? result : nil
end
def cache_chunk_data
@current_chunk_data = @current_chunk['data'].to_s
if @current_chunk_data.respond_to?(:force_encoding)
@ -420,12 +332,11 @@ module Mongo
# Initialize the class for writing a file.
def init_write(opts)
opts = opts.dup
@files_id = opts.delete(:_id) || BSON::ObjectId.new
@content_type = opts.delete(:content_type) || (defined? MIME) && get_content_type || DEFAULT_CONTENT_TYPE
@chunk_size = opts.delete(:chunk_size) || DEFAULT_CHUNK_SIZE
@metadata = opts.delete(:metadata)
@aliases = opts.delete(:aliases)
@metadata = opts.delete(:metadata) if opts[:metadata]
@aliases = opts.delete(:aliases) if opts[:aliases]
@file_length = 0
opts.each {|k, v| self[k] = v}
check_existing_file if @safe
@ -463,9 +374,7 @@ module Mongo
@server_md5 = @files.db.command(md5_command)['md5']
if @safe
@client_md5 = @local_md5.hexdigest
if @local_md5 == @server_md5
@server_md5
else
if @local_md5 != @server_md5
raise GridMD5Failure, "File on server failed MD5 check"
end
else

View File

@ -1,369 +0,0 @@
module Mongo
module Networking
STANDARD_HEADER_SIZE = 16
RESPONSE_HEADER_SIZE = 20
# Counter for generating unique request ids.
@@current_request_id = 0
# Send a message to MongoDB, adding the necessary headers.
#
# @param [Integer] operation a MongoDB opcode.
# @param [BSON::ByteBuffer] message a message to send to the database.
#
# @option opts [Symbol] :connection (:writer) The connection to which
# this message should be sent. Valid options are :writer and :reader.
#
# @return [Integer] number of bytes sent
def send_message(operation, message, opts={})
if opts.is_a?(String)
warn "Connection#send_message no longer takes a string log message. " +
"Logging is now handled within the Collection and Cursor classes."
opts = {}
end
connection = opts.fetch(:connection, :writer)
add_message_headers(message, operation)
packed_message = message.to_s
sock = nil
begin
if connection == :writer
sock = checkout_writer
else
sock = checkout_reader
end
send_message_on_socket(packed_message, sock)
rescue SystemStackError, NoMemoryError, SystemCallError => ex
close
raise ex
ensure
if sock
if connection == :writer
checkin_writer(sock)
else
checkin_reader(sock)
end
end
end
end
# Sends a message to the database, waits for a response, and raises
# an exception if the operation has failed.
#
# @param [Integer] operation a MongoDB opcode.
# @param [BSON::ByteBuffer] message a message to send to the database.
# @param [String] db_name the name of the database. used on call to get_last_error.
# @param [Hash] last_error_params parameters to be sent to getLastError. See DB#error for
# available options.
#
# @see DB#get_last_error for valid last error params.
#
# @return [Hash] The document returned by the call to getlasterror.
def send_message_with_safe_check(operation, message, db_name, log_message=nil, last_error_params=false)
docs = num_received = cursor_id = ''
add_message_headers(message, operation)
last_error_message = BSON::ByteBuffer.new
build_last_error_message(last_error_message, db_name, last_error_params)
last_error_id = add_message_headers(last_error_message, Mongo::Constants::OP_QUERY)
packed_message = message.append!(last_error_message).to_s
sock = nil
begin
sock = checkout_writer
send_message_on_socket(packed_message, sock)
docs, num_received, cursor_id = receive(sock, last_error_id)
checkin_writer(sock)
rescue ConnectionFailure, OperationFailure, OperationTimeout => ex
checkin_writer(sock)
raise ex
rescue SystemStackError, NoMemoryError, SystemCallError => ex
close
raise ex
end
if num_received == 1 && (error = docs[0]['err'] || docs[0]['errmsg'])
if error.include?("not master")
close
raise ConnectionFailure.new(docs[0]['code'].to_s + ': ' + error, docs[0]['code'], docs[0])
else
error = "wtimeout" if error == "timeout"
raise OperationFailure.new(docs[0]['code'].to_s + ': ' + error, docs[0]['code'], docs[0])
end
end
docs[0]
end
# Sends a message to the database and waits for the response.
#
# @param [Integer] operation a MongoDB opcode.
# @param [BSON::ByteBuffer] message a message to send to the database.
# @param [String] log_message this is currently a no-op and will be removed.
# @param [Socket] socket a socket to use in lieu of checking out a new one.
# @param [Boolean] command (false) indicate whether this is a command. If this is a command,
# the message will be sent to the primary node.
# @param [Boolean] command (false) indicate whether the cursor should be exhausted. Set
# this to true only when the OP_QUERY_EXHAUST flag is set.
#
# @return [Array]
# An array whose indexes include [0] documents returned, [1] number of document received,
# and [3] a cursor_id.
def receive_message(operation, message, log_message=nil, socket=nil, command=false,
read=:primary, exhaust=false)
request_id = add_message_headers(message, operation)
packed_message = message.to_s
result = ''
sock = nil
begin
if socket
sock = socket
should_checkin = false
else
if command || read == :primary
sock = checkout_writer
elsif read == :secondary
sock = checkout_reader
else
sock = checkout_tagged(read)
end
should_checkin = true
end
send_message_on_socket(packed_message, sock)
result = receive(sock, request_id, exhaust)
rescue SystemStackError, NoMemoryError, SystemCallError => ex
close
raise ex
rescue Exception => ex
if defined?(IRB)
close if ex.class == IRB::Abort
end
raise ex
ensure
if should_checkin
if command || read == :primary
checkin_writer(sock)
elsif read == :secondary
checkin_reader(sock)
else
# TODO: sock = checkout_tagged(read)
end
end
end
result
end
private
def receive(sock, cursor_id, exhaust=false)
begin
if exhaust
docs = []
num_received = 0
while(cursor_id != 0) do
receive_header(sock, cursor_id, exhaust)
number_received, cursor_id = receive_response_header(sock)
new_docs, n = read_documents(number_received, sock)
docs += new_docs
num_received += n
end
return [docs, num_received, cursor_id]
else
receive_header(sock, cursor_id, exhaust)
number_received, cursor_id = receive_response_header(sock)
docs, num_received = read_documents(number_received, sock)
return [docs, num_received, cursor_id]
end
rescue Mongo::ConnectionFailure => ex
close
raise ex
end
end
def receive_header(sock, expected_response, exhaust=false)
header = receive_message_on_socket(16, sock)
# unpacks to size, request_id, response_to
response_to = header.unpack('VVV')[2]
if !exhaust && expected_response != response_to
raise Mongo::ConnectionFailure, "Expected response #{expected_response} but got #{response_to}"
end
unless header.size == STANDARD_HEADER_SIZE
raise "Short read for DB response header: " +
"expected #{STANDARD_HEADER_SIZE} bytes, saw #{header.size}"
end
nil
end
def receive_response_header(sock)
header_buf = receive_message_on_socket(RESPONSE_HEADER_SIZE, sock)
if header_buf.length != RESPONSE_HEADER_SIZE
raise "Short read for DB response header; " +
"expected #{RESPONSE_HEADER_SIZE} bytes, saw #{header_buf.length}"
end
# unpacks to flags, cursor_id_a, cursor_id_b, starting_from, number_remaining
flags, cursor_id_a, cursor_id_b, _, number_remaining = header_buf.unpack('VVVVV')
check_response_flags(flags)
cursor_id = (cursor_id_b << 32) + cursor_id_a
[number_remaining, cursor_id]
end
def check_response_flags(flags)
if flags & Mongo::Constants::REPLY_CURSOR_NOT_FOUND != 0
raise Mongo::OperationFailure, "Query response returned CURSOR_NOT_FOUND. " +
"Either an invalid cursor was specified, or the cursor may have timed out on the server."
elsif flags & Mongo::Constants::REPLY_QUERY_FAILURE != 0
# Getting odd failures when a exception is raised here.
end
end
def read_documents(number_received, sock)
docs = []
number_remaining = number_received
while number_remaining > 0 do
buf = receive_message_on_socket(4, sock)
size = buf.unpack('V')[0]
buf << receive_message_on_socket(size - 4, sock)
number_remaining -= 1
docs << BSON::BSON_CODER.deserialize(buf)
end
[docs, number_received]
end
# Constructs a getlasterror message. This method is used exclusively by
# Connection#send_message_with_safe_check.
#
# Because it modifies message by reference, we don't need to return it.
def build_last_error_message(message, db_name, opts)
message.put_int(0)
BSON::BSON_RUBY.serialize_cstr(message, "#{db_name}.$cmd")
message.put_int(0)
message.put_int(-1)
cmd = BSON::OrderedHash.new
cmd[:getlasterror] = 1
if opts.is_a?(Hash)
opts.assert_valid_keys(:w, :wtimeout, :fsync, :j)
cmd.merge!(opts)
end
message.put_binary(BSON::BSON_CODER.serialize(cmd, false).to_s)
nil
end
# Prepares a message for transmission to MongoDB by
# constructing a valid message header.
#
# Note: this method modifies message by reference.
#
# @return [Integer] the request id used in the header
def add_message_headers(message, operation)
headers = [
# Message size.
16 + message.size,
# Unique request id.
request_id = get_request_id,
# Response id.
0,
# Opcode.
operation
].pack('VVVV')
message.prepend!(headers)
request_id
end
# Increment and return the next available request id.
#
# return [Integer]
def get_request_id
request_id = ''
@id_lock.synchronize do
request_id = @@current_request_id += 1
end
request_id
end
# Low-level method for sending a message on a socket.
# Requires a packed message and an available socket,
#
# @return [Integer] number of bytes sent
def send_message_on_socket(packed_message, socket)
begin
total_bytes_sent = socket.send(packed_message)
if total_bytes_sent != packed_message.size
packed_message.slice!(0, total_bytes_sent)
while packed_message.size > 0
byte_sent = socket.send(packed_message)
total_bytes_sent += byte_sent
packed_message.slice!(0, byte_sent)
end
end
total_bytes_sent
rescue => ex
close
raise ConnectionFailure, "Operation failed with the following exception: #{ex}:#{ex.message}"
end
end
# Low-level method for receiving data from socket.
# Requires length and an available socket.
def receive_message_on_socket(length, socket)
begin
message = receive_data(length, socket)
rescue OperationTimeout, ConnectionFailure => ex
close
if ex.class == OperationTimeout
raise OperationTimeout, "Timed out waiting on socket read."
else
raise ConnectionFailure, "Operation failed with the following exception: #{ex}"
end
end
message
end
def receive_data(length, socket)
message = new_binary_string
socket.read(length, message)
raise ConnectionFailure, "connection closed" unless message && message.length > 0
if message.length < length
chunk = new_binary_string
while message.length < length
socket.read(length - message.length, chunk)
raise ConnectionFailure, "connection closed" unless chunk.length > 0
message << chunk
end
end
message
end
if defined?(Encoding)
BINARY_ENCODING = Encoding.find("binary")
def new_binary_string
"".force_encoding(BINARY_ENCODING)
end
else
def new_binary_string
""
end
end
end
end

View File

@ -20,68 +20,44 @@ module Mongo
# Instantiates and manages connections to a MongoDB replica set.
class ReplSetConnection < Connection
REPL_SET_OPTS = [:read, :refresh_mode, :refresh_interval, :require_primary,
:read_secondary, :rs_name, :name]
attr_reader :replica_set_name, :seeds, :refresh_interval, :refresh_mode,
:refresh_version, :manager
attr_reader :nodes, :secondaries, :arbiters, :read_pool, :secondary_pools
# Create a connection to a MongoDB replica set.
#
# If no args are provided, it will check <code>ENV["MONGODB_URI"]</code>.
#
# Once connected to a replica set, you can find out which nodes are primary, secondary, and
# arbiters with the corresponding accessors: Connection#primary, Connection#secondaries, and
# Connection#arbiters. This is useful if your application needs to connect manually to nodes other
# than the primary.
#
# @param [Array] seeds "host:port" strings
# @param [Array] args A list of host-port pairs ending with a hash containing any options. See
# the examples below for exactly how to use the constructor.
#
# @option opts [String] :name (nil) The name of the replica set to connect to. You
# @option options [String] :rs_name (nil) The name of the replica set to connect to. You
# can use this option to verify that you're connecting to the right replica set.
# @option opts [Boolean, Hash] :safe (false) Set the default safe-mode options
# @option options [Boolean, Hash] :safe (false) Set the default safe-mode options
# propogated to DB objects instantiated off of this Connection. This
# default can be overridden upon instantiation of any DB by explicity setting a :safe value
# on initialization.
# @option opts [:primary, :secondary] :read (:primary) The default read preference for Mongo::DB
# objects created from this connection object. If +:secondary+ is chosen, reads will be sent
# to one of the closest available secondary nodes. If a secondary node cannot be located, the
# read will be sent to the primary.
# @option opts [Logger] :logger (nil) Logger instance to receive driver operation log.
# @option opts [Integer] :pool_size (1) The maximum number of socket connections allowed per
# @option options [Boolean] :read_secondary(false) If true, a random secondary node will be chosen,
# and all reads will be directed to that node.
# @option options [Logger, #debug] :logger (nil) Logger instance to receive driver operation log.
# @option options [Integer] :pool_size (1) The maximum number of socket connections allowed per
# connection pool. Note: this setting is relevant only for multi-threaded applications.
# @option opts [Float] :pool_timeout (5.0) When all of the connections a pool are checked out,
# @option options [Float] :timeout (5.0) When all of the connections a pool are checked out,
# this is the number of seconds to wait for a new connection to be released before throwing an exception.
# Note: this setting is relevant only for multi-threaded applications.
# @option opts [Float] :op_timeout (nil) The number of seconds to wait for a read operation to time out.
# @option opts [Float] :connect_timeout (30) The number of seconds to wait before timing out a
# connection attempt.
# @option opts [Boolean] :ssl (false) If true, create the connection to the server using SSL.
# @option opts [Boolean] :refresh_mode (false) Set this to :sync to periodically update the
# state of the connection every :refresh_interval seconds. Replica set connection failures
# will always trigger a complete refresh. This option is useful when you want to add new nodes
# or remove replica set nodes not currently in use by the driver.
# @option opts [Integer] :refresh_interval (90) If :refresh_mode is enabled, this is the number of seconds
# between calls to check the replica set's state.
# @option opts [Boolean] :require_primary (true) If true, require a primary node for the connection
# to succeed. Otherwise, connection will succeed as long as there's at least one secondary node.
# Note: that the number of seed nodes does not have to be equal to the number of replica set members.
# The purpose of seed nodes is to permit the driver to find at least one replica set member even if a member is down.
#
# @example Connect to a replica set and provide two seed nodes.
# Mongo::ReplSetConnection.new(['localhost:30000', 'localhost:30001'])
# @example Connect to a replica set and provide two seed nodes:
# ReplSetConnection.new(['localhost', 30000], ['localhost', 30001])
#
# @example Connect to a replica set providing two seed nodes and ensuring a connection to the replica set named 'prod':
# Mongo::ReplSetConnection.new(['localhost:30000', 'localhost:30001'], :name => 'prod')
# ReplSetConnection.new(['localhost', 30000], ['localhost', 30001], :rs_name => 'prod')
#
# @example Connect to a replica set providing two seed nodes and allowing reads from a secondary node:
# Mongo::ReplSetConnection.new(['localhost:30000', 'localhost:30001'], :read => :secondary)
# ReplSetConnection.new(['localhost', 30000], ['localhost', 30001], :read_secondary => true)
#
# @see http://api.mongodb.org/ruby/current/file.REPLICA_SETS.html Replica sets in Ruby
#
# @raise [MongoArgumentError] If called with no arguments and <code>ENV["MONGODB_URI"]</code> implies a direct connection.
#
# @raise [ReplicaSetConnectionError] This is raised if a replica set name is specified and the
# driver fails to connect to a replica set with that name.
def initialize(*args)
@ -91,170 +67,70 @@ module Mongo
opts = {}
end
nodes = args
if nodes.empty? and ENV.has_key?('MONGODB_URI')
parser = URIParser.new ENV['MONGODB_URI'], opts
if parser.direct?
raise MongoArgumentError, "Mongo::ReplSetConnection.new called with no arguments, but ENV['MONGODB_URI'] implies a direct connection."
end
opts = parser.connection_options
nodes = parser.nodes
unless args.length > 0
raise MongoArgumentError, "A ReplSetConnection requires at least one node."
end
unless nodes.length > 0
raise MongoArgumentError, "A ReplSetConnection requires at least one seed node."
end
# Get seed nodes
@nodes = args
# This is temporary until support for the old format is dropped
if nodes.first.last.is_a?(Integer)
warn "Initiating a ReplSetConnection with seeds passed as individual [host, port] array arguments is deprecated."
warn "Please specify hosts as an array of 'host:port' strings; the old format will be removed in v2.0"
@seeds = nodes
else
@seeds = nodes.first.map do |host_port|
host, port = host_port.split(":")
[ host, port.to_i ]
end
end
# Replica set name
@replica_set = opts[:rs_name]
# TODO: add a method for replacing this list of node.
@seeds.freeze
# Cache the various node types when connecting to a replica set.
@secondaries = []
@arbiters = []
# Refresh
@last_refresh = Time.now
@refresh_version = 0
# Connection pools for each secondary node
@secondary_pools = []
@read_pool = nil
# No connection manager by default.
@manager = nil
@old_managers = []
# Are we allowing reads from secondaries?
@read_secondary = opts.fetch(:read_secondary, false)
# Lock for request ids.
@id_lock = Mutex.new
@pool_mutex = Mutex.new
@connected = false
@safe_mutex_lock = Mutex.new
@safe_mutexes = Hash.new {|hash, key| hash[key] = Mutex.new}
@connect_mutex = Mutex.new
@refresh_mutex = Mutex.new
check_opts(opts)
setup(opts)
end
def valid_opts
GENERIC_OPTS + REPL_SET_OPTS
end
def inspect
"<Mongo::ReplSetConnection:0x#{self.object_id.to_s(16)} @seeds=#{@seeds.inspect} " +
"@connected=#{@connected}>"
end
# Initiate a connection to the replica set.
# Create a new socket and attempt to connect to master.
# If successful, sets host and port to master and returns the socket.
#
# If connecting to a replica set, this method will replace the
# initially-provided seed list with any nodes known to the set.
#
# @raise [ConnectionFailure] if unable to connect to any host or port.
def connect
log(:info, "Connecting...")
@connect_mutex.synchronize do
return if @connected
reset_connection
@nodes_to_try = @nodes.clone
discovered_seeds = @manager ? @manager.seeds : []
@manager = PoolManager.new(self, discovered_seeds)
while connecting?
node = @nodes_to_try.shift
config = check_is_master(node)
Thread.current[:managers] ||= Hash.new
Thread.current[:managers][self] = @manager
@manager.connect
@refresh_version += 1
if @require_primary && @manager.primary.nil? #TODO: in v2.0, we'll let this be optional and do a lazy connect.
close
raise ConnectionFailure, "Failed to connect to primary node."
elsif @manager.read_pool.nil?
close
raise ConnectionFailure, "Failed to connect to any node."
if is_primary?(config)
set_primary(node)
else
@connected = true
set_auxillary(node, config)
end
end
pick_secondary_for_read if @read_secondary
if connected?
BSON::BSON_CODER.update_max_bson_size(self)
else
if @secondary_pools.empty?
close # close any existing pools and sockets
raise ConnectionFailure, "Failed to connect any given host:port"
else
close # close any existing pools and sockets
raise ConnectionFailure, "Failed to connect to primary node."
end
end
end
alias :reconnect :connect
# Determine whether a replica set refresh is
# required. If so, run a hard refresh. You can
# force a hard refresh by running
# ReplSetConnection#hard_refresh!
#
# @return [Boolean] +true+ unless a hard refresh
# is run and the refresh lock can't be acquired.
def refresh(opts={})
if !connected?
log(:info, "Trying to check replica set health but not " +
"connected...")
return hard_refresh!
end
log(:debug, "Checking replica set connection health...")
@manager.check_connection_health
if @manager.refresh_required?
return hard_refresh!
end
return true
end
# Force a hard refresh of this connection's view
# of the replica set.
#
# @return [Boolean] +true+ if hard refresh
# occurred. +false+ is returned when unable
# to get the refresh lock.
def hard_refresh!
log(:info, "Initiating hard refresh...")
discovered_seeds = @manager ? @manager.seeds : []
new_manager = PoolManager.new(self, discovered_seeds | @seeds)
new_manager.connect
Thread.current[:managers][self] = new_manager
# TODO: make sure that connect has succeeded
@old_managers << @manager
@manager = new_manager
@refresh_version += 1
return true
end
def connected?
@connected && (@manager.primary_pool || @manager.read_pool)
end
# @deprecated
def connecting?
warn "ReplSetConnection#connecting? is deprecated and will be removed in v2.0."
false
end
# The replica set primary's host name.
#
# @return [String]
def host
@manager.primary_pool.host
end
# The replica set primary's port.
#
# @return [Integer]
def port
@manager.primary_pool.port
end
def nodes
warn "ReplSetConnection#nodes is DEPRECATED and will be removed in v2.0. " +
"Please use ReplSetConnection#seeds instead."
@seeds
@nodes_to_try.length > 0
end
# Determine whether we're reading from a primary node. If false,
@ -262,328 +138,186 @@ module Mongo
#
# @return [Boolean]
def read_primary?
@manager.read_pool == @manager.primary_pool
!@read_pool
end
alias :primary? :read_primary?
def read_preference
@read
end
# Close the connection to the database.
def close(opts={})
if opts[:soft]
@manager.close(:soft => true) if @manager
else
@manager.close if @manager
def close
super
@read_pool = nil
@secondary_pools.each do |pool|
pool.close
end
# Clear the reference to this object.
if Thread.current[:managers]
Thread.current[:managers].delete(self)
end
@connected = false
end
# If a ConnectionFailure is raised, this method will be called
# to close the connection and reset connection values.
# @deprecated
# TODO: what's the point of this method?
def reset_connection
close
warn "ReplSetConnection#reset_connection is now deprecated and will be removed in v2.0. " +
"Use ReplSetConnection#close instead."
super
@secondaries = []
@secondary_pools = []
@arbiters = []
@nodes_tried = []
@nodes_to_try = []
end
# Returns +true+ if it's okay to read from a secondary node.
# Since this is a replica set, this must always be true.
# Is it okay to connect to a slave?
#
# This method exist primarily so that Cursor objects will
# generate query messages with a slaveOkay value of +true+.
#
# @return [Boolean] +true+
# @return [Boolean]
def slave_ok?
true
@read_secondary || @slave_ok
end
def authenticate_pools
if primary_pool
primary_pool.authenticate_existing
end
secondary_pools.each do |pool|
super
@secondary_pools.each do |pool|
pool.authenticate_existing
end
end
def logout_pools(db)
if primary_pool
primary_pool.logout_existing(db)
end
secondary_pools.each do |pool|
super
@secondary_pools.each do |pool|
pool.logout_existing(db)
end
end
# Generic socket checkout
# Takes a block that returns a socket from pool
def checkout(&block)
if connected?
sync_refresh
else
connect
end
begin
socket = block.call
rescue => ex
checkin(socket) if socket
raise ex
end
if socket
socket
else
@connected = false
raise ConnectionFailure.new("Could not checkout a socket.")
end
end
# Checkout best available socket by trying primary
# pool first and then falling back to secondary.
def checkout_best
checkout do
socket = get_socket_from_pool(:primary)
if !socket
connect
socket = get_socket_from_pool(:secondary)
end
socket
end
end
# Checkout a socket for reading (i.e., a secondary node).
# Note that @read_pool might point to the primary pool
# if no read pool has been defined.
def checkout_reader
checkout do
socket = get_socket_from_pool(:read)
if !socket
connect
socket = get_socket_from_pool(:primary)
end
socket
end
end
# Checkout a socket from a secondary
# For :read_preference => :secondary_only
def checkout_secondary
checkout do
get_socket_from_pool(:secondary)
end
end
# Checkout a socket for writing (i.e., a primary node).
def checkout_writer
checkout do
get_socket_from_pool(:primary)
end
end
# Checkin a socket used for reading.
def checkin_reader(socket)
if socket
socket.pool.checkin(socket)
end
sync_refresh
end
# Checkin a socket used for writing.
def checkin_writer(socket)
if socket
socket.pool.checkin(socket)
end
sync_refresh
end
def close_socket(socket)
begin
socket.close if socket
rescue IOError
log(:info, "Tried to close socket #{socket} but already closed.")
end
end
def ensure_manager
Thread.current[:managers] ||= Hash.new
if Thread.current[:managers][self] != @manager
Thread.current[:managers][self] = @manager
end
end
def get_socket_from_pool(pool_type)
ensure_manager
pool = case pool_type
when :primary
primary_pool
when :secondary
secondary_pool
when :read
read_pool
end
begin
if pool
pool.checkout
end
rescue ConnectionFailure => ex
log(:info, "Failed to checkout from #{pool} with #{ex.class}; #{ex.message}")
return nil
end
end
def local_manager
Thread.current[:managers][self] if Thread.current[:managers]
end
def arbiters
local_manager.arbiters.nil? ? [] : local_manager.arbiters
end
def primary
local_manager ? local_manager.primary : nil
end
# Note: might want to freeze these after connecting.
def secondaries
local_manager ? local_manager.secondaries : []
end
def hosts
local_manager ? local_manager.hosts : []
end
def primary_pool
local_manager ? local_manager.primary_pool : nil
end
def read_pool
local_manager ? local_manager.read_pool : nil
end
def secondary_pool
local_manager ? local_manager.secondary_pool : nil
end
def secondary_pools
local_manager ? local_manager.secondary_pools : []
end
def tag_map
local_manager ? local_manager.tag_map : {}
end
def max_bson_size
if local_manager && local_manager.max_bson_size
local_manager.max_bson_size
else
Mongo::DEFAULT_MAX_BSON_SIZE
end
end
private
# Parse option hash
def setup(opts)
# Require a primary node to connect?
@require_primary = opts.fetch(:require_primary, true)
def check_is_master(node)
begin
host, port = *node
socket = TCPSocket.new(host, port)
socket.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1)
# Refresh
@refresh_mode = opts.fetch(:refresh_mode, false)
@refresh_interval = opts.fetch(:refresh_interval, 90)
config = self['admin'].command({:ismaster => 1}, :socket => socket)
if @refresh_mode && @refresh_interval < 60
@refresh_interval = 60 unless ENV['TEST_MODE'] = 'TRUE'
check_set_name(config, socket)
rescue OperationFailure, SocketError, SystemCallError, IOError => ex
# It's necessary to rescue here. The #connect method will keep trying
# until it has no more nodes to try and raise a ConnectionFailure if
# it can't connect to a primary.
ensure
socket.close if socket
@nodes_tried << node
if config
nodes = []
nodes += config['hosts'] if config['hosts']
nodes += config['arbiters'] if config['arbiters']
nodes += config['passives'] if config['passives']
update_node_list(nodes)
if config['msg'] && @logger
@logger.warn("MONGODB #{config['msg']}")
end
end
end
if @refresh_mode == :async
warn ":async refresh mode has been deprecated. Refresh
mode will be disabled."
elsif ![:sync, false].include?(@refresh_mode)
raise MongoArgumentError,
"Refresh mode must be either :sync or false."
end
# Are we allowing reads from secondaries?
if opts[:read_secondary]
warn ":read_secondary options has now been deprecated and will " +
"be removed in driver v2.0. Use the :read option instead."
@read_secondary = opts.fetch(:read_secondary, false)
@read = :secondary
else
@read = opts.fetch(:read, :primary)
Mongo::Support.validate_read_preference(@read)
end
# Replica set name
if opts[:rs_name]
warn ":rs_name option has been deprecated and will be removed in v2.0. " +
"Please use :name instead."
@replica_set_name = opts[:rs_name]
else
@replica_set_name = opts[:name]
end
opts[:connect_timeout] = opts[:connect_timeout] || 30
super opts
config
end
# Checkout a socket connected to a node with one of
# the provided tags. If no such node exists, raise
# an exception.
# Primary, when connecting to a replica can, can only be a true primary node.
# (And not a slave, which is possible when connecting with the standard
# Connection class.
def is_primary?(config)
config && (config['ismaster'] == 1 || config['ismaster'] == true)
end
# Pick a node randomly from the set of possible secondaries.
def pick_secondary_for_read
if (size = @secondary_pools.size) > 0
@read_pool = @secondary_pools[rand(size)]
end
end
# Make sure that we're connected to the expected replica set.
def check_set_name(config, socket)
if @replica_set
config = self['admin'].command({:replSetGetStatus => 1},
:socket => socket, :check_response => false)
if !Mongo::Support.ok?(config)
raise ReplicaSetConnectionError, config['errmsg']
elsif config['set'] != @replica_set
raise ReplicaSetConnectionError,
"Attempting to connect to replica set '#{config['set']}' but expected '#{@replica_set}'"
end
end
end
# Determines what kind of node we have and caches its host
# and port so that users can easily connect manually.
def set_auxillary(node, config)
if config
if config['secondary']
host, port = *node
@secondaries << node unless @secondaries.include?(node)
@secondary_pools << Pool.new(self, host, port, :size => @pool_size, :timeout => @timeout)
elsif config['arbiterOnly']
@arbiters << node unless @arbiters.include?(node)
end
end
end
# Update the list of known nodes. Only applies to replica sets,
# where the response to the ismaster command will return a list
# of known hosts.
#
# NOTE: will be available in driver release v2.0.
def checkout_tagged(tags)
tags.each do |k, v|
pool = self.tag_map[{k.to_s => v}]
if pool
socket = pool.checkout
return socket
# @param hosts [Array] a list of hosts, specified as string-encoded
# host-port values. Example: ["myserver-1.org:27017", "myserver-1.org:27017"]
#
# @return [Array] the updated list of nodes
def update_node_list(hosts)
new_nodes = hosts.map do |host|
if !host.respond_to?(:split)
warn "Could not parse host #{host.inspect}."
next
end
host, port = host.split(':')
[host, port ? port.to_i : Connection::DEFAULT_PORT]
end
raise NodeWithTagsNotFound,
"Could not find a connection tagged with #{tags}."
# Replace the list of seed nodes with the canonical list.
@nodes = new_nodes.clone
@nodes_to_try = new_nodes - @nodes_tried
end
def prune_managers
@old_managers.each do |manager|
if manager != @manager
if manager.closed?
@old_managers.delete(manager)
else
manager.close(:soft => true)
end
end
# Checkout a socket for reading (i.e., a secondary node).
def checkout_reader
connect unless connected?
if @read_pool
@read_pool.checkout
else
checkout_writer
end
end
def sync_refresh
if @refresh_mode == :sync &&
((Time.now - @last_refresh) > @refresh_interval)
@last_refresh = Time.now
# Checkout a socket for writing (i.e., a primary node).
def checkout_writer
connect unless connected?
if @refresh_mutex.try_lock
begin
refresh
prune_managers
ensure
@refresh_mutex.unlock
end
end
@primary_pool.checkout
end
# Checkin a socket used for reading.
def checkin_reader(socket)
if @read_pool
@read_pool.checkin(socket)
else
checkin_writer(socket)
end
end
# Checkin a socket used for writing.
def checkin_writer(socket)
if @primary_pool
@primary_pool.checkin(socket)
end
end
end

View File

@ -58,48 +58,3 @@ class String
end
end
#:nodoc:
class Class
def mongo_thread_local_accessor name, options = {}
m = Module.new
m.module_eval do
class_variable_set :"@@#{name}", Hash.new {|h,k| h[k] = options[:default] }
end
m.module_eval %{
def #{name}
@@#{name}[Thread.current.object_id]
end
def #{name}=(val)
@@#{name}[Thread.current.object_id] = val
end
}
class_eval do
include m
extend m
end
end
end
# Fix a bug in the interaction of
# mutexes and timeouts in Ruby 1.9.
# See https://jira.mongodb.org/browse/RUBY-364 for details.
if RUBY_VERSION > '1.9'
class Mutex
def lock_with_hack
lock_without_hack
rescue ThreadError => e
if e.message != "deadlock; recursive locking"
raise
else
unlock
lock_without_hack
end
end
alias_method :lock_without_hack, :lock
alias_method :lock, :lock_with_hack
end
end

View File

@ -1,53 +0,0 @@
module Mongo
module Logging
def write_logging_startup_message
log(:debug, "Logging level is currently :debug which could negatively impact " +
"client-side performance. You should set your logging level no lower than " +
":info in production.")
end
# Log a message with the given level.
def log(level, msg)
return unless @logger
case level
when :fatal then
@logger.fatal "MONGODB [FATAL] #{msg}"
when :error then
@logger.error "MONGODB [ERROR] #{msg}"
when :warn then
@logger.warn "MONGODB [WARNING] #{msg}"
when :info then
@logger.info "MONGODB [INFO] #{msg}"
when :debug then
@logger.debug "MONGODB [DEBUG] #{msg}"
else
@logger.debug "MONGODB [DEBUG] #{msg}"
end
end
# Execute the block and log the operation described by name and payload.
def instrument(name, payload = {})
start_time = Time.now
res = yield
log_operation(name, payload, start_time)
res
end
protected
def log_operation(name, payload, start_time)
@logger && @logger.debug do
msg = "MONGODB "
msg << "(#{((Time.now - start_time) * 1000).to_i}ms) "
msg << "#{payload[:database]}['#{payload[:collection]}'].#{name}("
msg << payload.values_at(:selector, :document, :documents, :fields ).compact.map(&:inspect).join(', ') + ")"
msg << ".skip(#{payload[:skip]})" if payload[:skip]
msg << ".limit(#{payload[:limit]})" if payload[:limit]
msg << ".sort(#{payload[:order]})" if payload[:order]
msg
end
end
end
end

View File

@ -1,187 +0,0 @@
module Mongo
class Node
attr_accessor :host, :port, :address, :config, :connection, :socket,
:last_state
def initialize(connection, data)
@connection = connection
if data.is_a?(String)
@host, @port = split_nodes(data)
else
@host = data[0]
@port = data[1].nil? ? Connection::DEFAULT_PORT : data[1].to_i
end
@address = "#{host}:#{port}"
@config = nil
@socket = nil
end
def eql?(other)
other.is_a?(Node) && host == other.host && port == other.port
end
alias :== :eql?
def host_string
address
end
def inspect
"<Mongo::Node:0x#{self.object_id.to_s(16)} @host=#{@host} @port=#{@port}>"
end
# Create a connection to the provided node,
# and, if successful, return the socket. Otherwise,
# return nil.
def connect
begin
socket = nil
socket = @connection.socket_class.new(@host, @port,
@connection.op_timeout, @connection.connect_timeout
)
return nil if socket.nil?
rescue OperationTimeout, ConnectionFailure, OperationFailure, SocketError, SystemCallError, IOError => ex
@connection.log(:debug, "Failed connection to #{host_string} with #{ex.class}, #{ex.message}.")
socket.close if socket
return nil
end
@socket = socket
end
def close
if @socket && !@socket.closed?
@socket.close
end
@socket = nil
@config = nil
end
def connected?
@socket != nil
end
def active?
begin
result = @connection['admin'].command({:ping => 1}, :socket => @socket)
return result['ok'] == 1
rescue OperationFailure, SocketError, SystemCallError, IOError
return nil
end
end
# Get the configuration for the provided node as returned by the
# ismaster command. Additionally, check that the replica set name
# matches with the name provided.
def set_config
begin
@config = @connection['admin'].command({:ismaster => 1}, :socket => @socket)
if @config['msg'] && @logger
@connection.log(:warn, "#{config['msg']}")
end
check_set_membership(config)
check_set_name(config)
rescue ConnectionFailure, OperationFailure, OperationTimeout, SocketError, SystemCallError, IOError => ex
@connection.log(:warn, "Attempted connection to node #{host_string} raised " +
"#{ex.class}: #{ex.message}")
# Socket may already be nil from issuing command
if @socket && !@socket.closed?
@socket.close
end
return nil
end
@config
end
# Return a list of replica set nodes from the config.
# Note: this excludes arbiters.
def node_list
connect unless connected?
set_config unless @config
return [] unless config
nodes = []
nodes += config['hosts'] if config['hosts']
nodes += config['passives'] if config['passives']
nodes
end
def arbiters
connect unless connected?
set_config unless @config
return [] unless config['arbiters']
config['arbiters'].map do |arbiter|
split_nodes(arbiter)
end
end
def tags
connect unless connected?
set_config unless @config
return {} unless config['tags'] && !config['tags'].empty?
config['tags']
end
def primary?
@config['ismaster'] == true || @config['ismaster'] == 1
end
def secondary?
@config['secondary'] == true || @config['secondary'] == 1
end
def host_port
[@host, @port]
end
def hash
address.hash
end
private
def split_nodes(host_string)
data = host_string.split(":")
host = data[0]
port = data[1].nil? ? Connection::DEFAULT_PORT : data[1].to_i
[host, port]
end
# Ensure that this node is a healty member of a replica set.
def check_set_membership(config)
if !config['hosts']
message = "Will not connect to #{host_string} because it's not a member " +
"of a replica set."
raise ConnectionFailure, message
elsif config['hosts'].length == 1 && !config['ismaster'] &&
!config['secondary']
message = "Attempting to connect to an unhealthy, single-node replica set."
raise ConnectionFailure, message
end
end
# Ensure that this node is part of a replica set of the expected name.
def check_set_name(config)
if @connection.replica_set_name
if !config['setName']
@connection.log(:warn, "Could not verify replica set name for member #{host_string} " +
"because ismaster does not return name in this version of MongoDB")
elsif @connection.replica_set_name != config['setName']
message = "Attempting to connect to replica set '#{config['setName']}' on member #{host_string} " +
"but expected '#{@connection.replica_set_name}'"
raise ReplicaSetConnectionError, message
end
end
end
end
end

View File

@ -17,28 +17,19 @@
module Mongo
class Pool
PING_ATTEMPTS = 6
MAX_PING_TIME = 1_000_000
PRUNE_INTERVAL = 10_000
attr_accessor :host, :port, :address,
:size, :timeout, :safe, :checked_out, :connection
attr_accessor :host, :port, :size, :timeout, :safe, :checked_out
# Create a new pool of connections.
#
def initialize(connection, host, port, opts={})
@connection = connection
@host, @port = host, port
# A Mongo::Node object.
@node = opts[:node]
# The string address
@address = "#{@host}:#{@port}"
# Pool size and timeout.
@size = opts.fetch(:size, 20)
@timeout = opts.fetch(:timeout, 30)
@size = opts[:size] || 1
@timeout = opts[:timeout] || 5.0
# Mutex for synchronizing pool access
@connection_mutex = Mutex.new
@ -50,102 +41,28 @@ module Mongo
@socket_ops = Hash.new { |h, k| h[k] = [] }
@sockets = []
@pids = {}
@checked_out = []
@ping_time = nil
@last_ping = nil
@closed = false
@threads_to_sockets = {}
@checkout_counter = 0
end
# Close this pool.
#
# @option opts [Boolean] :soft (false) If true,
# close only those sockets that are not checked out.
def close(opts={})
@connection_mutex.synchronize do
if opts[:soft] && !@checked_out.empty?
@closing = true
close_sockets(@sockets - @checked_out)
else
close_sockets(@sockets)
@closed = true
def close
@sockets.each do |sock|
begin
sock.close
rescue IOError => ex
warn "IOError when attempting to close socket connected "
+ "to #{@host}:#{@port}: #{ex.inspect}"
end
end
end
def closed?
@closed
end
def inspect
"#<Mongo::Pool:0x#{self.object_id.to_s(16)} @host=#{@host} @port=#{port} " +
"@ping_time=#{@ping_time} #{@checked_out.size}/#{@size} sockets available.>"
end
def host_string
"#{@host}:#{@port}"
end
def host_port
[@host, @port]
end
# Refresh ping time only if we haven't
# checked within the last five minutes.
def ping_time
if !@last_ping
@last_ping = Time.now
@ping_time = refresh_ping_time
elsif Time.now - @last_ping > 300
@last_ping = Time.now
@ping_time = refresh_ping_time
else
@ping_time
end
end
# Return the time it takes on average
# to do a round-trip against this node.
def refresh_ping_time
trials = []
PING_ATTEMPTS.times do
t1 = Time.now
if !self.ping
return MAX_PING_TIME
end
trials << (Time.now - t1) * 1000
end
trials.sort!
# Delete shortest and longest times
trials.delete_at(trials.length-1)
trials.delete_at(0)
total = 0.0
trials.each { |t| total += t }
(total / trials.length).ceil
end
def ping
begin
return self.connection['admin'].command({:ping => 1}, :socket => @node.socket)
rescue OperationFailure, SocketError, SystemCallError, IOError
return false
end
@host = @port = nil
@sockets.clear
@checked_out.clear
end
# Return a socket to the pool.
def checkin(socket)
@connection_mutex.synchronize do
if @checked_out.delete(socket)
@queue.signal
else
return false
end
@checked_out.delete(socket)
@queue.signal
end
true
end
@ -156,12 +73,10 @@ module Mongo
# therefore, it runs within a mutex.
def checkout_new_socket
begin
socket = @connection.socket_class.new(@host, @port, @connection.op_timeout)
socket.pool = self
socket = TCPSocket.new(@host, @port)
socket.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1)
rescue => ex
socket.close if socket
raise ConnectionFailure, "Failed to connect to host #{@host} and port #{@port}: #{ex}"
@node.close if @node
end
# If any saved authentications exist, we want to apply those
@ -169,9 +84,7 @@ module Mongo
@connection.apply_saved_authentication(:socket => socket)
@sockets << socket
@pids[socket] = Process.pid
@checked_out << socket
@threads_to_sockets[Thread.current] = socket
socket
end
@ -203,36 +116,12 @@ module Mongo
# Checks out the first available socket from the pool.
#
# If the pid has changed, remove the socket and check out
# new one.
#
# This method is called exclusively from #checkout;
# therefore, it runs within a mutex.
def checkout_existing_socket(socket=nil)
if !socket
socket = (@sockets - @checked_out).first
end
if @pids[socket] != Process.pid
@pids[socket] = nil
@sockets.delete(socket)
if socket
socket.close unless socket.closed?
end
checkout_new_socket
else
@checked_out << socket
@threads_to_sockets[Thread.current] = socket
socket
end
end
def prune_thread_socket_hash
current_threads = Set[*Thread.list]
@threads_to_sockets.delete_if do |thread, socket|
!current_threads.include?(thread)
end
def checkout_existing_socket
socket = (@sockets - @checked_out).first
@checked_out << socket
socket
end
# Check out an existing socket or create a new socket if the maximum
@ -243,75 +132,38 @@ module Mongo
start_time = Time.now
loop do
if (Time.now - start_time) > @timeout
raise ConnectionTimeoutError, "could not obtain connection within " +
"#{@timeout} seconds. The max pool size is currently #{@size}; " +
"consider increasing the pool size or timeout."
raise ConnectionTimeoutError, "could not obtain connection within " +
"#{@timeout} seconds. The max pool size is currently #{@size}; " +
"consider increasing the pool size or timeout."
end
@connection_mutex.synchronize do
if @checkout_counter > PRUNE_INTERVAL
@checkout_counter = 0
prune_thread_socket_hash
else
@checkout_counter += 1
end
if socket_for_thread = @threads_to_sockets[Thread.current]
if !@checked_out.include?(socket_for_thread)
socket = checkout_existing_socket(socket_for_thread)
end
else # First checkout for this thread
thread_length = @threads_to_sockets.keys.length
if (thread_length <= @sockets.size) && (@sockets.size < @size)
socket = checkout_new_socket
elsif @checked_out.size < @sockets.size
socket = checkout_existing_socket
elsif @sockets.size < @size
socket = checkout_new_socket
end
end
socket = if @checked_out.size < @sockets.size
checkout_existing_socket
elsif @sockets.size < @size
checkout_new_socket
end
if socket
# This calls all procs, in order, scoped to existing sockets.
# At the moment, we use this to lazily authenticate and
# logout existing socket connections.
@socket_ops[socket].reject! do |op|
op.call
end
if socket.closed?
@checked_out.delete(socket)
@sockets.delete(socket)
@threads_to_sockets.each do |k,v|
if v == socket
@threads_to_sockets.delete(k)
end
end
socket = checkout_new_socket
end
# This calls all procs, in order, scoped to existing sockets.
# At the moment, we use this to lazily authenticate and
# logout existing socket connections.
@socket_ops[socket].reject! do |op|
op.call
end
return socket
else
# Otherwise, wait
if @logger
@logger.warn "MONGODB Waiting for available connection; " +
"#{@checked_out.size} of #{@size} connections checked out."
end
@queue.wait(@connection_mutex)
end
end
end
end
private
def close_sockets(sockets)
sockets.each do |socket|
@sockets.delete(socket)
begin
socket.close unless socket.closed?
rescue IOError => ex
warn "IOError when attempting to close socket connected to #{@host}:#{@port}: #{ex.inspect}"
end
end
end
end
end

View File

@ -1,305 +0,0 @@
module Mongo
class PoolManager
attr_reader :connection, :arbiters, :primary, :secondaries, :primary_pool,
:read_pool, :secondary_pool, :secondary_pools, :hosts, :nodes,
:max_bson_size, :tags_to_pools, :tag_map, :members
# Create a new set of connection pools.
#
# The pool manager will by default use the original seed list passed
# to the connection objects, accessible via connection.seeds. In addition,
# the user may pass an additional list of seeds nodes discovered in real
# time. The union of these lists will be used when attempting to connect,
# with the newly-discovered nodes being used first.
def initialize(connection, seeds=[])
@connection = connection
@original_seeds = connection.seeds
@seeds = seeds
@previously_connected = false
end
def inspect
"<Mongo::PoolManager:0x#{self.object_id.to_s(16)} @seeds=#{@seeds}>"
end
def connect
close if @previously_connected
initialize_data
members = connect_to_members
initialize_pools(members)
cache_discovered_seeds(members)
set_read_pool
set_tag_mappings
@members = members
@previously_connected = true
end
# We're healthy if all members are pingable and if the view
# of the replica set returned by isMaster is equivalent
# to our view. If any of these isn't the case,
# set @refresh_required to true, and return.
def check_connection_health
begin
seed = get_valid_seed_node
rescue ConnectionFailure
@refresh_required = true
return
end
config = seed.set_config
if !config
@refresh_required = true
seed.close
return
end
if config['hosts'].length != @members.length
@refresh_required = true
seed.close
return
end
config['hosts'].each do |host|
member = @members.detect do |m|
m.address == host
end
if member && validate_existing_member(member)
next
else
@refresh_required = true
seed.close
return false
end
end
seed.close
end
# The replica set connection should initiate a full refresh.
def refresh_required?
@refresh_required
end
def closed?
pools.all? { |pool| pool.closed? }
end
def close(opts={})
begin
if @primary_pool
@primary_pool.close(opts)
end
if @secondary_pools
@secondary_pools.each do |pool|
pool.close(opts)
end
end
if @members
@members.each do |member|
member.close
end
end
rescue ConnectionFailure
end
end
# The set of nodes that this class has discovered and
# successfully connected to.
def seeds
@seeds || []
end
private
def pools
[@primary_pool, *@secondary_pools]
end
def validate_existing_member(member)
config = member.set_config
if !config
return false
else
if member.primary?
if member.last_state == :primary
return true
else # This node is now primary, but didn't used to be.
return false
end
elsif member.last_state == :secondary &&
member.secondary?
return true
else # This node isn't what it used to be.
return false
end
end
end
def initialize_data
@primary = nil
@primary_pool = nil
@read_pool = nil
@arbiters = []
@secondaries = []
@secondary_pool = nil
@secondary_pools = []
@hosts = Set.new
@members = Set.new
@tags_to_pools = {}
@tag_map = {}
@refresh_required = false
end
# Connect to each member of the replica set
# as reported by the given seed node, and return
# as a list of Mongo::Node objects.
def connect_to_members
members = []
seed = get_valid_seed_node
seed.node_list.each do |host|
node = Mongo::Node.new(self.connection, host)
if node.connect && node.set_config
members << node
end
end
seed.close
if members.empty?
raise ConnectionFailure, "Failed to connect to any given member."
end
members
end
def associate_tags_with_pool(tags, pool)
tags.each_key do |key|
@tags_to_pools[{key => tags[key]}] ||= []
@tags_to_pools[{key => tags[key]}] << pool
end
end
# Initialize the connection pools for the primary and secondary nodes.
def initialize_pools(members)
members.each do |member|
@hosts << member.host_string
if member.primary?
assign_primary(member)
elsif member.secondary? && !@secondaries.include?(member.host_port)
assign_secondary(member)
end
end
@max_bson_size = members.first.config['maxBsonObjectSize'] ||
Mongo::DEFAULT_MAX_BSON_SIZE
@arbiters = members.first.arbiters
end
def assign_primary(member)
member.last_state = :primary
@primary = member.host_port
@primary_pool = Pool.new(self.connection, member.host, member.port,
:size => self.connection.pool_size,
:timeout => self.connection.pool_timeout,
:node => member)
associate_tags_with_pool(member.tags, @primary_pool)
end
def assign_secondary(member)
member.last_state = :secondary
@secondaries << member.host_port
pool = Pool.new(self.connection, member.host, member.port,
:size => self.connection.pool_size,
:timeout => self.connection.pool_timeout,
:node => member)
@secondary_pools << pool
associate_tags_with_pool(member.tags, pool)
end
# If there's more than one pool associated with
# a given tag, choose a close one using the bucket method.
def set_tag_mappings
@tags_to_pools.each do |key, pool_list|
if pool_list.length == 1
@tag_map[key] = pool_list.first
else
@tag_map[key] = nearby_pool_from_set(pool_list)
end
end
end
# Pick a node from the set of possible secondaries.
# If more than one node is available, use the ping
# time to figure out which nodes to choose from.
def set_read_pool
if @secondary_pools.empty?
@read_pool = @primary_pool
elsif @secondary_pools.size == 1
@read_pool = @secondary_pools[0]
@secondary_pool = @read_pool
else
@read_pool = nearby_pool_from_set(@secondary_pools)
@secondary_pool = @read_pool
end
end
def nearby_pool_from_set(pool_set)
ping_ranges = Array.new(3) { |i| Array.new }
pool_set.each do |pool|
case pool.ping_time
when 0..150
ping_ranges[0] << pool
when 150..1000
ping_ranges[1] << pool
else
ping_ranges[2] << pool
end
end
for list in ping_ranges do
break if !list.empty?
end
list[rand(list.length)]
end
# Iterate through the list of provided seed
# nodes until we've gotten a response from the
# replica set we're trying to connect to.
#
# If we don't get a response, raise an exception.
def get_valid_seed_node
seed_list.each do |seed|
node = Mongo::Node.new(self.connection, seed)
if !node.connect
next
elsif node.set_config
return node
else
node.close
end
end
raise ConnectionFailure, "Cannot connect to a replica set using seeds " +
"#{seed_list.map {|s| "#{s[0]}:#{s[1]}" }.join(', ')}"
end
def seed_list
@seeds | @original_seeds
end
def cache_discovered_seeds(members)
@seeds = members.map { |n| n.host_port }
end
end
end

View File

@ -1,63 +0,0 @@
require 'socket'
require 'openssl'
require 'timeout'
module Mongo
# A basic wrapper over Ruby's SSLSocket that initiates
# a TCP connection over SSL and then provides an basic interface
# mirroring Ruby's TCPSocket, vis., TCPSocket#send and TCPSocket#read.
class SSLSocket
attr_accessor :pool
def initialize(host, port, op_timeout=nil, connect_timeout=nil)
@op_timeout = op_timeout
@connect_timeout = connect_timeout
@socket = ::TCPSocket.new(host, port)
@socket.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1)
@ssl = OpenSSL::SSL::SSLSocket.new(@socket)
@ssl.sync_close = true
connect
end
def connect
if @connect_timeout
Timeout::timeout(@connect_timeout, ConnectionTimeoutError) do
@ssl.connect
end
else
@ssl.connect
end
end
def send(data)
@ssl.syswrite(data)
end
def read(length, buffer)
if @op_timeout
Timeout::timeout(@op_timeout, OperationTimeout) do
@ssl.sysread(length, buffer)
end
else
@ssl.sysread(length, buffer)
end
end
def setsockopt(key, value, n)
@ssl.setsockopt(key, value, n)
end
def close
@ssl.close
end
def closed?
@ssl.closed?
end
end
end

View File

@ -44,6 +44,7 @@ module Mongo
Digest::MD5.hexdigest("#{username}:mongo:#{plaintext}")
end
def validate_db_name(db_name)
unless [String, Symbol].include?(db_name.class)
raise TypeError, "db_name must be a string or symbol"
@ -58,15 +59,6 @@ module Mongo
db_name
end
def validate_read_preference(value)
if [:primary, :secondary, :secondary_only, nil].include?(value)
return true
else
raise MongoArgumentError, "#{value} is not a valid read preference. " +
"Please specify either :primary or :secondary or :secondary_only."
end
end
def format_order_clause(order)
case order
when String, Symbol then string_as_sort_parameters(order)

View File

@ -1,78 +0,0 @@
require 'socket'
require 'timeout'
module Mongo
# Wrapper class for Socket
#
# Emulates TCPSocket with operation and connection timeout
# sans Timeout::timeout
#
class TCPSocket
attr_accessor :pool
def initialize(host, port, op_timeout=nil, connect_timeout=nil)
@op_timeout = op_timeout
@connect_timeout = connect_timeout
# TODO: Prefer ipv6 if server is ipv6 enabled
@host = Socket.getaddrinfo(host, nil, Socket::AF_INET).first[3]
@port = port
@socket_address = Socket.pack_sockaddr_in(@port, @host)
@socket = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0)
@socket.setsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY, 1)
connect
end
def connect
if @connect_timeout
Timeout::timeout(@connect_timeout, OperationTimeout) do
@socket.connect(@socket_address)
end
else
@socket.connect(@socket_address)
end
end
def send(data)
@socket.write(data)
end
def read(maxlen, buffer)
# Block on data to read for @op_timeout seconds
begin
ready = IO.select([@socket], nil, [@socket], @op_timeout)
rescue IOError
raise OperationFailure
end
if ready
begin
@socket.sysread(maxlen, buffer)
rescue SystemCallError => ex
# Needed because sometimes JRUBY doesn't throw Errno::ECONNRESET as it should
# http://jira.codehaus.org/browse/JRUBY-6180
raise ConnectionFailure, ex
rescue Errno::ENOTCONN, Errno::EBADF, Errno::ECONNRESET, Errno::EPIPE, Errno::ETIMEDOUT, EOFError => ex
raise ConnectionFailure, ex
rescue Errno::EINTR, Errno::EIO, IOError => ex
raise OperationFailure, ex
end
else
raise OperationTimeout
end
end
def setsockopt(key, value, n)
@socket.setsockopt(key, value, n)
end
def close
@socket.close
end
def closed?
@socket.closed?
end
end
end

View File

@ -16,160 +16,75 @@
# limitations under the License.
# ++
require 'cgi'
module Mongo
class URIParser
USER_REGEX = /([-.\w:]+)/
PASS_REGEX = /([^@,]+)/
AUTH_REGEX = /(#{USER_REGEX}:#{PASS_REGEX}@)?/
HOST_REGEX = /([-.\w]+)/
PORT_REGEX = /(?::(\w+))?/
NODE_REGEX = /((#{HOST_REGEX}#{PORT_REGEX},?)+)/
PATH_REGEX = /(?:\/([-\w]+))?/
MONGODB_URI_MATCHER = /#{AUTH_REGEX}#{NODE_REGEX}#{PATH_REGEX}/
MONGODB_URI_SPEC = "mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/[database][?options]]"
DEFAULT_PORT = 27017
MONGODB_URI_MATCHER = /(([-_.\w\d]+):([^@]+)@)?([-.\w\d]+)(:([\w\d]+))?(\/([-\d\w]+))?/
MONGODB_URI_SPEC = "mongodb://[username:password@]host1[:port1][,host2[:port2],...[,hostN[:portN]]][/database]"
SPEC_ATTRS = [:nodes, :auths]
OPT_ATTRS = [:connect, :replicaset, :slaveok, :safe, :w, :wtimeout, :fsync, :journal, :connecttimeoutms, :sockettimeoutms, :wtimeoutms]
OPT_ATTRS = [:connect, :replicaset, :slaveok, :safe, :w, :wtimeout, :fsync]
OPT_VALID = {:connect => lambda {|arg| ['direct', 'replicaset', 'true', 'false', true, false].include?(arg)},
:replicaset => lambda {|arg| arg.length > 0},
:slaveok => lambda {|arg| ['true', 'false'].include?(arg)},
:safe => lambda {|arg| ['true', 'false'].include?(arg)},
:w => lambda {|arg| arg =~ /^\d+$/ },
:wtimeout => lambda {|arg| arg =~ /^\d+$/ },
:fsync => lambda {|arg| ['true', 'false'].include?(arg)},
:journal => lambda {|arg| ['true', 'false'].include?(arg)},
:connecttimeoutms => lambda {|arg| arg =~ /^\d+$/ },
:sockettimeoutms => lambda {|arg| arg =~ /^\d+$/ },
:wtimeoutms => lambda {|arg| arg =~ /^\d+$/ }
OPT_VALID = {:connect => lambda {|arg| ['direct', 'replicaset'].include?(arg)},
:replicaset => lambda {|arg| arg.length > 0},
:slaveok => lambda {|arg| ['true', 'false'].include?(arg)},
:safe => lambda {|arg| ['true', 'false'].include?(arg)},
:w => lambda {|arg| arg =~ /^\d+$/ },
:wtimeout => lambda {|arg| arg =~ /^\d+$/ },
:fsync => lambda {|arg| ['true', 'false'].include?(arg)}
}
OPT_ERR = {:connect => "must be 'direct', 'replicaset', 'true', or 'false'",
:replicaset => "must be a string containing the name of the replica set to connect to",
:slaveok => "must be 'true' or 'false'",
:safe => "must be 'true' or 'false'",
:w => "must be an integer specifying number of nodes to replica to",
:wtimeout => "must be an integer specifying milliseconds",
:fsync => "must be 'true' or 'false'",
:journal => "must be 'true' or 'false'",
:connecttimeoutms => "must be an integer specifying milliseconds",
:sockettimeoutms => "must be an integer specifying milliseconds",
:wtimeoutms => "must be an integer specifying milliseconds"
OPT_ERR = {:connect => "must be 'direct' or 'replicaset'",
:replicaset => "must be a string containing the name of the replica set to connect to",
:slaveok => "must be 'true' or 'false'",
:safe => "must be 'true' or 'false'",
:w => "must be an integer specifying number of nodes to replica to",
:wtimeout => "must be an integer specifying milliseconds",
:fsync => "must be 'true' or 'false'"
}
OPT_CONV = {:connect => lambda {|arg| arg == 'false' ? false : arg}, # be sure to convert 'false' to FalseClass
:replicaset => lambda {|arg| arg},
:slaveok => lambda {|arg| arg == 'true' ? true : false},
:safe => lambda {|arg| arg == 'true' ? true : false},
:w => lambda {|arg| arg.to_i},
:wtimeout => lambda {|arg| arg.to_i},
:fsync => lambda {|arg| arg == 'true' ? true : false},
:journal => lambda {|arg| arg == 'true' ? true : false},
:connecttimeoutms => lambda {|arg| arg.to_f / 1000 }, # stored as seconds
:sockettimeoutms => lambda {|arg| arg.to_f / 1000 }, # stored as seconds
:wtimeoutms => lambda {|arg| arg.to_i }
OPT_CONV = {:connect => lambda {|arg| arg},
:replicaset => lambda {|arg| arg},
:slaveok => lambda {|arg| arg == 'true' ? true : false},
:safe => lambda {|arg| arg == 'true' ? true : false},
:w => lambda {|arg| arg.to_i},
:wtimeout => lambda {|arg| arg.to_i},
:fsync => lambda {|arg| arg == 'true' ? true : false}
}
attr_reader :nodes, :auths, :connect, :replicaset, :slaveok, :safe, :w, :wtimeout, :fsync, :journal, :connecttimeoutms, :sockettimeoutms, :wtimeoutms
attr_reader :nodes, :auths, :connect, :replicaset, :slaveok, :safe, :w, :wtimeout, :fsync
# Parse a MongoDB URI. This method is used by Connection.from_uri.
# Returns an array of nodes and an array of db authorizations, if applicable.
#
# @note Passwords can contain any character except for ','
#
# @param [String] uri The MongoDB URI string.
# @param [Hash,nil] extra_opts Extra options. Will override anything already specified in the URI.
# Note: passwords can contain any character except for a ','.
#
# @core connections
def initialize(uri, extra_opts={})
if uri.start_with?('mongodb://')
uri = uri[10..-1]
def initialize(string)
if string =~ /^mongodb:\/\//
string = string[10..-1]
else
raise MongoArgumentError, "MongoDB URI must match this spec: #{MONGODB_URI_SPEC}"
end
hosts, opts = uri.split('?')
hosts, opts = string.split('?')
parse_hosts(hosts)
parse_options(opts, extra_opts)
validate_connect
parse_options(opts)
configure_connect
end
# Create a Mongo::Connection or a Mongo::ReplSetConnection based on the URI.
#
# @note Don't confuse this with attribute getter method #connect.
#
# @return [Connection,ReplSetConnection]
def connection
if replicaset?
ReplSetConnection.new(*(nodes+[connection_options]))
else
Connection.new(host, port, connection_options)
end
end
# Whether this represents a replica set.
# @return [true,false]
def replicaset?
replicaset.is_a?(String) || nodes.length > 1
end
# Whether to immediately connect to the MongoDB node[s]. Defaults to true.
# @return [true, false]
def connect?
connect != false
end
# Whether this represents a direct connection.
#
# @note Specifying :connect => 'direct' has no effect... other than to raise an exception if other variables suggest a replicaset.
#
# @return [true,false]
def direct?
!replicaset?
end
# For direct connections, the host of the (only) node.
# @return [String]
def host
nodes[0][0]
end
# For direct connections, the port of the (only) node.
# @return [Integer]
def port
nodes[0][1].to_i
end
# Options that can be passed to Mongo::Connection.new or Mongo::ReplSetConnection.new
# @return [Hash]
def connection_options
opts = {}
if (@w || @journal || @wtimeout || @fsync || @wtimeoutms) && !@safe
raise MongoArgumentError, "Safe must be true if w, journal, wtimeoutMS, or fsync is specified"
if (@w || @wtimeout || @fsync) && !@safe
raise MongoArgumentError, "Safe must be true if w, wtimeout, or fsync is specified"
end
if @safe
if @w || @journal || @wtimeout || @fsync || @wtimeoutms
if @w || @wtimeout || @fsync
safe_opts = {}
safe_opts[:w] = @w if @w
safe_opts[:j] = @journal if @journal
if @wtimeout
warn "Using wtimeout in a URI is deprecated, please use wtimeoutMS. It will be removed in v2.0."
safe_opts[:wtimeout] = @wtimeout
end
if @wtimeoutms
safe_opts[:wtimeout] = @wtimeoutms
end
safe_opts[:wtimeout] = @wtimeout if @wtimeout
safe_opts[:fsync] = @fsync if @fsync
else
safe_opts = true
@ -178,118 +93,88 @@ module Mongo
opts[:safe] = safe_opts
end
if @connecttimeoutms
opts[:connect_timeout] = @connecttimeoutms
end
if @sockettimeoutms
opts[:op_timeout] = @sockettimeoutms
end
if @slaveok
if direct?
if @connect == 'direct'
opts[:slave_ok] = true
else
opts[:read] = :secondary
opts[:read_secondary] = true
end
end
if direct?
opts[:auths] = auths
end
if replicaset.is_a?(String)
opts[:name] = replicaset
end
opts[:connect] = connect?
opts[:rs_name] = @replicaset if @replicaset
opts
end
private
def parse_hosts(uri_without_proto)
def parse_hosts(hosts)
@nodes = []
@auths = []
specs = hosts.split(',')
specs.each do |spec|
matches = MONGODB_URI_MATCHER.match(spec)
if !matches
raise MongoArgumentError, "MongoDB URI must match this spec: #{MONGODB_URI_SPEC}"
end
matches = MONGODB_URI_MATCHER.match(uri_without_proto)
if !matches
raise MongoArgumentError, "MongoDB URI must match this spec: #{MONGODB_URI_SPEC}"
end
uname = matches[2]
pwd = matches[3]
hosturis = matches[4].split(',')
db = matches[8]
hosturis.each do |hosturi|
# If port is present, use it, otherwise use default port
host, port = hosturi.split(':') + [Connection::DEFAULT_PORT]
uname = matches[2]
pwd = matches[3]
host = matches[4]
port = matches[6] || DEFAULT_PORT
if !(port.to_s =~ /^\d+$/)
raise MongoArgumentError, "Invalid port #{port}; port must be specified as digits."
end
port = port.to_i
db = matches[8]
port = port.to_i
if uname && pwd && db
auths << {'db_name' => db, 'username' => uname, 'password' => pwd}
elsif uname || pwd || db
raise MongoArgumentError, "MongoDB URI must include all three of username, password, " +
"and db if any one of these is specified."
end
@nodes << [host, port]
end
if @nodes.empty?
raise MongoArgumentError, "No nodes specified. Please ensure that you've provided at least one node."
end
if uname && pwd && db
auths << {'db_name' => db, 'username' => uname, 'password' => pwd}
elsif uname || pwd
raise MongoArgumentError, "MongoDB URI must include username, password, "
"and db if username and password are specified."
end
# The auths are repeated for each host in a replica set
@auths *= hosturis.length
end
# This method uses the lambdas defined in OPT_VALID and OPT_CONV to validate
# and convert the given options.
def parse_options(string_opts, extra_opts={})
# initialize instance variables for available options
OPT_VALID.keys.each { |k| instance_variable_set("@#{k}", nil) }
string_opts ||= ''
return if string_opts.empty? && extra_opts.empty?
if string_opts.include?(';') and string_opts.include?('&')
raise MongoArgumentError, "must not mix URL separators ; and &"
end
opts = CGI.parse(string_opts).inject({}) do |memo, (key, value)|
value = value.first
memo[key.downcase.to_sym] = value.strip.downcase
memo
end
opts.merge! extra_opts
opts.each do |key, value|
def parse_options(opts)
return unless opts
separator = opts.include?('&') ? '&' : ';'
opts.split(separator).each do |attr|
key, value = attr.split('=')
key = key.to_sym
value = value.strip.downcase
if !OPT_ATTRS.include?(key)
raise MongoArgumentError, "Invalid Mongo URI option #{key}"
end
if OPT_VALID[key].call(value)
instance_variable_set("@#{key}", OPT_CONV[key].call(value))
else
raise MongoArgumentError, "Invalid value #{value.inspect} for #{key}: #{OPT_ERR[key]}"
raise MongoArgumentError, "Invalid value for #{key}: #{OPT_ERR[key]}"
end
end
end
def validate_connect
if replicaset? and @connect == 'direct'
# Make sure the user doesn't specify something contradictory
raise MongoArgumentError, "connect=direct conflicts with setting a replicaset name"
def configure_connect
if @nodes.length > 1 && !@connect
@connect = 'replicaset'
end
if !@connect
if @nodes.length > 1
@connect = 'replicaset'
else
@connect = 'direct'
end
end
if @connect == 'direct' && @replicaset
raise MongoArgumentError, "If specifying a replica set name, please also specify that connect=replicaset"
end
end
end

View File

@ -1,3 +0,0 @@
module Mongo
VERSION = "1.6.2"
end

View File

@ -1,4 +1,4 @@
require File.expand_path('../lib/mongo/version', __FILE__)
require "./lib/mongo"
Gem::Specification.new do |s|
s.name = 'mongo'
@ -6,7 +6,7 @@ Gem::Specification.new do |s|
s.version = Mongo::VERSION
s.platform = Gem::Platform::RUBY
s.summary = 'Ruby driver for MongoDB'
s.summary = 'Ruby driver for the MongoDB'
s.description = 'A Ruby driver for MongoDB. For more information about Mongo, see http://www.mongodb.org.'
s.require_paths = ['lib']
@ -26,9 +26,9 @@ Gem::Specification.new do |s|
s.rdoc_options = ['--main', 'README.md', '--inline-source']
s.extra_rdoc_files = ['README.md']
s.authors = ['Jim Menard', 'Mike Dirolf', 'Kyle Banker', 'Tyler Brock']
s.authors = ['Jim Menard', 'Mike Dirolf', 'Kyle Banker']
s.email = 'mongodb-dev@googlegroups.com'
s.homepage = 'http://www.mongodb.org'
s.add_dependency('bson', "~> #{Mongo::VERSION}")
s.add_dependency(%q<bson>, [">= #{Mongo::VERSION}"])
end

View File

@ -1,7 +1,7 @@
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require 'mongo'
require 'test/unit'
require File.expand_path("../../test_helper", __FILE__)
require './test/test_helper'
# Demonstrate features in MongoDB 1.4
class Features14Test < Test::Unit::TestCase

View File

@ -1,7 +1,7 @@
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require 'mongo'
require 'test/unit'
require File.expand_path("../../test_helper", __FILE__)
require './test/test_helper'
# NOTE: This test requires bouncing the server.
# It also requires that a user exists on the admin database.
@ -26,7 +26,6 @@ class AuthenticationTest < Test::Unit::TestCase
@admin.authenticate('bob', 'secret')
@db1.add_user('user1', 'secret')
@db2.add_user('user2', 'secret')
@db2.add_user('userRO', 'secret', true) # read-only
@admin.logout
assert_raise Mongo::OperationFailure do
@ -54,7 +53,6 @@ class AuthenticationTest < Test::Unit::TestCase
assert @db1['stuff'].insert({:a => 2}, :safe => true)
assert @db2['stuff'].insert({:a => 2}, :safe => true)
assert @db2['stuff'].find(:safe => true)
@db1.logout
assert_raise Mongo::OperationFailure do
@ -65,12 +63,6 @@ class AuthenticationTest < Test::Unit::TestCase
assert_raise Mongo::OperationFailure do
assert @db2['stuff'].insert({:a => 2}, :safe => true)
end
@db2.authenticate('userRO', 'secret')
assert @db2['stuff'].find(:safe => true)
assert_raise Mongo::OperationFailure do
assert @db2['stuff'].insert({:a => 2}, :safe => true)
end
end
end

View File

@ -1,7 +1,7 @@
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require 'mongo'
require 'test/unit'
require File.expand_path("../../test_helper", __FILE__)
require './test/test_helper'
# NOTE: This test requires bouncing the server
class AutoreconnectTest < Test::Unit::TestCase

View File

@ -1,30 +0,0 @@
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require 'mongo'
require 'test/unit'
require File.expand_path("../../test_helper", __FILE__)
class ForkTest < Test::Unit::TestCase
include Mongo
def setup
@conn = standard_connection
end
def test_fork
# Now insert some data
10.times do |n|
@conn[MONGO_TEST_DB]['nums'].insert({:a => n})
end
# Now fork. You'll almost always see an exception here.
if !Kernel.fork
10.times do
assert @conn[MONGO_TEST_DB]['nums'].find_one
end
else
10.times do
assert @conn[MONGO_TEST_DB]['nums'].find_one
end
end
end
end

View File

@ -1,22 +1,22 @@
$:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require File.expand_path("../../test_helper", __FILE__)
require './test/test_helper'
require './test/tools/auth_repl_set_manager'
require './test/replica_sets/rs_test_helper'
class AuthTest < Test::Unit::TestCase
include Mongo
def setup
@rs = AuthReplSetManager.new(:start_port => 40000)
@rs.start_set
@manager = AuthReplSetManager.new(:start_port => 40000)
@manager.start_set
end
def teardown
#@rs.cleanup_set
@manager.cleanup_set
end
def test_repl_set_auth
@conn = ReplSetConnection.new(build_seeds(3), :name => @rs.name)
@conn = ReplSetConnection.new([@manager.host, @manager.ports[0]], [@manager.host, @manager.ports[1]],
[@manager.host, @manager.ports[2]], :name => @manager.name)
# Add an admin user
@conn['admin'].add_user("me", "secret")
@ -52,20 +52,7 @@ class AuthTest < Test::Unit::TestCase
end
# But not when authenticated
assert @slave1['admin'].authenticate("me", "secret")
@slave1['admin'].authenticate("me", "secret")
assert @slave1['foo']['stuff'].find_one
# Same should apply when using :secondary_only
@second_only = ReplSetConnection.new(build_seeds(3),
:require_primary => false, :read => :secondary_only)
# Find should fail
assert_raise_error Mongo::OperationFailure, "unauthorized" do
@second_only['foo']['stuff'].find_one
end
# But not when authenticated
assert @second_only['admin'].authenticate("me", "secret")
assert @second_only['foo']['stuff'].find_one
end
end

View File

@ -1,4 +1,4 @@
require File.expand_path("../../test_helper", __FILE__)
require './test/test_helper'
# NOTE: these tests are run only if we can connect to a single MongoDB in slave mode.
class SlaveConnectionTest < Test::Unit::TestCase

View File

@ -2,7 +2,7 @@ $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
require 'mongo'
require 'thread'
require 'test/unit'
require File.expand_path("../../test_helper", __FILE__)
require './test/test_helper'
# NOTE: This test requires bouncing the server.
# It also requires that a user exists on the admin database.

View File

@ -1,13 +1,15 @@
# encoding:utf-8
require File.expand_path("../test_helper", __FILE__)
require './test/test_helper'
class BinaryTest < Test::Unit::TestCase
def setup
@data = ("THIS IS BINARY " * 50).unpack("c*")
end
context "Inspecting" do
setup do
@data = ("THIS IS BINARY " * 50).unpack("c*")
end
def test_do_not_display_binary_data
binary = BSON::Binary.new(@data)
assert_equal "<BSON::Binary:#{binary.object_id}>", binary.inspect
should "not display actual data" do
binary = BSON::Binary.new(@data)
assert_equal "<BSON::Binary:#{binary.object_id}>", binary.inspect
end
end
end

View File

@ -1,23 +1,15 @@
# encoding:utf-8
require File.expand_path("../test_helper", __FILE__)
require 'set'
if RUBY_VERSION < '1.9'
silently do
require 'complex'
require 'rational'
end
end
require './test/test_helper'
require 'complex'
require 'bigdecimal'
require 'rational'
begin
require 'date'
require 'tzinfo'
require 'active_support/timezone'
require 'active_support/core_ext'
Time.zone = "Pacific Time (US & Canada)"
Zone = Time.zone.now
rescue LoadError
#warn 'Mocking time with zone'
warn 'Mocking time with zone'
module ActiveSupport
class TimeWithZone
def initialize(utc_time, zone)
@ -76,21 +68,23 @@ class BSONTest < Test::Unit::TestCase
end
def test_limit_max_bson_size
doc = {'name' => 'a' * BSON::DEFAULT_MAX_BSON_SIZE}
doc = {'name' => 'a' * BSON_CODER.max_bson_size}
assert_raise InvalidDocument do
assert @encoder.serialize(doc)
end
end
def test_max_bson_size
assert BSON_CODER.max_bson_size >= BSON::DEFAULT_MAX_BSON_SIZE
end
def test_update_max_bson_size
require 'ostruct'
mock_conn = OpenStruct.new
size = 7 * 1024 * 1024
mock_conn.max_bson_size = size
silently do
assert_equal size, BSON_CODER.update_max_bson_size(mock_conn)
assert_equal size, BSON_CODER.max_bson_size
end
assert_equal size, BSON_CODER.update_max_bson_size(mock_conn)
assert_equal size, BSON_CODER.max_bson_size
end
def test_round_trip
@ -122,30 +116,15 @@ class BSONTest < Test::Unit::TestCase
end
else
def test_non_utf8_string
assert_raise BSON::InvalidStringEncoding do
BSON::BSON_CODER.serialize({'str' => 'aé'.encode('iso-8859-1')})
end
end
def test_invalid_utf8_string
str = "123\xD9"
assert !str.valid_encoding?
assert_raise BSON::InvalidStringEncoding do
BSON::BSON_CODER.serialize({'str' => str})
end
bson = BSON::BSON_CODER.serialize({'str' => 'aé'.encode('iso-8859-1')})
result = BSON::BSON_CODER.deserialize(bson)['str']
assert_equal 'aé', result
assert_equal 'UTF-8', result.encoding.name
end
def test_non_utf8_key
assert_raise BSON::InvalidStringEncoding do
BSON::BSON_CODER.serialize({'aé'.encode('iso-8859-1') => 'hello'})
end
end
def test_forced_encoding_with_valid_utf8
doc = {'doc' => "\xC3\xB6".force_encoding("ISO-8859-1")}
serialized = @encoder.serialize(doc)
deserialized = @encoder.deserialize(serialized)
assert_equal(doc['doc'], deserialized['doc'].force_encoding("ISO-8859-1"))
bson = BSON::BSON_CODER.serialize({'aé'.encode('iso-8859-1') => 'hello'})
assert_equal 'hello', BSON::BSON_CODER.deserialize(bson)['aé']
end
# Based on a test from sqlite3-ruby
@ -155,14 +134,14 @@ class BSONTest < Test::Unit::TestCase
str = "壁に耳あり、障子に目あり"
bson = BSON::BSON_CODER.serialize("x" => str)
silently { Encoding.default_internal = 'EUC-JP' }
Encoding.default_internal = 'EUC-JP'
out = BSON::BSON_CODER.deserialize(bson)["x"]
assert_equal Encoding.default_internal, out.encoding
assert_equal str.encode('EUC-JP'), out
assert_equal str, out.encode(str.encoding)
ensure
silently { Encoding.default_internal = before_enc }
Encoding.default_internal = before_enc
end
end
@ -182,12 +161,12 @@ class BSONTest < Test::Unit::TestCase
assert_doc_pass(doc)
end
def test_double
doc = {'doc' => 41.25}
assert_doc_pass(doc)
end
def test_double
doc = {'doc' => 41.25}
assert_doc_pass(doc)
end
def test_int
def test_int
doc = {'doc' => 42}
assert_doc_pass(doc)
@ -224,10 +203,10 @@ class BSONTest < Test::Unit::TestCase
doc = {'doc' => {'age' => 42, 'date' => Time.now.utc, 'shoe_size' => 9.5}}
bson = @encoder.serialize(doc)
doc2 = @encoder.deserialize(bson)
assert doc2['doc']
assert_equal 42, doc2['doc']['age']
assert_equal 9.5, doc2['doc']['shoe_size']
assert_in_delta Time.now, doc2['doc']['date'], 1
assert doc['doc']
assert_equal 42, doc['doc']['age']
assert_equal 9.5, doc['doc']['shoe_size']
assert_in_delta Time.now, doc['doc']['date'], 1
end
def test_oid
@ -254,11 +233,6 @@ class BSONTest < Test::Unit::TestCase
assert_doc_pass(doc)
end
def test_regex_multiline
doc = {'doc' => /foobar/m}
assert_doc_pass(doc)
end
def test_boolean
doc = {'doc' => true}
assert_doc_pass(doc)
@ -272,22 +246,14 @@ class BSONTest < Test::Unit::TestCase
assert_in_delta doc['date'], doc2['date'], 0.001
end
def test_date_in_array
doc = {'date' => [Time.now.utc]}
bson = @encoder.serialize(doc)
doc2 = @encoder.deserialize(bson)
assert doc2
end
def test_date_returns_as_utc
doc = {'date' => Time.now.utc}
doc = {'date' => Time.now}
bson = @encoder.serialize(doc)
doc2 = @encoder.deserialize(bson)
assert doc2['date'].utc?
end
def test_date_before_epoch
if RbConfig::CONFIG['host_os'] =~ /mswin|mingw|cygwin/ then return true end
begin
doc = {'date' => Time.utc(1600)}
bson = @encoder.serialize(doc)
@ -306,12 +272,12 @@ class BSONTest < Test::Unit::TestCase
[DateTime.now, Date.today, Zone].each do |invalid_date|
doc = {:date => invalid_date}
begin
BSON::BSON_CODER.serialize(doc)
bson = BSON::BSON_CODER.serialize(doc)
rescue => e
ensure
if !invalid_date.is_a? Time
assert_equal InvalidDocument, e.class
assert_match(/UTC Time/, e.message)
assert_match /UTC Time/, e.message
end
end
end
@ -345,20 +311,6 @@ class BSONTest < Test::Unit::TestCase
bin = Binary.new
'binstring'.each_byte { |b| bin.put(b) }
doc = {'bin' => bin}
bson = @encoder.serialize(doc)
doc2 = @encoder.deserialize(bson)
bin2 = doc2['bin']
assert_kind_of Binary, bin2
assert_equal 'binstring', bin2.to_s
assert_equal Binary::SUBTYPE_SIMPLE, bin2.subtype
end
def test_binary_with_deprecated_subtype
bin = Binary.new
'binstring'.each_byte { |b| bin.put(b) }
bin.subtype = Binary::SUBTYPE_BYTES
doc = {'bin' => bin}
bson = @encoder.serialize(doc)
doc2 = @encoder.deserialize(bson)
@ -376,7 +328,7 @@ class BSONTest < Test::Unit::TestCase
bin2 = doc2['bin']
assert_kind_of Binary, bin2
assert_equal 'somebinarystring', bin2.to_s
assert_equal Binary::SUBTYPE_SIMPLE, bin2.subtype
assert_equal Binary::SUBTYPE_BYTES, bin2.subtype
end
def test_binary_type
@ -416,7 +368,7 @@ class BSONTest < Test::Unit::TestCase
bin2 = doc2['bin']
assert_kind_of Binary, bin2
assert_equal [1, 2, 3, 4, 5], bin2.to_a
assert_equal Binary::SUBTYPE_SIMPLE, bin2.subtype
assert_equal Binary::SUBTYPE_BYTES, bin2.subtype
end
def test_put_id_first
@ -440,31 +392,20 @@ class BSONTest < Test::Unit::TestCase
if !(RUBY_PLATFORM =~ /java/)
def test_timestamp
# val = {"test" => [4, 20]}
result = @encoder.deserialize([0x13, 0x00, 0x00, 0x00,
0x11, 0x74, 0x65, 0x73,
0x74, 0x00, 0x04, 0x00,
0x00, 0x00, 0x14, 0x00,
0x00, 0x00, 0x00])
val = {"test" => [4, 20]}
assert_equal val, @encoder.deserialize([0x13, 0x00, 0x00, 0x00,
0x11, 0x74, 0x65, 0x73,
0x74, 0x00, 0x04, 0x00,
0x00, 0x00, 0x14, 0x00,
0x00, 0x00, 0x00])
silently do
assert_equal 4, result["test"][0]
assert_equal 20, result["test"][1]
end
end
end
def test_timestamp_type
ts = Timestamp.new(5000, 100)
doc = {:ts => ts}
bson = @encoder.serialize(doc)
assert_equal ts, @encoder.deserialize(bson)["ts"]
end
def test_overflow
doc = {"x" => 2**75}
assert_raise RangeError do
@encoder.serialize(doc)
bson = @encoder.serialize(doc)
end
doc = {"x" => 9223372036854775}
@ -475,7 +416,7 @@ class BSONTest < Test::Unit::TestCase
doc["x"] = doc["x"] + 1
assert_raise RangeError do
@encoder.serialize(doc)
bson = @encoder.serialize(doc)
end
doc = {"x" => -9223372036854775}
@ -486,7 +427,7 @@ class BSONTest < Test::Unit::TestCase
doc["x"] = doc["x"] - 1
assert_raise RangeError do
BSON::BSON_CODER.serialize(doc)
bson = BSON::BSON_CODER.serialize(doc)
end
end
@ -498,7 +439,7 @@ class BSONTest < Test::Unit::TestCase
rescue => e
ensure
assert_equal InvalidDocument, e.class
assert_match(/Cannot serialize/, e.message)
assert_match /Cannot serialize/, e.message
end
end
end
@ -538,7 +479,7 @@ class BSONTest < Test::Unit::TestCase
#one = {"_foo" => "foo"}
#assert_equal @encoder.serialize(one).to_a, @encoder.serialize(dup).to_a
#warn "Pending test for duplicate keys"
warn "Pending test for duplicate keys"
end
def test_no_duplicate_id_when_moving_id
@ -632,7 +573,7 @@ class BSONTest < Test::Unit::TestCase
@encoder.serialize({"he\0llo" => "world"}, true)
end
assert_raise BSON::InvalidKeyName do
assert_raise_error BSON::InvalidKeyName, "$hello" do
@encoder.serialize({"$hello" => "world"}, true)
end
@ -640,7 +581,7 @@ class BSONTest < Test::Unit::TestCase
@encoder.serialize({"hello" => {"$hello" => "world"}}, true)
end
assert_raise BSON::InvalidKeyName do
assert_raise_error BSON::InvalidKeyName, ".hello" do
@encoder.serialize({".hello" => "world"}, true)
end

View File

@ -1,5 +1,5 @@
# encoding: binary
require File.expand_path("../test_helper", __FILE__)
require './test/test_helper'
class ByteBufferTest < Test::Unit::TestCase
include BSON
@ -21,13 +21,6 @@ class ByteBufferTest < Test::Unit::TestCase
assert_equal 1, @buf.get
end
def test_unpack
@buf.put_array([17, 2, 3, 4])
assert_equal [17, 2, 3, 4], @buf.to_a
assert_equal ["11020304"], @buf.unpack("H*")
assert_equal ["11020304"], @buf.to_a("H*")
end
def test_one_get_returns_array_length_one
@buf.put_array([1, 2, 3, 4])
@buf.rewind
@ -194,15 +187,4 @@ class ByteBufferTest < Test::Unit::TestCase
assert !@buf.more?
end
def test_equality
@buf = ByteBuffer.new("foo")
assert_equal @buf, @buf
assert_equal ByteBuffer.new(""), ByteBuffer.new("")
assert_equal ByteBuffer.new("123"), ByteBuffer.new("123")
assert_not_equal ByteBuffer.new("123"), ByteBuffer.new("1234")
assert_equal @buf, "foo"
assert_not_equal @buf, 123
assert_not_equal @buf, nil
end
end

View File

@ -1,5 +1,5 @@
# encoding:utf-8
require File.expand_path("../test_helper", __FILE__)
require './test/test_helper'
require './test/support/hash_with_indifferent_access'
class HashWithIndifferentAccessTest < Test::Unit::TestCase

Some files were not shown because too many files have changed in this diff Show More