| author | Sergey Vlasov <vsu@altlinux.ru> | |
| Tue, 15 Nov 2005 16:08:08 +0000 (19:08 +0300) | ||
| committer | Junio C Hamano <junkio@cox.net> | |
| Tue, 15 Nov 2005 19:42:29 +0000 (11:42 -0800) | ||
| commit | 4a4e6fd74f7d4564ed43eaaf59b6bd70c1959f1a | |
| tree | 505862d83f5f0ffae0a2d024e7d0bfb336ddf560 | tree | snapshot |
| parent | 545f229a4b43212e683ac63e5aa740324ac7799e | commit | diff |
Rework object refs tracking to reduce memory usage
Store pointers to referenced objects in a variable sized array instead
of linked list. This cuts down memory usage of utilities which use
object references; e.g., git-fsck-objects --full on the git.git
repository consumes about 2 MB of memory tracked by Massif instead of
7 MB before the change. Object refs are still the biggest consumer of
memory (57%), but the malloc overhead for a single block instead of a
linked list is substantially smaller.
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Junio C Hamano <junkio@cox.net>
Store pointers to referenced objects in a variable sized array instead
of linked list. This cuts down memory usage of utilities which use
object references; e.g., git-fsck-objects --full on the git.git
repository consumes about 2 MB of memory tracked by Massif instead of
7 MB before the change. Object refs are still the biggest consumer of
memory (57%), but the malloc overhead for a single block instead of a
linked list is substantially smaller.
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Junio C Hamano <junkio@cox.net>
| commit.c | diff | blob | history | |
| fsck-objects.c | diff | blob | history | |
| object.c | diff | blob | history | |
| object.h | diff | blob | history | |
| server-info.c | diff | blob | history | |
| tag.c | diff | blob | history | |
| tree.c | diff | blob | history |