git/Documentation/technical
Ben Peart 3255089ada ieot: add Index Entry Offset Table (IEOT) extension
This patch enables addressing the CPU cost of loading the index by adding
additional data to the index that will allow us to efficiently multi-
thread the loading and conversion of cache entries.

It accomplishes this by adding an (optional) index extension that is a
table of offsets to blocks of cache entries in the index file.  To make
this work for V4 indexes, when writing the cache entries, it periodically
"resets" the prefix-compression by encoding the current entry as if the
path name for the previous entry is completely different and saves the
offset of that entry in the IEOT.  Basically, with V4 indexes, it
generates offsets into blocks of prefix-compressed entries.

Signed-off-by: Ben Peart <benpeart@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2018-10-11 15:32:48 +09:00
..
.gitignore
api-allocation-growing.txt
api-argv-array.txt
api-config.txt doc: fix config API documentation about config_with_options 2018-05-11 10:26:33 +09:00
api-credentials.txt
api-diff.txt
api-directory-listing.txt Documentation: spelling and grammar fixes 2018-06-22 14:26:23 -07:00
api-error-handling.txt
api-gitattributes.txt Documentation: spelling and grammar fixes 2018-06-22 14:26:23 -07:00
api-grep.txt
api-history-graph.txt
api-index-skel.txt
api-index.sh
api-merge.txt
api-object-access.txt
api-oid-array.txt get_short_oid: sort ambiguous objects by type, then SHA-1 2018-05-11 14:43:23 +09:00
api-parse-options.txt
api-quote.txt
api-ref-iteration.txt
api-remote.txt
api-revision-walking.txt
api-run-command.txt
api-setup.txt
api-sigchain.txt
api-submodule-config.txt Merge branch 'sb/submodule-move-nested' 2018-05-08 15:59:17 +09:00
api-trace.txt
api-tree-walking.txt
api-xdiff-interface.txt
bitmap-format.txt
commit-graph-format.txt Merge branch 'ds/commit-graph' 2018-07-18 12:20:34 -07:00
commit-graph.txt commit-graph: update design document 2018-06-27 10:29:11 -07:00
directory-rename-detection.txt git-rebase.txt: document behavioral differences between modes 2018-06-27 11:23:22 -07:00
hash-function-transition.txt doc hash-function-transition: pick SHA-256 as NewHash 2018-08-07 07:40:43 -07:00
http-protocol.txt doc: fix want-capability separator 2018-07-30 11:25:20 -07:00
index-format.txt ieot: add Index Entry Offset Table (IEOT) extension 2018-10-11 15:32:48 +09:00
long-running-process-protocol.txt
multi-pack-index.txt multi-pack-index: add design document 2018-07-12 13:55:02 -07:00
pack-format.txt midx: write object offsets 2018-07-20 11:27:28 -07:00
pack-heuristics.txt
pack-protocol.txt Merge branch 'bw/protocol-v2' 2018-08-15 15:08:21 -07:00
partial-clone.txt partial-clone: render design doc using asciidoc 2018-08-15 09:22:54 -07:00
protocol-capabilities.txt
protocol-common.txt
protocol-v2.txt Merge branch 'jt/connectivity-check-after-unshallow' 2018-07-24 14:50:44 -07:00
racy-git.txt
repository-version.txt
rerere.txt rerere: mention caveat about unmatched conflict markers 2018-08-29 08:54:11 -07:00
send-pack-pipeline.txt
shallow.txt technical/shallow: describe why shallow cannot use replace refs 2018-04-30 11:12:31 +09:00
signature-format.txt
trivial-merge.txt