diff options
author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2015-05-05 09:12:26 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-07-28 18:02:28 +0100 |
commit | 26f9777c643f780771cf3cdd9b056de7d8047cba (patch) | |
tree | 2efe07edaae30ec38db469805a4af6a509ccae28 /documentation/ref-manual/usingpoky.xml | |
parent | e05c636bc85fd06b8f5b2f941ddd7d5b8e3e8b9c (diff) | |
download | poky-26f9777c643f780771cf3cdd9b056de7d8047cba.tar.gz |
ref-manual: Updates to the "Speeding Up the Build" section
I applied a little more information to this section to help
round out the variable explanations. Part of the change involved
adding PARALLEL_MAKEINST to the list of scaled variables.
I had left that variable off. Also added a new trade-off.
(From yocto-docs rev: 3d85d5385c03841c17dd33afb94c110edc12170f)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/ref-manual/usingpoky.xml')
-rw-r--r-- | documentation/ref-manual/usingpoky.xml | 66 |
1 files changed, 41 insertions, 25 deletions
diff --git a/documentation/ref-manual/usingpoky.xml b/documentation/ref-manual/usingpoky.xml index a7bff18b01..e2e05b2514 100644 --- a/documentation/ref-manual/usingpoky.xml +++ b/documentation/ref-manual/usingpoky.xml | |||
@@ -914,43 +914,52 @@ | |||
914 | 914 | ||
915 | <para> | 915 | <para> |
916 | Build time can be an issue. | 916 | Build time can be an issue. |
917 | By default, the build system uses three simple controls to try and | 917 | By default, the build system uses simple controls to try and maximize |
918 | maximize build efficiency: | 918 | build efficiency. |
919 | In general, the default settings for all the following variables | ||
920 | result in the most efficient build times when dealing with single | ||
921 | socket systems (i.e. a single CPU). | ||
922 | If you have multiple CPUs, you might try increasing the default | ||
923 | values to gain more speed. | ||
924 | See the descriptions in the glossary for each variable for more | ||
925 | information: | ||
919 | <itemizedlist> | 926 | <itemizedlist> |
920 | <listitem><para> | 927 | <listitem><para> |
921 | <link linkend='var-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></link> | 928 | <link linkend='var-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename>:</link> |
929 | The maximum number of threads BitBake simultaneously executes. | ||
922 | </para></listitem> | 930 | </para></listitem> |
923 | <listitem><para> | 931 | <listitem><para> |
924 | <ulink url='&YOCTO_DOCS_BB_URL;#var-BB_NUMBER_PARSE_THREADS'><filename>BB_NUMBER_PARSE_THREADS</filename></ulink> | 932 | <ulink url='&YOCTO_DOCS_BB_URL;#var-BB_NUMBER_PARSE_THREADS'><filename>BB_NUMBER_PARSE_THREADS</filename>:</ulink> |
933 | The number of threads BitBake uses during parsing. | ||
925 | </para></listitem> | 934 | </para></listitem> |
926 | <listitem><para> | 935 | <listitem><para> |
927 | <link linkend='var-PARALLEL_MAKE'><filename>PARALLEL_MAKE</filename></link> | 936 | <link linkend='var-PARALLEL_MAKE'><filename>PARALLEL_MAKE</filename>:</link> |
937 | Extra options passed to the <filename>make</filename> command | ||
938 | during the | ||
939 | <link linkend='ref-tasks-compile'><filename>do_compile</filename></link> | ||
940 | task in order to specify parallel compilation on the | ||
941 | local build host. | ||
942 | </para></listitem> | ||
943 | <listitem><para> | ||
944 | <link linkend='var-PARALLEL_MAKEINST'><filename>PARALLEL_MAKEINST</filename>:</link> | ||
945 | Extra options passed to the <filename>make</filename> command | ||
946 | during the | ||
947 | <link linkend='ref-tasks-install'><filename>do_install</filename></link> | ||
948 | task in order to specify parallel installation on the | ||
949 | local build host. | ||
928 | </para></listitem> | 950 | </para></listitem> |
929 | </itemizedlist> | 951 | </itemizedlist> |
930 | These three variables all scale to the number of processor cores | 952 | As mentioned, these variables all scale to the number of processor |
931 | available on the build system. | 953 | cores available on the build system. |
932 | This auto-scaling ensures that the build system fundamentally takes | 954 | For single socket systems, this auto-scaling ensures that the build |
933 | advantage of potential parallel operations during the build | 955 | system fundamentally takes advantage of potential parallel operations |
934 | based on the build machine's capabilities. | 956 | during the build based on the build machine's capabilities. |
935 | </para> | 957 | </para> |
936 | 958 | ||
937 | <para> | 959 | <para> |
938 | If you need to achieve even faster builds than what the build system | 960 | Following are additional factors that can affect build speed: |
939 | produces by default, you can consider and implement some of the | ||
940 | following: | ||
941 | <itemizedlist> | 961 | <itemizedlist> |
942 | <listitem><para> | 962 | <listitem><para> |
943 | <filename>BB_NUMBER_THREADS</filename>, | ||
944 | <filename>BB_NUMBER_PARSE_THREADS</filename>, and | ||
945 | <filename>PARALLEL_MAKE</filename>: | ||
946 | As previously mentioned, the build system scales the values | ||
947 | for these variables so you should probably not override | ||
948 | these to try to speed up a build. | ||
949 | However, for completeness regarding this list, it is worth | ||
950 | mentioning that you can manually override these variables | ||
951 | by setting them in your <filename>local.conf</filename> file. | ||
952 | </para></listitem> | ||
953 | <listitem><para> | ||
954 | File system type: | 963 | File system type: |
955 | The file system type that the build is being performed on can | 964 | The file system type that the build is being performed on can |
956 | also influence performance. | 965 | also influence performance. |
@@ -981,7 +990,9 @@ | |||
981 | helps. | 990 | helps. |
982 | </para></listitem> | 991 | </para></listitem> |
983 | <listitem><para> | 992 | <listitem><para> |
984 | Using <filename>/tmp</filename> as a temporary file system: | 993 | Using <filename>tmpfs</filename> for |
994 | <link linkend='var-TMPDIR'><filename>TMPDIR</filename></link> | ||
995 | as a temporary file system: | ||
985 | While this can help speed up the build, the benefits are | 996 | While this can help speed up the build, the benefits are |
986 | limited due to the compiler using | 997 | limited due to the compiler using |
987 | <filename>-pipe</filename>. | 998 | <filename>-pipe</filename>. |
@@ -1014,6 +1025,11 @@ | |||
1014 | mind that can help you speed up the build: | 1025 | mind that can help you speed up the build: |
1015 | <itemizedlist> | 1026 | <itemizedlist> |
1016 | <listitem><para> | 1027 | <listitem><para> |
1028 | Remove items from | ||
1029 | <link linkend='var-DISTRO_FEATURES'><filename>DISTRO_FEATURES</filename></link> | ||
1030 | that you might not need. | ||
1031 | </para></listitem> | ||
1032 | <listitem><para> | ||
1017 | Exclude debug symbols and other debug information: | 1033 | Exclude debug symbols and other debug information: |
1018 | If you do not need these symbols and other debug information, | 1034 | If you do not need these symbols and other debug information, |
1019 | disabling the <filename>*-dbg</filename> package generation | 1035 | disabling the <filename>*-dbg</filename> package generation |