-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
List of supported platforms for the release #67
Comments
In discussions with @ligiabernardet on the documentation, we had come to the conclusion that there can be confusion over what is meant by a "supported" platform. With respect to CIME, we are thinking of this in two categories:
There is also the idea of:
Clearing up the terminology will be important. So if a user from a university says that have a linux cluster with intel 19 and intelMPI and dependent libraries, then that would be a supported platform in the sense that if there is an issue with installation we would expect to help them. It would not, however, be a tested platform since no one from the release team has worked on that machine. A Microsoft Windows desktop is not a supported or tested platform. |
Can someone please add a column to this spreadsheet and indicate which platforms are preconfigured? |
I will add the column but the entries for many will be TBD - will depend on how far we get in the next weeks. |
Given the definition of preconfigured platform "preconfigured means that CIME has been set up already with machine-specific files, and so the app should work out-of-the-box with no porting steps required", I do not understand why the spreadsheet mentions certain OS as "in progress" wrt preconfiguring. How can MacOS Catalina ever be preconfigured? A user's Mac laptop will not be preconfigured upon purchase; the user will have to configure it. |
I agree - a MacOS laptop is never preconfigured - you always have to go through the process of installing NCEPlibs and setting up CIME on that laptop. (Unless the configuration was so standard that CIME would always just work out of the box on MacOS - but that seems very unlikely.) |
Yes, we need two different categories - preconfigured and supported. |
I think supported means a higher level of porting than preconfigured. Maybe
"generic preconfiguration" and "platform preconfiguration" would be a
possible distinction - where generic preconfiguration means the templates
are there and the user has to modify them accordingly. @jim Edwards
<[email protected]> - what do you think?
…On Mon, Feb 3, 2020 at 3:16 PM Dom Heinzeller ***@***.***> wrote:
Yes, we need two different categories - preconfigured and supported.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#67?email_source=notifications&email_token=AB4XCE5U6CYSTL646Q7RRRDRBCJVPA5CNFSM4KKZRJV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKVTLQI#issuecomment-581645761>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB4XCE4FHRX2X743UU2ZW53RBCJVPANCNFSM4KKZRJVQ>
.
|
I think that we can create a cime port that will work on macos or linux - the user would need to create inputdata and output directories and set environment variables for them along with the set of env variables in NOAA-EMC/NCEPLIBS#30 however as of this post I am still not able to build NCEPLIBS on a mac. |
I think you should be able to use the two repos I sent you earlier, the macos rpath update was made (thanks, Kyle). If you don't want to use the NCEPLIBS-external, then you need to install the dependencies by yourself. But I assume (and it would be good if someone tested it) that the problem with NetCDF from NCEPLIBS-external has something to do with my machine setup. Let me know if you need further instructions. Thanks! |
@climbfuji I am not yet able to use the two repos you indicated and am having problems well before getting to the netcdf build. The latest problem seems to be in the hdf5 build:
|
This is macOS, right? So, the question is which way you chose to install your prerequisites: compiler, MPI library. Your error could be related to using homebrew's mpi library, which uses the default Apple gcc (which is clang with much less functionality than LLVM's clang). Continues below the list ...
Another note I found in my install instructions for Mojave:
|
Yesterday I was using a second Mac, not the one I first attempted to install on and attempted to follow your instructions to the letter. I humbly submit - if I can't do it it's not ready for public consumption. |
Please check if you did the last part, which was not included in my instructions (somehow missed that, because my new/test system uses Catalina and not Mojave).
|
So where are these instructions documented - I've been piecing it together
from the email chain so far.
Where are the analogous instructions for Linux?
…On Tue, Feb 4, 2020 at 8:22 AM Dom Heinzeller ***@***.***> wrote:
Please check if you did the last part, which was not included in my
instructions (somehow missed that, because my new/test system uses Catalina
and not Mojave).
# Fix missing header files in /usr/include for macOS Mojave - doesn't exist on Catalina?
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#67?email_source=notifications&email_token=ABOXUGG2JJFYA5I5CB3VV6TRBGB2XA5CNFSM4KKZRJV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKYAIAQ#issuecomment-581960706>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABOXUGE6NGWDGOYZKF4TCL3RBGB2XANCNFSM4KKZRJVQ>
.
--
Jim Edwards
CESM Software Engineer
National Center for Atmospheric Research
Boulder, CO
|
They are not documented yet because we haven't finalized the instructions. You can either choose to wait until we have tested this out entirely, or you will have to accept that you are a testing buddy who will run into trouble in order to help pointing out flaws in the process (and I very much appreciate having people to find issues in the process). Knowing that we have to add this fix to the missing header files for Mojave system is one example for it. I am sorry, but I just can't work faster. There are some notes in the README.md of NCEPLIBS-externals, https://github.com/NOAA-EMC/NCEPLIBS-external/tree/master or (this is where I will make the updates today) https://github.com/climbfuji/NCEPLIBS-external/tree/esmf_make_remove_curl_add_wgrib2. It would be super helpful if you could try the "fix missing header files" step and see if this solves the problem you ran into, and note anything you find that is not working in the issues on my fork (while working with my branches). If you prefer to test the libraries on a better supported platform, please use a generic linux box with the gnu compilers (or intel compilers) in the meanwhile. Thank you for your patience and help! |
@climbfuji I don't expect a finished set of instructions - I'm just suggesting a shared doc that lists the steps and that we can modify as we go along. I think we need to get all of the instructions in one place. |
I think we can work directly on the place where this should go, I started putting the instructions for Catalina there: https://github.com/NOAA-EMC/NCEPLIBS-external/wiki Formatting can be improved, but this should get us started. |
I can't edit or make comments - why not just use the google doc until we
have what we need?
…On Tue, Feb 4, 2020 at 10:39 AM Dom Heinzeller ***@***.***> wrote:
I think we can work directly on the place where this should go, I started
putting the instructions for Catalina there:
https://github.com/NOAA-EMC/NCEPLIBS-external/wiki
Formatting can be improved, but this should get us started.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#67?email_source=notifications&email_token=ABOXUGBDMKETBIOZRR5CNJTRBGR3VA5CNFSM4KKZRJV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKYQXEQ#issuecomment-582028178>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABOXUGBWXXCTG3ENV3RK3Y3RBGR3VANCNFSM4KKZRJVQ>
.
--
Jim Edwards
CESM Software Engineer
National Center for Atmospheric Research
Boulder, CO
|
Now you have write permissions. |
@climbfuji and @jedwards4b what is the status of the MacOS build, instructions, and CIME testing? |
I am now able to run the chgres_cube on the mac but I am getting a dynamic library load error from the model that I haven't been able to figure out:
That @rpath should be /usr/local/ufs-release-v1/lib what is really confusing is that chgres shows this same problem with the netcdf libraries but runs anyway. |
Does chgres really show
? |
No but chgres does show the @rpath/libnetcdf with otool -L
…On Fri, Feb 7, 2020, 16:03 Dom Heinzeller ***@***.***> wrote:
Does chgres really show
[1] dyld: Library not loaded: @rpath/libnetcdff.7.dylib
[1] Referenced from: ... /chgres_cube.exe
[1] Reason: image not found
?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#67?email_source=notifications&email_token=ABOXUGHHGKMGZDX5NX2K4OTRBXSFNA5CNFSM4KKZRJV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELE5RHY#issuecomment-583653535>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABOXUGDOCVUHGOVE3OSSFP3RBXSFNANCNFSM4KKZRJVQ>
.
|
@climbfuji I can still ask some GST folks to build the libs, I just don't want it to be the default for them. |
The GST as a temporary step is not the problem (for me at least). But the UFS release when it goes out the door on March 6 must require users to build the libraries by themselves on configured but not supported platforms. |
This is the current definition of level 2 support: This implies that it is permissible to have a non-centralized location for the libs. Do you want to change the wording and say they always have to be built? |
@ceceliadid how about if we document the environment variables that need to be set and provide suggested values for them (that should work) with some wording about these not being official install paths? That way the user doesn't need to build these libraries or download the inputdata unless they choose to do so. |
@jedwards4b That seems okay to me, but it seems like a more general policy question that others will have to answer. I tried building the WM on Stampede2 without CIME with the paths that Arun provided (from a few comments back) and it bails out quickly with CMake Error at cmake/FindESMF.cmake:12 (file): Is that a permission problem with the lib dir path? I can see the directory work/01118/tg803972/stampede2 but I can't see anything in the UFS dir. |
@ceceliadid |
@jedwards4b Thanks but that still gives me: |
Same problem here. This is why I am insisting on project spaces and not user directories. Instructions for compiling the libraries on stampede will be available shortly, straightforward and quick.
|
I am not sure way you can't access because Jim is not in my group and he could access. Anyway, you could also install externals also using following information.
|
@ceceliadid Sorry - those directories and files are world readable, I don't understand why you can 't read them. But I guess we've validated Dom's viewpoint. |
What the sysadmins did on gaea a while ago is that they made the very top-level directories readable to the respective groups only. Nobody realized that. If that's not the case, maybe they put ACL restrictions on one of the directories in the path? |
See here for the PR containing the setup instructions for Stampede with Intel: NOAA-EMC/NCEPLIBS-external#29 |
I can see all the dirs in work/01118/tg803972/stampede2 just not read into any of them. Anyway @climbfuji I guess I'm coming around to needing to build libs for now. Thanks for the instructions I'll give it a shot. |
Follow-up question: does this also affect the files in DIN_LOC_ROOT? On the generic platforms, the data is downloaded using the |
I have no way of knowing - can you try and let me know?
DIN_LOC_ROOT=/work/01118/tg803972/stampede2/UFS/ufs_inputdata
…On Mon, Feb 24, 2020 at 4:27 PM Dom Heinzeller ***@***.***> wrote:
Follow-up question: does this also affect the files in DIN_LOC_ROOT? On
the generic platforms, the data is downloaded using the ./check_input_data
--download command in lack of a shared DIN_LOC_ROOT location.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#67?email_source=notifications&email_token=ABOXUGAXDJZ3YLJYYWJ56QDRERJU5A5CNFSM4KKZRJV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMZ5U7I#issuecomment-590600829>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABOXUGEXKXMYHMFRCZUNGDDRERJU5ANCNFSM4KKZRJVQ>
.
--
Jim Edwards
CESM Software Engineer
National Center for Atmospheric Research
Boulder, CO
|
so I fear we need to use the download script there as well ... or get it from HPSS / Niagara? |
Ok, so right now this is not working on orion, because it wants me to set DIN_LOC_ROOT. I assume the "transition" to using the download script is not complete (also, the hashes in manage externals have not been updated to include the generic linux pieces for the two cime repositories - sidenote).
|
@climbfuji DIN_LOC_ROOT is where the data is OR where the download will put the data if it isn't already there, there is no separate script. |
Sure, but I don't need to set this on macos or generic linux. I assume that all supported but not preconfigured platforms would be treated the same way? Only preconfigured platforms would have the data in a central location, predefined as DIN_LOC_ROOT? |
The issue is that we have some inconsistency - on macos and linux we are defining So we should probably define it the same way on stampede and Orian |
Yes, I think that would be great. Thanks for adjusting the stampede configuration so quickly yesterday. I am currently working on orion. Tomorrow I'll do gaea (down for maintenance today). |
@arunchawla-NOAA @jedwards4b @climbfuji I changed the text for level 2 support to this, which I think is more accurate: Configurable platforms are platforms where all of the required libraries for building community releases of UFS models and applications are expected to install successfully, but are not available in a central place. Applications and models are expected to build and run once the required bundled libraries (NCEPLIBS) and third-party libraries (NCEP-external) are built. This is on the Supported Platforms page If that looks okay and the rest of that page looks okay I think we could close this ticket since we would have an agreed on Supported Platforms listing. Any remaining issues with level 2 supported platforms could be addressed in more specific tickets. |
This sounds good to me, thanks!
… On Feb 25, 2020, at 2:15 PM, ceceliadid ***@***.***> wrote:
@arunchawla-NOAA <https://github.com/arunchawla-NOAA> @jedwards4b <https://github.com/jedwards4b> @climbfuji <https://github.com/climbfuji> I changed the text for level 2 support to this, which I think is more accurate:
Configurable platforms are platforms where all of the required libraries for building community releases of UFS models and applications are expected to install successfully, but are not available in a central place. Applications and models are expected to build and run once the required bundled libraries (NCEPLIBS) and third-party libraries (NCEP-external) are built.
This is on the Supported Platforms page
https://github.com/ufs-community/ufs/wiki/Supported-Platforms-and-Compilers <https://github.com/ufs-community/ufs/wiki/Supported-Platforms-and-Compilers>
If that looks okay and the rest of that page looks okay I think we could close this ticket since we would have an agreed on Supported Platforms listing. Any remaining issues with level 2 supported platforms could be addressed in more specific tickets.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub <#67?email_source=notifications&email_token=AB5C2RJTCTCAW52WIODX3HLREWC6NA5CNFSM4KKZRJV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEM5Q33Y#issuecomment-591072751>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AB5C2RN3Y5AKWCXWYTGC3C3REWC6NANCNFSM4KKZRJVQ>.
|
Looks good - cheyenne is built with intel/19.0.5 not 18.
…On Tue, Feb 25, 2020 at 2:15 PM ceceliadid ***@***.***> wrote:
@arunchawla-NOAA <https://github.com/arunchawla-NOAA> @jedwards4b
<https://github.com/jedwards4b> @climbfuji <https://github.com/climbfuji>
I changed the text for level 2 support to this, which I think is more
accurate:
Configurable platforms are platforms where all of the required libraries
for building community releases of UFS models and applications are expected
to install successfully, but are not available in a central place.
Applications and models are expected to build and run once the required
bundled libraries (NCEPLIBS) and third-party libraries (NCEP-external) are
built.
This is on the Supported Platforms page
https://github.com/ufs-community/ufs/wiki/Supported-Platforms-and-Compilers
If that looks okay and the rest of that page looks okay I think we could
close this ticket since we would have an agreed on Supported Platforms
listing. Any remaining issues with level 2 supported platforms could be
addressed in more specific tickets.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#67?email_source=notifications&email_token=ABOXUGGHQDN7PO7NIINT5ATREWC6NA5CNFSM4KKZRJV2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEM5Q33Y#issuecomment-591072751>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABOXUGHX2BR6Z4LEXYHLDHLREWC6NANCNFSM4KKZRJVQ>
.
--
Jim Edwards
CESM Software Engineer
National Center for Atmospheric Research
Boulder, CO
|
Thanks, made that change and will close. |
Here is a link to a spreadsheet that lists the supported platforms/compilers and who has access to these:
https://docs.google.com/spreadsheets/d/122uasMhD8aF_s6jUpy7t_Io5JSNGYOmBddtT6kh0dSQ/edit#gid=0
Please use this spreadsheet to indicate the readiness for testing and who is testing on which platform (maybe also indicate success/failures - this has not been set up yet in the spreadsheet). We can also use this GitHub issue to report successes/failures.
The text was updated successfully, but these errors were encountered: