Skip to content

Commit 98f1e6b

Browse files
authored
Add ICE10 benchmark set (#2)
1 parent e5baf89 commit 98f1e6b

8 files changed

Lines changed: 747 additions & 4 deletions

File tree

.github/dco.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
require:
2+
members: false

.github/workflows/build.yml

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
name: CI
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
gcc-build:
7+
runs-on: ${{ matrix.os }}
8+
strategy:
9+
fail-fast: false
10+
matrix:
11+
os: [ubuntu-latest, macos-latest, windows-latest]
12+
13+
env:
14+
FC: gfortran
15+
GCC_V: 9
16+
17+
steps:
18+
- name: Checkout code
19+
uses: actions/checkout@v2
20+
21+
- uses: actions/setup-python@v1
22+
with:
23+
python-version: '3.x'
24+
25+
- name: Install GCC (OSX)
26+
if: contains(matrix.os, 'macos')
27+
run: |
28+
ln -s /usr/local/bin/gfortran-${GCC_V} /usr/local/bin/gfortran
29+
which gfortran-${GCC_V}
30+
which gfortran
31+
32+
- name: Install GCC (Linux)
33+
if: contains(matrix.os, 'ubuntu')
34+
run: |
35+
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_V} 100 \
36+
--slave /usr/bin/gfortran gfortran /usr/bin/gfortran-${GCC_V} \
37+
--slave /usr/bin/gcov gcov /usr/bin/gcov-${GCC_V}
38+
39+
- name: Install meson/cmake
40+
run: pip3 install meson==0.56.2 ninja
41+
42+
- name: Configure build
43+
run: meson setup build
44+
45+
- name: Build library (meson)
46+
run: meson compile -C build
47+
48+
- name: Run unit tests (meson)
49+
run: meson test -C build --print-errorlogs --no-rebuild
50+
51+
52+
intel-build:
53+
runs-on: ${{ matrix.os }}
54+
strategy:
55+
fail-fast: false
56+
matrix:
57+
os: [ubuntu-20.04]
58+
59+
env:
60+
FC: ifort
61+
OMP_NUM_THREADS: 2,1
62+
63+
steps:
64+
- name: Checkout code
65+
uses: actions/checkout@v2
66+
67+
- uses: actions/setup-python@v1
68+
with:
69+
python-version: '3.x'
70+
71+
- name: Add Intel repository
72+
run: |
73+
wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
74+
sudo apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
75+
rm GPG-PUB-KEY-INTEL-SW-PRODUCTS-2023.PUB
76+
echo "deb https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
77+
sudo apt-get update
78+
79+
- name: Install Intel oneAPI compiler
80+
run: |
81+
sudo apt-get install intel-oneapi-compiler-fortran
82+
source /opt/intel/oneapi/setvars.sh
83+
printenv >> $GITHUB_ENV
84+
85+
- name: Install meson/cmake
86+
run: pip3 install meson==0.56.2 ninja
87+
88+
- name: Configure meson build
89+
run: meson setup build
90+
91+
- name: Build library (meson)
92+
run: meson compile -C build
93+
94+
- name: Run unit tests (meson)
95+
run: meson test -C build --print-errorlogs --no-rebuild

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
[![Apache-2.0](https://img.shields.io/github/license/grimme-lab/mstore)](LICENSE)
44
[![Release](https://img.shields.io/github/v/release/grimme-lab/mstore)](https://github.com/grimme-lab/mstore/releases/latest)
5+
[![CI](https://github.com/grimme-lab/mstore/workflows/CI/badge.svg)](https://github.com/grimme-lab/mstore/actions)
56

67

78
## Installation
@@ -29,7 +30,7 @@ meson compile -C _build
2930

3031
To use this project in your testsuite just invoke the ``get_structure`` routine of the ``mstore`` module:
3132

32-
```fortran
33+
```f90
3334
use mctc_io
3435
use mstore
3536
type(structure_type) :: mol
@@ -43,6 +44,7 @@ Currently available benchmark sets are
4344
- *Amino20x4*
4445
- *But14diol*
4546
- *Heavy28*
47+
- *ICE10*
4648
- *IL16*
4749
- *MB16-43*
4850
- *UPU23*

meson.build

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
project(
1616
'mstore',
1717
'fortran',
18-
version: '0.1.1',
18+
version: '0.1.2',
1919
license: 'Apache-2.0',
2020
meson_version: '>=0.53',
2121
default_options: [

src/mstore.f90

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ module mstore
1717
use mstore_amino20x4, only : get_structure_amino20x4
1818
use mstore_but14diol, only : get_structure_but14diol
1919
use mstore_heavy28, only : get_structure_heavy28
20+
use mstore_ice10, only : get_structure_ice10
2021
use mstore_il16, only : get_structure_il16
2122
use mstore_mb16_43, only : get_structure_mb16_43
2223
use mstore_upu23, only : get_structure_upu23
@@ -38,6 +39,7 @@ subroutine get_structure(self, set, id)
3839
case("Amino20x4"); call get_structure_amino20x4(self, id)
3940
case("But14diol"); call get_structure_but14diol(self, id)
4041
case("Heavy28"); call get_structure_heavy28(self, id)
42+
case("ICE10"); call get_structure_ice10(self, id)
4143
case("IL16"); call get_structure_il16(self, id)
4244
case("MB16-43"); call get_structure_mb16_43(self, id)
4345
case("UPU23"); call get_structure_upu23(self, id)

0 commit comments

Comments
 (0)