-
Notifications
You must be signed in to change notification settings - Fork 47
Limited-area transforms on GPU #279
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
ddegrauwe
wants to merge
27
commits into
ecmwf-ifs:develop
Choose a base branch
from
ddegrauwe:degrauwe_lam_gpu
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 14 commits
Commits
Show all changes
27 commits
Select commit
Hold shift + click to select a range
12dd036
WIP: added lam gpu sources
ddegrauwe 162449b
WIP lam library now compiles; removed adjoint code for GPU
ddegrauwe 8cfa23b
WIP. Fixed CMakeLists.txt to fix gpu compilation. Modified hicfft to …
ddegrauwe 1f1eb19
fixes
ddegrauwe b8be65c
WIP: CRASHES WITH SIGSEGV. Using constant-address arrays for fft (nec…
ddegrauwe a8256ba
in-place fft in eftdir. Works when cuda graphs are disabled.
ddegrauwe d937912
in-place fft in eledir; optimized buffered allocation in eltdir
ddegrauwe 5bd5bea
in-place fft in eleinv
ddegrauwe 7c68b91
in-place fft in eftinv
ddegrauwe d2bd7e6
Disable combination of ETRANS and GPU_GRAPHS_FFT, which doesn't work
ddegrauwe d19a1e1
created common (single/double, cpu/gpu) folder for LAM transforms.
ddegrauwe 163de4e
small fix for single-precision
ddegrauwe d23dd7f
Merge branch 'develop' into lam_gpu
ddegrauwe 5f73b25
restore compilation options
ddegrauwe a295ca0
Update src/programs/CMakeLists.txt
ddegrauwe 62b6d04
removed tabs
ddegrauwe 3d0d329
removed tabs
ddegrauwe 51f884b
more cosmetics
ddegrauwe 1146a8f
Apply suggestions from code review
ddegrauwe df3fd51
Merge remote-tracking branch 'origin/develop' into tmp
ddegrauwe 3b37fd9
include etrans in transi private libs
ddegrauwe d606ec1
Apply more suggestions from code review
ddegrauwe 8f05fe7
Even more suggestions from review
ddegrauwe 9fefd21
merged develop
ddegrauwe cd120de
Merge branch 'develop' into degrauwe_lam_gpu
samhatfield 21066be
Remove deprecated ectrans_target_fortran_module_directory
samhatfield 1931365
Switch to INSTALL_MODULE_DIRECTORY
samhatfield File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| # (C) Copyright 2020- 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. | ||
|
|
||
| ## Sources which are precision independent can go into a common library | ||
| list( APPEND ectrans_lam_common_src | ||
| internal/tpmald_distr.F90 | ||
| internal/tpmald_dim.F90 | ||
| internal/esetup_dims_mod.F90 | ||
| internal/esetup_geom_mod.F90 | ||
| internal/suemplat_mod.F90 | ||
| internal/suemplatb_mod.F90 | ||
| internal/ellips.F90 | ||
| ) | ||
| list( APPEND ectrans_lam_common_includes | ||
| ) | ||
|
|
||
| ecbuild_add_library( | ||
| TARGET ectrans_lam_common | ||
| LINKER_LANGUAGE Fortran | ||
| SOURCES ${ectrans_lam_common_src} | ||
| PUBLIC_LIBS fiat ectrans_common | ||
| PRIVATE_LIBS ${LAPACK_LIBRARIES} | ||
| PUBLIC_INCLUDES $<INSTALL_INTERFACE:include/ectrans> | ||
| $<INSTALL_INTERFACE:include> | ||
| $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/src/trans/include/ectrans> | ||
| $<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/src/trans/include> | ||
| ) | ||
| ectrans_target_fortran_module_directory( | ||
| TARGET ectrans_lam_common | ||
| MODULE_DIRECTORY ${CMAKE_BINARY_DIR}/module/ectrans | ||
| INSTALL_DIRECTORY module/ectrans | ||
samhatfield marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| ) | ||
|
|
||
| if( HAVE_OMP ) | ||
| ecbuild_debug("target_link_libraries( ectrans_common PRIVATE OpenMP::OpenMP_Fortran )") | ||
| target_link_libraries( ectrans_lam_common PRIVATE OpenMP::OpenMP_Fortran ) | ||
| endif() | ||
|
|
||
| set( ectrans_lam_common_includes ${ectrans_lam_common_includes} PARENT_SCOPE ) | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Shouldn't this PARKIND1 to EC_PARKIND be automatically applied to a generated files by the sed transformation? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.