Mudanças entre as edições de "MUMPS"

De WikiLICC
Ir para: navegação, pesquisa
m
m
Linha 21: Linha 21:
 
  IORDERINGSC = $(IMETIS) $(IPORD) $(ISCOTCH)
 
  IORDERINGSC = $(IMETIS) $(IPORD) $(ISCOTCH)
 
   
 
   
  PLAT   =
+
  PLAT   =
  LIBEXT = .a
+
  LIBEXT = .a
  OUTC   = -o
+
  OUTC   = -o
  OUTF   = -o
+
  OUTF   = -o
  RM = /bin/rm -f
+
  RM     = /bin/rm -f
  CC = gcc
+
  CC     = gcc
  FC = gfortran
+
  FC     = gfortran
  FL = gfortran
+
  FL     = gfortran
  AR = ar vr
+
  AR     = ar vr
 
  RANLIB = echo
 
  RANLIB = echo
 +
 
  # para MUMPS sequencial (nao usado)
 
  # para MUMPS sequencial (nao usado)
  INCSEQ = -I$(topdir)/libseq
+
  INCSEQ = -I$(topdir)/libseq
  LIBSEQ = -L$(topdir)/libseq -lmpiseq
+
  LIBSEQ = -L$(topdir)/libseq -lmpiseq
 
   
 
   
 
  # Para MUMPS usando mpich2 ('''NOTE que REPETE mpiblacs DUAS VEZES''')
 
  # Para MUMPS usando mpich2 ('''NOTE que REPETE mpiblacs DUAS VEZES''')
Linha 41: Linha 42:
 
  LIBPAR = $(SCALAP)  -L/usr/lib64/mpich2/lib -lmpich
 
  LIBPAR = $(SCALAP)  -L/usr/lib64/mpich2/lib -lmpich
 
   
 
   
  LIBBLAS = -L/usr/lib64 -lblas
+
  LIBBLAS = -L/usr/lib64 -lblas
  LIBOTHERS = -lpthread
+
  LIBOTHERS= -lpthread
 
   
 
   
  CDEFS   = -DAdd_
+
  CDEFS   = -DAdd_
 
   
 
   
  OPTF   = -O -DALLOW_NON_INIT
+
  OPTF     = -O -DALLOW_NON_INIT
  OPTL   = -O
+
  OPTL     = -O
  OPTC   = -O
+
  OPTC     = -O
 
   
 
   
  INCS = $(INCPAR)
+
  INCS     = $(INCPAR)
  LIBS = $(LIBPAR)
+
  LIBS     = $(LIBPAR)
 
  LIBSEQNEEDED =
 
  LIBSEQNEEDED =
  
 
Compilar escolhendo a precisão (Z,D,S,C)
 
Compilar escolhendo a precisão (Z,D,S,C)
 
  [user] make z
 
  [user] make z

Edição das 23h25min de 12 de abril de 2013

Dicas para instalar MUMPS no linux.

  • Página oficial do MUMPS, : http://graal.ens-lyon.fr/MUMPS/
  • Baixe o arquivo MUMPS_4.10.0.tar.gz, descompacte, (troque 4.10.0 pela n.o da última versão), leia o README:
[user] wget http://mumps.enseeiht.fr/MUMPS_4.10.0.tar.gz
[user] tar zxvf MUMPS_4.10.0.tar.gz
[user] cd MUMPS_4.10.0
[user] more README
  • Escolha o Makefile.inc apropriado, veja o exemplo simplificado (com gfortran e mpich2)
# compilei apenas o PORD, nao instalei o Metis
LPORDDIR = $(topdir)/PORD/lib/
IPORD    = -I$(topdir)/PORD/include/
LPORD    = -L$(LPORDDIR) -lpord

ORDERINGSF  = -Dpord
ORDERINGSC  = $(ORDERINGSF)

LORDERINGS  = $(LMETIS) $(LPORD) $(LSCOTCH)
IORDERINGSF = $(ISCOTCH)
IORDERINGSC = $(IMETIS) $(IPORD) $(ISCOTCH)

PLAT   =
LIBEXT = .a
OUTC   = -o
OUTF   = -o
RM     = /bin/rm -f
CC     = gcc
FC     = gfortran
FL     = gfortran
AR     = ar vr
RANLIB = echo
# para MUMPS sequencial (nao usado)
INCSEQ = -I$(topdir)/libseq
LIBSEQ = -L$(topdir)/libseq -lmpiseq

# Para MUMPS usando mpich2 (NOTE que REPETE mpiblacs DUAS VEZES)
SCALAP = -L/usr/lib64/mpich2/lib -lscalapack -lmpiblacs -lmpiblacsF77init -lmpiblacs -llapack
INCPAR = -I/usr/include/mpich2-x86_64

LIBPAR = $(SCALAP)  -L/usr/lib64/mpich2/lib -lmpich

LIBBLAS  = -L/usr/lib64 -lblas
LIBOTHERS= -lpthread

CDEFS    = -DAdd_

OPTF     = -O -DALLOW_NON_INIT
OPTL     = -O
OPTC     = -O

INCS     = $(INCPAR)
LIBS     = $(LIBPAR)
LIBSEQNEEDED =

Compilar escolhendo a precisão (Z,D,S,C)

[user] make z