4 Replies Latest reply on Sep 25, 2012 9:52 AM by chipf

    Scalapack with 8-byte integers

    steabert

      Hello,

       

      I'm compiling a package (Molcas/GA) which I want to run in parallel, using the ScaLAPACK library.

      On the Xeon machines, I use the libraries distributed with MKL (libmkl_blacs_openmpi_ilp64.a and libmkl_scalapack_ilp64.a).

      We recently acquired machines with 4 Opteron 6276 processors and now I would like to run my program there.

      As ACML doesn't seem to include ScaLAPACK, I compiled that myself. However, there does not seem to be an easy

      way to get a version with 8-byte integers, and the package I use can't be linked to the standard 4-byte integer version.

       

      Would anyone know how to get an 8-byte integer version of the ScaLAPACK library which is optimized for the Opteron 6200 series?

       

      kind regards,

      Steven

        • Re: Scalapack with 8-byte integers
          chipf

          No one else has commented so I will.

          On the positive side, the new 2.0 ScaLAPACK is much easier to build.  The BLACS library is now included and does not need to be built seperately.

           

          But for your question, I was unable to find a simple way to build for INT*8.  Linking the int64 ACML library  with the standard build will cause segfaults.

           

          I have a query into the Lapack support people, but I not received a response yet.

          1 of 1 people found this helpful
            • Re: Scalapack with 8-byte integers
              steabert

              Thanks for the information. I succeeded in installing ScaLAPACK, it is indeed much easier than it used to be, I had no problems at all.

               

              I am now using wrappers to switch to INT*4 when calling routines, that seems to work.

              I wonder if it is possible to simply build ScaLAPACK with the flag "-fdefault-integer-8" and link to the int64 ACML library? I will try that.

               

              Thanks for your input!

              • Re: Scalapack with 8-byte integers
                steabert

                I tried my best, but it's practically impossible to get ScaLAPACK compiled for 64bit integers from the source provided by NETLIB. I've looked a bit deeper into the issue and the problem is without major changes to the BLACS interface, which is written in C and uses 'int' parameters in function calls, one cannot simply build for INT*8, like you already predicted.

                 

                So, it seems that my only option at the moment is to resort to the mkl library which provides a 64bit int BLACS interface. It would be nice to have the option to link to the ACML libraries, since I'm using an Opteron machine. The irony is that I bought this machine for tests which require a lot of memory, and now I have to resort to MKL to be able to run the stuff

                 

                Did you receive a response yet from the Lapack support people?

                 

                In any case, thanks for the initial response!

                  • Re: Scalapack with 8-byte integers
                    chipf

                    No response to the query made to the Lapack support team.   We have had a conversation with some of the other people in the Netlib community about this - they confirmed what we have discovered, that this will require grinding through all the BLACS and SCALAPACK code and modifying it to handle 64-bit integers.  

                     

                    This will go on our long list of nice-to-haves, but it won't have a high priority.

                    1 of 1 people found this helpful