Commit Graph

918 Commits

Author SHA1 Message Date
Kaan Olgu
c3dee4b64d Kokkos Instructions for Spack 2023-06-17 10:08:01 +00:00
Kaan Olgu
9b13172235 CUDA Instructions for Spack 2023-06-17 09:17:32 +00:00
Kaan Olgu
406cc0010e HIP Instructions for Spack 2023-06-17 09:02:13 +00:00
Kaan Olgu
7715c0843b STD Instructions for Spack 2023-06-16 22:20:26 +00:00
Kaan Olgu
22e9339a6e OpenCL Instructions for Spack 2023-06-16 22:03:55 +00:00
Kaan Olgu
acf70526c8 OpenMP style update 2023-06-16 21:24:06 +00:00
Kaan Olgu
11d2bef837 OpenMP Instructions for Spack 2023-06-16 20:36:47 +00:00
Tom Lin
e81f6c2889 Fix RAJA > v0.14.1 compatibility 2023-06-13 22:18:48 +01:00
Tom Deakin
7643de8d09 update changelog 2023-06-12 16:38:31 +01:00
Tom Deakin
092ee67764 Change CUDA DOT thread-blocks to 1024
This improves the performance on Ampere (A100) GPUs.

Fixes #137.
2023-06-12 15:51:13 +01:00
Tom Deakin
c66dcf4d50 Revert "Update CUDAStream.h"
This reverts commit fff1b1f84b.
2023-06-12 15:50:52 +01:00
Tom Deakin
fff1b1f84b
Update CUDAStream.h 2023-06-12 15:49:59 +01:00
Tom Lin
893af9f5d0 Fix compatibility with Kokkos 4+ 2023-06-10 21:08:29 +01:00
Tom Deakin
8b862f09b3
Update CHANGELOG.md 2023-05-02 15:18:42 +01:00
Tom Deakin
ebb1176a20
Merge pull request #139 from thomasgibson/updated-hip-kernels
Updated hip kernels
2023-05-02 15:18:08 +01:00
Thomas Gibson
696ff6a817 Round up dot_num_blocks and remove extra check 2023-03-13 10:47:37 -05:00
Tom Deakin
6a1122e5a3
Update CHANGELOG.md 2023-01-30 12:14:17 +00:00
Tom Deakin
1d49952d47
Merge pull request #150 from kaanolgu/main
Added ICPX support for the OneAPI 2023 support
2023-01-30 12:12:53 +00:00
Kaan Olgu
7e94495da6 Added ICPX support for the OneAPI2023 and later versions since DPCPP is deprecated 2023-01-27 14:28:13 +00:00
Tom Deakin
0df3ae79be
Merge pull request #135 from jeffhammond/fortran-ports
Fortran ports
2022-11-23 00:01:04 +00:00
Jeff Hammond
66491909e4 BabelStream Fortran
This is a new implementation of BabelStream using Fortran.

The code uses a Fortran driver that is largely equivalent to the C++ one, with a few exceptions. First, it does not use a C++ class for the stream object, since that doesn't seem like a useful way to do things in Fortran. Instead, I use a module that contains the same methods, and which has alloc and dealloc that act like CTOR and DTOR.

The current implementations are:
- DO CONCURRENT
- Fortran array notation
- Sequential DO loops
- OpenACC parallel loop
- OpenACC kernels on Fortran array notation
- OpenMP parallel do
- OpenMP taskloop
- OpenMP target teams distribute parallel do simd
- OpenMP target teams loop
- CUDA Fortran (handwritten CUDA Fortran kernels, except DOT)
- CUDA Fortran kernels (!$cuf kernel do <<<*,*>>>)

I have tested with GCC, Intel (ifort and ifx), and NVHPC compilers on AArch64, x86_64 and NVIDIA GPU targets, although not exhaustively.  Cray and Fujitsu have been tested as well.  The only untested compiler of significance is IBM XLF.

The current build system is GNU Make, and requires the user to manually specify the compiler and implementation.

CSV printing is supported.

Squashed commit of the following:

commit 15f13ef9d326102cc003b2fdfe1b31c4aea55373
Author: Jeff Hammond <email>
Date:   Tue Nov 15 06:42:46 2022 +0200

    8 cores unless user changes

commit 62ca680546ff89a1987b6fb797273038f767bf7b
Author: Jeff Hammond <email>
Date:   Tue Nov 15 06:42:09 2022 +0200

    hoist and disable orin flags

commit 76495509abcdb0686f293a72f7ded7c8ed7bb882
Author: Jeff Hammond <email>
Date:   Tue Nov 15 06:40:13 2022 +0200

    cleanup scripts

commit 5b45df87954282cbb6b0f7eb2dcb3570d08bb5c2
Author: Jeff Hammond <email>
Date:   Tue Nov 15 06:39:31 2022 +0200

    add autopar flag for GCC

commit 87eb07e4a8c3e8d6247ab5f72e14bf90002733ce
Merge: a732e7c 270644e
Author: Jeff Hammond <email>
Date:   Wed Nov 9 15:53:41 2022 +0200

    Merge remote-tracking branch 'origin/fortran_compiler_details' into fortran-ports

commit a732e7c49e12ce8aff15e9d4bcbd215fa4a05d82
Merge: cfafd99 5697d94
Author: Jeff Hammond <email>
Date:   Wed Nov 9 15:53:36 2022 +0200

    Merge remote-tracking branch 'origin/fortran_int32_option' into fortran-ports

commit cfafd993b646d5f5a90eb6d37d347cc545ab36d4
Merge: de5ff67 26a9707
Author: Jeff Hammond <email>
Date:   Wed Nov 9 15:53:25 2022 +0200

    Merge remote-tracking branch 'origin/fortran_csv' into fortran-ports

commit de5ff6772b2036ad259a6a9c331ff5408146b54c
Merge: 3109653 1d0755f
Author: Jeff Hammond <email>
Date:   Wed Nov 9 15:51:40 2022 +0200

    Merge branch 'UoB-HPC:main' into fortran-ports

commit 310965399a9b518122ff610b61419cdaab75ecd0
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Mon Sep 26 03:39:01 2022 -0700

    because gomp so confict

commit 270644e6fb89e8f3c3bfe4d73c9896fc3094d761
Author: Jeff Hammond <email>
Date:   Fri Sep 16 11:46:49 2022 +0300

    add compiler info flag

commit 5697d94a9ce5162de9445f5fde76f8020eae8b83
Author: Jeff Hammond <email>
Date:   Sun Sep 4 13:59:57 2022 +0300

    implement INT32 indexing

commit 830ad58dd2c985b9a2425093c0eed9ec1c7887dd
Author: Jeff Hammond <email>
Date:   Sun Sep 4 13:49:17 2022 +0300

    remove swear words from debugging

commit 26a9707a1f09249d04206adf647587e42cf5fab5
Author: Jeff Hammond <email>
Date:   Sun Sep 4 13:47:18 2022 +0300

    add an option for giga/gibi-bytes

commit 4f6d693c03ca1b092d3bf003cdfcc367b8ad86ac
Author: Jeff Hammond <email>
Date:   Sun Sep 4 13:41:32 2022 +0300

    CSV output seems done

    Signed-off-by: Jeff Hammond <email>

commit 94e62be05c11b9ef208f7ad09402ddf26e4586ae
Merge: ad52adc 772c183
Author: Jeff Hammond <email>
Date:   Sun Sep 4 12:59:01 2022 +0300

    Merge branch 'fortran_nan_check' into fortran_csv

commit 772c183de2fb1a8ea72ae7ef3c45c17895c4fdc9
Author: Jeff Hammond <email>
Date:   Sun Sep 4 10:44:26 2022 +0300

    fixed NaN check

commit ad52adc9ba6eb702c0fefdf1d9a8d1830b74830b
Author: Jeff Hammond <email>
Date:   Sun Sep 4 10:28:00 2022 +0300

    CSV WIP

commit 6f7cefc42ca286ae3b698d827fd7c9ee14984ecb
Author: Jeff Hammond <email>
Date:   Sun Sep 4 10:08:14 2022 +0300

    update help output

commit 208207597d150fafa059ca593ac30bc9a2e6d1a7
Author: Jeff Hammond <email>
Date:   Sun Sep 4 10:02:24 2022 +0300

    add option for cpu_time intrinsic timer

    also adjust use statements and rename macro for OpenMP timer

    Signed-off-by: Jeff Hammond <email>

commit 78fa2fcb1087f00efd94dd911000dc0d485da406
Author: Jeff Hammond <email>
Date:   Tue Aug 30 17:19:36 2022 +0300

    add check for normal (not NaN, not Inf, not denormal)

    the previous error check failed to detect garbage results because comparisons against NaN always return true.
    i flipped the logical comparison and added a check for IEEE normal to prevent this.  it works on the case that was missed previously.

    Signed-off-by: Jeff Hammond <email>

commit 22fc9fe918a378f47c88dbad3ce91a4a6688789b
Author: Jeff Hammond <email>
Date:   Tue Aug 30 17:19:30 2022 +0300

    move

commit d2d8c8555d2665fc553f9263a6767843ec14def8
Author: Jeff Hammond <email>
Date:   Tue Aug 30 16:29:15 2022 +0300

    so far so good

commit ffe181536b78ef845f861a09ca0dc72d4fffcbe8
Author: Jeff Hammond <email>
Date:   Tue Aug 30 16:29:09 2022 +0300

    so far so good

commit aa72b46a8187792ca819f9720c032e802525413a
Author: Jeff Hammond <email>
Date:   Tue Aug 30 16:28:52 2022 +0300

    GPU on by default

commit 0fc9e4acdd0fbb5b6d9399962fc6a1daaa4a84da
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Thu Aug 25 16:38:08 2022 +0300

    better

commit b1cbd6f5b6a7534502d29e14d1c09fa6be378dd8
Merge: bf14601 5fe03c6
Author: Jeff Hammond <email>
Date:   Thu Aug 25 16:35:22 2022 +0300

    Merge branch 'fortran-ports' of https://github.com/jeffhammond/BabelStream into fortran-ports

commit bf146011d6ee1ac9dd0cb6d43bb4e60b8cc37acf
Author: Jeff Hammond <email>
Date:   Thu Aug 25 16:35:07 2022 +0300

    autodetect GPU arch in build (who needs CMake?)

commit 5fe03c664e318a33bd0d383fddf8e76a2266a4e0
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Thu Aug 25 15:57:41 2022 +0300

    be smarter and check for compilers in path

commit a187612a68447302fbd036d717df53b2780df3b4
Author: Jeff Hammond <email>
Date:   Thu Aug 25 15:35:58 2022 +0300

    remove samsung paths

commit 82af886943a67980dda1724edae7686c6d280e1e
Merge: a46bf6b 0f59b50
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Wed Aug 24 13:22:13 2022 +0300

    merge fix plus build updates

commit 0f59b5014477c9a3da5eeb97328e6c55554a8c24
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Wed Aug 24 08:43:19 2022 +0000

    typo in USE_OPENMP_TIMERS

commit 4a9a0019585b0f03c42f151042ad592cba03d8b3
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Wed Aug 24 08:42:59 2022 +0000

    logic fix

commit 74d8123864fdb603b409112f5b9c0e92c2a93071
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Wed Aug 24 03:05:58 2022 -0500

    no-gpu option

commit dc1e39ff34e384ae66f50ab787e9ca8c92701c3b
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Wed Aug 24 03:05:17 2022 -0500

    fix default case

commit 0b2b0e0bb754b0ac86dd16eeb30db092a3b3e658
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Wed Aug 24 02:57:02 2022 -0500

    fix tp for aarch64

commit 1e213bec76d2e7f5f161a18eb365f2948563c925
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Wed Aug 24 07:46:41 2022 +0000

    fix MARCH and build.sh elif

commit a46bf6b48eb730a2fa08ccd8dddd04725fe25371
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Tue Aug 23 16:43:22 2022 +0300

    orin updates

commit a9fe9c028c08b9f0d468ee56f24970817087099d
Merge: 2ab14de 9f4bee4
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Tue Aug 23 06:32:01 2022 -0700

    more CPU specialization fixes

commit 2ab14de1535f71fd1b548a10585b035ed88daa26
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Tue Aug 23 06:30:37 2022 -0700

    more CPU specialization fixes

commit 9f4bee439c36b592321f4af38235450cfb23cdf2
Author: Jeff Hammond <email>
Date:   Tue Aug 23 16:12:13 2022 +0300

    build and run updates

commit aeff0854478e5f16536b11034f459ea387a222a2
Author: Jeff Hammond <email>
Date:   Tue Aug 23 15:56:25 2022 +0300

    aesthetics

commit 89b1ab01369cd71d5bbb837474799c75eabd64b5
Author: Jeff Hammond <email>
Date:   Tue Aug 23 15:56:08 2022 +0300

    handle march flag better

commit a284bfa6da9bbb1aa9de5e8d40b74c316e90f3c6
Author: Jeff Hammond <email>
Date:   Tue Aug 23 15:56:04 2022 +0300

    handle march flag better

commit c18c3945eb053581f2cdf528961f158c4aa66271
Author: Jeff Hammond <email>
Date:   Tue Aug 23 15:53:11 2022 +0300

    handle march flag better

commit a3a8ccf453a2ff7cc99a774b5a6262648690f7c8
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Tue Aug 23 05:29:41 2022 -0700

    brewster updates

commit 1364c4100f4bb6241e2db5805a64625a66c9d2fa
Author: Tom Deakin <thomasdeakin@gmail.com>
Date:   Sun Aug 21 17:16:20 2022 +0100

    Add Fujitsu compiler flags

commit b82fe2cb38cab940d0bebf613e22ea9685a21d06
Author: Jeff Hammond <email>
Date:   Sun Aug 21 15:40:28 2022 +0300

    FJ timer workaround

commit c1b2fa81155c4d6a3717793c5670b1b0d4cf6101
Author: Jeff Hammond <email>
Date:   Sun Aug 21 15:29:13 2022 +0300

    intel update/fix

commit 063ef879d9c3a3010a0be3b9baad7600f62e52bf
Author: Jeff Hammond <email>
Date:   Sun Aug 21 04:43:29 2022 -0700

    NERSC AMD compiler

commit 2c68292667b62f3428fc8cf4dfa874a5b44e625d
Merge: 2bdbbe8 ca98948
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Sun Aug 21 02:12:12 2022 -0700

    Merge branch 'fortran-ports' of https://github.com/jeffhammond/BabelStream into fortran-ports

commit 2bdbbe81d782268fd7f48889fd6eeea32d5f1f58
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Sun Aug 21 02:11:27 2022 -0700

    AMD ROCM buikd

commit ca9894801fdcca705e5d06c703af3a0f4e888c01
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Sun Aug 21 09:10:16 2022 +0000

    AWS stuff

commit 4c539efda9522810dadc64c65339ce22ea6822b4
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Sun Aug 21 09:09:59 2022 +0000

    merge

commit c3830658f8d403f602f3270b8f34b6ebd405c3e3
Author: Jeff Hammond <email>
Date:   Sun Aug 21 02:08:46 2022 -0700

    NERSC stuff

commit 7d7f746206e1ace8753778fcd2416d5ae30b7470
Merge: 1fefb8e d929852
Author: Jeff Hammond <email>
Date:   Sat Aug 20 20:56:09 2022 -0700

    Merge branch 'fortran-ports' of https://github.com/jeffhammond/BabelStream into fortran-ports

commit 1fefb8e657764b43cbcaf63278e051ead53bd29a
Author: Jeff Hammond <email>
Date:   Sat Aug 20 20:55:16 2022 -0700

    Cray temp stuff

commit d92985239b31e16d478ca3a8a740baba2c35c164
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Fri Aug 19 02:11:07 2022 -0700

    Xeon stuff

commit 3f19e451bbc856ed6aa221077e51bd0578e48426
Merge: 38f28e1 c8dd609
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Thu Aug 18 13:56:37 2022 +0000

    Merge branch 'fortran-ports' of https://github.com/jeffhammond/BabelStream into fortran-ports

commit 38f28e193c76970e5b6f641b437c6faefb9c608b
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Thu Aug 18 13:54:12 2022 +0000

    TARGET for cpu too

commit 6be181a07a93281a51cb897edf703404ead2c83e
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Thu Aug 18 13:52:58 2022 +0000

    AWS flags

commit e88479e09176510f707e410a4e69ea5290b2619e
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Thu Aug 18 13:52:42 2022 +0000

    ARM stuff for AWS

commit 1ee26cb3675b5e2739ddc21f56a1a864ff681950
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Thu Aug 18 13:52:24 2022 +0000

    disable shared for portability

commit c8dd6099d95792b17abbcb025f771c3ae0ed773e
Merge: 8bda56d 1b67999
Author: Jeff Hammond <email>
Date:   Thu Aug 18 15:23:16 2022 +0300

    Merge branch 'UoB-HPC:main' into fortran-ports

commit 8bda56dd9053fdacc77aac572401bc4c7806efa0
Author: Jeff Hammond <email>
Date:   Wed Aug 17 03:07:13 2022 -0700

    add Cray compiler to build system

    - ignore temp files generated by Cray Fortran
    - workaround Cray not having reduce

commit 3a0fec620d7ce5317a3260826087a26e0faee36c
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Wed Aug 17 02:09:19 2022 -0700

    remove LOCAL, which causes problems

commit e5a70ddbd995567c28a4c74373481c01a7489c88
Author: Jeff Hammond <email>
Date:   Wed Aug 10 22:26:50 2022 +0300

    add a way to use managed/device for everything

    DC uses managed by default.  no way to not use it and be strictly standard right now.
    managed affects performance in some cases, so we want to compare apples-to-apples.

    thanks to Jeff Larkin for helping with this.

    Signed-off-by: Jeff Hammond <email>

commit 8fe956ab62737aecdec1ce7785a659587d814653
Author: Jeff Hammond <email>
Date:   Wed Aug 10 22:26:41 2022 +0300

    only do GPU flag for IFX

commit de49723a7ae864847a2136353a45a49502291373
Author: Jeff Hammond <email>
Date:   Wed Aug 10 22:26:23 2022 +0300

    helper scripts

commit e0971aa15d6fac2bc1de6e5080b53f7288975fe9
Author: Jeff Hammond <email>
Date:   Wed Aug 10 22:26:21 2022 +0300

    helper scripts

commit a7ba50a60d321cab8e0f63d841b893c01a7df6b6
Author: Jeff Hammond <email>
Date:   Wed Aug 10 12:29:28 2022 +0300

    remove all the compiled intermediates with wildcard

commit 31a594e82ec7b75d626639948eba532d503c4d81
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Fri Aug 5 03:31:32 2022 -0700

    build stuff

commit 2cd3acd0f3cee82b60e5b05ac8dc01da3452bd1f
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Fri Aug 5 02:09:17 2022 -0700

    build all with unique names

commit ac230d127e15bdc9e56450862f9627d55da37f59
Author: Jeff Hammond <email>
Date:   Fri Aug 5 09:28:03 2022 +0300

    fix make clean

commit bd0ef7736a43e26864167eb61345704731acbefa
Author: Jeff Hammond <email>
Date:   Fri Aug 5 09:24:12 2022 +0300

    build check update

commit 662520c4e443b841a88f1a4fe833bdb77b7cfd45
Author: Jeff Hammond <email>
Date:   Fri Aug 5 09:21:48 2022 +0300

    CUDA kernel version

commit 25c321987b349f85a13f0140ae316382aa71e601
Author: Jeff Hammond <email>
Date:   Fri Aug 5 09:15:32 2022 +0300

    fixed CUDA Fortran dot

commit 64612d2604401c2f200a3689b4248ecf7c93adaf
Author: Jeff Hammond <email>
Date:   Fri Aug 5 09:10:49 2022 +0300

    CUDA Fortran working except DOT

commit 4d35fe51a22978cc77bdd6311b7d15654856c564
Author: Jeff Hammond <email>
Date:   Fri Aug 5 08:48:17 2022 +0300

    CUDA Fortran is not compiling yet

commit 0967c36695518a0c7bf7ee4c62a412f51338708e
Author: Jeff Hammond <email>
Date:   Fri Aug 5 07:50:40 2022 +0300

    workshare

commit 3ed69ea9ea655c364181144f21f0bfc0d3afa13c
Author: Jeff Hammond <email>
Date:   Fri Aug 5 07:42:49 2022 +0300

    target loop

commit 30dfb574c0c4435f09fc5a6e53644f9ab7fd95f3
Author: Jeff Hammond <email>
Date:   Fri Aug 5 07:31:41 2022 +0300

    OpenMP target

commit a5306ce5c1144f38223074b786240db07a66b6bf
Author: Jeff Hammond <email>
Date:   Fri Aug 5 07:17:58 2022 +0300

    makefile errors on non support

commit 854c8135f5d80d5cecce22042d761a3f75a5ee13
Author: Jeff Hammond <email>
Date:   Fri Aug 5 07:15:12 2022 +0300

    fix taskloop

commit f2894c583346410e14461988d68012d8469e583c
Author: Jeff Hammond <email>
Date:   Fri Aug 5 07:11:26 2022 +0300

    add taskloop part 1

commit b7c0a43e9b49eed7ee54a4b4a8470118c092a922
Author: Jeff Hammond <email>
Date:   Fri Aug 5 07:07:54 2022 +0300

    add OpenMP traditional

commit 7dafcc385f547738b9972f98b9e93f87e22d468c
Author: Jeff Hammond <email>
Date:   Fri Aug 5 07:02:36 2022 +0300

    add OpenACC kernels + Array implementation

commit 096e7d281015b09e5a099e5a1eb8b9b3e46cea5f
Author: Jeff Hammond <email>
Date:   Fri Aug 5 06:53:13 2022 +0300

    formatting

commit 284b62b47e508799dc49c85ea3d7a8d1f34f87a9
Author: Jeff Hammond <email>
Date:   Thu Aug 4 19:41:27 2022 +0300

    add placeholder for CSV

commit 516bdd5929a13c17348040b031931485ca32e40e
Author: Jeff Hammond <email>
Date:   Thu Aug 4 19:14:00 2022 +0300

    add --float

commit d4e0ccaf6c00e6109e6130b3fd7c604df6feaa28
Author: Jeff Hammond <email>
Date:   Thu Aug 4 19:13:23 2022 +0300

    default message updates

commit e8452f1c2e30fb84533b75a43ac9f5f265c96f60
Author: Jeff Hammond <email>
Date:   Thu Aug 4 17:58:48 2022 +0300

    list devices etc

commit a80e82c323a5b0d1bffc524a8219de51cbdba8d2
Author: Jeff Hammond <email>
Date:   Thu Aug 4 14:07:02 2022 +0300

    better build system

commit c3b090cf1f28641a9e34e331ab37cb055e82eec4
Author: Jeff Hammond <email>
Date:   Thu Aug 4 14:03:27 2022 +0300

    refactor build system

commit 096cd43b7bc49751c17d686519620a7a4b1e5677
Author: Jeff Hammond <email>
Date:   Thu Aug 4 13:43:17 2022 +0300

    cleanup the rest

commit 1e4fb8125e0729b32e8ec6d87f30d935310f55ca
Author: Jeff Hammond <email>
Date:   Thu Aug 4 13:40:38 2022 +0300

    add Intel build and fix syntax issuse

commit db3a9307b57bbc82456f9d52a6ff20d6e37b4083
Author: Jeff Hammond <email>
Date:   Thu Aug 4 13:34:43 2022 +0300

    use modern character syntax

commit b66bd707d64a1823a3a7bd8a2c6acf30ce9043be
Author: Jeff Hammond <email>
Date:   Thu Aug 4 12:10:59 2022 +0300

    printing

commit ff842f62b952b5a61decfac80fd9b51dc56546d3
Author: Jeff Hammond <jehammond@nvidia.com>
Date:   Thu Aug 4 11:06:43 2022 +0300

    build stuff

commit 05791085dd4cdde8b07f5b33a78ce051f4c8dd1d
Author: Jeff Hammond <email>
Date:   Wed Aug 3 20:10:33 2022 +0300

    add OpenACC

commit bb76b757a2765640b4a7bfb8d2d4850f96c478f7
Author: Jeff Hammond <email>
Date:   Wed Aug 3 20:04:12 2022 +0300

    better clean

commit 2f53530d0f7f3d0cb4e138e2d76c325d81bbab8d
Author: Jeff Hammond <email>
Date:   Wed Aug 3 20:03:04 2022 +0300

    Sequential loop Stream

commit f5c0eaee60b04dfeabd96750c8b34694d2757f54
Author: Jeff Hammond <email>
Date:   Wed Aug 3 19:56:54 2022 +0300

    add array notation

commit 76f836b1836b83006285ef69b4457abea39b400d
Author: Jeff Hammond <email>
Date:   Wed Aug 3 10:05:46 2022 +0300

    implement BabelStream in Fortran

    1. only DO CONCURRENT is supported right now.
    2. the structure mostly matches C++ except we do not make a stream class.
    3. there is no option for float versus double right now.  it will be a compile-time choice later.

Signed-off-by: Jeff Hammond <email>
2022-11-15 14:29:56 +02:00
Tom Lin
1d0755f3a1
Merge pull request #144 from jeffhammond/nvcxx_cuda_compiler
accept NVHPC NVC++ as a CUDA compiler when it is so
2022-10-28 04:15:46 +01:00
Thomas Gibson
85d80915f6 Simplify/roll back unneeded modifications 2022-10-10 21:37:54 -05:00
Thomas Gibson
f44cd6fdd2 Roll back modifications for copy, mul, add, and triad 2022-10-10 21:32:38 -05:00
Thomas Gibson
de93c06e78 Add clarifying comment and further clean-up 2022-10-10 21:32:21 -05:00
Thomas Gibson
f98aedf64d Use triple-chevron syntax for hip kernel launching 2022-10-10 21:32:21 -05:00
Thomas Gibson
bcf8708f2c Clean up kernels and drop unneeded modifications 2022-10-10 21:32:21 -05:00
Thomas Gibson
a075455ad4 Add tuned benchmark kernels
Co-authored-by: Nick Curtis <arghdos@users.noreply.github.com>
2022-10-10 21:32:21 -05:00
Tom Lin
2c5eee4840 Merge branch 'develop' of github.com:UoB-HPC/BabelStream into develop 2022-10-01 04:57:28 +08:00
Tom Lin
1c46f8efd9 Bump rust-stream dependencies 2022-10-01 04:56:03 +08:00
Jeff Hammond
9b55076797 accept NVHPC NVC++ as a CUDA compiler when it is so
Signed-off-by: Jeff Hammond <jehammond@nvidia.com>
2022-09-26 03:41:45 -07:00
Tom Deakin
60c36b68ff
Merge pull request #141 from robj0nes/main
Facilitating Spack builds
2022-09-20 17:48:57 +01:00
Tom Deakin
57c8003621
Merge branch 'develop' into main 2022-09-20 17:48:46 +01:00
Rob Jones
407d6701df
In-package linking to RAJA
Introduced RAJA_IN_PACKAGE to allow for linking to an in-package dependency of RAJA (eg. Spack)
2022-09-15 11:32:23 +01:00
Rob Jones
1d8e383a29
In-package Kokkos builds
Updating kokkos/model.cmake to allow for in-package builds (eg. Spack)
2022-09-12 10:58:47 +01:00
Tom Lin
370d378fbc Don't use Kokkos internal headers
Don't initialise kokkos view to zero in ctor
Upgrade std to 17 for Kokkos (<17 is warning in 3.6, error is develop)
2022-08-17 15:09:00 +01:00
Tom Deakin
1b679996fc update changelog 2022-08-16 15:45:11 +00:00
Tom Deakin
6945cbcec7 Fix RAJA CUDA build
RAJA looses the source directory, so need to remind it where the
BabelStream source is to make sure it treats the source as CUDA

NB: The RAJA CUDA build might be broken at this time.
See https://github.com/LLNL/RAJA/issues/1296
Workaround below worked for us
https://github.com/LLNL/RAJA/pull/1302
2022-08-16 15:43:22 +00:00
Tom Lin
f7e912c3b9
Merge pull request #121 from keichi/respect-overrides
Fix a bug in the CMake script where override flags are ignored
2022-08-05 15:52:48 +01:00
Tom Lin
80853e66e0 Don't include C++17 execution headers directly 2022-07-30 08:04:03 +01:00
Tom Lin
72335f320e Revert to normal vector without allocators
Prohibit vector type in indices
2022-07-29 00:17:36 +01:00
Tom Lin
ed6206b543 Remove conditional sync after each kernel
Don't capture `this`, capture each member instead
2022-07-28 23:45:43 +01:00
Tom Lin
aa82e57ba0 Fixup oneDPL dpcpp configuration
Add conditional sync after each kernel.
2022-07-28 22:02:48 +01:00
Tom Lin
d56dc956e0 Fixup oneDPL and oneTBB in CI (gcc-10) take 3 2022-07-28 20:30:27 +01:00
Tom Lin
1f4bc3fffc Fixup oneDPL and oneTBB in CI (gcc-10) take 2 2022-07-28 20:04:18 +01:00
Tom Lin
ecb0464f6c Fixup oneDPL and oneTBB in CI (gcc-10) 2022-07-28 19:48:42 +01:00
Tom Lin
5a496a91b2 Fixup oneDPL inclusion 2022-07-28 19:29:46 +01:00
Tom Lin
14844ceb56 Fix CMakeLists.txt typo on USE_ONEDPL 2022-07-28 16:53:57 +01:00
Tom Lin
379bc2032c Add CI for dpl (again) 2022-07-28 16:49:16 +01:00
Tom Lin
0e8b3b4bce Add CI for dpl 2022-07-28 16:36:39 +01:00