@@ -93,6 +93,14 @@ <h1>Source code for mache.spack.env</h1><div class="highlight"><pre>
9393< span class ="kn "> from</ span > < span class ="w "> </ span > < span class ="nn "> mache.spack.shared</ span > < span class ="w "> </ span > < span class ="kn "> import</ span > < span class ="n "> _get_modules</ span > < span class ="p "> ,</ span > < span class ="n "> _get_yaml_data</ span >
9494< span class ="kn "> from</ span > < span class ="w "> </ span > < span class ="nn "> mache.version</ span > < span class ="w "> </ span > < span class ="kn "> import</ span > < span class ="n "> __version__</ span >
9595
96+ < span class ="n "> MPI_COMPILERS</ span > < span class ="o "> =</ span > < span class ="p "> {</ span >
97+ < span class ="s1 "> 'gnu'</ span > < span class ="p "> :</ span > < span class ="p "> {</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpif90'</ span > < span class ="p "> },</ span >
98+ < span class ="s1 "> 'intel'</ span > < span class ="p "> :</ span > < span class ="p "> {</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpif90'</ span > < span class ="p "> },</ span >
99+ < span class ="s1 "> 'oneapi-ifx'</ span > < span class ="p "> :</ span > < span class ="p "> {</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpif90'</ span > < span class ="p "> },</ span >
100+ < span class ="s1 "> 'impi'</ span > < span class ="p "> :</ span > < span class ="p "> {</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpiicc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpiicpc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpiifort'</ span > < span class ="p "> },</ span >
101+ < span class ="s1 "> 'cray'</ span > < span class ="p "> :</ span > < span class ="p "> {</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'cc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'CC'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'ftn'</ span > < span class ="p "> },</ span >
102+ < span class ="p "> }</ span >
103+
96104
97105< div class ="viewcode-block " id ="make_spack_env ">
98106< a class ="viewcode-back " href ="../../../developers_guide/generated/mache.spack.make_spack_env.html#mache.spack.make_spack_env "> [docs]</ a >
@@ -378,29 +386,23 @@ <h1>Source code for mache.spack.env</h1><div class="highlight"><pre>
378386< span class ="k "> def</ span > < span class ="w "> </ span > < span class ="nf "> _get_mpi_compilers</ span > < span class ="p "> (</ span > < span class ="n "> machine</ span > < span class ="p "> ,</ span > < span class ="n "> compiler</ span > < span class ="p "> ,</ span > < span class ="n "> mpi</ span > < span class ="p "> ,</ span > < span class ="n "> cray_compilers</ span > < span class ="p "> ):</ span >
379387< span class ="w "> </ span > < span class ="sd "> """Get a list of compilers from a yaml file"""</ span >
380388
381- < span class ="n "> mpi_compilers</ span > < span class ="o "> =</ span > < span class ="p "> {</ span >
382- < span class ="s1 "> 'gnu'</ span > < span class ="p "> :</ span > < span class ="p "> {</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpif90'</ span > < span class ="p "> },</ span >
383- < span class ="s1 "> 'intel'</ span > < span class ="p "> :</ span > < span class ="p "> {</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpif90'</ span > < span class ="p "> },</ span >
384- < span class ="s1 "> 'impi'</ span > < span class ="p "> :</ span > < span class ="p "> {</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpiicc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpiicpc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'mpiifort'</ span > < span class ="p "> },</ span >
385- < span class ="s1 "> 'cray'</ span > < span class ="p "> :</ span > < span class ="p "> {</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'cc'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'CC'</ span > < span class ="p "> ,</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> :</ span > < span class ="s1 "> 'ftn'</ span > < span class ="p "> },</ span >
386- < span class ="p "> }</ span >
387-
388389 < span class ="n "> mpi_compiler</ span > < span class ="o "> =</ span > < span class ="kc "> None</ span >
389390 < span class ="c1 "> # first, get mpi compilers based on compiler</ span >
390- < span class ="k "> if</ span > < span class ="n "> compiler</ span > < span class ="ow "> in</ span > < span class ="n "> mpi_compilers </ span > < span class ="p "> :</ span >
391- < span class ="n "> mpi_compiler</ span > < span class ="o "> =</ span > < span class ="n "> mpi_compilers </ span > < span class ="p "> [</ span > < span class ="n "> compiler</ span > < span class ="p "> ]</ span >
391+ < span class ="k "> if</ span > < span class ="n "> compiler</ span > < span class ="ow "> in</ span > < span class ="n "> MPI_COMPILERS </ span > < span class ="p "> :</ span >
392+ < span class ="n "> mpi_compiler</ span > < span class ="o "> =</ span > < span class ="n "> MPI_COMPILERS </ span > < span class ="p "> [</ span > < span class ="n "> compiler</ span > < span class ="p "> ]</ span >
392393
393394 < span class ="c1 "> # next, get mpi compilers based on mpi (higher priority)</ span >
394- < span class ="k "> if</ span > < span class ="n "> mpi</ span > < span class ="ow "> in</ span > < span class ="n "> mpi_compilers </ span > < span class ="p "> :</ span >
395- < span class ="n "> mpi_compiler</ span > < span class ="o "> =</ span > < span class ="n "> mpi_compilers </ span > < span class ="p "> [</ span > < span class ="n "> mpi</ span > < span class ="p "> ]</ span >
395+ < span class ="k "> if</ span > < span class ="n "> mpi</ span > < span class ="ow "> in</ span > < span class ="n "> MPI_COMPILERS </ span > < span class ="p "> :</ span >
396+ < span class ="n "> mpi_compiler</ span > < span class ="o "> =</ span > < span class ="n "> MPI_COMPILERS </ span > < span class ="p "> [</ span > < span class ="n "> mpi</ span > < span class ="p "> ]</ span >
396397
397398 < span class ="c1 "> # finally, get mpi compilers if this is a cray machine (highest priority)</ span >
398399 < span class ="k "> if</ span > < span class ="n "> cray_compilers</ span > < span class ="p "> :</ span >
399- < span class ="n "> mpi_compiler</ span > < span class ="o "> =</ span > < span class ="n "> mpi_compilers </ span > < span class ="p "> [</ span > < span class ="s1 "> 'cray'</ span > < span class ="p "> ]</ span >
400+ < span class ="n "> mpi_compiler</ span > < span class ="o "> =</ span > < span class ="n "> MPI_COMPILERS </ span > < span class ="p "> [</ span > < span class ="s1 "> 'cray'</ span > < span class ="p "> ]</ span >
400401
401402 < span class ="k "> if</ span > < span class ="n "> mpi_compiler</ span > < span class ="ow "> is</ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
402403 < span class ="k "> raise</ span > < span class ="ne "> ValueError</ span > < span class ="p "> (</ span >
403- < span class ="sa "> f</ span > < span class ="s2 "> "Couldn't figure out MPI compilers for </ span > < span class ="si "> {</ span > < span class ="n "> machine</ span > < span class ="si "> }</ span > < span class ="s2 "> </ span > < span class ="si "> {</ span > < span class ="n "> compiler</ span > < span class ="si "> }</ span > < span class ="s2 "> </ span > < span class ="si "> {</ span > < span class ="n "> mpi</ span > < span class ="si "> }</ span > < span class ="s2 "> "</ span >
404+ < span class ="sa "> f</ span > < span class ="s2 "> "Couldn't figure out MPI compiler wrappers for </ span > < span class ="si "> {</ span > < span class ="n "> machine</ span > < span class ="si "> }</ span > < span class ="s2 "> "</ span >
405+ < span class ="sa "> f</ span > < span class ="s1 "> '</ span > < span class ="si "> {</ span > < span class ="n "> compiler</ span > < span class ="si "> }</ span > < span class ="s1 "> </ span > < span class ="si "> {</ span > < span class ="n "> mpi</ span > < span class ="si "> }</ span > < span class ="s1 "> '</ span >
404406 < span class ="p "> )</ span >
405407
406408 < span class ="k "> return</ span > < span class ="n "> mpi_compiler</ span > < span class ="p "> [</ span > < span class ="s1 "> 'mpicc'</ span > < span class ="p "> ],</ span > < span class ="n "> mpi_compiler</ span > < span class ="p "> [</ span > < span class ="s1 "> 'mpicxx'</ span > < span class ="p "> ],</ span > < span class ="n "> mpi_compiler</ span > < span class ="p "> [</ span > < span class ="s1 "> 'mpifc'</ span > < span class ="p "> ]</ span >
0 commit comments