Hi, perlmutter stil uses 3.4v as mpich comptible and at the same time uses mpi4py(3.1.3) version .. Is there any cuquantum_appliance comptable with these verions? otherwise there is lot of adhoc hacks had to do.
Hi, i was able to resolve with setting the ld_library_path; but further stuck with srun -n .. as it fails with different errors on Perlmutter. I think the current verison of pennylane failed on HPC environments like Perlmutter.
I had. a discussion with nersc people and they mentioned there is no Cray PE version that supports cuda 12.2
Below is the discussion. I would say it would be good for @mlxd to try it out the latest version and provide support for HPC envs
ME:
Ok, jjust one last question - “/opt/nvidia/hpc_sdk/Linux_x86_64/22.7/cuda/11.7/targets/x86_64-linux/lib/libcudart.so.11.0:/usr/lib64/libcudart.so.11.0” is this always constant, as i use cuda/12.2 should this be pointing to 12.2 library?
HPC:
Right now yes because the cuda mpi library is linked against that.
My colleague Lee has confirmed that the issue seems to be in the environment setup. There is nothing wrong with Cray MPICH and CUDA 12 on Perlmutter with Lightning GPU.
These steps produce a working Lightning GPU install (as of now 0.41.0-rc)
Ensure Python 3.10+ is used to create the venv (module load python/3.11)
Ensure the appropriate modules are loaded (module load PrgEnv-gnu cray-mpich cudatoolkit craype-accel-nvidia80)
Clone pennylane-lightning, install the requirements-dev.txt file and then install Lightning Qubit as python -m pip install -r requirements-dev.txt && CC=$(which cc) CXX=$(which CC) python -m pip install . --verbose) with the CC env-vars used to set the CrayPE compilers, which default to the GNU env
Change the package to Lightning GPU and install that using the CrayPE compiler for MPI support (CMAKE_ARGS="-DENABLE_MPI=ON" CC=$(which mpicc) CXX=$(which mpicxx) python -m pip install . --verbose)
Create an MPI-friendly script and run it with the above allocation (srun -n 4 python myscript.py)
Note: we will release a new version of PennyLane in the next couple of days so if you want to wait until Wednesday to do this you can use PennyLane v0.41
Wow, this works. thank you so much. Not sure what changed from earlier instructions to this. But this is super helpful.
The previous instructions i tried are also from Lee and they worked before, and recently it broke. Not sure how we can avoid this in future; Any thoughts? but for now i am unblocked. thank you @CatalinaAlbornoz for all the help.
I’m glad to hear this worked @QuantumMan ! And thank you for sharing the link to your project.
Regarding your question about avoiding this in the future, unfortunately these things are part of the process of working with HPC. As you get more experience using HPC systems it will get easier to debug issues! When that day comes hopefully you can help others here too . In the meantime you can also reach out to the system administrators if you encounter issues that are specifically about the system, or let us know here if you have questions about PennyLane.