git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] fast-import: cache oe more often
@ 2011-09-19  1:27 Dmitry Ivankov
  2011-09-19  1:27 ` [PATCH 1/8] fast-import: cache oe in file_change_m Dmitry Ivankov
                   ` (8 more replies)
  0 siblings, 9 replies; 13+ messages in thread
From: Dmitry Ivankov @ 2011-09-19  1:27 UTC (permalink / raw)
  To: git
  Cc: Jonathan Nieder, Shawn O. Pearce, David Barr, Sverre Rabbelier,
	Dmitry Ivankov

fast-import keeps a struct object_entry for each object written to
it's pack. This is to keep type, pack-coordinates and delta_depth.
struct object_entry is also used to cache this metadata for objects
that exist outside fast-import's pack ('old' objects).
struct object_entry has a small fixed size and thus it should be
reasonable to cache any 'old' object metadata retrieval to save the
disk i/o.

Also it is a step toward making fast-import identify objects via
struct object_entry rather than sha1. One pointer takes less than
20 bytes, it'll be later possible to have references to objects
that don't yet have sha1 computed (fast-import with threads future).

Dmitry Ivankov (8):
  fast-import: cache oe in file_change_m
  fast-import: cache oe in parse_new_tag
  fast-import: cache oe in note_change_n
  fast-import: extract common sha1_file access functions
  fast-import: tiny optimization in read_marks
  fast-import: cache oe in load_tree
  fast-import: cache oe in cat_blob
  fast-import: cache objects while dereferencing

 fast-import.c |  177 +++++++++++++++++++++++++++++++--------------------------
 1 files changed, 96 insertions(+), 81 deletions(-)

-- 
1.7.3.4

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2011-09-20 14:39 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-19  1:27 [PATCH 0/8] fast-import: cache oe more often Dmitry Ivankov
2011-09-19  1:27 ` [PATCH 1/8] fast-import: cache oe in file_change_m Dmitry Ivankov
2011-09-19  1:27 ` [PATCH 2/8] fast-import: cache oe in parse_new_tag Dmitry Ivankov
2011-09-19  1:27 ` [PATCH 3/8] fast-import: cache oe in note_change_n Dmitry Ivankov
2011-09-19  1:27 ` [PATCH 4/8] fast-import: extract common sha1_file access functions Dmitry Ivankov
2011-09-19  1:27 ` [PATCH 5/8] fast-import: tiny optimization in read_marks Dmitry Ivankov
2011-09-19  1:27 ` [PATCH 6/8] fast-import: cache oe in load_tree Dmitry Ivankov
2011-09-19  1:27 ` [PATCH 7/8] fast-import: cache oe in cat_blob Dmitry Ivankov
2011-09-19  1:27 ` [PATCH 8/8] fast-import: cache objects while dereferencing Dmitry Ivankov
2011-09-20  4:02 ` [PATCH 0/8] fast-import: cache oe more often Junio C Hamano
2011-09-20  4:26   ` Jonathan Nieder
2011-09-20  7:17     ` Dmitry Ivankov
2011-09-20 14:39       ` Jonathan Nieder

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).