error while running OpenSeesMP

This forum is for issues related to parallel processing
and OpenSees using the new interpreters OpenSeesSP and OpenSeesMP

Moderator: selimgunay

Post Reply
lsquinones
Posts: 14
Joined: Wed Jul 29, 2009 2:03 pm
Location: Ecuador
Contact:

error while running OpenSeesMP

Post by lsquinones »

In the laboratory where I work, has 10 PC's of 4 cores which have been installed Ubuntu 9.04 and OpenMPI in.


I have compiled without errors OpenSeesMP, but when I try to run one example seems to OpenSeesMP not detect the number of processes correctly. For example when you run a test tcl get the following:


mpiexec -np 2 ./OpenSeesMP ex1.tcl

OpenSees -- Open System For Earthquake Engineering Simulation

OpenSees -- Open System For Earthquake Engineering Simulation
Pacific Earthquake Engineering Research Center -- 2.1.0

(c) Copyright 1999,2000 The Regents of the University of California
All Rights Reserved
(Copyright and Disclaimer @ [url]http://www.berkeley.edu/OpenSees/copyright.html[/url])



Pacific Earthquake Engineering Research Center -- 2.1.0

(c) Copyright 1999,2000 The Regents of the University of California
All Rights Reserved
(Copyright and Disclaimer @ [url]http://www.berkeley.edu/OpenSees/copyright.html[/url])


Hello World Process: 0
Process Terminating 0
Hello World Process: 0
Process Terminating 0


ex1.tcl is download from [url]http://opensees.berkeley.edu/OpenSees/w ... de0003.htm[/url], in "Handouts and examples used can be found online"

I don't get what is the problem.

Could anyone help me figure out what is going on ?

Thanks a lot.


The Makefile.def that I use to compile OpenSeesMP is:


############################################################################
#
# Program: OpenSees
#
# Purpose: A Top-level Makefile to create the libraries needed
# to use the OpenSees framework.
#
# version created for Redhat 8.0 LINUX distribution
#
# Written: fmk
# Created: 01/2003
#
#
############################################################################

# %---------------------------------%
# | SECTION 1: PROGRAM |
# %---------------------------------%
#
# Specify the location and name of the OpenSees interpreter program
# that will be created (if this all works

OpenSees_PROGRAM = $(HOME)/bin/OpenSeesMP
#OpenSees_PROGRAM_MPI = $(HOME)/bin/OpenSeesMPI

# %---------------------------------%
# | SECTION 2: MAKEFILE CONSTANTS |
# %---------------------------------%
#
# Specify the constants the are used as control structure variables in the Makefiles.

OPERATING_SYSTEM = LINUX
PROGRAMMING_MODE = PARALLEL_INTERPRETERS
RELIABILITY = NO_RELIABILITY
GRAPHICS = NONE
DEBUG_MODE = DEBUG


#PROGRAMMING_MODE = PARALLEL, SEQUENTIAL
#GRAPHICS = NONE, UsingOpenGL
#RELIABILITY = YES_RELIABILITY, NO_RELIABILITY
#DEBUG_MODE = DEBUG, NO_DEBUG


# %---------------------------------%
# | SECTION 3: PATHS |
# %---------------------------------%
#
# Note: if vendor supplied BLAS and LAPACK libraries or if you have
# any of the libraries already leave the directory location blank AND
# remove the directory from DIRS.

# PUT YOUR HOME DIRECTOREY HERE
BASE = #/usr
HOME = /cluster
FE = $(HOME)/OpenSees/SRC

BLASdir = $(HOME)/OpenSees/OTHER/BLAS
CBLASdir = $(HOME)/OpenSees/OTHER/CBLAS
LAPACKdir = $(HOME)/OpenSees/OTHER/LAPACK
ARPACKdir = $(HOME)/OpenSees/OTHER/ARPACK
UMFPACKdir = $(HOME)/OpenSees/OTHER/UMFPACK
METISdir = $(HOME)/OpenSees/OTHER/METIS
SRCdir = $(HOME)/OpenSees/SRC
SUPERLUdir = $(HOME)/OpenSees/OTHER/SuperLU_3.0/SRC

SUPERLU_DISTdir = $(HOME)/OpenSees/OTHER/SuperLU_DIST_2.0/SRC

DIRS = $(BLASdir) \
$(CBLASdir) \
$(SUPERLUdir) \
$(LAPACKdir) \
$(ARPACKdir) \
$(UMFPACKdir) \
$(METISdir) \
$(SUPERLU_DISTdir) \
$(SRCdir)

# %-------------------------------------------------------%
# | SECTION 4: LIBRARIES |
# | |
# | The following section defines the libraries that will |
# | be created and/or linked with when the libraries are |
# | being created or linked with. |
# %-------------------------------------------------------%
#
# Note: if vendor supplied BLAS and LAPACK libraries leave the
# libraries blank. You have to get your own copy of the tcl/tk
# library!!
#
# Note: For libraries that will be created (any in DIRS above)
# make sure the directory exsists where you want the library to go!

FE_LIBRARY = $(HOME)/lib/libOpenSees.a
NDARRAY_LIBRARY = $(HOME)/lib/libndarray.a
MATMOD_LIBRARY = $(HOME)/lib/libmatmod.a
BJMISC_LIBRARY = $(HOME)/lib/libBJmisc.a
LAPACK_LIBRARY = $(HOME)/lib/libLapack.a
BLAS_LIBRARY = $(HOME)/lib/libBlas.a
SUPERLU_LIBRARY = $(HOME)/lib/libSuperLU.a
CBLAS_LIBRARY = $(HOME)/lib/libCBlas.a
ARPACK_LIBRARY = $(HOME)/lib/libArpack.a
UMFPACK_LIBRARY = $(HOME)/lib/libUmfpack.a
METIS_LIBRARY = $(HOME)/lib/libMetis.a
DISTRIBUTED_SUPERLU_LIBRARY = $(HOME)/lib/libDistributedSuperLU.a

#TCL_LIBRARY = /usr/lib/libtk8.5.so /usr/lib/libtcl8.5.so
#TCL_LIBRARY = /opt/tk-8.4/lib/libtk8.4.so /opt/tcl-8.4/lib/libtcl8.4.so
TCL_LIBRARY = /opt/tk-8.5/lib/libtk8.5.so /opt/tcl-8.5/lib/libtcl8.5.so

ifeq ($(RELIABILITY), YES_RELIABILITY)
RELIABILITY_LIBRARY = $(HOME)/lib/libReliability.a
else
RELIABILITY_LIBRARY =
endif

# WATCH OUT .. These libraries are removed when 'make wipe' is invoked.

WIPE_LIBS = $(FE_LIBRARY) \
$(NDARRAY_LIBRARY) \
$(MATMOD_LIBRARY) \
$(DISTRIBUTED_SUPERLU_LIBRARY) \
$(SUPERLU_LIBRARY) \
$(ARPACK_LIBRARY) \
$(UMFPACK_LIBRARY) \
$(METIS_LIBRARY) \
$(LAPACK_LIBRARY) \
$(BLAS_LIBRARY) \
$(CBLAS_LIBRARY) \
$(RELIABILITY_LIBRARY)

# %---------------------------------------------------------%
# | SECTION 5: COMPILERS |
# | |
# | The following macros specify compilers, linker/loaders, |
# | the archiver, and their options. You need to make sure |
# | these are correct for your system. |
# %---------------------------------------------------------%

# ###################################################
# # Compilers
# ###################################################

CC++ = /usr/bin/mpic++.openmpi
CC = /usr/bin/mpicc.openmpi
FC = /usr/bin/gfortran
FORTRAN = /usr/bin/gfortran
F90 = /usr/bin/gfortran
LINKER = /usr/bin/mpicxx.openmpi

AR = ar
ARFLAGS = cqls
ARCH = ar
ARCHFLAGS = cqls
RANLIB = ranlib
RANLIBFLAGS =

PROGRAMMING_FLAG =

ifeq ($(PROGRAMMING_MODE), PARALLEL)
OpenSees_PROGRAM = $(HOME)/bin/OpenSeesSP
PROGRAMMING_FLAG = -D_PARALLEL_PROCESSING
endif
ifeq ($(PROGRAMMING_MODE), PARALLEL_INTERPRETERS)
OpenSees_PROGRAM = $(HOME)/bin/OpenSeesMP
PROGRAMMING_FLAG = -D_PARALLEL_INTERPRETERS
endif

ifeq ($(GRAPHICS), UsinOpenGl)
GRAPHIC_FLAG = -D_GLX
GRAPHIC_LIBRARY = -L/usr/X11R6/lib -lGL -lGLU
else
GRAPHIC_FLAG = -D_NOGRAPHICS
GRAPHIC_LIBRARY =
endif

ifeq ($(RELIABILITY), YES_RELIABILITY)
RELIABILITY_FLAG = -D_RELIABILITY
else
RELIABILITY_FLAG =
endif

ifeq ($(DEBUG_MODE), DEBUG)
DEBUG_FLAG = -D_G3DEBUG
else
DEBUG_FLAG =
endif

ifeq ($(DEBUG_MODE), DEBUG)

C++FLAGS = -Wall -g -pg -D_LINUX -D_UNIX $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG) -D_TCL85
CFLAGS = -Wall -g -pg $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG)
FFLAGS = -Wall
LINKFLAGS = -rdynamic -g -pg

else

C++FLAGS = -Wall -O2 -D_LINUX -D_UNIX -D_TCL85 -Wall $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(DEBUG_FLAG) $(PROGRAMMING_FLAG) -ffloat-store

CFLAGS = -Wall $(GRAPHIC_FLAG) $(RELIABILITY_FLAG) $(PROGRAMMING_FLAG)
FFLAGS = -Wall
LINKFLAGS = -rdynamic

endif

# Misc
MAKE = make
CD = cd
ECHO = echo
RM = rm
RMFLAGS = -f
SHELL = /bin/sh

# %---------------------------------------------------------%
# | SECTION 6: COMPILATION |
# | |
# | The following macros specify the macros used in |
# | to compile the source code into object code. |
# %---------------------------------------------------------%

.SUFFIXES:
.SUFFIXES: .C .c .f .f90 .cpp .o .cpp

#
# %------------------%
# | Default command. |
# %------------------%
#
.DEFAULT:
@$(ECHO) "Unknown target $@, try: make help"
#
# %-----------------------------------------------%
# | Command to build .o files from source files. |
# %-----------------------------------------------%
#

.cpp.o:
@$(ECHO) Making $@ from $<
$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@

.C.o:
@$(ECHO) Making $@ from $<
$(CC++) $(C++FLAGS) $(INCLUDES) -c $< -o $@

.c.o:
@$(ECHO) Making $@ from $<
$(CC) $(CFLAGS) -c $<

.f.o:
@$(ECHO) Making $@ from $<
$(FC) $(FFLAGS) -c $< -o $@

.f77.o:
@$(ECHO) Making $@ from $<
$(FC) $(FFLAGS) -c $< -o $@

.f90.o:
@$(ECHO) Making $@ from $<
$(FC90) $(FFLAGS) -c $< -o $@

# %---------------------------------------------------------%
# | SECTION 7: OTHER LIBRARIES |
# | |
# | The following macros specify other libraries that must |
# | be linked with when creating executables. These are |
# | platform specific and typically order does matter!! |
# %---------------------------------------------------------%
MACHINE_LINKLIBS = -L$(BASE)/lib \
-L$(HOME)/lib \




MACHINE_NUMERICAL_LIBS = -lm \
$(ARPACK_LIBRARY) \
$(DISTRIBUTED_SUPERLU_LIBRARY) \
$(SUPERLU_LIBRARY) \
$(UMFPACK_LIBRARY) \
$(LAPACK_LIBRARY) \
$(BLAS_LIBRARY) \
$(CBLAS_LIBRARY) \
$(GRAPHIC_LIBRARY)\
$(METIS_LIBRARY)\
$(RELIABILITY_LIBRARY)\
$(PETSC_LIB)\
-lg2c -ldl -lgfortran

MPICC = /usr/bin/mpicc.openmpi
MPIINC = -I/usr/include/openmpi
MPILIB = -L/usr/lib/openmpi/lib -lmpi

#PETSC_INC = -I/cluster/petsc-2.2.1 \
# -I/cluster/petsc-2.2.1/bmake/linux-gnu \
# -I/cluster/petsc-2.2.1/include \
# -I/cluster/petsc-2.2.1/include/mpiuni \
# -DPETSC_USE_BOPT_g -DPETSC_USE_EXTERN_CXX

PETSC_DIR = /cluster/petsc-2.2.1
PETSC = YES
PETSC_FLAG = -D_PETSC

#PETSC_INC = -I/cluster/petsc-2.2.1 \
# -I/cluster/petsc-2.2.1/bmake/linux-gnu \
# -I/cluster/petsc-2.2.1/include \
# -I/cluster/petsc-2.2.1/include/mpiuni \
# -DPETSC_USE_BOPT_g -DPETSC_USE_EXTERN_CXX

PETSC_INC = -I$(PETSC_DIR)/linux-gnu-c-debug/lib \
-I$(PETSC_DIR)/linux-gnu-c-debug/include/ \
-I$(PETSC_DIR)/include/mpiuni \
-I$(PETSC_DIR)/include \
-I$(PETSC_DIR)/include/finclude \
-I$(PETSC_DIR)/bmake/linux-gnu \
-DPETSC_USE_BOPT_g -DPETSC_USE_EXTERN_CXX

PETSCINC= -I$(PETSC_DIR)/linux-gnu-c-debug/lib \
-I$(PETSC_DIR)/linux-gnu-c-debug/include/ \
-I$(PETSC_DIR)/include/mpiuni \
-I$(PETSC_DIR)/include \
-I$(PETSC_DIR)/include/finclude \
-I$(PETSC_DIR)/bmake/linux-gnu \
-DPETSC_USE_BOPT_g -DPETSC_USE_EXTERN_CXX=




#PETSCINC = -I/cluster/OpenSees/SRC/system_of_eqn/linear/petsc/petsc-2.2.1 -I/cluster/OpenSees/SRC/system_of_eqn/linear/petsc/petsc-2.2.1/bmake/linux-gnu -I/cluster/OpenSees/SRC/system_of_eqn/linear/petsc/petsc-2.2.1/include \
# -I/cluster/petsc-2.2.1/include/mpiuni -DPETSC_USE_BOPT_g -DPETSC_USE_EXTERN_CXX

#PETSCINC = -I/cluster/petsc-2.2.1/include -D_PETSC -I/cluster/petsc-2.2.1/bmake/linux-gnu -DPETSC_USE_BOPT_g -DPETSC_USE_EXTERN_CXX


# $(FE)/system_of_eqn/linearSOE/petsc/PetscSparseSeqSolver.o \


PETSC_LIB = $(FE)/system_of_eqn/linearSOE/petsc/PetscSOE.o \
$(FE)/system_of_eqn/linearSOE/petsc/PetscSolver.o \
$(FE)/system_of_eqn/linearSOE/petsc/PetscSparseSeqSolver.o \
/cluster/OpenSees/SRC/system_of_eqn/linearSOE/sparseGEN/SparseGenRowLinSolver.o \
$(HOME)/OpenSees/OTHER/LAPACK/dgebak.o \
$(HOME)/OpenSees/OTHER/LAPACK/dgebal.o \
$(HOME)/OpenSees/OTHER/LAPACK/dgeev.o \
$(HOME)/OpenSees/OTHER/LAPACK/dgehd2.o \
$(HOME)/OpenSees/OTHER/LAPACK/dgehrd.o \
$(HOME)/OpenSees/OTHER/LAPACK/dhseqr.o \
$(HOME)/OpenSees/OTHER/LAPACK/dlahrd.o \
$(HOME)/OpenSees/OTHER/LAPACK/dorghr.o \
$(HOME)/OpenSees/OTHER/LAPACK/dpotrf.o \
$(HOME)/OpenSees/OTHER/LAPACK/dpotrs.o \
$(HOME)/OpenSees/OTHER/LAPACK/dlahqr.o \
$(HOME)/OpenSees/OTHER/LAPACK/dlarfx.o \
$(HOME)/OpenSees/OTHER/LAPACK/dtrevc.o \
$(HOME)/OpenSees/OTHER/LAPACK/dlanv2.o $(PETSC_DIR)/lib/libg/linux-gnu/libpetscsnes.a \
$(PETSC_DIR)/lib/libg/linux-gnu/libpetscksp.a \
$(PETSC_DIR)/lib/libg/linux-gnu/libpetscdm.a \
$(PETSC_DIR)/lib/libg/linux-gnu/libpetscmat.a \
$(PETSC_DIR)/lib/libg/linux-gnu/libpetscvec.a \
$(PETSC_DIR)/lib/libg/linux-gnu/libpetsc.a \
$(PETSC_DIR)/lib/libg/linux-gnu/libmpiuni.a \
$(PETSC_DIR)/lib/libg/linux-gnu/libpetscfortran.a \
$(PETSC_DIR)/lib/libg/linux-gnu/libpetscts.a

PARALLEL_LIB = $(FE)/system_of_eqn/linearSOE/sparseGEN/DistributedSuperLU.o \
$(FE)/system_of_eqn/linearSOE/sparseGEN/DistributedSparseGenColLinSOE.o \
$(DISTRIBUTED_SUPERLU_LIBRARY)
#$(FE)/system_of_eqn/linearSOE/sparseGEN/DistributedSparseGenColLinSOE.o \
#$(FE)/system_of_eqn/linearSOE/sparseGEN/SparseGenColLinSOE.o \

ifeq ($(PROGRAMMING_MODE), THREADS)
MACHINE_SPECIFIC_LIBS = -lpthread
else
MACHINE_SPECIFIC_LIBS = -ldl -lieee -lm -lc -lg2c -Wl,-rpath,/usr/lib -lpng $(MPILIB)
endif


# %---------------------------------------------------------%
# | SECTION 8: INCLUDE FILES |
# | |
# | The following macros specify include files needed for |
# | compilation. |
# %---------------------------------------------------------%


MACHINE_INCLUDES = $(MPIINC) \
-I/usr/include \
-I/usr/include/mysql \
-I$(HOME)/include \
-I$(UMFPACKdir) \
-I$(SUPERLUdir) \
-I$(SUPERLU_DISTdir) $(PETSCINC)

# this file contains all the OpenSees/SRC includes
include $(FE)/Makefile.incl

#TCL_INCLUDES = -I/usr/include/tcl8.5
#TCL_INCLUDES = -I/opt/tcl-8.4/include -I/opt/tk-8.4/include
#TCL_INCLUDES = -I/root/Escritorio/INSTALADORES/tcl8.4.19/generic -I/root/Escritorio/INSTALADORES/tk8.4.19/generic
TCL_INCLUDES = -I/cluster/INSTALADORES_compilacion_OPENSEES/tcl8.5.7/generic -I/cluster/INSTALADORES_compilacion_OPENSEES/tk8.5.7/generic

INCLUDES = $(MACHINE_INCLUDES) $(TCL_INCLUDES) $(FE_INCLUDES)
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

edir the input file and puts "$np" to see how many processoes are running.
lsquinones
Posts: 14
Joined: Wed Jul 29, 2009 2:03 pm
Location: Ecuador
Contact:

Post by lsquinones »

I modified the input file (in.tcl) is thus:

set pid [getPID]
set np [getNP]

puts "Hello World Process: $pid"
puts "Processoes are running $np"

And I get to run only 1 processor is running, but the machine has 4 processors. The system recognizes it, I think that MPICH2 is not recognizing properly.

mpiexec -np 5 ./OpenSeesMP in.tcl


OpenSees -- Open System For Earthquake Engineering Simulation
Pacific Earthquake Engineering Research Center -- 2.1.0

(c) Copyright 1999,2000 The Regents of the University of California


OpenSees -- Open System For Earthquake Engineering Simulation
Pacific Earthquake Engineering Research Center -- 2.1.0

(c) Copyright 1999,2000 The Regents of the University of California



OpenSees -- Open System For Earthquake Engineering Simulation

OpenSees -- Open System For Earthquake Engineering Simulation
Pacific Earthquake Engineering Research Center -- 2.1.0

(c) Copyright 1999,2000 The Regents of the University of California

Pacific Earthquake Engineering Research Center -- 2.1.0

(c) Copyright 1999,2000 The Regents of the University of California



Hello World Process: 0
Hello World Process: 0
Processoes are running 1
Process Terminating 0
Hello World Process: 0
Processoes are running 1
Process Terminating 0


OpenSees -- Open System For Earthquake Engineering Simulation
Pacific Earthquake Engineering Research Center -- 2.1.0

(c) Copyright 1999,2000 The Regents of the University of California

Hello World Process: 0
Processoes are running 1
Process Terminating 0
Processoes are running 1
Process Terminating 0
Hello World Process: 0
Processoes are running 1
Process Terminating 0

Any idea or suggestion on what is happening will be welcome.

Thank you.
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

it looks like the results for OpenSeesSP .. set the PROGRAMMING Mode again to PARALLEL_INTERPRETERS do a make wipe and then make again (the make wipe is v important)
lsquinones
Posts: 14
Joined: Wed Jul 29, 2009 2:03 pm
Location: Ecuador
Contact:

Post by lsquinones »

Problems are not solved, so I decided to install MPICH2 and went back to collect petsc and OpenSeesMP.

Now when I run the command mpirun -np 4 ./OpenSeesMP in.tcl get the following result:

OpenSees -- Open System For Earthquake Engineering Simulation
Pacific Earthquake Engineering Research Center -- 2.1.0

(c) Copyright 1999,2000 The Regents of the University of California
All Rights Reserved

Hello World Process: 1
Hello World Process: 3
Processoes are running 4
Process Terminating 3
Processoes are running 4
Process Terminating 1
Hello World Process: 0
Processoes are running 4
Process Terminating 0
Hello World Process: 2
Processoes are running 4
Process Terminating 2

Apparently everything is fine, but when I try to run the application in which we work we get the following message:


mpirun -np 4 ./OpenSeesMP ITHA-Bridge\(4\).tcl

OpenSees -- Open System For Earthquake Engineering Simulation
Pacific Earthquake Engineering Research Center -- 2.1.0

(c) Copyright 1999,2000 The Regents of the University of California
All Rights Reserved

ITHA-Bridge running in process 2
Process 2 ready
ITHA-Bridge running in process 1
ITHA-Bridge running in process 3
Process 3 ready
ITHA-Bridge running in process 0
Analizing bridge: Ithain1.txt
Process 1 ready
waiting for worker
Runing Eq: 5 as process 2
eqfactor 27.306195759901065
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Matrix::operator=() - matrix dimensions do not match
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes
Vector::operator=() - vectors of differing sizes

In windows do not get this mesaje (Vector::operator=() - vectors of differing sizes).

I wonder if this is because the compiled tcl or OpenSeesMP?

Thanks in advance.

Santiago
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

this error should be also popping up when you run it sequentially ( i presume you are running the same model on multiple machines with different load patterns)?

if not, can you send me the script.
lsquinones
Posts: 14
Joined: Wed Jul 29, 2009 2:03 pm
Location: Ecuador
Contact:

Post by lsquinones »

The same script works fine in Windows XP, but we've set up a better environment in Ubuntu. The application is in [url]http://vlee.utpl.edu.ec/vlee/Temp/mirror.tar.gz[/url] You have to unzip it in / and then execute the following commands:

$ cd /mirror/itha-parallel
$ mpirun -np # ./OpenSeesMP ITHA-Bridge\(4\).tcl

Any help or suggestion to solve this problem will not help much.

In advance thank you very much.

Santiago.
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

i have tried it on 3 parallel machines and i can get no error .. can you tell me what c++ compiler and version you are using to see if i can find something similar.
lsquinones
Posts: 14
Joined: Wed Jul 29, 2009 2:03 pm
Location: Ecuador
Contact:

Post by lsquinones »

Dear Frank

The compiler of c++ I am using is g++ -4.3.3 on Ubuntu Jaunty 9.04. If the problem is the compiler would be grateful if you advise me the correct version.

Santiago
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

i have a linux box with 4.3.2 i can try ..
can you tell me what vendor and release version of mpi you have and if you are using mumps or petsc in this particular model (to save me looking through the source files)
lsquinones
Posts: 14
Joined: Wed Jul 29, 2009 2:03 pm
Location: Ecuador
Contact:

Post by lsquinones »

The model does not use Petsc sent him, but OpenSeesMP was compiled with support for Petsc. The versions of software that I used to compile OpenSees are:

mpich2-1.1
petsc-2.2.1
tcl-8.5.7
tk-8.5.7

g++-4.3 GNU
gcc-4.3 GNU
gfortran-4.3 GNU
Post Reply