Sears Russell
090124e3fe
add read-only mode to sequentialThroughput benchmark, add timing data to its output
2011-08-19 22:15:38 +00:00
Sears Russell
b271eefaa4
remove write lock which is no longer required by buffer manager API
2011-07-15 16:28:50 +00:00
Sears Russell
a89c09d87c
moved in-memory data structures and hash functions to util/
2011-06-13 10:19:44 +00:00
Sears Russell
87d4563ab5
move compression and latchFree page formats to experimental/
2011-06-13 08:02:20 +00:00
Sears Russell
377788a13e
move a bunch of multiplexer and lsm related stuff into experimental/ directory
2011-06-13 06:58:34 +00:00
Sears Russell
801fb6de26
bugfixes and optimizations for the new log format; log preallocation and truncation utilities
2011-05-14 03:49:38 +00:00
Sears Russell
ad2b6a62ae
fix bug where filePool was not syncing to disk, update log related benchmarks; add tweak to ringbuffer to prevent extremely high contention from breaking group commit.
2011-04-19 20:54:11 +00:00
Sears Russell
0a461faa04
add "raid1" a simple mirroring I/O handle implementation
2010-12-03 03:51:24 +00:00
Sears Russell
c7e07c5c5d
cleaned up initialization code for stasis handles; it is no longer possible to instantiate the (long broken) non-blocking handle implementation
2010-12-03 02:18:56 +00:00
Sears Russell
a7f71d6dbf
add convenience macros to latency profiler; turn on pread/pwrite profiling by default
2010-11-30 18:33:22 +00:00
Sears Russell
d8634edb3d
add --target-ops option for the bufferManager benchmark.
2010-11-29 19:17:13 +00:00
Sears Russell
2ee81c62c4
add redblack tree memory overhead benchmark
2010-11-24 20:35:02 +00:00
Sears Russell
18984c7b44
initial checkin of latency profiler
2010-09-30 19:28:42 +00:00
Sears Russell
a3e7fc0fe2
add hint: stasis_buffer_manager_hint_writes_are_sequential. if set to 1, then only one thread will write back at a time, which leads to greatly improved sequential write throughput
2010-09-23 23:09:43 +00:00
Sears Russell
9ffc06c824
fix compilation on old boxes
2010-09-23 22:48:23 +00:00
Sears Russell
1048109ab8
initial checkin of buffer manager benchmark
2010-09-23 17:47:06 +00:00
Sears Russell
3b8679d09b
call loadUninitializedPage in sequential throughput benchmark
2010-08-27 19:43:33 +00:00
Sears Russell
71292538e8
Amortize bucket initialization costs for linear hash tables. The best case improvement (~ 20%) is seen with hashes with fixed length key/value pairs and insert-only workloads
2010-05-12 17:51:20 +00:00
Sears Russell
250223086c
reordered includes for compatibility with gcc3
2010-01-21 00:03:17 +00:00
Sears Russell
fa4e4fa980
fix compile warning
2010-01-11 21:02:25 +00:00
Sears Russell
d71e248291
removed freeLogEntry
2010-01-11 20:41:59 +00:00
Sears Russell
1af589dd18
remove malloc and memcpy from the in_memory_log read path
2009-12-31 23:25:56 +00:00
Sears Russell
1409a9eb27
more refactoring; log handles now manage their log entries memory
2009-12-31 23:01:37 +00:00
Sears Russell
a5788688c8
refactor getUpdateArgs; remove a bunch of casts, fix a bunch of warnings
2009-12-31 20:20:47 +00:00
Sears Russell
9aa1d9d652
pull memcpy out of allocUpdateEntry()
2009-12-31 19:30:40 +00:00
Sears Russell
32e40c949d
added log modes to sequentialThroughput benchmark, added methods for concurrent appends to log api (and stubbed them out)
2009-12-31 19:02:34 +00:00
Sears Russell
2e237f2e2b
fix memory allocation bug in rose benchmark initialization code
2009-12-04 19:26:23 +00:00
Sears Russell
2ff421bff0
initial opensolaris port
2009-11-29 03:22:36 +00:00
Sears Russell
51911f79f2
fix compiler warning
2009-11-09 23:45:50 +00:00
Sears Russell
8bd0616f97
new concurrent buffer manager
2009-11-09 19:50:00 +00:00
Sears Russell
f5e3ab2d91
concurrent hashtable seems to be working; still need to work out atomicity primitives (eg; options to leave the bucket locked on success)
2009-10-19 21:55:25 +00:00
Sears Russell
331f680c09
partial rewrite of transaction table to reduce thread contention
2009-10-15 02:33:08 +00:00
Sears Russell
4565aff9de
more refactoring; no more globals in transactionTable.c
2009-10-14 21:22:50 +00:00
Sears Russell
fbdc0f0499
more benchmarks, add support for in memory log to the smallLogEntry benchmark
2009-10-13 01:50:35 +00:00
Sears Russell
0f2ab3c37c
add a few simple multicore scalability tests
2009-10-12 22:29:10 +00:00
Sears Russell
6a02f2f159
buffer manager implementation is now determined by an overridable factory method
2009-10-05 22:39:09 +00:00
Sears Russell
0a1ca5e1cc
make compilation succeed on macosx; this will still run macs out of disk space. Also, it disables a number of binaries that probably should be supported on macs.
2009-10-02 00:45:10 +00:00
Sears Russell
1ce1496226
dependency cleanups; removed compenastions from alloc.c
2009-08-22 00:01:02 +00:00
Sears Russell
0154f7d29d
IMPORTANT API CHANGE: stasis_dirty_page_table_flush_range() no longer force writes to disk. You now need to call forcePageRange() after flush page range returns.
...
This commit should significantly improve sequential write thoughput.
I found a segfault bug this morning, but cannot reproduce. Could be a heisenbug, or could have been a hardware fault (gojira repeatedly kernel paniced, then both problems went away...)
2009-08-13 05:53:48 +00:00
Sears Russell
a0f9a7bc81
Cleaned up page locking + a harmless memory bug. Add missing locks to page writeback.
2009-08-08 07:59:19 +00:00
Sears Russell
a6aa8ed942
added method to access dirtyPageTable
2009-08-05 20:02:33 +00:00
Sears Russell
081c61b414
cleaned up includes, autoconf is now optional, since cmake now creates a config.h
2009-07-26 18:51:45 +00:00
Sears Russell
8c012bd1c8
Silence extraneous warning, add '--mode -1' to the slotted benchmark (-1 bypasses function dispatch when setting the records)
2009-07-25 23:02:27 +00:00
Sears Russell
7f2edd880d
New (more thorough, less frequent) tests for slotted pages. Renamed slotted methods, added microbenchmark for slotted pages.
2009-07-20 17:42:43 +00:00
Sears Russell
120665ae53
cleaned up arrayList. stasis_record_write no longer takes an LSN (it was ignoring it anyway). Added some missing calls to stasis_page_lsn_write (each time a page is written to, stasis_page_lsn_write should be called; this happens automatically for operations called via tupdate
2009-06-02 18:25:35 +00:00
Sears Russell
7db06197ca
refactored truncation + dirty page table, fixed doxygen warnings.
2009-05-20 21:23:51 +00:00
Sears Russell
87218ad929
yet another refactoring; broke groupForce into its own module, removed more static variables and namespace violations
2009-05-13 18:04:53 +00:00
Sears Russell
731da7456a
more eclipse refactoring; cleaned up some names, whitespace and documentation
2009-04-13 22:50:12 +00:00
Sears Russell
42cfc3d8ed
benchmark script
2009-03-20 11:36:58 +00:00
Sears Russell
83ad15b6d0
more benchmarks; transactions can now be multithreaded
2009-03-20 11:36:27 +00:00