[petsc-users] Efficient reuse of vectors and matrices
Margreet Nool
margreet.nool at gmail.com
Wed Jul 4 06:33:36 CDT 2012
Dear list,
How can I reuse vectors and matrices efficiently?
Our program uses a lot of global matrices and vectors and I want to
reduce the amount of memory. Are there PETSC functions, which check
whether a Mat or Vec is already created or destroyed? Our programs have
been written in Fortran90.
The program performs a time stepping process, and I want to know what
the best way is to create a global vector only once. As an example, a
global vector Vec y is created as a result of a matrix-vector product A
. x = y, by calling the PETSC function MatMult. After the first call the
Vec Y has already been created.
1. Do we have to store the result into a temporary vector temp_vec and
copy its values into Vec y and destroy temp_vec?
2. Do we have to destroy Vec y before a call of MatMult and store the
result directly in Vec y?
3. Does there exist a better solution?
Thanks in advance,
Margreet Nool
--
Margreet Nool
CWI - Centrum Wiskunde & Informatica
Science Park 123,
1098 XG Amsterdam
P.O. Box 94079
1090 GB Amsterdam
--------------------
tel: +31 20 592 4120
Room, M131
More information about the petsc-users
mailing list