<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    Interesting. I didn't know this as I've never tried to do complex
    arithmetic with GPUs and PETSc. Maybe it is just a configuration
    issue. <br>
    <br>
    It may work provided Thrust has complex number support also (which
    it probably does). However, if you are using ILU (and at some pt,
    ICC) preconditioners, some additional code is needed to do MatSolve
    with complex numbers. This wouldn't be too difficult to implement
    though.<br>
    <br>
    -Paul<br>
    <blockquote
cite="mid:CAA==FcshrOePUGEsHHRvSYBMtVEJ5UVQnmwvYCHpYZ_7Cecf6A@mail.gmail.com"
      type="cite">Dear Paul,<br>
      <br>
      Please find the changelog in the following link for CUSP 0.2.0<br>
      <a moz-do-not-send="true"
        href="http://code.google.com/p/cusp-library/source/browse/CHANGELOG">http://code.google.com/p/cusp-library/source/browse/CHANGELOG</a><br>
      <br>
      They has added cusp:complex class to support complex number-based
      operation.<br>
      <br>
      does it not work for PETSc?<br>
      <br>
      Thanks a lot,<br>
      Yujie<br>
      <br>
      <br>
      <div class="gmail_quote">On Mon, Jan 23, 2012 at 3:28 PM, Paul
        Mullowney <span dir="ltr">&lt;<a moz-do-not-send="true"
            href="mailto:paulm@txcorp.com">paulm@txcorp.com</a>&gt;</span>
        wrote:<br>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">I would claim that Petsc does not support
          GPU capabilities for complex numbers right now.<br>
          <br>
          The CUSP library is templated over the scalar type (i.e. float
          or double), however I don't think it supports complex numbers.
          Although, I could be wrong on this.<br>
          <br>
          It could be somewhat straightforward to move from CUSP to
          CUSPARSE (yes, these are different Nvidia libraries). I
          believe CUSPARSE supports SpMV for complex types. It also
          supports triangular solve for complex types.<span
            class="HOEnZb"><font color="#888888"><br>
              <br>
              -Paul</font></span>
          <div class="HOEnZb">
            <div class="h5"><br>
              <br>
              <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
                0.8ex; border-left: 1px solid rgb(204, 204, 204);
                padding-left: 1ex;"> &nbsp; &nbsp; This is an installation issue,
                please send all installation issues to <a
                  moz-do-not-send="true"
                  href="mailto:petsc-maint@mcs.anl.gov" target="_blank">petsc-maint@mcs.anl.gov</a>
                with the entire configure.log<br>
                <br>
                <br>
                <br>
                <br>
                &nbsp; &nbsp;You can try editing config/PETSc/packages/cuda.py and
                removing the two lines<br>
                <br>
                &nbsp; &nbsp; if self.scalartypes.scalartype == 'complex':<br>
                &nbsp; &nbsp; &nbsp; raise RuntimeError('Must use real numbers with
                CUDA')<br>
                <br>
                &nbsp; &nbsp;As it says we have never tested for complex so I do
                not know how far it is from working.<br>
                <br>
                &nbsp; &nbsp; Barry<br>
                <br>
                On Jan 23, 2012, at 1:24 PM, recrusader wrote:<br>
                <br>
                <blockquote class="gmail_quote" style="margin: 0pt 0pt
                  0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204);
                  padding-left: 1ex;">
                  Dear PETSc Developers,<br>
                  <br>
                  I am compiling PETSc-dev using GPU in complex number
                  mode.<br>
                  However, when I configure PETSc-dev, I get the
                  following errors<br>
                  "<br>
                  *******************************************************************************<br>
                  &nbsp; &nbsp; &nbsp; &nbsp; UNABLE to CONFIGURE with GIVEN OPTIONS &nbsp; &nbsp;(see
                  configure.log<br>
                  for details):<br>
                  -------------------------------------------------------------------------------<br>
                  Cannot use cuda with complex numbers it is not coded
                  for this capability<br>
                  *******************************************************************************<br>
                  "<br>
                  I have checked CUSP. The latest version can support
                  complex number.<br>
                  What should I do for CUDA?<br>
                  Thank you very much.<br>
                  <br>
                  Best,<br>
                  Yujie<br>
                </blockquote>
              </blockquote>
              <br>
            </div>
          </div>
        </blockquote>
      </div>
      <br>
    </blockquote>
    <br>
  </body>
</html>