Skip to content

Commit

Permalink
Merge branch 'release/0.16.0'
Browse files Browse the repository at this point in the history
* release/0.16.0: (202 commits)
  Update changelog
  Version 0.16.0
  Fix failing tests introduced since commit 6060345
  ATLAS-220 ATLAS_FINALISES_MPI environment variable
  ATLAS-219 Fix broken parallel interpolation from regular lonlat grids
  bug fix: number of levels needed min instead of max
  Fix compilation for travis clang build
  Fix compilation for travis clang build
  Fix compilation for travis clang build
  Provide Trans::listBackends( std::ostream& )
  Fix compilation with GPU
  Cleanup interpolation method factories
  Cleanup TransFactory
  Add missing license headers
  ATLAS-218 Remove atlas_mpi_module
  ATLAS-217 Remove error handling
  Fix compilation reported by Nils on Summit with gnu 8.1
  Be more explicit about which clang-format is used
  apply clang-format (5.0.1)
  Fix warnings
  ...
  • Loading branch information
wdeconinck committed Feb 14, 2019
2 parents a508fe0 + 7e84f0a commit 306039c
Show file tree
Hide file tree
Showing 614 changed files with 27,190 additions and 18,823 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,6 @@ doc/html
doc/latex
*.sublime-workspace
.nfs*
build/*
install/*
env.sh
46 changes: 21 additions & 25 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,13 @@ matrix:
- CXX_COMPILER='clang++' C_COMPILER='clang' Fortran_COMPILER='gfortran'
- MPI=openmpi
- ATLAS_CMAKE_OPTIONS="-DCMAKE_BUILD_TYPE=DEBUG"
osx_image: xcode9
osx_image: xcode10.1
addons:
homebrew:
packages:
- openmpi
- cgal
- fftw

##################################
# KNOWN TO FAIL, so comment
Expand All @@ -92,16 +98,6 @@ matrix:

before_install:

#################################################################
# Fixes to pre-installed packages
#################################################################
- |
### Fix pre-installed packages
if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then
brew update
brew list oclint || brew cask uninstall oclint # Prevent conflict with gcc
fi
#################################################################
# Set compilers
#################################################################
Expand Down Expand Up @@ -135,7 +131,9 @@ install:
- |
### Install gcc (homebrew)
if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then
brew upgrade gcc || brew install gcc
export HOMEBREW_NO_AUTO_UPDATE=1
brew install gcc
brew link gcc
fi
- |
### Install PGI community edition
Expand Down Expand Up @@ -165,28 +163,26 @@ install:
mkdir -p ${DEPS_DIR}/cmake && travis_retry wget --no-check-certificate --quiet -O - ${CMAKE_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR}/cmake
fi
export PATH=${DEPS_DIR}/cmake/bin:${PATH}
else
brew upgrade cmake || brew install cmake
fi
cmake --version
#################################################################
# Install FFTW
#################################################################
- |
### Install FFTW
if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then
brew upgrade fftw || brew install fftw
fi
# - |
# ### Install FFTW
# if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then
# brew ls --versions fftw || brew install fftw
# fi

#################################################################
# Install CGAL
#################################################################
- |
### Install CGAL
if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then
brew upgrade cgal || brew install cgal
fi
# - |
# ### Install CGAL
# if [[ "${TRAVIS_OS_NAME}" == "osx" ]]; then
# brew ls --versions cgal || brew install cgal
# fi

#################################################################
# Install ecbuild
Expand Down Expand Up @@ -240,7 +236,7 @@ script:
#################################################################
# Test Atlas
#################################################################
- ctest -VV
- ctest

after_success:

Expand Down
23 changes: 23 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,28 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html

## [Unreleased]

## [0.16.0] - 2018-02-14
### Changed
- Interpolation makes use of OpenMP
- Cleanup of header includes
- fypp Fortran preprocessor is ported to fckit 0.6

### Added
- Parallel structured interpolation methods (2D,3D): linear, cubic, quasicubic
- Interpolation for multi-level and multi-variable fields
- atlas_Trace: Fortran API and use within OpenMP parallel regions
- StructuredColumns halo-exchange for vector fields
- Field::halo_exchange() function

### Fixed
- Fortran compilation with PGI 18.10
- Access to Field view within OpenMP parallel region
- FunctionSpaces use only required halo, even if larger halo is available in mesh
- Fixed faulty name of a Field when created through Fortran API, wrapping existing memory
- Fix NodeColumns functionspace when mesh is created from projected grid.
- Parallel interpolation from regular lonlat grid.
- Spectral spherical harmonics transforms for large cases

## [0.15.2] - 2018-08-31
### Changed
- Initialisation of Fields to signalling NaN in debug builds, uninitialised in
Expand Down Expand Up @@ -58,6 +80,7 @@ This project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html
## 0.13.0 - 2018-02-16

[Unreleased]: https://github.com/ecmwf/atlas/compare/master...develop
[0.16.0]: https://github.com/ecmwf/atlas/compare/0.15.2...0.16.0
[0.15.2]: https://github.com/ecmwf/atlas/compare/0.15.1...0.15.2
[0.15.1]: https://github.com/ecmwf/atlas/compare/0.15.0...0.15.1
[0.15.0]: https://github.com/ecmwf/atlas/compare/0.14.0...0.15.0
Expand Down
6 changes: 5 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ ecbuild_find_python()

ecbuild_add_option( FEATURE FORTRAN
DESCRIPTION "Provide Fortran bindings"
REQUIRED_PACKAGES "PROJECT fckit VERSION 0.5" )
REQUIRED_PACKAGES "PROJECT fckit VERSION 0.6" )

if( ATLAS_HAVE_FORTRAN )

Expand Down Expand Up @@ -123,6 +123,9 @@ if( ATLAS_HAVE_TESSELATION )
list( APPEND CGAL_INCLUDE_DIRS ${Boost_INCLUDE_DIRS} )
if ( TARGET CGAL::CGAL )
list( APPEND CGAL_LIBRARIES CGAL::CGAL ${CGAL_3RD_PARTY_LIBRARIES} ${GMP_LIBRARIES} ${MPFR_LIBRARIES} ${Boost_THREAD_LIBRARY} ${Boost_SYSTEM_LIBRARY} )
# Reset INTERFACE_COMPILE_OPTIONS ( see ATLAS-193 )
get_target_property( CGAL_COMPILE_FLAGS CGAL::CGAL INTERFACE_COMPILE_OPTIONS )
set_target_properties( CGAL::CGAL PROPERTIES INTERFACE_COMPILE_OPTIONS "" )
else()
list( APPEND CGAL_LIBRARIES ${CGAL_LIBRARY} ${CGAL_3RD_PARTY_LIBRARIES} ${GMP_LIBRARIES} ${MPFR_LIBRARIES} ${Boost_THREAD_LIBRARY} ${Boost_SYSTEM_LIBRARY} )
endif()
Expand Down Expand Up @@ -187,6 +190,7 @@ ecbuild_add_option( FEATURE EIGEN
### Type for Global indices and unique point id's

set( ATLAS_BITS_GLOBAL 64 )
set( ATLAS_BITS_LOCAL 32 )

### Bounds checking
if( ${CMAKE_BUILD_TYPE} MATCHES "Debug" )
Expand Down
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
Atlas
=====

[![atlas release version](https://img.shields.io/github/release/ecmwf/atlas.svg)](https://github.com/ecmwf/atlas/releases/latest)
[![travis master](https://img.shields.io/travis/ecmwf/atlas/master.svg?label=master&logo=travis)](http://travis-ci.org/ecmwf/atlas "master")
[![travis develop](https://img.shields.io/travis/ecmwf/atlas/develop.svg?label=develop&logo=travis)](http://travis-ci.org/ecmwf/atlas "develop")
[![codecov](https://codecov.io/gh/ecmwf/atlas/branch/develop/graph/badge.svg)](https://codecov.io/gh/ecmwf/atlas)

Project home: https://software.ecmwf.int/wiki/display/ATLAS
Project home: https://confluence.ecmwf.int/display/ATLAS
Contact: Willem Deconinck ([email protected])
Publication:
> [Deconinck et al, 2017](https://doi.org/10.1016/j.cpc.2017.07.006) ---
Expand Down
2 changes: 1 addition & 1 deletion VERSION.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@
# granted to it by virtue of its status as an intergovernmental organisation nor
# does it submit to any jurisdiction.

set ( ${PROJECT_NAME}_VERSION_STR "0.15.2" )
set ( ${PROJECT_NAME}_VERSION_STR "0.16.0" )

19 changes: 14 additions & 5 deletions bamboo/CLANG-env.sh
Original file line number Diff line number Diff line change
@@ -1,15 +1,24 @@
# No module environment on the Mac
[[ $(uname) == "Darwin" ]] && return
# Initialise module environment if it is not
#!/bin/bash

if [[ $(uname) == "Darwin" ]]; then
# Up to date CMake version required
export PATH=${HOME}/Applications/CMake.app/Contents/bin:${PATH}
# No module environment on the Mac
return
fi

# initialise module environment if it is not
if [[ ! $(command -v module > /dev/null 2>&1) ]]; then
. /usr/local/apps/module/init/bash
fi

module unload grib_api
module unload eccodes
module unload emos
module unload fftw
module unload libemos
module unload metview

module switch gnu clang
export FC=/usr/local/apps/gcc/6.3.0/bin/gfortran
module load cmake/3.10.2

module switch gnu clang
4 changes: 4 additions & 0 deletions bamboo/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
file( GLOB_RECURSE bamboo_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*" )

ecbuild_add_resources( TARGET ${PROJECT_NAME}_bamboo
SOURCES_DONT_PACK ${bamboo_files} )
17 changes: 17 additions & 0 deletions bamboo/GCC-env.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#!/bin/bash

[[ $(uname) == "Darwin" ]] && return

# initialise module environment if it is not
if [[ ! $(command -v module > /dev/null 2>&1) ]]; then
. /usr/local/apps/module/init/bash
fi

module unload grib_api
module unload eccodes
module unload emos
module unload fftw
module unload libemos
module unload metview

module load cmake/3.10.2
3 changes: 2 additions & 1 deletion bamboo/INTEL-env.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ module unload eccodes
module unload emos
module unload fftw
module unload libemos
module unload metview

module load cmake/3.10.2

module switch gnu intel/16.0.3
module switch gnu intel/17.0.3
4 changes: 4 additions & 0 deletions bamboo/env.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/usr/bin/env bash

# export ctest_parallel="no"

8 changes: 8 additions & 0 deletions cmake/CompileFlags.cmake
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
# (C) Copyright 2013 ECMWF.
#
# This software is licensed under the terms of the Apache Licence Version 2.0
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
# In applying this licence, ECMWF does not waive the privileges and immunities
# granted to it by virtue of its status as an intergovernmental organisation nor
# does it submit to any jurisdiction.

if( CMAKE_CXX_COMPILER_ID MATCHES Cray )

ecbuild_add_cxx_flags("-hnomessage=3140") # colon separated numbers
Expand Down
6 changes: 5 additions & 1 deletion cmake/atlas_host_device.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ function( create_cuda_wrapper variable )
get_filename_component(directory ${_PAR_SOURCE} DIRECTORY)
get_filename_component(base ${_PAR_SOURCE} NAME_WE)
get_filename_component(name ${_PAR_SOURCE} NAME)
get_filename_component(abspath ${_PAR_SOURCE} ABSOLUTE)

if( directory )
set(cuda_wrapper ${CMAKE_CURRENT_BINARY_DIR}/${directory}/${base}.cu)
else()
Expand All @@ -25,7 +27,9 @@ function( create_cuda_wrapper variable )
"
#include \"atlas/${directory}/${name}\"
")
file(WRITE ${cuda_wrapper} "${content}")
if( ${abspath} IS_NEWER_THAN ${cuda_wrapper} )
file(WRITE ${cuda_wrapper} "${content}")
endif()
endfunction()


Expand Down
1 change: 0 additions & 1 deletion doc/user-guide/core-functionalities/fields/fields.cc
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
using atlas::Field;
using atlas::FieldSet;
using atlas::Log;
using atlas::array::ArrayView;
using atlas::array::make_datatype;
using atlas::array::make_shape;
using atlas::array::make_view;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,17 +5,17 @@
#include "atlas/library/Library.h"
#include "atlas/mesh/Mesh.h"
#include "atlas/mesh/Nodes.h"
#include "atlas/meshgenerator/StructuredMeshGenerator.h"
#include "atlas/meshgenerator.h"
#include "atlas/output/Gmsh.h"
#include "atlas/runtime/Log.h"

using namespace atlas;
using atlas::StructuredMeshGenerator;
using atlas::array::make_shape;
using atlas::array::make_view;
using atlas::functionspace::NodeColumns;
using atlas::gidx_t;
using atlas::grid::StructuredGrid;
using atlas::meshgenerator::StructuredMeshGenerator;
using atlas::output::Gmsh;

int main( int argc, char* argv[] ) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,14 @@
#include "atlas/grid.h"
#include "atlas/library/Library.h"
#include "atlas/mesh.h"
#include "atlas/meshgenerator/StructuredMeshGenerator.h"
#include "atlas/meshgenerator.h"
#include "atlas/output/Gmsh.h"
#include "atlas/util/CoordinateEnums.h"

using namespace atlas;
using atlas::array::ArrayView;
using atlas::StructuredMeshGenerator;
using atlas::array::make_view;
using atlas::functionspace::StructuredColumns;
using atlas::meshgenerator::StructuredMeshGenerator;
using atlas::output::Gmsh;

int main( int argc, char* argv[] ) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
#include "atlas/grid/Grid.h"
#include "atlas/library/Library.h"
#include "atlas/mesh/Mesh.h"
#include "atlas/meshgenerator/StructuredMeshGenerator.h"
#include "atlas/meshgenerator.h"
#include "atlas/output/Gmsh.h"
#include "atlas/util/Config.h"

using atlas::Grid;
using atlas::Mesh;
using atlas::meshgenerator::StructuredMeshGenerator;
using atlas::StructuredMeshGenerator;
using atlas::output::Gmsh;
using atlas::util::Config;

Expand Down
Loading

0 comments on commit 306039c

Please sign in to comment.