LocalMatrix::ConvertTo()

Front page Forums Plug-ins LocalMatrix::ConvertTo()

This topic contains 4 replies, has 2 voices, and was last updated by  nico 2 years, 1 month ago.

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
    Posts
  • #1279

    andresrhmx
    Participant

    Dear Dimitar, I run Paralution in a research project for nuclear power reactors, and the point is as follows

    In some computers I receive a message like this (see the warning):

    ————————————————
    Device number: 0
    Device name: GeForce GTX 860M
    totalGlobalMem: 2047 MByte
    clockRate: 1019500
    compute capability: 5.0
    ECCEnabled: 0
    ————————————————
    LocalMatrix name=Imported Fortran COO Matrix; rows=302; cols=302; nnz=2404; prec=64bit; asm=no; format=CSR; host backend={CPU(OpenMP)}; accelerator backend={GPU(CUDA)}; current=CPU(OpenMP)
    *** warning: LocalMatrix::ConvertTo() is performed on the host
    LocalVector name=Imported Fortran x; size=302; prec=64bit; host backend={CPU(OpenMP)}; accelerator backend={GPU(CUDA)}; current=GPU(CUDA)
    LocalVector name=Imported Fortran rhs; size=302; prec=64bit; host backend={CPU(OpenMP)}; accelerator backend={GPU(CUDA)}; current=GPU(CUDA)
    LocalMatrix name=Imported Fortran COO Matrix; rows=302; cols=302; nnz=2404; prec=64bit; asm=no; format=COO; host backend={CPU(OpenMP)}; accelerator backend={GPU(CUDA)}; current=GPU(CUDA)
    PBiCGStab solver starts, with preconditioner:
    Multicolored ILU preconditioner (power(q)-pattern method), ILU(0,1)
    number of colors = 6; ILU nnz = 2404
    IterationControl criteria: abs tol=1e-15; rel tol=1e-08; div tol=1e+08; max iter=5000
    IterationControl initial residual = 2.58449e+13
    IterationControl RELATIVE criteria has been reached: res norm=114345; rel val=4.42426e-09; iter=14
    PBiCGStab ends

    In one of the computers we update “cmake” because there was three task performing on the host. At last we have only the ConvertTo() task performing on the host. And for large study cases this situation takes lots of times. I have reviewed the versión of gcc (in Ubuntu), cmake, and I also reviewed the paths in my Makefile, and I cannot find the solution.

    I would appreciate a lot your kindly support.

    Andrés

    #1280

    nico
    Participant

    Hi Andrés,

    the warning indicates, that for the conversion, the host CPU is used instead of the GPU. In the current GPL version of PARALUTION we only support the conversion from CSR to ELL, CSR to DIA and CSR to HYB on GPU. What matrix format are you converting in your case? Could you also try to convert the matrix before you move it to the accelerator and see if performance chances?

    Best regards,
    Nico

    #1281

    andresrhmx
    Participant

    Hola Nico,

    I’m using Paralution-0.8.0 and the matrix format is a COO (coordinates) matrix market format.

    I’ll try other format.

    Thank you

    Best regards.

    #1287

    andresrhmx
    Participant

    Hola Nico,

    I only want to know if the matrix format conversion on the host is done from COO format to CSR format.

    I’ve been struggling with the review of my routines dedicated to build the COO matrix to be delivered to the Paralution solver, because the results from my project (AZKIND) are not good. Or,

    Can I send you my project to be run along with a commercial version of Paralution? Just for testing, of course.

    Best regards,

    Andrés.

    #1289

    nico
    Participant

    Hi Andrés,

    if your source delivers a matrix in COO format, you can use the SetDataPtrCOO functions, to pass it to PARALUTION. If you then want to operate in CSR format when using PARALUTION, simple convert the matrix by the ConvertTo() functions.

    Best regards,
    Nico

    • This reply was modified 2 years, 1 month ago by  nico.
Viewing 5 posts - 1 through 5 (of 5 total)

You must be logged in to reply to this topic.