From: David Wells Date: Sat, 27 Apr 2019 18:36:38 +0000 (-0400) Subject: Improve the documentation of parallel builds. X-Git-Tag: v9.1.0-rc1~168^2 X-Git-Url: https://gitweb.dealii.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b3a3c24b70f6d6844750aea027c1ba6f92bdf0aa;p=dealii.git Improve the documentation of parallel builds. Not all users are familiar with the -j or --jobs flags for make and the current explanation is buried in the middle of several other notes. We can make this simpler by showing how to parallelize the build explicitly. --- diff --git a/doc/readme.html b/doc/readme.html index 6c35741edd..8daf1299d9 100644 --- a/doc/readme.html +++ b/doc/readme.html @@ -161,15 +161,19 @@

deal.II uses the - CMake integrated configuration and build system. Unpacking will create a subdirectory deal.II/ in the current directory. Then do the following steps:

+ CMake integrated configuration and build system. Unpacking will create a subdirectory deal.II/ in the current directory. Then do the following steps to configure the build process:

   mkdir build
   cd build
   cmake -DCMAKE_INSTALL_PREFIX=/path/to/install/dir ../deal.II
-  make install
+    
+ We recommend compiling deal.II in parallel if your machine has more than one processor core. This can be done by providing the --jobs flag to make with a numerical argument. Here we compile with four make jobs: +
+  make --jobs=4 install
   make test
     
+ One should usually use one job for each processor core on the machine.

These steps compile, link, install the deal.II library, and run a few consistency checks. The whole process should take between a few minutes and an hour, depending on your machine. @@ -182,9 +186,7 @@ Another option is to use something like `pwd`/../installed/ (note the backticks). Make sure the installation directory is not the same as the location where you unpacked deal.II/. -

  • If your machine has multiple processors, use make - -jN install in the second to last step instead, where N is the number of simultaneous build processes you want make to use at any given time. Allowing make to use more simultaneous build processes (assuming you have that many processor - cores) will greatly lower the build time. make test automatically runs in parallel and no -jN flag should be supplied to it. +
  • make test automatically runs in parallel and no -jN flag should be supplied to it.
  • If you do not intend to modify the deal.II sources and recompile things, then you can remove the build/ directory after the last step.