Comments (13)
@wdeconinck since this involves eckit and odc too I would prefer this is done in the new CI/CD framework.
Please liaise with @dtip or @figi44 to inject GNU 7.3 in our build matrix.
from atlas.
Thanks for this info. @wdeconinck I think we must then also add this to the rest of the stack.
Can you please liaise with @dtip ?
from atlas.
We're now testing the ECMWF stack with gnu 7.3.1 on CentOS 7.9
PR: ecmwf-actions/downstream-ci#14
Shout if you run into any issues.
from atlas.
@tlmquintino if you think that is necessary. Otherwise I can add just a few lines in the older atlas GitHub actions that I till have that uses Github-owned runners, for the remaining 6 months or so. Depends how high in the stack the UKMO wants this requirement to be.
from atlas.
I'm just tagging @yaswant here as he handles the software stack on our side.
from atlas.
Looking at the release notes for GCC 7.3 to 7.5 it looks like they were only bug fixes.
See https://gcc.gnu.org/gcc-7/changes.html
So unless you want to reproduce buggy behaviour, I would argue that using 7.5 is a very good proxy to using 7.3 for the purposes of ensuring the builds dont break and unit tests are passing.
from atlas.
As some fluke experience in recent pull-request showed (see #145), the gnu 7.5 had a c++ 14 compiler bug fixed compared to 7.3 (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64095); thanks @odlomax !
That shows that we cannot rely on gnu-7.5 for gnu-7.3 compatibility.
from atlas.
@tlmquintino if you think that is necessary. Otherwise I can add just a few lines in the older atlas GitHub actions that I till have that uses Github-owned runners, for the remaining 6 months or so. Depends how high in the stack the UKMO wants this requirement to be.
Thanks for getting back. UKMO is basically restricted to GNU 7.3 until we're fully up and running with with our new HPC -- that should happen by the end of this year.
We're currently using the following ECMWF packages in our JEDI work with JCSDA:
- eckit
- fckit
- atlas
- fiat
- ectrans
- odc
Our main concern is that some exotic parts of C++17 might slip into Atlas/eckit/fckit and we lose our capability to run it on the HPC. Once we're on the new HPC, this problem goes away. (until we start having fun with C++20...)
from atlas.
In the mean time of having it added to the new CI/CD framework, I have added it to the older ci with Github-hosted runners (see above referenced commit).
That is currently testing eckit/fckit/atlas with gnu-7 installed via apt-get install gcc-7 g++-7 gfortran-7
.
Note that this is gcc 7.5 instead of 7.3 I don't know if that version difference is important though.
from atlas.
Thank you @wdeconinck - is there any way we can set minor version to 3? Its not required from CXX17 perspective and not relevant in the scope of the current discussion. Sharing this for information only.
Fortran-mpi related complication: F2018 features needed to support the build of the mpi_f08
module - we cant build this module with mpich or openmpi in gcc-7.3 environment. And this is the gnu compiler version we are stuck with current Cray.
from atlas.
@yaswant It seems not trivial to install gcc-7.3 when the default 'gcc-7' is 7.5 (see https://askubuntu.com/questions/1225026/how-can-i-install-a-specific-version-of-gcc-on-ubuntu-18-04)
The route is probably compiling a specific gcc version manually.
I'll leave that for the newer custom CI/CD self-hosted runners that are being developed.
Which code is using the mpi_f08 module?
from atlas.
@wdeconinck no problem.
My colleague was testing mpi_f08
module in ops based JEDI interface for the UM (ops-um-jedi
). If I understand correctly fckit
does not support shared memory so he used raw mpi there1. It is unlikely that anyone using fckit
will be doing that.
Footnotes
-
We are delaying this implementation for now. ↩
from atlas.
We're now testing the ECMWF stack with gnu 7.3.1 on CentOS 7.9
PR: ecmwf-actions/downstream-ci#14
Shout if you run into any issues.
Thanks @dtip, @wdeconinck, @tlmquintino!
from atlas.
Related Issues (20)
- Failure to find intersects of points on corners/edges of irregular quad. HOT 1
- Support limited area grids in StructuredColumns linear interpolation
- Bugs in cubed sphere implementation.
- How to parallelly read and write grib file using atlas HOT 1
- Add (lon, lat) to (alpha, beta) transforms to cubed sphere projection HOT 1
- Generate remote-index and partition fields for PointCloud halo exchange. HOT 1
- Compile failures with old Intel compiler HOT 2
- How could I create an regular ocean grid in atlas HOT 4
- Development of efficient conservative spherical polygon interpolation
- Add configurable MPI communicator to data structures
- ForEach method very slow on small arrays HOT 1
- ctest failure in atlas_fctest_unstructuredgrid HOT 3
- field.rename does not update the fieldset index map HOT 3
- Regional matching mesh partitioning HOT 2
- Set UnstructuredGrid in meshes built by MeshBuilder HOT 9
- Ctest failure in atlas_fctest_trans HOT 1
- fatal error: atlas/library.h: No such file or directory and failed cmake run. HOT 2
- Stopping the interpolation of missing values during finite-element interpolation HOT 7
- Add option to reduce fraction of grid points checked when finite element interpolation fails
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from atlas.