File: day_626__performance_week.mdwn

package info (click to toggle)
git-annex 10.20250416-2
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 73,572 kB
  • sloc: haskell: 90,656; javascript: 9,103; sh: 1,469; makefile: 211; perl: 137; ansic: 44
file content (18 lines) | stat: -rw-r--r-- 860 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
I've spent all week working on performance. It started when Lukey
found a way to use git cat-file --buffer to make --all faster.
Once implemented, that turned out to be a 2x to 16x speedup in seek time.

I felt that same approach could probably also speed up other parts of
git-annex that use git cat-file, so spent another 4 days finding ways to do
that. Some of the ideas are not implemented yet, but I landed a 2x speedup
today, to all git-annex commands that seek annexed files to work on.

Oh and also there used to be a git-annex branch read cache, but it got
removed many years ago, and I forgot it had been removed. Which does not
lead to writing the fastest code. Bringing the cache back makes some things
another 20% faster.

----

This work was sponsored by Mark Reidenbach, Jake Vosloo, and Graham Spencer 
[on Patreon](https://patreon.com/joeyh).