Need direction for implementing GPU enabled OpenSEES

A forum dedicated to feature requests and the future direction of OpenSees, i.e. what would you like, what do you need, what should we explore

Moderators: silvia, selimgunay, Moderators

Post Reply
shravani
Posts: 2
Joined: Tue Sep 01, 2015 12:38 am
Location: pict

Need direction for implementing GPU enabled OpenSEES

Post by shravani » Mon Apr 11, 2016 8:58 pm

Dear Sir ,
I am trying to build GPU enabled solver for OpenSees using CuSP library for linux cluster. I have created library for solvers (such as CG,GMRES etc) which is CuspSolver.so which has a function

int cuspsolver(double *Aptr, double *B, double *X,int size,int nnz,int *rowStartA, int *colA,int maxInteration,double relTolerance,int preCond,int solver)

but when I am passing values to it from CuspSolver.cpp which implements the SparceGenRow.cpp values for Aptr are not proper (Aptr has some zero values) can you plz guide me how I can get origional A matrix instead of compressed format. If possible let me know if Aptr in SparseGenRow.cpp is a sparse 2d or compressed 1d matrix and if it is a compressed matrix from which class I can get origional sparse matrix

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

Re: Need direction for implementing GPU enabled OpenSEES

Post by fmk » Thu Apr 14, 2016 12:37 pm

the sparsity of the matrix is determined by the element connectivity .. some values maybe 0 initially .. it should not matter to the solver .. you cannotget the original A matrix from the SOE class you are using, you would need to write your own or use FullGeneral.

shravani
Posts: 2
Joined: Tue Sep 01, 2015 12:38 am
Location: pict

Re: Need direction for implementing GPU enabled OpenSEES

Post by shravani » Fri Apr 15, 2016 3:46 am

Thanks for your reply.
One more query I have In which class the solver Tags defined in SRC/classTags.h are refered (ex ...SOLVER_TAGS_SymSparseLinSolver)

Post Reply