git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Does pack v4 do anything to commits?

From
Nguyen Thai Ngoc Duy <pclouds@gmail.com>
Date
Feb 18, 2012, 04:44 UTC
Message-ID
<CACsJy8CZPG3b3LBF-EFO_kOv6i157jy5414+bHcqiwOKyC+8VA@mail.gmail.com>
Hi Nico,

I had an experiment on speeding up "rev-list --all". If I cache sha-1 of tree and parent, and committer date of single-parent commits, in binary form, rev-list can be sped up significantly. On linux-2.6.git, it goes from 14s to 4s (2s to 0.8 for git.git). Profiling shows that commit parsing (get_sha1_hex, parse_commit_date) dominates rev-list time.

>From what I remember, pack v4 is mainly about changing tree

representation so that we can traverse object DAG as fast as possible. Do you do anything to commit representation too? Maybe it's worth storing the above info along with the compressed commit objects in pack to shave some more seconds.

By the way, is latest packv4 code available somewhere to fetch?
-- 
Duy
Next: Nicolas Pitre
Message 1 of 2 in “Does pack v4 do anything to commits?”
  1. Nguyen Thai Ngoc DuyFeb 18, 2012
  2. Nicolas PitreFeb 18, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.