git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* Git, Builds, and Filesystem Type
@ 2012-02-09 21:23 Hilco Wijbenga
  2012-02-09 21:53 ` Martin Fick
       [not found] ` <CAE5ih7_NkyJ6vGbyoKvQy65LFK3-zkXi79Xd6+3Si8DyUi47JQ@mail.gmail.com>
  0 siblings, 2 replies; 8+ messages in thread
From: Hilco Wijbenga @ 2012-02-09 21:23 UTC (permalink / raw
  To: Git Users

Hi all,

I'm thinking about trying out different filesystems over the weekend
to see if, say, BTRFS or XFS is faster when using Git and running our
build.

Currently, I'm using ReiserFS and it's not like it's not working. I'm
very pleased with ReiserFS but after seeing talks about BTRFS and XFS
I'm curious if another (newer) FS is better suited to our specific
environment. Anything to make the build a little faster. :-)

For the record, our (Java) project is quite small. It's 43MB (source
and images) and the entire directory tree after building is about
1.6GB (this includes all JARs downloaded by Maven). So we're not
talking TBs of data.

Any thoughts on which FSs to include in my tests? Or simply which FS
might be more appropriate?

Cheers,
Hilco

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

* Re: Git, Builds, and Filesystem Type
  2012-02-09 21:23 Git, Builds, and Filesystem Type Hilco Wijbenga
@ 2012-02-09 21:53 ` Martin Fick
  2012-02-09 23:24   ` Hilco Wijbenga
       [not found] ` <CAE5ih7_NkyJ6vGbyoKvQy65LFK3-zkXi79Xd6+3Si8DyUi47JQ@mail.gmail.com>
  1 sibling, 1 reply; 8+ messages in thread
From: Martin Fick @ 2012-02-09 21:53 UTC (permalink / raw
  To: Hilco Wijbenga; +Cc: Git Users

On Thursday, February 09, 2012 02:23:18 pm Hilco Wijbenga 
wrote:
> For the record, our (Java) project is quite small. It's
> 43MB (source and images) and the entire directory tree
> after building is about 1.6GB (this includes all JARs
> downloaded by Maven). So we're not talking TBs of data.
> 
> Any thoughts on which FSs to include in my tests? Or
> simply which FS might be more appropriate?

tmpfs is probably fastest hands down if you can use it (even 
if you have to back it by swap).

-Martin

-- 
Employee of Qualcomm Innovation Center, Inc. which is a 
member of Code Aurora Forum

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

* Re: Git, Builds, and Filesystem Type
  2012-02-09 21:53 ` Martin Fick
@ 2012-02-09 23:24   ` Hilco Wijbenga
  2012-02-09 23:34     ` Martin Fick
  0 siblings, 1 reply; 8+ messages in thread
From: Hilco Wijbenga @ 2012-02-09 23:24 UTC (permalink / raw
  To: Martin Fick; +Cc: Git Users

On 9 February 2012 13:53, Martin Fick <mfick@codeaurora.org> wrote:
> On Thursday, February 09, 2012 02:23:18 pm Hilco Wijbenga
> wrote:
>> For the record, our (Java) project is quite small. It's
>> 43MB (source and images) and the entire directory tree
>> after building is about 1.6GB (this includes all JARs
>> downloaded by Maven). So we're not talking TBs of data.
>>
>> Any thoughts on which FSs to include in my tests? Or
>> simply which FS might be more appropriate?
>
> tmpfs is probably fastest hands down if you can use it (even
> if you have to back it by swap).

I don't have quite that much RAM. :-)

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

* Re: Git, Builds, and Filesystem Type
  2012-02-09 23:24   ` Hilco Wijbenga
@ 2012-02-09 23:34     ` Martin Fick
  2012-02-10  1:25       ` Hilco Wijbenga
  0 siblings, 1 reply; 8+ messages in thread
From: Martin Fick @ 2012-02-09 23:34 UTC (permalink / raw
  To: Hilco Wijbenga; +Cc: Git Users

On Thursday, February 09, 2012 04:24:47 pm Hilco Wijbenga 
wrote:
> On 9 February 2012 13:53, Martin Fick 
<mfick@codeaurora.org> wrote:
> > On Thursday, February 09, 2012 02:23:18 pm Hilco
> > Wijbenga
> > 
> > wrote:
> >> For the record, our (Java) project is quite small.
> >> It's 43MB (source and images) and the entire
> >> directory tree after building is about 1.6GB (this
> >> includes all JARs downloaded by Maven). So we're not
> >> talking TBs of data.
> >> 
> >> Any thoughts on which FSs to include in my tests? Or
> >> simply which FS might be more appropriate?
> > 
> > tmpfs is probably fastest hands down if you can use it
> > (even if you have to back it by swap).
> 
> I don't have quite that much RAM. :-)

But I am sure that you have that much disk space which you 
can allocate to swap, if not you already couldn't build it.  
And tmpfs swapping is still likely faster than a persistent 
FS (it will not need to block on syncs).  If you are 
benchmarking, it is likely worth you effort since that will 
probably mark the upper performance bound,

-Martin

-- 
Employee of Qualcomm Innovation Center, Inc. which is a 
member of Code Aurora Forum

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

* Re: Git, Builds, and Filesystem Type
       [not found] ` <CAE5ih7_NkyJ6vGbyoKvQy65LFK3-zkXi79Xd6+3Si8DyUi47JQ@mail.gmail.com>
@ 2012-02-10  1:11   ` Hilco Wijbenga
  0 siblings, 0 replies; 8+ messages in thread
From: Hilco Wijbenga @ 2012-02-10  1:11 UTC (permalink / raw
  To: Luke Diamand; +Cc: Git Users

On 9 February 2012 15:24, Luke Diamand <luke@diamand.org> wrote:
> On Thu, Feb 9, 2012 at 9:23 PM, Hilco Wijbenga <hilco.wijbenga@gmail.com>
> wrote:
>>
>> Hi all,
>>
>> I'm thinking about trying out different filesystems over the weekend
>> to see if, say, BTRFS or XFS is faster when using Git and running our
>> build.
>>
>> Currently, I'm using ReiserFS and it's not like it's not working. I'm
>> very pleased with ReiserFS but after seeing talks about BTRFS and XFS
>> I'm curious if another (newer) FS is better suited to our specific
>> environment. Anything to make the build a little faster. :-)
>>
>> For the record, our (Java) project is quite small. It's 43MB (source
>> and images) and the entire directory tree after building is about
>> 1.6GB (this includes all JARs downloaded by Maven). So we're not
>> talking TBs of data.
>>
>> Any thoughts on which FSs to include in my tests? Or simply which FS
>> might be more appropriate?
>
>
> Do people still use reiserfs? I thought development on that pretty much
> stopped years ago. And reiser4 never made it into the kernel. Read the wiki
> page for why.

As I said, reiserfs works fine so I see no need to replace it. I'm not
a big fan of ext3 (I've run out of inodes too many times) and I simply
haven't tried ext4. Apparently, it has some architectural problems but
I'm no expert.

> ext4, FTW!
>
> But whatever you use, you might find that the core.preloadindex config
> option helps. It certainly does for NFS.

I would like to think that my local hard drive has no latency issues?
Would this really be worthwhile even if I do not use some sort of
distributed FS?

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

* Re: Git, Builds, and Filesystem Type
  2012-02-09 23:34     ` Martin Fick
@ 2012-02-10  1:25       ` Hilco Wijbenga
  2012-02-10  2:08         ` Martin Fick
  0 siblings, 1 reply; 8+ messages in thread
From: Hilco Wijbenga @ 2012-02-10  1:25 UTC (permalink / raw
  To: Martin Fick; +Cc: Git Users

On 9 February 2012 15:34, Martin Fick <mfick@codeaurora.org> wrote:
> On Thursday, February 09, 2012 04:24:47 pm Hilco Wijbenga
> wrote:
>> On 9 February 2012 13:53, Martin Fick
> <mfick@codeaurora.org> wrote:
>> > On Thursday, February 09, 2012 02:23:18 pm Hilco
>> > Wijbenga
>> >
>> > wrote:
>> >> For the record, our (Java) project is quite small.
>> >> It's 43MB (source and images) and the entire
>> >> directory tree after building is about 1.6GB (this
>> >> includes all JARs downloaded by Maven). So we're not
>> >> talking TBs of data.
>> >>
>> >> Any thoughts on which FSs to include in my tests? Or
>> >> simply which FS might be more appropriate?
>> >
>> > tmpfs is probably fastest hands down if you can use it
>> > (even if you have to back it by swap).
>>
>> I don't have quite that much RAM. :-)
>
> But I am sure that you have that much disk space which you
> can allocate to swap, if not you already couldn't build it.
> And tmpfs swapping is still likely faster than a persistent
> FS (it will not need to block on syncs).  If you are
> benchmarking, it is likely worth you effort since that will
> probably mark the upper performance bound,

I found [1]. Is that sort of what you had in mind? That would be quite
tricky. I have a group of some 60 projects, each with their own
"target" directory which would have to be mounted on tmpfs. And the
"target" directory is created by Maven, not by me. Not to mention that
I shut down my computer at the end of the day. :-)

I think I would prefer a somewhat more persistent solution. I
certainly have enough space for a very big swap partition. So the
whole of ~/my-project would fit on tmpfs. I'm just not sure about
making it persistent at the end of the day.

[1] http://code.google.com/p/chromium/wiki/LinuxFasterBuilds

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

* Re: Git, Builds, and Filesystem Type
  2012-02-10  1:25       ` Hilco Wijbenga
@ 2012-02-10  2:08         ` Martin Fick
  2012-02-10  4:04           ` Hilco Wijbenga
  0 siblings, 1 reply; 8+ messages in thread
From: Martin Fick @ 2012-02-10  2:08 UTC (permalink / raw
  To: Hilco Wijbenga; +Cc: Git Users



>I found [1]. Is that sort of what you had in mind

yes

>That would be quite
>tricky. I have a group of some 60 projects, each with their own
>"target" directory which would have to be mounted on tmpfs. And the
>"target" directory is created by Maven, not by me. Not to mention that
>I shut down my computer at the end of the day. :-)

Sounds like a laptop?  Hibernate?

>I think I would prefer a somewhat more persistent solution. I
>certainly have enough space for a very big swap partition. So the
>whole of ~/my-project would fit on tmpfs. I'm just not sure about
>making it persistent at the end of the day.


Link your .git dir to a persistent location. 

Benchmark it first so you know how much hassle it may be worth.  If it isn't worth it, xfs or brtfs will likely not be worth it either,

-Martin
Employee of Qualcomm Innovation Center,Inc. which is a member of Code Aurora Forum

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

* Re: Git, Builds, and Filesystem Type
  2012-02-10  2:08         ` Martin Fick
@ 2012-02-10  4:04           ` Hilco Wijbenga
  0 siblings, 0 replies; 8+ messages in thread
From: Hilco Wijbenga @ 2012-02-10  4:04 UTC (permalink / raw
  To: Martin Fick; +Cc: Git Users

On 9 February 2012 18:08, Martin Fick <mfick@codeaurora.org> wrote:
>>That would be quite
>>tricky. I have a group of some 60 projects, each with their own
>>"target" directory which would have to be mounted on tmpfs. And the
>>"target" directory is created by Maven, not by me. Not to mention that
>>I shut down my computer at the end of the day. :-)
>
> Sounds like a laptop?  Hibernate?

No, a regular desktop that I shut down every night. It makes quite a
bit of noise and I would rather not waste power.

>>I think I would prefer a somewhat more persistent solution. I
>>certainly have enough space for a very big swap partition. So the
>>whole of ~/my-project would fit on tmpfs. I'm just not sure about
>>making it persistent at the end of the day.
>
> Link your .git dir to a persistent location.

I don't think that would help all that much. I would still lose
anything I had not committed or stashed. And I would still have to
rebuild every day.

Perhaps something together with unionfs? I'll think about it.

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

end of thread, other threads:[~2012-02-10  4:04 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-09 21:23 Git, Builds, and Filesystem Type Hilco Wijbenga
2012-02-09 21:53 ` Martin Fick
2012-02-09 23:24   ` Hilco Wijbenga
2012-02-09 23:34     ` Martin Fick
2012-02-10  1:25       ` Hilco Wijbenga
2012-02-10  2:08         ` Martin Fick
2012-02-10  4:04           ` Hilco Wijbenga
     [not found] ` <CAE5ih7_NkyJ6vGbyoKvQy65LFK3-zkXi79Xd6+3Si8DyUi47JQ@mail.gmail.com>
2012-02-10  1:11   ` Hilco Wijbenga

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).