All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCHv2] docs/manual: add FAQ entry about speeding up the build process
@ 2015-01-14 21:48 Thomas Petazzoni
  2015-01-15  5:49 ` Baruch Siach
  2015-01-18 16:34 ` Yann E. MORIN
  0 siblings, 2 replies; 3+ messages in thread
From: Thomas Petazzoni @ 2015-01-14 21:48 UTC (permalink / raw)
  To: buildroot

This is a very frequently asked question, so let's add a FAQ entry
about it, that we can progressively extend with more advices for our
users.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

---
Changes since v1:

 - Take into account the feedback from Yann, provided in
   http://patchwork.ozlabs.org/patch/397717/. The only place where I
   tend to disagree a bit is on having the download folder on the
   network. It does have an impact, albeit small. So I've changed the
   phrasing to insist on *not* doing an NFS build, and suggesting to
   also have a local download directory.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
 docs/manual/faq-troubleshooting.txt | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/docs/manual/faq-troubleshooting.txt b/docs/manual/faq-troubleshooting.txt
index b30b4ac..e24fe9c 100644
--- a/docs/manual/faq-troubleshooting.txt
+++ b/docs/manual/faq-troubleshooting.txt
@@ -205,3 +205,37 @@ On this matter, the Buildroot developers make this position statement:
    upgrades by upgrading the entire root filesystem image at once,
    the image deployed to the embedded system is guaranteed to really
    be the one that has been tested and validated.
+
+[[faq-speeding-up-build]]
+=== How to speed-up the build process?
+
+Since Buildroot often involves doing full rebuilds of the entire
+system that can be quite long, we provide below a number of tips to
+help reduce the build time:
+
+ * Use a pre-built external toolchain instead of the default Buildroot
+   internal toolchain. By using a pre-built Linaro toolchain (on ARM)
+   or a Sourcery CodeBench toolchain (for ARM, x86, x86-64, MIPS,
+   etc.), you will save the build time of the toolchain at each
+   complete rebuild, approximately 15 to 20 minutes. Note that
+   temporarily using an external toolchain does not prevent you to
+   switch back to an internal toolchain (that may provide a higher
+   level of customization) once the rest of your system is working;
+
+ * Use the +ccache+ compiler cache (see: xref:ccache[]);
+
+ * Learn about rebuilding only the few packages you actually care
+   about (see xref:rebuild-pkg[]), but beware that sometimes full
+   rebuilds are anyway necessary (see xref:full-rebuild[]);
+
+ * Make sure you are not using a virtual machine for the Linux system
+   used to run Buildroot. Most of the virtual machine technologies are
+   known to cause a significant performance impact on I/O, which is
+   really important for building source code;
+
+ * Make sure that you're using only local files: do not attempt to do
+   a build over NFS, which significantly slows down the build. Having
+   the Buildroot download folder available locally also helps a bit.
+
+ * Buy, or convince your boss to new hardware. SSDs and lots of RAM
+   are key to speeding up the builds.
-- 
2.1.0

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

* [Buildroot] [PATCHv2] docs/manual: add FAQ entry about speeding up the build process
  2015-01-14 21:48 [Buildroot] [PATCHv2] docs/manual: add FAQ entry about speeding up the build process Thomas Petazzoni
@ 2015-01-15  5:49 ` Baruch Siach
  2015-01-18 16:34 ` Yann E. MORIN
  1 sibling, 0 replies; 3+ messages in thread
From: Baruch Siach @ 2015-01-15  5:49 UTC (permalink / raw)
  To: buildroot

Hi Thomas,

On Wed, Jan 14, 2015 at 10:48:13PM +0100, Thomas Petazzoni wrote:
> + * Buy, or convince your boss to new hardware. SSDs and lots of RAM
> +   are key to speeding up the builds.

"Buy, or convince your boss to buy new hardware" (added 'buy'). Alternatively: 
"Buy new hardware, or convince your boss to do so".

baruch

-- 
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -

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

* [Buildroot] [PATCHv2] docs/manual: add FAQ entry about speeding up the build process
  2015-01-14 21:48 [Buildroot] [PATCHv2] docs/manual: add FAQ entry about speeding up the build process Thomas Petazzoni
  2015-01-15  5:49 ` Baruch Siach
@ 2015-01-18 16:34 ` Yann E. MORIN
  1 sibling, 0 replies; 3+ messages in thread
From: Yann E. MORIN @ 2015-01-18 16:34 UTC (permalink / raw)
  To: buildroot

Thomas, All,

On 2015-01-14 22:48 +0100, Thomas Petazzoni spake thusly:
> This is a very frequently asked question, so let's add a FAQ entry
> about it, that we can progressively extend with more advices for our
> users.
> 
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

Except for the nit Baruch noticed:

Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

> ---
> Changes since v1:
> 
>  - Take into account the feedback from Yann, provided in
>    http://patchwork.ozlabs.org/patch/397717/. The only place where I
>    tend to disagree a bit is on having the download folder on the
>    network. It does have an impact, albeit small. So I've changed the
>    phrasing to insist on *not* doing an NFS build, and suggesting to
>    also have a local download directory.

I like how you rephrased it. Thanks! :-)

Regards,
Yann E. MORIN.

> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> ---
>  docs/manual/faq-troubleshooting.txt | 34 ++++++++++++++++++++++++++++++++++
>  1 file changed, 34 insertions(+)
> 
> diff --git a/docs/manual/faq-troubleshooting.txt b/docs/manual/faq-troubleshooting.txt
> index b30b4ac..e24fe9c 100644
> --- a/docs/manual/faq-troubleshooting.txt
> +++ b/docs/manual/faq-troubleshooting.txt
> @@ -205,3 +205,37 @@ On this matter, the Buildroot developers make this position statement:
>     upgrades by upgrading the entire root filesystem image at once,
>     the image deployed to the embedded system is guaranteed to really
>     be the one that has been tested and validated.
> +
> +[[faq-speeding-up-build]]
> +=== How to speed-up the build process?
> +
> +Since Buildroot often involves doing full rebuilds of the entire
> +system that can be quite long, we provide below a number of tips to
> +help reduce the build time:
> +
> + * Use a pre-built external toolchain instead of the default Buildroot
> +   internal toolchain. By using a pre-built Linaro toolchain (on ARM)
> +   or a Sourcery CodeBench toolchain (for ARM, x86, x86-64, MIPS,
> +   etc.), you will save the build time of the toolchain at each
> +   complete rebuild, approximately 15 to 20 minutes. Note that
> +   temporarily using an external toolchain does not prevent you to
> +   switch back to an internal toolchain (that may provide a higher
> +   level of customization) once the rest of your system is working;
> +
> + * Use the +ccache+ compiler cache (see: xref:ccache[]);
> +
> + * Learn about rebuilding only the few packages you actually care
> +   about (see xref:rebuild-pkg[]), but beware that sometimes full
> +   rebuilds are anyway necessary (see xref:full-rebuild[]);
> +
> + * Make sure you are not using a virtual machine for the Linux system
> +   used to run Buildroot. Most of the virtual machine technologies are
> +   known to cause a significant performance impact on I/O, which is
> +   really important for building source code;
> +
> + * Make sure that you're using only local files: do not attempt to do
> +   a build over NFS, which significantly slows down the build. Having
> +   the Buildroot download folder available locally also helps a bit.
> +
> + * Buy, or convince your boss to new hardware. SSDs and lots of RAM
> +   are key to speeding up the builds.
> -- 
> 2.1.0
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

end of thread, other threads:[~2015-01-18 16:34 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-01-14 21:48 [Buildroot] [PATCHv2] docs/manual: add FAQ entry about speeding up the build process Thomas Petazzoni
2015-01-15  5:49 ` Baruch Siach
2015-01-18 16:34 ` Yann E. MORIN

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.