ginkgo/1.7.0

High-performance linear algebra library for manycore systems, with a focus on sparse solution of linear systems.
Recipe info
2023-11-29

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
ginkgo/1.7.0

Using ginkgo

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
ginkgo/1.7.0
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("ginkgo/1.7.0")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): Ginkgo
  • CMake target name(s): Ginkgo::ginkgo
  • ginkgo_hip => Ginkgo::ginkgo_hip
    ginkgo_omp => Ginkgo::ginkgo_omp
    ginkgo_core => Ginkgo::ginkgo
    ginkgo_cuda => Ginkgo::ginkgo_cuda
    ginkgo_dpcpp => Ginkgo::ginkgo_dpcpp
    ginkgo_device => Ginkgo::ginkgo_device
    ginkgo_reference => Ginkgo::ginkgo_reference
    
  • pkg-config file name(s): ginkgo.pc
  • ginkgo_hip => ginkgo-ginkgo_hip.pc
    ginkgo_omp => ginkgo-ginkgo_omp.pc
    ginkgo_core => ginkgo.pc
    ginkgo_cuda => ginkgo-ginkgo_cuda.pc
    ginkgo_dpcpp => ginkgo-ginkgo_dpcpp.pc
    ginkgo_device => ginkgo-ginkgo_device.pc
    ginkgo_reference => ginkgo-ginkgo_reference.pc
    

A simple use case using the CMake file name and the global target:

# ...
find_package(Ginkgo REQUIRED)
# ...
target_link_libraries(YOUR_TARGET Ginkgo::ginkgo)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the ginkgo homepage listed above:

#include "ginkgo/config.hpp"
#include "ginkgo/core/base/abstract_factory.hpp"
#include "ginkgo/core/base/array.hpp"
#include "ginkgo/core/base/batch_dim.hpp"
#include "ginkgo/core/base/batch_lin_op.hpp"
#include "ginkgo/core/base/batch_multi_vector.hpp"
#include "ginkgo/core/base/combination.hpp"
#include "ginkgo/core/base/composition.hpp"
#include "ginkgo/core/base/dense_cache.hpp"
#include "ginkgo/core/base/device.hpp"
#include "ginkgo/core/base/device_matrix_data.hpp"
#include "ginkgo/core/base/dim.hpp"
#include "ginkgo/core/base/exception.hpp"
#include "ginkgo/core/base/exception_helpers.hpp"
#include "ginkgo/core/base/executor.hpp"
#include "ginkgo/core/base/fwd_decls.hpp"
#include "ginkgo/core/base/index_set.hpp"
#include "ginkgo/core/base/intrinsics.hpp"
#include "ginkgo/core/base/lin_op.hpp"
#include "ginkgo/core/base/machine_topology.hpp"
#include "ginkgo/core/base/math.hpp"
#include "ginkgo/core/base/matrix_assembly_data.hpp"
#include "ginkgo/core/base/matrix_data.hpp"
#include "ginkgo/core/base/memory.hpp"
#include "ginkgo/core/base/mpi.hpp"
#include "ginkgo/core/base/mtx_io.hpp"
#include "ginkgo/core/base/name_demangling.hpp"
#include "ginkgo/core/base/perturbation.hpp"
#include "ginkgo/core/base/polymorphic_object.hpp"
#include "ginkgo/core/base/precision_dispatch.hpp"
#include "ginkgo/core/base/range.hpp"
#include "ginkgo/core/base/range_accessors.hpp"
#include "ginkgo/core/base/scoped_device_id_guard.hpp"
#include "ginkgo/core/base/std_extensions.hpp"
#include "ginkgo/core/base/stream.hpp"
#include "ginkgo/core/base/temporary_clone.hpp"
#include "ginkgo/core/base/temporary_conversion.hpp"
#include "ginkgo/core/base/timer.hpp"
#include "ginkgo/core/base/types.hpp"
#include "ginkgo/core/base/utils.hpp"
#include "ginkgo/core/base/utils_helper.hpp"
#include "ginkgo/core/base/version.hpp"
#include "ginkgo/core/distributed/base.hpp"
#include "ginkgo/core/distributed/lin_op.hpp"
#include "ginkgo/core/distributed/matrix.hpp"
#include "ginkgo/core/distributed/partition.hpp"
#include "ginkgo/core/distributed/partition_helpers.hpp"
#include "ginkgo/core/distributed/polymorphic_object.hpp"
#include "ginkgo/core/distributed/preconditioner/schwarz.hpp"
#include "ginkgo/core/distributed/vector.hpp"
#include "ginkgo/core/factorization/cholesky.hpp"
#include "ginkgo/core/factorization/factorization.hpp"
#include "ginkgo/core/factorization/ic.hpp"
#include "ginkgo/core/factorization/ilu.hpp"
#include "ginkgo/core/factorization/lu.hpp"
#include "ginkgo/core/factorization/par_ic.hpp"
#include "ginkgo/core/factorization/par_ict.hpp"
#include "ginkgo/core/factorization/par_ilu.hpp"
#include "ginkgo/core/factorization/par_ilut.hpp"
#include "ginkgo/core/log/batch_logger.hpp"
#include "ginkgo/core/log/convergence.hpp"
#include "ginkgo/core/log/logger.hpp"
#include "ginkgo/core/log/papi.hpp"
#include "ginkgo/core/log/performance_hint.hpp"
#include "ginkgo/core/log/profiler_hook.hpp"
#include "ginkgo/core/log/record.hpp"
#include "ginkgo/core/log/stream.hpp"
#include "ginkgo/core/matrix/batch_dense.hpp"
#include "ginkgo/core/matrix/batch_ell.hpp"
#include "ginkgo/core/matrix/batch_identity.hpp"
#include "ginkgo/core/matrix/coo.hpp"
#include "ginkgo/core/matrix/csr.hpp"
#include "ginkgo/core/matrix/dense.hpp"
#include "ginkgo/core/matrix/diagonal.hpp"
#include "ginkgo/core/matrix/ell.hpp"
#include "ginkgo/core/matrix/fbcsr.hpp"
#include "ginkgo/core/matrix/fft.hpp"
#include "ginkgo/core/matrix/hybrid.hpp"
#include "ginkgo/core/matrix/identity.hpp"
#include "ginkgo/core/matrix/permutation.hpp"
#include "ginkgo/core/matrix/row_gatherer.hpp"
#include "ginkgo/core/matrix/scaled_permutation.hpp"
#include "ginkgo/core/matrix/sellp.hpp"
#include "ginkgo/core/matrix/sparsity_csr.hpp"
#include "ginkgo/core/multigrid/fixed_coarsening.hpp"
#include "ginkgo/core/multigrid/multigrid_level.hpp"
#include "ginkgo/core/multigrid/pgm.hpp"
#include "ginkgo/core/preconditioner/ic.hpp"
#include "ginkgo/core/preconditioner/ilu.hpp"
#include "ginkgo/core/preconditioner/isai.hpp"
#include "ginkgo/core/preconditioner/jacobi.hpp"
#include "ginkgo/core/reorder/amd.hpp"
#include "ginkgo/core/reorder/mc64.hpp"
#include "ginkgo/core/reorder/nested_dissection.hpp"
#include "ginkgo/core/reorder/rcm.hpp"
#include "ginkgo/core/reorder/reordering_base.hpp"
#include "ginkgo/core/reorder/scaled_reordered.hpp"
#include "ginkgo/core/solver/batch_bicgstab.hpp"
#include "ginkgo/core/solver/batch_solver_base.hpp"
#include "ginkgo/core/solver/bicg.hpp"
#include "ginkgo/core/solver/bicgstab.hpp"
#include "ginkgo/core/solver/cb_gmres.hpp"
#include "ginkgo/core/solver/cg.hpp"
#include "ginkgo/core/solver/cgs.hpp"
#include "ginkgo/core/solver/direct.hpp"
#include "ginkgo/core/solver/fcg.hpp"
#include "ginkgo/core/solver/gcr.hpp"
#include "ginkgo/core/solver/gmres.hpp"
#include "ginkgo/core/solver/idr.hpp"
#include "ginkgo/core/solver/ir.hpp"
#include "ginkgo/core/solver/lower_trs.hpp"
#include "ginkgo/core/solver/multigrid.hpp"
#include "ginkgo/core/solver/solver_base.hpp"
#include "ginkgo/core/solver/solver_traits.hpp"
#include "ginkgo/core/solver/triangular.hpp"
#include "ginkgo/core/solver/upper_trs.hpp"
#include "ginkgo/core/solver/workspace.hpp"
#include "ginkgo/core/stop/batch_stop_enum.hpp"
#include "ginkgo/core/stop/combined.hpp"
#include "ginkgo/core/stop/criterion.hpp"
#include "ginkgo/core/stop/iteration.hpp"
#include "ginkgo/core/stop/residual_norm.hpp"
#include "ginkgo/core/stop/residual_norm_reduction.hpp"
#include "ginkgo/core/stop/stopping_status.hpp"
#include "ginkgo/core/stop/time.hpp"
#include "ginkgo/core/synthesizer/containers.hpp"
#include "ginkgo/ginkgo.hpp"