Create gpu_context and manage it as part of execution_context (#566)
* Add gpu_context as part of execution context containing information about GPU availability, managed_memory synchronization, and atomic double availability. * Choose between ON and OFF for ARB_GPU in CMake. If ON compile for K20, K80, and P100 Note that we still need compile time information about the GPU in cuda_atomic.hpp for atomicAdd(double*, double*). This is because the function is only defined when the program is compiled for sm_60 or more.
Showing
- CMakeLists.txt 6 additions, 22 deletionsCMakeLists.txt
- arbor/CMakeLists.txt 1 addition, 1 deletionarbor/CMakeLists.txt
- arbor/backends/gpu/fvm.hpp 4 additions, 2 deletionsarbor/backends/gpu/fvm.hpp
- arbor/backends/gpu/managed_ptr.cpp 0 additions, 12 deletionsarbor/backends/gpu/managed_ptr.cpp
- arbor/backends/gpu/managed_ptr.hpp 3 additions, 32 deletionsarbor/backends/gpu/managed_ptr.hpp
- arbor/backends/gpu/stack.hpp 11 additions, 4 deletionsarbor/backends/gpu/stack.hpp
- arbor/backends/gpu/threshold_watcher.hpp 5 additions, 2 deletionsarbor/backends/gpu/threshold_watcher.hpp
- arbor/backends/multicore/fvm.hpp 5 additions, 2 deletionsarbor/backends/multicore/fvm.hpp
- arbor/backends/multicore/threshold_watcher.hpp 5 additions, 1 deletionarbor/backends/multicore/threshold_watcher.hpp
- arbor/cell_group_factory.cpp 3 additions, 3 deletionsarbor/cell_group_factory.cpp
- arbor/cell_group_factory.hpp 4 additions, 3 deletionsarbor/cell_group_factory.hpp
- arbor/fvm_lowered_cell.hpp 2 additions, 1 deletionarbor/fvm_lowered_cell.hpp
- arbor/fvm_lowered_cell_impl.cpp 3 additions, 3 deletionsarbor/fvm_lowered_cell_impl.cpp
- arbor/fvm_lowered_cell_impl.hpp 5 additions, 2 deletionsarbor/fvm_lowered_cell_impl.hpp
- arbor/gpu_context.cpp 11 additions, 0 deletionsarbor/gpu_context.cpp
- arbor/gpu_context.hpp 57 additions, 0 deletionsarbor/gpu_context.hpp
- arbor/partition_load_balance.cpp 2 additions, 2 deletionsarbor/partition_load_balance.cpp
- arbor/simulation.cpp 1 addition, 1 deletionarbor/simulation.cpp
- include/arbor/execution_context.hpp 7 additions, 2 deletionsinclude/arbor/execution_context.hpp
- test/unit/CMakeLists.txt 1 addition, 0 deletionstest/unit/CMakeLists.txt
Please register or sign in to comment