This commit is contained in:
commit
70f78c3961
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
.osc
|
98
superlu-3.0.diff
Normal file
98
superlu-3.0.diff
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
Index: SuperLU_3.0/Makefile
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/Makefile
|
||||||
|
+++ SuperLU_3.0/Makefile
|
||||||
|
@@ -14,8 +14,12 @@
|
||||||
|
# October 15, 2003 Version 3.0
|
||||||
|
#
|
||||||
|
############################################################################
|
||||||
|
|
||||||
|
+DESTDIR =
|
||||||
|
+LIBDIR = $(prefix)/lib
|
||||||
|
+DESTLIBDIR = $(DESTDIR)/$(LIBDIR)
|
||||||
|
+
|
||||||
|
include make.inc
|
||||||
|
|
||||||
|
all: install lib testing
|
||||||
|
|
||||||
|
@@ -36,8 +40,18 @@ superlulib:
|
||||||
|
|
||||||
|
tmglib:
|
||||||
|
( cd TESTING/MATGEN; $(MAKE) )
|
||||||
|
|
||||||
|
+install_lib: superlulib
|
||||||
|
+ $(INSTALL) -m 0755 -d $(DESTLIBDIR)
|
||||||
|
+ $(INSTALL) -m 0644 superlu$(PLAT).a $(DESTLIBDIR)/libsuperlu.a
|
||||||
|
+ ln -sf libsuperlu.a $(DESTLIBDIR)/superlu$(PLAT).a
|
||||||
|
+
|
||||||
|
+install_blas: blas$(PLAT).a
|
||||||
|
+ $(INSTALL) -m 0755 -d $(DESTLIBDIR)
|
||||||
|
+ $(INSTALL) -m 0644 blas$(PLAT).a $(DESTLIBDIR)/libblas2.a
|
||||||
|
+ ln -sf libblas2.a $(DESTLIBDIR)/blas2$(PLAT).a
|
||||||
|
+
|
||||||
|
matlabmex:
|
||||||
|
( cd MATLAB; $(MAKE) )
|
||||||
|
|
||||||
|
testing:
|
||||||
|
Index: SuperLU_3.0/make.inc
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/make.inc
|
||||||
|
+++ SuperLU_3.0/make.inc
|
||||||
|
@@ -15,36 +15,49 @@
|
||||||
|
############################################################################
|
||||||
|
#
|
||||||
|
# The machine (platform) identifier to append to the library names
|
||||||
|
#
|
||||||
|
-PLAT = _solaris
|
||||||
|
+MACH := $(shell uname -m | tr A-Z a-z | sed s§i.86§i386§)
|
||||||
|
+PLAT = _$(MACH)
|
||||||
|
+prefix = /usr
|
||||||
|
|
||||||
|
#
|
||||||
|
# The name of the libraries to be created/linked to
|
||||||
|
#
|
||||||
|
TMGLIB = tmglib$(PLAT).a
|
||||||
|
SUPERLULIB = superlu$(PLAT).a
|
||||||
|
BLASLIB = ../blas$(PLAT).a
|
||||||
|
+#BLASBLIB = -lblas
|
||||||
|
+#BLASDEF = -DUSE_VENDOR_BLAS
|
||||||
|
|
||||||
|
#
|
||||||
|
# The archiver and the flag(s) to use when building archive (library)
|
||||||
|
# If your system has no ranlib, set RANLIB = echo.
|
||||||
|
#
|
||||||
|
ARCH = ar
|
||||||
|
ARCHFLAGS = cr
|
||||||
|
RANLIB = ranlib
|
||||||
|
+INSTALL = install
|
||||||
|
|
||||||
|
-CC = cc
|
||||||
|
-CFLAGS = -xO3 -xcg92
|
||||||
|
-FORTRAN = f77
|
||||||
|
-FFLAGS = -O
|
||||||
|
-LOADER = cc
|
||||||
|
-LOADOPTS = -xO3
|
||||||
|
+CC = gcc
|
||||||
|
+CFLAGS = $(RPM_OPT_FLAGS) -fPIC -fschedule-insns2 \
|
||||||
|
+ -funroll-loops -fstrict-aliasing -frerun-loop-opt \
|
||||||
|
+ -ftree-vectorize -funit-at-a-time
|
||||||
|
+ifeq ($(MACH),i386)
|
||||||
|
+ CFLAGS += -mtune=pentium-m -momit-leaf-frame-pointer # -ffast-math -msse2 -mfpmath=sse
|
||||||
|
+else
|
||||||
|
+ CFLAGS += -O3 -finline-limit=720 --param max-inline-insns-auto=160
|
||||||
|
+endif
|
||||||
|
+NOOPTS = $(RPM_OPT_FLAGS) -Os -fPIC
|
||||||
|
+FORTRAN = g77
|
||||||
|
+FFLAGS = $(CFLAGS)
|
||||||
|
+LOADER = gcc
|
||||||
|
+LOADOPTS =
|
||||||
|
|
||||||
|
#
|
||||||
|
# C preprocessor defs for compilation (-DNoChange, -DAdd_, or -DUpCase)
|
||||||
|
#
|
||||||
|
CDEFS = -DAdd_
|
||||||
|
#
|
||||||
|
# The directory in which Matlab is installed
|
||||||
|
#
|
||||||
|
-MATLAB = /usr/sww/pkg/matlab
|
||||||
|
+#MATLAB = /usr/sww/pkg/matlab
|
25
superlu-dont-opt-away.diff
Normal file
25
superlu-dont-opt-away.diff
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
Index: SuperLU_3.0/INSTALL/timertst.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/INSTALL/timertst.c
|
||||||
|
+++ SuperLU_3.0/INSTALL/timertst.c
|
||||||
|
@@ -5,8 +5,10 @@ void mysub(int n, double *x, double *y)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
+volatile double _dummy;
|
||||||
|
+
|
||||||
|
main()
|
||||||
|
{
|
||||||
|
/* Parameters */
|
||||||
|
#define NMAX 100
|
||||||
|
@@ -32,8 +34,9 @@ main()
|
||||||
|
for (j = 0; j < iters; ++j) {
|
||||||
|
for (i = 0; i < NMAX; ++i)
|
||||||
|
y[i] += alpha * x[i];
|
||||||
|
alpha = -alpha;
|
||||||
|
+ _dummy = y[j%NMAX];
|
||||||
|
}
|
||||||
|
t2 = SuperLU_timer_();
|
||||||
|
tnotim = t2 - t1;
|
||||||
|
if ( tnotim > 0. ){
|
182
superlu-include.patch
Normal file
182
superlu-include.patch
Normal file
@ -0,0 +1,182 @@
|
|||||||
|
Index: SuperLU_3.0/SRC/xerbla.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/SRC/xerbla.c
|
||||||
|
+++ SuperLU_3.0/SRC/xerbla.c
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
-#include "stdio.h"
|
||||||
|
+#include <stdio.h>
|
||||||
|
|
||||||
|
/* Subroutine */ int xerbla_(char *srname, int *info)
|
||||||
|
{
|
||||||
|
/* -- LAPACK auxiliary routine (version 2.0) --
|
||||||
|
Index: SuperLU_3.0/TESTING/MATGEN/lsamen.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/TESTING/MATGEN/lsamen.c
|
||||||
|
+++ SuperLU_3.0/TESTING/MATGEN/lsamen.c
|
||||||
|
@@ -1,5 +1,6 @@
|
||||||
|
#include "f2c.h"
|
||||||
|
+#include <string.h>
|
||||||
|
|
||||||
|
logical lsamen_(integer *n, char *ca, char *cb)
|
||||||
|
{
|
||||||
|
/* -- LAPACK auxiliary routine (version 2.0) --
|
||||||
|
Index: SuperLU_3.0/INSTALL/timertst.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/INSTALL/timertst.c
|
||||||
|
+++ SuperLU_3.0/INSTALL/timertst.c
|
||||||
|
@@ -1,5 +1,6 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
+#include <stdlib.h>
|
||||||
|
|
||||||
|
void mysub(int n, double *x, double *y)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
Index: SuperLU_3.0/TESTING/sdrive.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/TESTING/sdrive.c
|
||||||
|
+++ SuperLU_3.0/TESTING/sdrive.c
|
||||||
|
@@ -10,8 +10,9 @@
|
||||||
|
* File name: sdrive.c
|
||||||
|
* Purpose: MAIN test program
|
||||||
|
*/
|
||||||
|
#include <string.h>
|
||||||
|
+#include <unistd.h>
|
||||||
|
#include "slu_sdefs.h"
|
||||||
|
|
||||||
|
#define NTESTS 5 /* Number of test types */
|
||||||
|
#define NTYPES 11 /* Number of matrix types */
|
||||||
|
@@ -21,8 +22,13 @@
|
||||||
|
#define FMT2 "%10s:fact=%4d, trans=%4d, equed=%c, n=%d, imat=%d, test(%d)=%12.5g\n"
|
||||||
|
#define FMT3 "%10s:info=%d, izero=%d, n=%d, nrhs=%d, imat=%d, nfail=%d\n"
|
||||||
|
|
||||||
|
|
||||||
|
+static void
|
||||||
|
+parse_command_line(int argc, char *argv[], char *matrix_type,
|
||||||
|
+ int *n, int *w, int *relax, int *nrhs, int *maxsuper,
|
||||||
|
+ int *rowblk, int *colblk, int *lwork, double *u);
|
||||||
|
+
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Purpose
|
||||||
|
@@ -82,9 +88,8 @@ main(int argc, char *argv[])
|
||||||
|
SamePattern_SameRowPerm};
|
||||||
|
static trans_t transs[] = {NOTRANS, TRANS, CONJ};
|
||||||
|
|
||||||
|
/* Some function prototypes */
|
||||||
|
- static void parse_command_line();
|
||||||
|
extern int sp_sget01(int, int, SuperMatrix *, SuperMatrix *,
|
||||||
|
SuperMatrix *, int *, float *);
|
||||||
|
extern int sp_sget02(trans_t, int, int, int, SuperMatrix *, float *,
|
||||||
|
int, float *, int, float *resid);
|
||||||
|
Index: SuperLU_3.0/TESTING/ddrive.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/TESTING/ddrive.c
|
||||||
|
+++ SuperLU_3.0/TESTING/ddrive.c
|
||||||
|
@@ -10,8 +10,9 @@
|
||||||
|
* File name: ddrive.c
|
||||||
|
* Purpose: MAIN test program
|
||||||
|
*/
|
||||||
|
#include <string.h>
|
||||||
|
+#include <unistd.h>
|
||||||
|
#include "slu_ddefs.h"
|
||||||
|
|
||||||
|
#define NTESTS 5 /* Number of test types */
|
||||||
|
#define NTYPES 11 /* Number of matrix types */
|
||||||
|
@@ -20,8 +21,12 @@
|
||||||
|
#define FMT1 "%10s:n=%d, test(%d)=%12.5g\n"
|
||||||
|
#define FMT2 "%10s:fact=%4d, trans=%4d, equed=%c, n=%d, imat=%d, test(%d)=%12.5g\n"
|
||||||
|
#define FMT3 "%10s:info=%d, izero=%d, n=%d, nrhs=%d, imat=%d, nfail=%d\n"
|
||||||
|
|
||||||
|
+static void
|
||||||
|
+parse_command_line(int argc, char *argv[], char *matrix_type,
|
||||||
|
+ int *n, int *w, int *relax, int *nrhs, int *maxsuper,
|
||||||
|
+ int *rowblk, int *colblk, int *lwork, double *u);
|
||||||
|
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
@@ -82,9 +87,8 @@ main(int argc, char *argv[])
|
||||||
|
SamePattern_SameRowPerm};
|
||||||
|
static trans_t transs[] = {NOTRANS, TRANS, CONJ};
|
||||||
|
|
||||||
|
/* Some function prototypes */
|
||||||
|
- static void parse_command_line();
|
||||||
|
extern int sp_dget01(int, int, SuperMatrix *, SuperMatrix *,
|
||||||
|
SuperMatrix *, int *, double *);
|
||||||
|
extern int sp_dget02(trans_t, int, int, int, SuperMatrix *, double *,
|
||||||
|
int, double *, int, double *resid);
|
||||||
|
Index: SuperLU_3.0/TESTING/cdrive.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/TESTING/cdrive.c
|
||||||
|
+++ SuperLU_3.0/TESTING/cdrive.c
|
||||||
|
@@ -10,8 +10,9 @@
|
||||||
|
* File name: cdrive.c
|
||||||
|
* Purpose: MAIN test program
|
||||||
|
*/
|
||||||
|
#include <string.h>
|
||||||
|
+#include <unistd.h>
|
||||||
|
#include "slu_cdefs.h"
|
||||||
|
|
||||||
|
#define NTESTS 5 /* Number of test types */
|
||||||
|
#define NTYPES 11 /* Number of matrix types */
|
||||||
|
@@ -20,8 +21,12 @@
|
||||||
|
#define FMT1 "%10s:n=%d, test(%d)=%12.5g\n"
|
||||||
|
#define FMT2 "%10s:fact=%4d, trans=%4d, equed=%c, n=%d, imat=%d, test(%d)=%12.5g\n"
|
||||||
|
#define FMT3 "%10s:info=%d, izero=%d, n=%d, nrhs=%d, imat=%d, nfail=%d\n"
|
||||||
|
|
||||||
|
+static void
|
||||||
|
+parse_command_line(int argc, char *argv[], char *matrix_type,
|
||||||
|
+ int *n, int *w, int *relax, int *nrhs, int *maxsuper,
|
||||||
|
+ int *rowblk, int *colblk, int *lwork, double *u);
|
||||||
|
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
@@ -82,9 +87,8 @@ main(int argc, char *argv[])
|
||||||
|
SamePattern_SameRowPerm};
|
||||||
|
static trans_t transs[] = {NOTRANS, TRANS, CONJ};
|
||||||
|
|
||||||
|
/* Some function prototypes */
|
||||||
|
- static void parse_command_line();
|
||||||
|
extern int sp_cget01(int, int, SuperMatrix *, SuperMatrix *,
|
||||||
|
SuperMatrix *, int *, float *);
|
||||||
|
extern int sp_cget02(trans_t, int, int, int, SuperMatrix *, complex *,
|
||||||
|
int, complex *, int, float *resid);
|
||||||
|
Index: SuperLU_3.0/TESTING/zdrive.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/TESTING/zdrive.c
|
||||||
|
+++ SuperLU_3.0/TESTING/zdrive.c
|
||||||
|
@@ -10,8 +10,9 @@
|
||||||
|
* File name: zdrive.c
|
||||||
|
* Purpose: MAIN test program
|
||||||
|
*/
|
||||||
|
#include <string.h>
|
||||||
|
+#include <unistd.h>
|
||||||
|
#include "slu_zdefs.h"
|
||||||
|
|
||||||
|
#define NTESTS 5 /* Number of test types */
|
||||||
|
#define NTYPES 11 /* Number of matrix types */
|
||||||
|
@@ -20,8 +21,12 @@
|
||||||
|
#define FMT1 "%10s:n=%d, test(%d)=%12.5g\n"
|
||||||
|
#define FMT2 "%10s:fact=%4d, trans=%4d, equed=%c, n=%d, imat=%d, test(%d)=%12.5g\n"
|
||||||
|
#define FMT3 "%10s:info=%d, izero=%d, n=%d, nrhs=%d, imat=%d, nfail=%d\n"
|
||||||
|
|
||||||
|
+static void
|
||||||
|
+parse_command_line(int argc, char *argv[], char *matrix_type,
|
||||||
|
+ int *n, int *w, int *relax, int *nrhs, int *maxsuper,
|
||||||
|
+ int *rowblk, int *colblk, int *lwork, double *u);
|
||||||
|
|
||||||
|
main(int argc, char *argv[])
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
@@ -82,9 +87,8 @@ main(int argc, char *argv[])
|
||||||
|
SamePattern_SameRowPerm};
|
||||||
|
static trans_t transs[] = {NOTRANS, TRANS, CONJ};
|
||||||
|
|
||||||
|
/* Some function prototypes */
|
||||||
|
- static void parse_command_line();
|
||||||
|
extern int sp_zget01(int, int, SuperMatrix *, SuperMatrix *,
|
||||||
|
SuperMatrix *, int *, double *);
|
||||||
|
extern int sp_zget02(trans_t, int, int, int, SuperMatrix *, doublecomplex *,
|
||||||
|
int, doublecomplex *, int, double *resid);
|
2668
superlu-initialize.diff
Normal file
2668
superlu-initialize.diff
Normal file
File diff suppressed because it is too large
Load Diff
60
superlu-overflow.patch
Normal file
60
superlu-overflow.patch
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
Index: SuperLU_3.0/TESTING/ddrive.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/TESTING/ddrive.c
|
||||||
|
+++ SuperLU_3.0/TESTING/ddrive.c
|
||||||
|
@@ -72,9 +72,9 @@ main(int argc, char *argv[])
|
||||||
|
fact_t fact;
|
||||||
|
trans_t trans;
|
||||||
|
SuperLUStat_t stat;
|
||||||
|
static char matrix_type[8];
|
||||||
|
- static char equed[1], path[3], sym[1], dist[1];
|
||||||
|
+ static char equed[1], path[4], sym[1], dist[1];
|
||||||
|
|
||||||
|
/* Fixed set of parameters */
|
||||||
|
int iseed[] = {1988, 1989, 1990, 1991};
|
||||||
|
static char equeds[] = {'N', 'R', 'C', 'B'};
|
||||||
|
Index: SuperLU_3.0/TESTING/sdrive.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/TESTING/sdrive.c
|
||||||
|
+++ SuperLU_3.0/TESTING/sdrive.c
|
||||||
|
@@ -72,9 +72,9 @@ main(int argc, char *argv[])
|
||||||
|
fact_t fact;
|
||||||
|
trans_t trans;
|
||||||
|
SuperLUStat_t stat;
|
||||||
|
static char matrix_type[8];
|
||||||
|
- static char equed[1], path[3], sym[1], dist[1];
|
||||||
|
+ static char equed[1], path[4], sym[1], dist[1];
|
||||||
|
|
||||||
|
/* Fixed set of parameters */
|
||||||
|
int iseed[] = {1988, 1989, 1990, 1991};
|
||||||
|
static char equeds[] = {'N', 'R', 'C', 'B'};
|
||||||
|
Index: SuperLU_3.0/TESTING/zdrive.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/TESTING/zdrive.c
|
||||||
|
+++ SuperLU_3.0/TESTING/zdrive.c
|
||||||
|
@@ -72,9 +72,9 @@ main(int argc, char *argv[])
|
||||||
|
fact_t fact;
|
||||||
|
trans_t trans;
|
||||||
|
SuperLUStat_t stat;
|
||||||
|
static char matrix_type[8];
|
||||||
|
- static char equed[1], path[3], sym[1], dist[1];
|
||||||
|
+ static char equed[1], path[4], sym[1], dist[1];
|
||||||
|
|
||||||
|
/* Fixed set of parameters */
|
||||||
|
int iseed[] = {1988, 1989, 1990, 1991};
|
||||||
|
static char equeds[] = {'N', 'R', 'C', 'B'};
|
||||||
|
Index: SuperLU_3.0/TESTING/cdrive.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/TESTING/cdrive.c
|
||||||
|
+++ SuperLU_3.0/TESTING/cdrive.c
|
||||||
|
@@ -72,9 +72,9 @@ main(int argc, char *argv[])
|
||||||
|
fact_t fact;
|
||||||
|
trans_t trans;
|
||||||
|
SuperLUStat_t stat;
|
||||||
|
static char matrix_type[8];
|
||||||
|
- static char equed[1], path[3], sym[1], dist[1];
|
||||||
|
+ static char equed[1], path[4], sym[1], dist[1];
|
||||||
|
|
||||||
|
/* Fixed set of parameters */
|
||||||
|
int iseed[] = {1988, 1989, 1990, 1991};
|
||||||
|
static char equeds[] = {'N', 'R', 'C', 'B'};
|
32
superlu-undef-code.diff
Normal file
32
superlu-undef-code.diff
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
Index: SuperLU_3.0/SRC/cutil.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/SRC/cutil.c
|
||||||
|
+++ SuperLU_3.0/SRC/cutil.c
|
||||||
|
@@ -239,9 +239,10 @@ cPrint_SuperNode_Matrix(char *what, Supe
|
||||||
|
nsup = sup_to_col[k+1] - c;
|
||||||
|
for (j = c; j < c + nsup; ++j) {
|
||||||
|
d = Astore->nzval_colptr[j];
|
||||||
|
for (i = rowind_colptr[c]; i < rowind_colptr[c+1]; ++i) {
|
||||||
|
- printf("%d\t%d\t%e\t%e\n", rowind[i], j, dp[d++], dp[d++]);
|
||||||
|
+ printf("%d\t%d\t%e\t%e\n", rowind[i], j, dp[d], dp[d+1]);
|
||||||
|
+ d += 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#if 0
|
||||||
|
Index: SuperLU_3.0/SRC/zutil.c
|
||||||
|
===================================================================
|
||||||
|
--- SuperLU_3.0.orig/SRC/zutil.c
|
||||||
|
+++ SuperLU_3.0/SRC/zutil.c
|
||||||
|
@@ -239,9 +239,10 @@ zPrint_SuperNode_Matrix(char *what, Supe
|
||||||
|
nsup = sup_to_col[k+1] - c;
|
||||||
|
for (j = c; j < c + nsup; ++j) {
|
||||||
|
d = Astore->nzval_colptr[j];
|
||||||
|
for (i = rowind_colptr[c]; i < rowind_colptr[c+1]; ++i) {
|
||||||
|
- printf("%d\t%d\t%e\t%e\n", rowind[i], j, dp[d++], dp[d++]);
|
||||||
|
+ printf("%d\t%d\t%e\t%e\n", rowind[i], j, dp[d], dp[d+1]);
|
||||||
|
+ d += 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#if 0
|
158
superlu.changes
Normal file
158
superlu.changes
Normal file
@ -0,0 +1,158 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jun 22 18:18:46 CEST 2006 - ro@suse.de
|
||||||
|
|
||||||
|
- remove selfprovides
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Mar 27 02:23:29 CEST 2006 - garloff@suse.de
|
||||||
|
|
||||||
|
- superlu-undef-code.diff: Fix undefined code (#160443).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jan 25 21:41:53 CET 2006 - mls@suse.de
|
||||||
|
|
||||||
|
- converted neededforbuild to BuildRequires
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Dec 22 19:26:34 CET 2005 - garloff@suse.de
|
||||||
|
|
||||||
|
- Install header files into /usr/include/superlu/
|
||||||
|
- Update User Guide.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 21 13:33:20 CET 2005 - garloff@suse.de
|
||||||
|
|
||||||
|
- Include EXAMPLE dir as documentation.
|
||||||
|
- Build as non-root.
|
||||||
|
- Nuke unused local vars referencing uninitialized vars.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Dec 21 02:17:35 CET 2005 - garloff@suse.de
|
||||||
|
|
||||||
|
- Update to SuperLU-3.0: [#133821]
|
||||||
|
* Added "options" input argument and "stat" output argument
|
||||||
|
for the driver routines
|
||||||
|
* More Examples
|
||||||
|
* Added a "symmetric mode" for (nearly) symmetric matrices
|
||||||
|
* Better Fortran interface.
|
||||||
|
* fixed a bug in the complex drivers sgssvx/zgssvx when the
|
||||||
|
input matrix is stored in compressed row format.
|
||||||
|
* prefixed the header files by "slu_".
|
||||||
|
* Fixed a memory leak in get_perm_c() when bnz=0.
|
||||||
|
* Changed "abs" to "fabs" in izmax1.
|
||||||
|
* Upgraded COLAMD to the latest version (2.3).15
|
||||||
|
- Add various declarations and #include statements
|
||||||
|
- Trick compiler into not optimizing away a loop in our timing
|
||||||
|
measurement.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Nov 25 14:20:00 CET 2005 - yxu@suse.de
|
||||||
|
|
||||||
|
- add missing function prototypes
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 15 13:42:23 CET 2005 - dmueller@suse.de
|
||||||
|
|
||||||
|
- avoid an endless loop during building (#133820)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon May 9 17:24:12 CEST 2005 - meissner@suse.de
|
||||||
|
|
||||||
|
- fixed 1 byte buffer overflows.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Dec 20 02:58:44 CET 2004 - garloff@suse.de
|
||||||
|
|
||||||
|
- Pass $(RPM_OPT_FLAGS) -Os -fPIC for files that don't need to be
|
||||||
|
optimized.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Sep 6 19:31:26 CEST 2003 - garloff@suse.de
|
||||||
|
|
||||||
|
- Add -fPIC to allow inclusion in dynamic lib.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sun Aug 10 22:19:09 CEST 2003 - garloff@suse.de
|
||||||
|
|
||||||
|
- -O3 leads to an endless loop in dlamanch test on x86. Probably
|
||||||
|
some compiler of FPU weirdness. Remove -O3 on x86 again.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 7 16:49:54 CEST 2003 - garloff@suse.de
|
||||||
|
|
||||||
|
- Adapt chown syntax to owner:group.
|
||||||
|
- Reenable -O3 (compiler bug fixed?), but limit automatical
|
||||||
|
inlining.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Jun 18 02:23:54 CEST 2003 - ro@suse.de
|
||||||
|
|
||||||
|
- added directory to filelist.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 28 11:40:33 CEST 2002 - ro@suse.de
|
||||||
|
|
||||||
|
- remove -O3 from cflags (results in endless loop).
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 8 18:40:16 CEST 2002 - garloff@suse.de
|
||||||
|
|
||||||
|
- lib64 fix.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 8 15:52:24 MEST 2002 - garloff@suse.de
|
||||||
|
|
||||||
|
- Fix test scripts.
|
||||||
|
- Use BuildRoot.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed May 8 13:59:11 MEST 2002 - garloff@suse.de
|
||||||
|
|
||||||
|
- Remove BLAS, Lapack.
|
||||||
|
- Rename package into SuperLU.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Apr 20 14:42:04 MEST 2002 - garloff@suse.de
|
||||||
|
|
||||||
|
- Disable -fast-math
|
||||||
|
- In SuperLU, use CBLAS that ships with it
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 19 20:17:57 MEST 2002 - garloff@suse.de
|
||||||
|
|
||||||
|
- Update to
|
||||||
|
* CLAPACK-3.0
|
||||||
|
* SuperLU-2.0
|
||||||
|
- Added SuperLU user guide
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 19 20:17:23 MEST 2002 - garloff@suse.de
|
||||||
|
|
||||||
|
- Fixed compilation with gcc-3.1:
|
||||||
|
link with -lfrtbegin (which contains main formerly in g2c)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Apr 10 01:49:54 CEST 2002 - ro@suse.de
|
||||||
|
|
||||||
|
- fix owner for README.SuperLU
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Aug 7 22:12:27 CEST 2000 - garloff@suse.de
|
||||||
|
|
||||||
|
- Use %{_docdir} to put docu in the right place.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Aug 7 19:32:14 CEST 2000 - garloff@suse.de
|
||||||
|
|
||||||
|
- Add -mcpu=pentiumpro for i386
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Sep 13 17:23:57 CEST 1999 - bs@suse.de
|
||||||
|
|
||||||
|
- ran old prepare_spec on spec file to switch to new prepare_spec.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Sep 1 00:21:25 CEST 1999 - garloff@suse.de
|
||||||
|
|
||||||
|
- First creation of package.
|
||||||
|
|
162
superlu.spec
Normal file
162
superlu.spec
Normal file
@ -0,0 +1,162 @@
|
|||||||
|
#
|
||||||
|
# spec file for package superlu (Version 3.0)
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
|
# This file and all modifications and additions to the pristine
|
||||||
|
# package are under the same license as the package itself.
|
||||||
|
#
|
||||||
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
# norootforbuild
|
||||||
|
|
||||||
|
Name: superlu
|
||||||
|
BuildRequires: gcc-fortran tcsh
|
||||||
|
License: BSD
|
||||||
|
Group: Development/Libraries/C and C++
|
||||||
|
Provides: blas2
|
||||||
|
Autoreqprov: on
|
||||||
|
Summary: SuperLU matrix solver
|
||||||
|
Version: 3.0
|
||||||
|
Release: 15
|
||||||
|
Source: ftp://ftp.netlib.org/scalapack/prototype/superlu_%{version}.tar.bz2
|
||||||
|
Source1: superlu_ug.ps.gz
|
||||||
|
Patch: superlu-3.0.diff
|
||||||
|
Patch1: superlu-overflow.patch
|
||||||
|
Patch2: superlu-include.patch
|
||||||
|
Patch3: superlu-dont-opt-away.diff
|
||||||
|
Patch4: superlu-initialize.diff
|
||||||
|
Patch5: superlu-undef-code.diff
|
||||||
|
URL: http://crd.lbl.gov/~xiaoye/SuperLU/
|
||||||
|
Prefix: /usr
|
||||||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
|
%description
|
||||||
|
SuperLU is an algorithm that uses group theory to optimize LU
|
||||||
|
decomposition of sparse matrices. It's the fastest direct solver for
|
||||||
|
linear systems that the author is aware of.
|
||||||
|
|
||||||
|
Docu can be found on http://www.netlib.org.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Authors:
|
||||||
|
--------
|
||||||
|
xiaoye@nersc.gov
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -n SuperLU_%{version}
|
||||||
|
%patch -p1
|
||||||
|
%patch1 -p1
|
||||||
|
%patch2 -p1
|
||||||
|
%patch3 -p1
|
||||||
|
%patch4 -p1
|
||||||
|
%patch5 -p1
|
||||||
|
|
||||||
|
%build
|
||||||
|
#cd ../SuperLU
|
||||||
|
make -C CBLAS #%{?jobs:-j%jobs}
|
||||||
|
make #%{?jobs:-j%jobs}
|
||||||
|
|
||||||
|
%install
|
||||||
|
install -d $RPM_BUILD_ROOT/%{_docdir}/superlu
|
||||||
|
make install_lib LIBDIR=%{_libdir} DESTDIR=$RPM_BUILD_ROOT
|
||||||
|
make install_blas LIBDIR=%{_libdir} DESTDIR=$RPM_BUILD_ROOT
|
||||||
|
install -d -m 0755 $RPM_BUILD_ROOT/usr/include/superlu
|
||||||
|
install -m 0644 SRC/*.h $RPM_BUILD_ROOT/usr/include/superlu/
|
||||||
|
cp -pf README $RPM_BUILD_ROOT/%{_docdir}/superlu/README.SuperLU
|
||||||
|
cp -pf %SOURCE1 $RPM_BUILD_ROOT/%{_docdir}/superlu/
|
||||||
|
cp -ax EXAMPLE $RPM_BUILD_ROOT/%{_docdir}/superlu/
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%docdir %{_docdir}/superlu
|
||||||
|
%doc %{_docdir}/superlu
|
||||||
|
%{_libdir}/libsuperlu.a
|
||||||
|
%{_libdir}/superlu_*.a
|
||||||
|
%{_libdir}/libblas2.a/
|
||||||
|
%{_libdir}/blas2_*.a
|
||||||
|
%dir /usr/include/superlu
|
||||||
|
/usr/include/superlu/*
|
||||||
|
|
||||||
|
%changelog -n superlu
|
||||||
|
* Thu Jun 22 2006 - ro@suse.de
|
||||||
|
- remove selfprovides
|
||||||
|
* Mon Mar 27 2006 - garloff@suse.de
|
||||||
|
- superlu-undef-code.diff: Fix undefined code (#160443).
|
||||||
|
* Wed Jan 25 2006 - mls@suse.de
|
||||||
|
- converted neededforbuild to BuildRequires
|
||||||
|
* Thu Dec 22 2005 - garloff@suse.de
|
||||||
|
- Install header files into /usr/include/superlu/
|
||||||
|
- Update User Guide.
|
||||||
|
* Wed Dec 21 2005 - garloff@suse.de
|
||||||
|
- Include EXAMPLE dir as documentation.
|
||||||
|
- Build as non-root.
|
||||||
|
- Nuke unused local vars referencing uninitialized vars.
|
||||||
|
* Wed Dec 21 2005 - garloff@suse.de
|
||||||
|
- Update to SuperLU-3.0: [#133821]
|
||||||
|
* Added "options" input argument and "stat" output argument
|
||||||
|
for the driver routines
|
||||||
|
* More Examples
|
||||||
|
* Added a "symmetric mode" for (nearly) symmetric matrices
|
||||||
|
* Better Fortran interface.
|
||||||
|
* fixed a bug in the complex drivers sgssvx/zgssvx when the
|
||||||
|
input matrix is stored in compressed row format.
|
||||||
|
* prefixed the header files by "slu_".
|
||||||
|
* Fixed a memory leak in get_perm_c() when bnz=0.
|
||||||
|
* Changed "abs" to "fabs" in izmax1.
|
||||||
|
* Upgraded COLAMD to the latest version (2.3).15
|
||||||
|
- Add various declarations and #include statements
|
||||||
|
- Trick compiler into not optimizing away a loop in our timing
|
||||||
|
measurement.
|
||||||
|
* Fri Nov 25 2005 - yxu@suse.de
|
||||||
|
- add missing function prototypes
|
||||||
|
* Tue Nov 15 2005 - dmueller@suse.de
|
||||||
|
- avoid an endless loop during building (#133820)
|
||||||
|
* Mon May 09 2005 - meissner@suse.de
|
||||||
|
- fixed 1 byte buffer overflows.
|
||||||
|
* Mon Dec 20 2004 - garloff@suse.de
|
||||||
|
- Pass $(RPM_OPT_FLAGS) -Os -fPIC for files that don't need to be
|
||||||
|
optimized.
|
||||||
|
* Sat Sep 06 2003 - garloff@suse.de
|
||||||
|
- Add -fPIC to allow inclusion in dynamic lib.
|
||||||
|
* Sun Aug 10 2003 - garloff@suse.de
|
||||||
|
- -O3 leads to an endless loop in dlamanch test on x86. Probably
|
||||||
|
some compiler of FPU weirdness. Remove -O3 on x86 again.
|
||||||
|
* Thu Aug 07 2003 - garloff@suse.de
|
||||||
|
- Adapt chown syntax to owner:group.
|
||||||
|
- Reenable -O3 (compiler bug fixed?), but limit automatical
|
||||||
|
inlining.
|
||||||
|
* Wed Jun 18 2003 - ro@suse.de
|
||||||
|
- added directory to filelist.
|
||||||
|
* Wed Aug 28 2002 - ro@suse.de
|
||||||
|
- remove -O3 from cflags (results in endless loop).
|
||||||
|
* Wed May 08 2002 - garloff@suse.de
|
||||||
|
- lib64 fix.
|
||||||
|
* Wed May 08 2002 - garloff@suse.de
|
||||||
|
- Fix test scripts.
|
||||||
|
- Use BuildRoot.
|
||||||
|
* Wed May 08 2002 - garloff@suse.de
|
||||||
|
- Remove BLAS, Lapack.
|
||||||
|
- Rename package into SuperLU.
|
||||||
|
* Sat Apr 20 2002 - garloff@suse.de
|
||||||
|
- Disable -fast-math
|
||||||
|
- In SuperLU, use CBLAS that ships with it
|
||||||
|
* Fri Apr 19 2002 - garloff@suse.de
|
||||||
|
- Update to
|
||||||
|
* CLAPACK-3.0
|
||||||
|
* SuperLU-2.0
|
||||||
|
- Added SuperLU user guide
|
||||||
|
* Fri Apr 19 2002 - garloff@suse.de
|
||||||
|
- Fixed compilation with gcc-3.1:
|
||||||
|
link with -lfrtbegin (which contains main formerly in g2c)
|
||||||
|
* Wed Apr 10 2002 - ro@suse.de
|
||||||
|
- fix owner for README.SuperLU
|
||||||
|
* Mon Aug 07 2000 - garloff@suse.de
|
||||||
|
- Use %%{_docdir} to put docu in the right place.
|
||||||
|
* Mon Aug 07 2000 - garloff@suse.de
|
||||||
|
- Add -mcpu=pentiumpro for i386
|
||||||
|
* Mon Sep 13 1999 - bs@suse.de
|
||||||
|
- ran old prepare_spec on spec file to switch to new prepare_spec.
|
||||||
|
* Wed Sep 01 1999 - garloff@suse.de
|
||||||
|
- First creation of package.
|
3
superlu_3.0.tar.bz2
Normal file
3
superlu_3.0.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:da1781b3376809be733884cda341c14bfeaffbc82a41b2a82565028d57907b16
|
||||||
|
size 867019
|
3
superlu_ug.ps.gz
Normal file
3
superlu_ug.ps.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:3e22d349f1f5288cfce768909b2e91ad3b95ee656d546cbbbacc3bf1a6ff1f76
|
||||||
|
size 204281
|
Loading…
Reference in New Issue
Block a user