# [PATCH] Expand on impact of threads on memory consumption.

2 messages from 2014-10-24 to 2014-10-24. Participants: Robert de Bath, Junio C Hamano.
Thread: https://gitlist.dev/t/37797

## Robert de Bath, 2014-10-24 07:43

Subject: [PATCH] Expand on impact of threads on memory consumption.
Message-ID: <1414136607-24765-1-git-send-email-rdebath@tvisiontech.co.uk>
URL: https://gitlist.dev/e/1414136607-24765-1-git-send-email-rdebath%40tvisiontech.co.uk

```
It took me a long time to notice the rider on the pack.threads
configuration option that it would multiple the memory consumption by
the number of CPUs in the machine. This patch puts the memory consumption
warning against the memory option that I was using to try to stop git-pack
running out of RAM.

Signed-off-by: Robert de Bath <rdebath@tvisiontech.co.uk>
---
 Documentation/config.txt |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/Documentation/config.txt b/Documentation/config.txt
index c55c22a..6384038 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -1828,7 +1828,10 @@ pack.depth::
 
 pack.windowMemory::
 	The window memory size limit used by linkgit:git-pack-objects[1]
-	when no limit is given on the command line.  The value can be
+	when no limit is given on the command line.  This limit may be
+	allocated individually by each thread doing delta compression
+	so the total memory allocated by linkgit:git-pack-objects[1] can
+	be this multiplied by the number of threads.  The value can be
 	suffixed with "k", "m", or "g".  Defaults to 0, meaning no
 	limit.
 
-- 
1.7.10.4

```

## Junio C Hamano, 2014-10-24 17:27

Subject: Re: [PATCH] Expand on impact of threads on memory consumption.
Message-ID: <xmqq7fzpgyzb.fsf@gitster.dls.corp.google.com>
URL: https://gitlist.dev/e/xmqq7fzpgyzb.fsf%40gitster.dls.corp.google.com
In-Reply-To: <1414136607-24765-1-git-send-email-rdebath@tvisiontech.co.uk>

```
Robert de Bath <rdebath@tvisiontech.co.uk> writes:

> diff --git a/Documentation/config.txt b/Documentation/config.txt
> index c55c22a..6384038 100644
> --- a/Documentation/config.txt
> +++ b/Documentation/config.txt
> @@ -1828,7 +1828,10 @@ pack.depth::
>  
>  pack.windowMemory::
>  	The window memory size limit used by linkgit:git-pack-objects[1]
> -	when no limit is given on the command line.  The value can be
> +	when no limit is given on the command line.  This limit may be
> +	allocated individually by each thread doing delta compression
> +	so the total memory allocated by linkgit:git-pack-objects[1] can
> +	be this multiplied by the number of threads.  The value can be
>  	suffixed with "k", "m", or "g".  Defaults to 0, meaning no
>  	limit.

I sense that this change makes the resulting text unnecessarily
opaque by avoiding touching the first sentence.  Wouldn't something
more concise like this sufficient?

    The default maximum size of memory that is consumed by each
    thread in linkgit:git-pack-objects[1] for pack window memory.
    The value can be suffixed with "k", "m", or "g".  When left
    unconfigured, there will be no limit.

```
