guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

04/04: gnu: superlu-dist: Update to 6.4.0.


From: guix-commits
Subject: 04/04: gnu: superlu-dist: Update to 6.4.0.
Date: Sat, 5 Dec 2020 12:15:20 -0500 (EST)

bavier pushed a commit to branch master
in repository guix.

commit 705af5403b3a8d7e942820bdff74195a1c3d9c89
Author: Eric Bavier <bavier@member.fsf.org>
AuthorDate: Sat Dec 5 01:00:42 2020 -0600

    gnu: superlu-dist: Update to 6.4.0.
    
    * gnu/packages/maths.scm (superlu-dist): Update to 6.4.0
    [source]: Use git-fetch, as tarballs are no longer published.
    * gnu/packages/patches/superlu-dist-awpm-grid.patch: Remove all but the 
first
    hunk; they are unnecessary.
---
 gnu/packages/maths.scm                            | 13 ++++++----
 gnu/packages/patches/superlu-dist-awpm-grid.patch | 31 ++++++++---------------
 2 files changed, 18 insertions(+), 26 deletions(-)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 26625d5..7d841af 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -2975,18 +2975,21 @@ also provides threshold-based ILU factorization 
preconditioners.")
 (define-public superlu-dist
   (package
     (name "superlu-dist")
-    (version "6.2.0")
+    (version "6.4.0")
     (source
      (origin
-       (method url-fetch)
-       (uri (string-append "https://portal.nersc.gov/project/sparse/superlu/";
-                           "superlu_dist_" version ".tar.gz"))
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/xiaoyeli/superlu_dist";)
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
        (sha256
-        (base32 "1ynmwqajc9sc3my2hssa5k9s58ggvizqv9rdss0j7w99pbh5mnvw"))
+        (base32 "0fa29yr72p4yq5ln4rgfsawmi5935n4qcr5niz6864bjladz4lql"))
        (modules '((guix build utils)))
        (snippet
         ;; Replace the non-free implementation of MC64 with a stub
         '(begin
+           (make-file-writable "SRC/mc64ad_dist.c")
            (call-with-output-file "SRC/mc64ad_dist.c"
              (lambda (port)
                (display "
diff --git a/gnu/packages/patches/superlu-dist-awpm-grid.patch 
b/gnu/packages/patches/superlu-dist-awpm-grid.patch
index d6cb8e5..42d1683 100644
--- a/gnu/packages/patches/superlu-dist-awpm-grid.patch
+++ b/gnu/packages/patches/superlu-dist-awpm-grid.patch
@@ -1,8 +1,8 @@
 Create the CombBLAS::SpParMat with the MPI_Comm from the input 'gridinfo_t'.
 This prevents a warning/error from CombBLAS about using MPI_COMM_WORLD.
 
---- a/SRC/AWPM_CombBLAS.hpp
-+++ b/SRC/AWPM_CombBLAS.hpp
+--- a/SRC/dHWPM_CombBLAS.hpp
++++ b/SRC/dHWPM_CombBLAS.hpp
 @@ -52,7 +52,7 @@
      {
          printf("AWPM only supports square process grid. Retuning without a 
permutation.\n");
@@ -12,25 +12,14 @@ This prevents a warning/error from CombBLAS about using 
MPI_COMM_WORLD.
      std::vector< std::vector < std::tuple<int_t,int_t,double> > > data(procs);
      
      /* ------------------------------------------------------------
-@@ -100,11 +100,10 @@
-     combblas::AWPM(Adcsc, mateRow2Col, mateCol2Row,true);
-     
-     // now gather the matching vector
--    MPI_Comm World = mateRow2Col.getcommgrid()->GetWorld();
-     int * rdispls = new int[procs];
-     int sendcnt = mateRow2Col.LocArrSize();
-     int * recvcnt = new int[procs];
--    MPI_Allgather(&sendcnt, 1, MPI_INT, recvcnt, 1, MPI_INT, World);
-+    MPI_Allgather(&sendcnt, 1, MPI_INT, recvcnt, 1, MPI_INT, grid->comm);
-     rdispls[0] = 0;
-     for(int i=0; i<procs-1; ++i)
+--- a/SRC/zHWPM_CombBLAS.hpp
++++ b/SRC/zHWPM_CombBLAS.hpp
+@@ -52,7 +52,7 @@
      {
-@@ -112,7 +111,7 @@
+         printf("AWPM only supports square process grid. Retuning without a 
permutation.\n");
      }
-     int_t *senddata = (int_t *)mateRow2Col.GetLocArr();
-     
--    MPI_Allgatherv(senddata, sendcnt, combblas::MPIType<int_t>(), 
ScalePermstruct->perm_r, recvcnt, rdispls, combblas::MPIType<int_t>(), World);
-+    MPI_Allgatherv(senddata, sendcnt, combblas::MPIType<int_t>(), 
ScalePermstruct->perm_r, recvcnt, rdispls, combblas::MPIType<int_t>(), 
grid->comm);
+-    combblas::SpParMat < int_t, double, combblas::SpDCCols<int_t,double> > 
Adcsc;
++    combblas::SpParMat < int_t, double, combblas::SpDCCols<int_t,double> > 
Adcsc(grid->comm);
+     std::vector< std::vector < std::tuple<int_t,int_t,double> > > data(procs);
      
-     delete[] rdispls;
-     delete[] recvcnt;
+     /* ------------------------------------------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]