X-Git-Url: https://pd.if.org/git/?p=btree;a=blobdiff_plain;f=README.md;h=eff833d2f99b4deb9a551851ca971996b3b3340a;hp=12a262590a68637d3bf9cd3cd2b3bf664fa11ba6;hb=0756819e460acb958eeb073f4d5ca9ddf66ec6c7;hpb=358f610eba67ff7c02611425689c99f13e1502f7 diff --git a/README.md b/README.md index 12a2625..eff833d 100644 --- a/README.md +++ b/README.md @@ -3,16 +3,23 @@ Btree-source-code A working project for High-concurrency B-tree source code in C -There are three major code sets in the btree source code: +There are four major code sets in the standard btree source code: -btree2q.c Single Threaded/MultiProcess with latching supplied by advisory file locking. Works with network file systems. -threads2h.c Multi-Threaded/Multi-Process with latching implemented with test & set locks in the btree pages. +btree2s.c Single Threaded/MultiProcess version that removes keys all the way back to an original empty btree, placing removed nodes on a free list. -The Foster set includes three types of latching: +threads2h.c Multi-Threaded/Multi-Process with latching implemented by a latch manager with pthreads/SRW latches in the first few btree pages. -Fosterbtreee.c Multi-Threaded/Single Process with latches hosted by the buffer pool manager -Fosterbtreef.c Multi-Threaded/Multi-Process with latches hosted by a latch manager using the first few pages of the btree. -Fosterbtreeg.c Multi-Threaded/Multi-Process with latches implemented with test & set locks in the btree pages. +threads2i.c Multi-Threaded/Multi-Process with latching implemented by a latch manager with test & set latches in the first few btree pages with thread yield system calls during contention. + +threads2j.c Multi-Threaded/Multi-Process with latching implemented by a latch manager with test & set locks in the first few btree pages with Linux futex system calls during contention. + +The Foster code set includes the same three types of latching: + +Fosterbtreee.c Multi-Threaded/Single Process with latching implemented by a latch manager with pthreads/SRW latches in the first few btree pages. + +Fosterbtreef.c Multi-Threaded/Multi-Process with latching implemented by a latch manager with test & set latches in the first few btree pages with thread yield system calls during contention. + +Fosterbtreeg.c Multi-Threaded/Multi-Process with latching implemented by a latch manager with test & set locks in the first few btree pages with Linux futex system calls during contention. Compilation is achieved on linux or Windows by: @@ -20,6 +27,6 @@ gcc -D STANDALONE threads2h.c -lpthread or -cl /D STANDALONE threads2h.c +cl /Ox /D STANDALONE threads2h.c -Please see the project home page at code.google.com/p/high-concurrency-btree +Please see the project wiki page for documentation