mirror of
https://gitlab.com/libeigen/eigen.git
synced 2024-12-21 07:19:46 +08:00
dba55041ab
Started to improve multithreaded contractions
84 lines
3.1 KiB
Plaintext
84 lines
3.1 KiB
Plaintext
// This file is part of Eigen, a lightweight C++ template library
|
|
// for linear algebra.
|
|
//
|
|
// Copyright (C) 2014 Benoit Steiner <benoit.steiner.goog@gmail.com>
|
|
// Copyright (C) 2013 Christian Seiler <christian@iwakd.de>
|
|
//
|
|
// This Source Code Form is subject to the terms of the Mozilla
|
|
// Public License v. 2.0. If a copy of the MPL was not distributed
|
|
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
#ifndef EIGEN_CXX11_TENSOR_MODULE
|
|
#define EIGEN_CXX11_TENSOR_MODULE
|
|
|
|
#include "Eigen/src/Core/util/StaticAssert.h"
|
|
#include "unsupported/Eigen/CXX11/Core"
|
|
|
|
#include "Eigen/src/Core/util/DisableStupidWarnings.h"
|
|
|
|
/** \defgroup CXX11_Tensor_Module Tensor Module
|
|
*
|
|
* This module provides a Tensor class for storing arbitrarily indexed
|
|
* objects.
|
|
*
|
|
* \code
|
|
* #include <Eigen/CXX11/Tensor>
|
|
* \endcode
|
|
*/
|
|
|
|
#include <cstddef>
|
|
#include <cstring>
|
|
#include <stdint.h>
|
|
|
|
#ifdef EIGEN_USE_THREADS
|
|
#include <future>
|
|
#endif
|
|
|
|
#if defined(EIGEN_USE_GPU) && defined(__CUDACC__)
|
|
#include <curand_kernel.h>
|
|
#endif
|
|
|
|
#include "Eigen/Core"
|
|
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorForwardDeclarations.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorDeviceType.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorDimensions.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorTraits.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorFunctors.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorIntDiv.h"
|
|
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorBase.h"
|
|
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorEvaluator.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorReduction.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorConcatenation.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorContraction.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorContractionCuda.h"
|
|
//#include "unsupported/Eigen/CXX11/src/Tensor/TensorContractionThreadPool.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorConvolution.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorPatch.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorBroadcasting.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorChipping.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorMorphing.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorPadding.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorShuffling.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorStriding.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorEvalTo.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorForcedEval.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorAssign.h"
|
|
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorDevice.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorExecutor.h"
|
|
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorStorage.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/Tensor.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorFixedSize.h"
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorMap.h"
|
|
|
|
#include "unsupported/Eigen/CXX11/src/Tensor/TensorIO.h"
|
|
|
|
#include "Eigen/src/Core/util/ReenableStupidWarnings.h"
|
|
|
|
#endif // EIGEN_CXX11_TENSOR_MODULE
|