Skip to content

Instantly share code, notes, and snippets.

View ddemidov's full-sized avatar

Denis Demidov ddemidov

View GitHub Profile
rebuild: rebuild.cpp
mpic++ -o $@ $^ -I$(AMGCL_ROOT) -O3 -fopenmp -DNDEBUG
@ddemidov
ddemidov / CMakeLists.txt
Created August 14, 2022 15:13
amgcl without boost
cmake_minimum_required(VERSION 3.11)
project(hello)
find_package(amgcl)
add_executable(hello amgcl.cpp)
target_link_libraries(hello amgcl::amgcl)
test_amgcl_mpi: test_amgcl_mpi.cpp
mpic++ -o $@ $^ -I$(AMGCL_ROOT) -O3 -fopenmp -DNDEBUG
#include <vector>
#include <iostream>
#include <amgcl/backend/builtin.hpp>
#include <amgcl/value_type/static_matrix.hpp>
#include <amgcl/adapter/eigen.hpp>
#include <amgcl/adapter/block_matrix.hpp>
#include <amgcl/mpi/distributed_matrix.hpp>
#include <amgcl/mpi/make_solver.hpp>
#include <vector>
#include <iostream>
#include <amgcl/backend/builtin.hpp>
#include <amgcl/value_type/static_matrix.hpp>
#include <amgcl/adapter/crs_tuple.hpp>
#include <amgcl/adapter/block_matrix.hpp>
#include <amgcl/mpi/distributed_matrix.hpp>
#include <amgcl/mpi/make_solver.hpp>
#include <vector>
#include <iostream>
#include <amgcl/backend/builtin.hpp>
#include <amgcl/value_type/static_matrix.hpp>
#include <amgcl/mpi/distributed_matrix.hpp>
#include <amgcl/mpi/make_solver.hpp>
#include <amgcl/mpi/amg.hpp>
#include <amgcl/mpi/coarsening/smoothed_aggregation.hpp>
#include <vector>
#include <iostream>
#include <amgcl/backend/builtin.hpp>
#include <amgcl/value_type/static_matrix.hpp>
#include <amgcl/adapter/crs_tuple.hpp>
#include <amgcl/adapter/block_matrix.hpp>
#include <amgcl/mpi/distributed_matrix.hpp>
#include <amgcl/mpi/make_solver.hpp>
cmake_minimum_required(VERSION 3.17)
project(dm)
#--- MPI -------------------------------------------------------------------
find_package(MPI)
# Need this to comply with CMP004 policy:
string(STRIP "${MPI_CXX_LINK_FLAGS}" MPI_CXX_LINK_FLAGS)
string(STRIP "${MPI_CXX_LIBRARIES}" MPI_CXX_LIBRARIES)
add_library(mpi_target INTERFACE)
all: scalar block
%: %.cpp
g++ -O3 -DNDEBUG -fopenmp -I${AMGCL_ROOT} $^ -o $@
clean:
rm -vf scalar block
cmake_minimum_required(VERSION 3.17)
project(hello)
find_package(amgcl)
find_package(VexCL)
add_executable(hello amgcl.cpp)
target_link_libraries(hello amgcl::amgcl)
target_link_libraries(hello VexCL::OpenCL)