diff options
Diffstat (limited to 'modules/remote-kokkos')
-rw-r--r-- | modules/remote-kokkos/.nix/derivation.nix | 30 | ||||
-rw-r--r-- | modules/remote-kokkos/SConstruct | 71 | ||||
-rw-r--r-- | modules/remote-kokkos/c++/SConscript | 38 | ||||
-rw-r--r-- | modules/remote-kokkos/c++/device.hpp | 14 | ||||
-rw-r--r-- | modules/remote-kokkos/c++/remote.hpp | 48 | ||||
-rw-r--r-- | modules/remote-kokkos/c++/rpc.hpp | 44 | ||||
-rw-r--r-- | modules/remote-kokkos/tests/SConscript | 31 |
7 files changed, 0 insertions, 276 deletions
diff --git a/modules/remote-kokkos/.nix/derivation.nix b/modules/remote-kokkos/.nix/derivation.nix deleted file mode 100644 index dc9cd94..0000000 --- a/modules/remote-kokkos/.nix/derivation.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ lib -, stdenv -, scons -, clang-tools -, version -, forstio -}: - -let - -in stdenv.mkDerivation { - pname = "forstio-device-hip"; - inherit version; - src = ./..; - - enableParallelBuilding = true; - - nativeBuildInputs = [ - scons - clang-tools - ]; - - buildInputs = [ - forstio.core - forstio.async - forstio.codec - ]; - - outputs = ["out" "dev"]; -} diff --git a/modules/remote-kokkos/SConstruct b/modules/remote-kokkos/SConstruct deleted file mode 100644 index c5b2bb4..0000000 --- a/modules/remote-kokkos/SConstruct +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/env python3 - -import sys -import os -import os.path -import glob -import re - - -if sys.version_info < (3,): - def isbasestring(s): - return isinstance(s,basestring) -else: - def isbasestring(s): - return isinstance(s, (str,bytes)) - -def add_kel_source_files(self, sources, filetype, lib_env=None, shared=False, target_post=""): - - if isbasestring(filetype): - dir_path = self.Dir('.').abspath - filetype = sorted(glob.glob(dir_path+"/"+filetype)) - - for path in filetype: - target_name = re.sub( r'(.*?)(\.cpp|\.c\+\+)', r'\1' + target_post, path ) - if shared: - target_name+='.os' - sources.append( self.SharedObject( target=target_name, source=path ) ) - else: - target_name+='.o' - sources.append( self.StaticObject( target=target_name, source=path ) ) - pass - -def isAbsolutePath(key, dirname, env): - assert os.path.isabs(dirname), "%r must have absolute path syntax" % (key,) - -env_vars = Variables( - args=ARGUMENTS -) - -env_vars.Add('prefix', - help='Installation target location of build results and headers', - default='/usr/local/', - validator=isAbsolutePath -) - -env=Environment(ENV=os.environ, variables=env_vars, CPPPATH=[], - CPPDEFINES=['SAW_UNIX'], - CXXFLAGS=['-std=c++20','-g','-Wall','-Wextra'], - LIBS=[ - 'forstio-core' - 'forstio-codec' - ] -); -env.__class__.add_source_files = add_kel_source_files -env.Tool('compilation_db'); -env.cdb = env.CompilationDatabase('compile_commands.json'); - -env.objects = []; -env.sources = []; -env.headers = []; -env.targets = []; - -Export('env') -SConscript('c++/SConscript') -SConscript('tests/SConscript') - -env.Alias('cdb', env.cdb); -env.Alias('all', [env.targets]); -env.Default('all'); - -env.Alias('install', '$prefix') diff --git a/modules/remote-kokkos/c++/SConscript b/modules/remote-kokkos/c++/SConscript deleted file mode 100644 index b66ce79..0000000 --- a/modules/remote-kokkos/c++/SConscript +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/false - -import os -import os.path -import glob - - -Import('env') - -dir_path = Dir('.').abspath - -# Environment for base library -dev_hip_env = env.Clone(); - -dev_hip_env.sources = sorted(glob.glob(dir_path + "/*.cpp")) -dev_hip_env.headers = sorted(glob.glob(dir_path + "/*.hpp")) - -env.sources += dev_hip_env.sources; -env.headers += dev_hip_env.headers; - -## Shared lib -objects_shared = [] -dev_hip_env.add_source_files(objects_shared, dev_hip_env.sources, shared=True); -env.library_shared = dev_hip_env.SharedLibrary('#build/forstio-device-hip', [objects_shared]); - -## Static lib -objects_static = [] -dev_hip_env.add_source_files(objects_static, dev_hip_env.sources, shared=False); -env.library_static = dev_hip_env.StaticLibrary('#build/forstio-device-hip', [objects_static]); - -# Set Alias -env.Alias('library_device-hip', [env.library_shared, env.library_static]); - -env.targets += ['library_device-hip']; - -# Install -env.Install('$prefix/lib/', [env.library_shared, env.library_static]); -env.Install('$prefix/include/forstio/device/hip/', [dev_hip_env.headers]); diff --git a/modules/remote-kokkos/c++/device.hpp b/modules/remote-kokkos/c++/device.hpp deleted file mode 100644 index 6c84fe1..0000000 --- a/modules/remote-kokkos/c++/device.hpp +++ /dev/null @@ -1,14 +0,0 @@ -#pragma once - -namespace saw { -namespace dev { -struct Hip {}; -} -template<typename T> -struct backend; - -struct backend<dev::Hip> { -}; - - -} diff --git a/modules/remote-kokkos/c++/remote.hpp b/modules/remote-kokkos/c++/remote.hpp deleted file mode 100644 index 549b9ec..0000000 --- a/modules/remote-kokkos/c++/remote.hpp +++ /dev/null @@ -1,48 +0,0 @@ -#pragma once - -#include <Kokkos_Core.hpp> - -namespace saw { -namespace rmt { -struct Kokkos {}; -} - -template<typename T> -struct remote; - -template<typename T> -struct remote_ctx; - -template<> -class remote_ctx<rmt::Kokkos> { -private: - Kokkos::ScopeGuard guard_; - - SAW_FORBID_COPY(remote_ctx); - SAW_FORBID_MOVE(remote_ctx); -public: - remote_ctx(Kokkos::InitializationSettings init_settings): - guard_{std::move(init_settings)} - {} - - error_or<void> create_remote(){ - return remote<rmt::Kokkos>{*this}; - } -}; - -template<> -struct remote<rmt::Kokkos> { -private: - remote_ctx<rmt::Kokkos>* ctx_; - - SAW_FORBID_COPY(remote); - SAW_FORBID_MOVE(remote); -public: - remote(remote_ctx<rmt::Kokkos>& r_ctx): - ctx_{&r_ctx} - {} - - template<typename Iface> - error -}; -} diff --git a/modules/remote-kokkos/c++/rpc.hpp b/modules/remote-kokkos/c++/rpc.hpp deleted file mode 100644 index bddb60d..0000000 --- a/modules/remote-kokkos/c++/rpc.hpp +++ /dev/null @@ -1,44 +0,0 @@ -#pragma once - -namespace saw { -namespace rmt { -struct DeviceKokkos {}; -} - -template<> -class remote<rmt::DeviceKokkos> { -private: -public: - template<typename Iface> - error_or<rpc_client<rmt::DeviceKokkos, Iface>> connect(){ - return make_error<err::not_implemented>(); - } -}; - -error_or<remote<rmt::DeviceKokkos>> create_remote(){ - auto rc = hipInit(0); - - return make_error<err::not_implemented>(); -} - -template<typename Iface> -class rpc_client<rmt::DeviceKokkos, Iface> { -public: - template<typename... T> - struct request { - std::tuple<id<T>...> ids; - - error_or<data<schema::Tuple<T...>>> wait(); - }; -}; - -template<typename Iface> -class rpc_server<rmt::DeviceKokkos, Iface> { -private: - /** - * Needs a variant ptr of all possible return types - */ - struct data_storage { - }; -}; -} diff --git a/modules/remote-kokkos/tests/SConscript b/modules/remote-kokkos/tests/SConscript deleted file mode 100644 index f8ffc92..0000000 --- a/modules/remote-kokkos/tests/SConscript +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/false - -import os -import os.path -import glob - - -Import('env') - -dir_path = Dir('.').abspath - -# Environment for base library -test_cases_env = env.Clone(); - -test_cases_env.Append(LIBS=['forstio-test']); - -test_cases_env.sources = sorted(glob.glob(dir_path + "/*.cpp")) -test_cases_env.headers = sorted(glob.glob(dir_path + "/*.hpp")) - -env.sources += test_cases_env.sources; -env.headers += test_cases_env.headers; - -objects_static = [] -test_cases_env.add_source_files(objects_static, test_cases_env.sources, shared=False); -test_cases_env.program = test_cases_env.Program('#bin/tests', [objects_static, env.library_static]); - -# Set Alias -env.Alias('test', test_cases_env.program); -env.Alias('check', test_cases_env.program); - -env.targets += ['test','check']; |