]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Improve our 32-bit vs 64-bit PETSc documentation. 17541/head
authorDavid Wells <drwells@email.unc.edu>
Thu, 15 Aug 2024 20:41:28 +0000 (14:41 -0600)
committerDavid Wells <drwells@email.unc.edu>
Fri, 16 Aug 2024 12:37:57 +0000 (06:37 -0600)
cmake/setup_cached_variables.cmake
doc/developers/packaging.html
doc/external-libs/petsc.html
doc/readme.html

index 52f9cc27f395f9c558c73ec61c3cc787d82d0749..59639a1860eb68db1b65bdd03817244a3ecfe1b4 100644 (file)
@@ -331,7 +331,7 @@ unset(ENV{NVCCFLAGS})
 ########################################################################
 
 option(DEAL_II_WITH_64BIT_INDICES
-  "If set to ON, then use 64-bit data types to represent global degree of freedom indices. The default is to OFF. You only want to set this to ON if you will solve problems with more than 2^31 (approximately 2 billion) unknowns. If set to ON, you also need to ensure that both Trilinos and/or PETSc support 64-bit indices."
+  "If set to ON, then use 64-bit data types to represent global degree of freedom indices. The default is to OFF. You only want to set this to ON if you will solve problems with more than 2^31 (approximately 2 billion) unknowns."
   OFF
   )
 list(APPEND DEAL_II_FEATURES 64BIT_INDICES)
index 0e8db8cdab9f3d8d6fa2346c9cc2f75b21b8751d..f2fd58fc5d2dcff99e90e62264557bcb34cd8d55 100644 (file)
@@ -78,8 +78,7 @@
       </li>
       <li>
         The flag <tt>DEAL_II_WITH_64BIT_INDICES</tt> changes an integral type
-        used for indices in the library. This value should be made consistent
-        with the way PETSc is configured.
+        used for indices in the library.
       </li>
       <li>
         <acronym>deal.II</acronym> includes copies of boost, Kokkos, muParser, TBB, and
index 8f8064b8f7fc916ac103252edb45cacef3c6244a..d55206d590bb8fb8b0de0f11896cbeaa08feb00e 100644 (file)
       another way, installing PETSc with the flag <code>--download-mpich</code>
       often causes problems (such as linking errors or poor performance)
       that may be avoided by using whatever your system provides instead.
+
+      If you want to solve problems which have more than two billion unknowns
+      with PETSc then you should also pass the
+      <code>--with-64-bit-indices=on</code> flag to <code>configure.py</code>.
+      You will also want to configure deal.II with 64-bit indices by
+      providing <code>-DDEAL_II_WITH_64BIT_INDICES=ON</code> to deal.II's cmake
+      configuration run. deal.II will throw an exception if it cannot
+      successfully convert indices between the two libraries, but, as long
+      as the supported index ranges overlap (e.g., when solving problems with
+      less than 2 billion degrees of freedom where either PETSc or deal.II uses
+      32-bit indices and the other uses 64-bit indices) all solvers will work
+      correctly.
+
       <br>
       Now let PETSc check his own sanity:
       <pre>
index bf2b5e2d3cf32a8a40c19ba77d604c4845921f72..3cb2cfb71b874afbb915233079c4d72ed0b0a74f 100644 (file)
                 cells or unknowns to approximately four billions. If
                 larger problem must be solved, pass the
                 <code>-DDEAL_II_WITH_64BIT_INDICES=ON</code> argument to
-                <code>cmake</code>. To use this option with
-                PETSc, PETSc must be compiled
-                with the option <code>--with-64-bit-indices</code>.
+                <code>cmake</code>.
             </p>
         </li>
     </ul>

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.