Skip to content

Commit

Permalink
Merge pull request #322 from LLNL/release/0.3.1
Browse files Browse the repository at this point in the history
Release version 0.3.1
  • Loading branch information
davidbeckingsale committed Sep 21, 2017
2 parents 6ecf36d + d884ada commit 51e444c
Show file tree
Hide file tree
Showing 164 changed files with 16,524 additions and 10,667 deletions.
160 changes: 73 additions & 87 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,113 +3,99 @@ dist: trusty
language: cpp
env:
global:
secure: xN+lGOH8LzepE1OoOrHelDgu1wf7nL/B7nBWhN7EnCB7S7hZJL/AakruHy4lMfQfF4XkrnPWmBlmc4wdLH+o6jPkUISm4nLRSTMnRV2L+Mjyzg3aIEua0xpO6rLUNgsShB8mfkieTJq+kSj3Yp2CM7GEzm+UNNxeJcY0VdUHy9msRRRbXiLViIrfwBEVC9He7xG9NWfqkpsORfoiPmVDm7YzuXALdB8qkX4AWggysz/BCVj0PwBMr754eEpOodQ9GeKDF2Kwy5vPAqK5f7zwshJtF9VevyA1A2M9y8BHJMymz4wGaSxLNMeUU85AmVIvmzX0weG94JQ7mlUVszNpO5CCIyjwCOF+IDUI8HCDJGOY7+gGnv4H2LhDwAXvFLD65FlMntQQe2e4KRTnFxtJvvghjv5FyxJSHwctLsgeDpr2uZDcAhK1yf8TNsqqMiXQj2yGLByJy8j5PjUyd8oN47uZo0T5DDMd5c3ztUppc5+DisIoqmoYQeom3lYbpeudaf492ZDBWEV4rS9COl1h7CnpanMBpXWLFc2zXyfTpRn3GifutiF8M3rSS2KHcPyb9JLePTrC4+itMkwB4SHo1VYk4H2RQAdPMDFHMKCeVs2Z4sF9pGPJR+JzRekaKFLDm73ihsuE0cnx1oPVQMjSWa0e7A1a9W4UQBvp9xR++i4=
- secure: xN+lGOH8LzepE1OoOrHelDgu1wf7nL/B7nBWhN7EnCB7S7hZJL/AakruHy4lMfQfF4XkrnPWmBlmc4wdLH+o6jPkUISm4nLRSTMnRV2L+Mjyzg3aIEua0xpO6rLUNgsShB8mfkieTJq+kSj3Yp2CM7GEzm+UNNxeJcY0VdUHy9msRRRbXiLViIrfwBEVC9He7xG9NWfqkpsORfoiPmVDm7YzuXALdB8qkX4AWggysz/BCVj0PwBMr754eEpOodQ9GeKDF2Kwy5vPAqK5f7zwshJtF9VevyA1A2M9y8BHJMymz4wGaSxLNMeUU85AmVIvmzX0weG94JQ7mlUVszNpO5CCIyjwCOF+IDUI8HCDJGOY7+gGnv4H2LhDwAXvFLD65FlMntQQe2e4KRTnFxtJvvghjv5FyxJSHwctLsgeDpr2uZDcAhK1yf8TNsqqMiXQj2yGLByJy8j5PjUyd8oN47uZo0T5DDMd5c3ztUppc5+DisIoqmoYQeom3lYbpeudaf492ZDBWEV4rS9COl1h7CnpanMBpXWLFc2zXyfTpRn3GifutiF8M3rSS2KHcPyb9JLePTrC4+itMkwB4SHo1VYk4H2RQAdPMDFHMKCeVs2Z4sF9pGPJR+JzRekaKFLDm73ihsuE0cnx1oPVQMjSWa0e7A1a9W4UQBvp9xR++i4=
- OMP_NUM_THREADS=3
- DO_BUILD=yes
- DO_TEST=yes
matrix:
include:
- compiler: gcc-4
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.9
env: COMPILER=g++-4.9 - WARN="-DRAJA_ENABLE_WARNINGS=On"
- compiler: gcc-5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
env: COMPILER=g++-5 - WARN="-DRAJA_ENABLE_WARNINGS=On"
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-4.9, libtbb-dev ] } }
env:
- COMPILER=g++-4.9
- CMAKE_EXTRA_FLAGS="-DRAJA_ENABLE_WARNINGS=On"
- compiler: gcc-6
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-6
env: COMPILER=g++-6 - WARN="" - CMAKE_EXTRA_FLAGS="-DCMAKE_EXE_LINKER_FLAGS='-coverage'
-DCMAKE_CXX_FLAGS='-coverage'" - COVERAGE=t
- compiler: clang-3.6
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-6, libtbb-dev ] } }
env:
- COMPILER=g++-6
- CMAKE_EXTRA_FLAGS="-DRAJA_ENABLE_WARNINGS=On"
- compiler: gcc-7
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-7, libtbb-dev ] } }
env:
- COMPILER=g++-7
- CMAKE_EXTRA_FLAGS="-DRAJA_ENABLE_WARNINGS=On"
- compiler: clang-5
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-6, libtbb-dev ] } }
env:
- COMPILER=$HOME/llvm/clang+llvm-3.6.0-x86_64-linux-gnu/bin/clang++
- DOWNLOAD=http://releases.llvm.org/3.6.0/clang+llvm-3.6.0-x86_64-linux-gnu-ubuntu-14.04.tar.xz
- WARN=""
- compiler: clang-3.7
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
- COMPILER=clang++-5.0.0
- LLVM_VERSION=5.0.0
- DOWNLOAD_URL=http://releases.llvm.org/5.0.0/clang+llvm-5.0.0-linux-x86_64-ubuntu14.04.tar.xz
- compiler: clang-3.9
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-6, libtbb-dev ] } }
env:
- COMPILER=$HOME/llvm/clang+llvm-3.7.0-x86_64-linux-gnu-ubuntu-14.04/bin/clang++
- DOWNLOAD=http://releases.llvm.org/3.7.0/clang+llvm-3.7.0-x86_64-linux-gnu-ubuntu-14.04.tar.xz
- WARN=""
- compiler: clang-3.8
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-5
- COMPILER=clang++-3.9.1
- LLVM_VERSION=3.9.1
- compiler: clang-4.0
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-6, libtbb-dev ] } }
env:
- COMPILER=$HOME/llvm/clang+llvm-3.8.0-x86_64-linux-gnu-ubuntu-14.04/bin/clang++
- LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/llvm/clang+llvm-3.8.0-x86_64-linux-gnu-ubuntu-14.04/lib
- DOWNLOAD=http://releases.llvm.org/3.8.0/clang+llvm-3.8.0-x86_64-linux-gnu-ubuntu-14.04.tar.xz
- WARN=""
- COMPILER=clang++-4.0.0
- LLVM_VERSION=4.0.0
- compiler: intel-17
env:
- COMPILER=icpc
- WARN=""
- TRAVIS_BUILD_INTEL="YES"
- COMPILER=icpc
- TRAVIS_INSTALL_COMPILER="intel"
- compiler: nvcc
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- g++-4.9
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-4.9, libtbb-dev ] } }
env:
- COMPILER=g++-4.9
- CMAKE_EXTRA_FLAGS="-DRAJA_ENABLE_CUDA=On"
- TRAVIS_INSTALL_COMPILER="nvcc"
- DO_TEST=no
- compiler: gcc-4.9-debug
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-4.9, libtbb-dev ] } }
env:
- COMPILER=g++-4.9
- CMAKE_EXTRA_FLAGS="-DCMAKE_BUILD_TYPE=Debug -DRAJA_ENABLE_COVERAGE=On"
- compiler: clang-3.9-debug
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-6, libtbb-dev ] } }
env:
- COMPILER=clang++
- LLVM_VERSION=3.9.1
- CMAKE_EXTRA_FLAGS="-DCMAKE_BUILD_TYPE=Debug"
- compiler: nvcc-debug
addons: { apt: { sources: [ ubuntu-toolchain-r-test ] , packages: [ g++-4.9, libtbb-dev ] } }
env:
- COMPILER=g++-4.9
- CMAKE_EXTRA_FLAGS="-DRAJA_ENABLE_CUDA=ON"
- TRAVIS_BUILD_NVCC="YES"
- COMPILER=g++-4.9
- CMAKE_EXTRA_FLAGS="-DCMAKE_BUILD_TYPE=Debug -DRAJA_ENABLE_CUDA=On"
- TRAVIS_INSTALL_COMPILER="nvcc"
- DO_TEST=no
cache:
directories:
- $HOME/llvm
- /usr/local/cuda-8.0
before_install:
- sudo apt-get update -qq
- if [[ -n "$DOWNLOAD" ]] ; then if [[ ! -e "$COMPILER" ]] ; then cd $HOME; curl -o
tarball.tar.xz $DOWNLOAD && cd $HOME/llvm && tar xf $HOME/tarball.tar.xz ; fi ;
fi
- mkdir -p ${HOME}/download
- if [[ -n "${LLVM_VERSION}" ]]; then . ./scripts/install_llvm.sh ; fi
- CMAKE_URL="https://cmake.org/files/v3.7/cmake-3.7.0-rc2-Linux-x86_64.tar.gz"
- cd $HOME && curl -o cmake-tarball.tar.gz ${CMAKE_URL} && mkdir -p $HOME/cmake &&
cd $HOME/cmake && tar xf $HOME/cmake-tarball.tar.gz --strip-components=1 && export
PATH=${PWD}/bin:${PATH}
- if [[ -n "${TRAVIS_BUILD_INTEL}" ]] ; then wget -q -O /dev/stdout 'https://raw.githubusercontent.com/nemequ/icc-travis/master/install-icc.sh' | /bin/sh; fi
- if [[ -n "${TRAVIS_BUILD_NVCC}" ]] ; then travis_retry wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_8.0.61-1_amd64.deb &&
travis_retry sudo dpkg -i cuda-repo-ubuntu1404_8.0.61-1_amd64.deb &&
- curl -o ${HOME}/cmake-tarball.tar.gz ${CMAKE_URL} &&
mkdir -p ${HOME}/cmake &&
tar xf ${HOME}/cmake-tarball.tar.gz -C ${HOME}/cmake --strip-components=1 &&
export PATH=${HOME}/cmake/bin:${PATH}
- if [[ "${TRAVIS_INSTALL_COMPILER}" == "intel" && -n "$INTEL_SERIAL_NUMBER" ]] ; then wget -q -O /dev/stdout 'https://raw.githubusercontent.com/nemequ/icc-travis/master/install-icc.sh' | /bin/sh; fi
- if [[ "${TRAVIS_INSTALL_COMPILER}" == "intel" && -z "$INTEL_SERIAL_NUMBER" ]] ; then export DO_BUILD=no ; export DO_TEST=no ; fi
- if [[ "${TRAVIS_INSTALL_COMPILER}" == "nvcc" ]]; then export DEBFILE=${HOME}/download/cuda-repo.deb; fi
- if [[ "${TRAVIS_INSTALL_COMPILER}" == "nvcc" ]]; then export DOWNLOAD_URL=http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_8.0.61-1_amd64.deb; fi
- if [[ "${TRAVIS_INSTALL_COMPILER}" == "nvcc" ]]; then if [[ ! -f /usr/local/cuda-8.0/bin/nvcc ]]; then if [[ ! -f ${DEBFILE} ]]; then travis_retry wget -O ${DEBFILE} ${DOWNLOAD_URL}; fi &&
travis_retry sudo dpkg -i ${DEBFILE} &&
travis_retry sudo apt-get update -qq &&
travis_retry sudo apt-get install -y cuda-drivers cuda-core-8-0 cuda-cudart-dev-8-0 cuda-cufft-dev-8-0 &&
travis_retry sudo apt-get clean &&
travis_retry sudo apt-get install --no-install-suggests --no-install-recommends -y cuda-drivers cuda-core-8-0 cuda-cudart-dev-8-0 cuda-cufft-dev-8-0 &&
travis_retry sudo apt-get clean; fi &&
export CUDA_HOME=/usr/local/cuda-8.0 &&
export CUDA_TOOLKIT_ROOT_DIR=${CUDA_HOME} &&
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH} &&
export PATH=${CUDA_HOME}/bin:${PATH}; fi
script:
- source ~/.bashrc
- cd $TRAVIS_BUILD_DIR
- mkdir travis-build && cd travis-build
- cmake -DCMAKE_CXX_COMPILER="$COMPILER" $WARN $CMAKE_EXTRA_FLAGS ../
- make -j
- if ! [[ -n "${TRAVIS_BUILD_NVCC}" ]] ; then make test; fi
- ./scripts/travis_build_and_test.sh
after_success:
- if [[ -n "${COVERAGE}" ]] ; then bash <(curl -s https://codecov.io/bash) ; fi
- if [[ -n "${TRAVIS_BUILD_INTEL}" ]] ; then uninstall_intel_software ; fi
- if [[ "${CMAKE_EXTRA_FLAGS}" == *"RAJA_ENABLE_COVERAGE"* ]] ; then bash <(curl -s https://codecov.io/bash) -a "-f"; fi
- if [[ "${TRAVIS_INSTALL_COMPILER}" == "intel" ]] ; then uninstall_intel_software ; fi
10 changes: 7 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,12 +48,14 @@ project(RAJA LANGUAGES CXX C)
# Set version number
set(RAJA_VERSION_MAJOR 0)
set(RAJA_VERSION_MINOR 3)
set(RAJA_VERSION_PATCHLEVEL 0)
set(RAJA_VERSION_PATCHLEVEL 1)

set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake/thirdparty" ${CMAKE_MODULE_PATH})

# Build options
set(RAJA_CXX_STANDARD_FLAG "default" CACHE STRING "Specific c++ standard flag to use, default attempts to autodetect the highest available")
option(RAJA_ENABLE_OPENMP "Build OpenMP support" On)
option(RAJA_ENABLE_TBB "Build TBB support" On)
option(RAJA_ENABLE_TARGET_OPENMP "Build OpenMP on target device support" Off)
option(RAJA_ENABLE_CUDA "Build CUDA support" Off)
option(RAJA_ENABLE_CLANG_CUDA "Use Clang's native CUDA support" Off)
Expand All @@ -65,14 +67,16 @@ option(RAJA_ENABLE_NESTED "Enable nested loop support" Off)
option(RAJA_ENABLE_WARNINGS "Enable warnings as errors for CI" Off)
option(RAJA_ENABLE_DOCUMENTATION "Build RAJA documentation" Off)

option(RAJA_ENABLE_COVERAGE "Enable coverage (only supported with GCC)" Off)

set(TEST_DRIVER "" CACHE STRING "driver used to wrap test commands")

# Setup basic CMake options
include(cmake/SetupBasics.cmake)
# Setup vendor-specific compiler flags
include(cmake/SetupCompilers.cmake)
# Find third-party packages
include(cmake/SetupPackages.cmake)
# Setup vendor-specific compiler flags
include(cmake/SetupCompilers.cmake)
# Setup internal RAJA configuration options
include(cmake/SetupRajaConfig.cmake)
# Macros for building executables and libraries
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
*******************************************************************************

RAJA: ................................, version 0.3.0
RAJA: ................................, version 0.3.1

Copyright (c) 2016, Lawrence Livermore National Security, LLC.
Produced at the Lawrence Livermore National Laboratory.
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
RAJA v0.3.0
RAJA v0.3.1
============

[![Build Status](https://travis-ci.org/LLNL/RAJA.svg?branch=develop)](https://travis-ci.org/LLNL/RAJA)
Expand Down
14 changes: 14 additions & 0 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
version: 1.0.{build}
skip_branch_with_pr: true
image: Visual Studio 2017
build_script:
- cmd: >-
mkdir build
cd build
cmake ../
cmake --build . --config Release
test_script:
- cmd: ctest -VV -C Release
4 changes: 2 additions & 2 deletions cmake/CompilerCompatibility.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,9 @@ include(CheckCXXSourceCompiles)
set(OLD_CMAKE_REQUIRED_FLAGS ${CMAKE_REQUIRED_FLAGS})
if (NOT MSVC)
if (CMAKE_CXX_COMPILER_ID MATCHES INTEL)
set (CMAKE_REQUIRED_FLAGS ${CMAKE_CXX_FLAGS_DEBUG})
set (CMAKE_REQUIRED_FLAGS "${COMMON_FLAGS} ${CMAKE_CXX_FLAGS_DEBUG}")
else ()
set (CMAKE_REQUIRED_FLAGS "-std=c++11")
set (CMAKE_REQUIRED_FLAGS "${COMMON_FLAGS} -std=c++11")
endif()
endif()

Expand Down
37 changes: 16 additions & 21 deletions cmake/RAJAMacros.cmake
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
###############################################################################
# Copyright (c) 2016, Lawrence Livermore National Security, LLC.
#
#
# Produced at the Lawrence Livermore National Laboratory
#
#
# LLNL-CODE-689114
#
#
# All rights reserved.
#
#
# This file is part of RAJA.
#
# For additional details, please also read RAJA/LICENSE.
Expand Down Expand Up @@ -41,7 +41,6 @@
###############################################################################

macro(raja_add_executable)

set(options )
set(singleValueArgs NAME)
set(multiValueArgs SOURCES DEPENDS_ON)
Expand All @@ -53,12 +52,12 @@ macro(raja_add_executable)
list (APPEND arg_DEPENDS_ON chai)
endif ()

if (RAJA_ENABLE_CUDA)
if (RAJA_ENABLE_CLANG_CUDA)
if (RAJA_ENABLE_CUDA)
if (RAJA_ENABLE_CLANG_CUDA)
add_executable(${arg_NAME} ${arg_SOURCES})
target_compile_options(${arg_NAME} PRIVATE
target_compile_options(${arg_NAME} PRIVATE
-x cuda --cuda-gpu-arch=${RAJA_CUDA_ARCH} --cuda-path=${CUDA_TOOLKIT_ROOT_DIR})
target_include_directories(${arg_NAME}
target_include_directories(${arg_NAME}
PUBLIC ${EXPT_CUDA_INCLUDE_LOCATION})
target_link_libraries(${arg_NAME} ${CUDA_LIBRARIES} RAJA ${arg_DEPENDS_ON})
else ()
Expand All @@ -67,7 +66,7 @@ macro(raja_add_executable)
PROPERTIES
CUDA_SOURCE_PROPERTY_FORMAT OBJ)
cuda_add_executable(${arg_NAME} ${arg_SOURCES})
target_link_libraries(${arg_NAME} RAJA ${arg_DEPENDS_ON})
target_link_libraries(${arg_NAME} PUBLIC RAJA ${arg_DEPENDS_ON})
endif()
else ()
add_executable(${arg_NAME} ${arg_SOURCES})
Expand All @@ -91,9 +90,9 @@ macro(raja_add_library)
if (RAJA_ENABLE_CLANG_CUDA)

add_library(${arg_NAME} ${arg_SOURCES})
target_compile_options(${arg_NAME} PRIVATE
target_compile_options(${arg_NAME} PRIVATE
-x cuda --cuda-gpu-arch=${RAJA_CUDA_ARCH} --cuda-path=${CUDA_TOOLKIT_ROOT_DIR})
target_include_directories(${arg_NAME}
target_include_directories(${arg_NAME}
PUBLIC ${EXPT_CUDA_INCLUDE_LOCATION})
target_link_libraries(${arg_NAME} ${CUDA_LIBRARIES})

Expand All @@ -109,12 +108,6 @@ macro(raja_add_library)
add_library(${arg_NAME} ${arg_SOURCES})
endif ()

if (NOT (CMAKE_CXX_COMPILER_ID MATCHES Intel OR RAJA_ENABLE_CLANG_CUDA) )
set_target_properties(${arg_NAME}
PROPERTIES
CXX_STANDARD 11
CXX_STANDARD_REQUIRED YES)
endif()
endmacro(raja_add_library)

macro(raja_add_test)
Expand All @@ -125,11 +118,13 @@ macro(raja_add_test)
cmake_parse_arguments(arg
"${options}" "${singleValueArgs}" "${multiValueArgs}" ${ARGN})

list (APPEND arg_DEPENDS_ON gtest gtest_main ${CMAKE_THREAD_LIBS_INIT})

raja_add_executable(
NAME ${arg_NAME}.exe
SOURCES ${arg_SOURCES}
NAME ${arg_NAME}.exe
SOURCES ${arg_SOURCES}
DEPENDS_ON ${arg_DEPENDS_ON})

add_test(NAME ${arg_NAME}
add_test(NAME ${arg_NAME}
COMMAND ${TEST_DRIVER} $<TARGET_FILE:${arg_NAME}>)
endmacro(raja_add_test)

0 comments on commit 51e444c

Please sign in to comment.