Während einer Integrationsarbeit von TensorFlow 1.1 mit meinem laufenden C++ Projekt unter Ubuntu 16 ... möchte ich eine Unterstützung für MKL und 64 Bit Ganzzahlen beinhalten. traf ich eine Zusammenstellung Problem in Eigen-Bibliothek, während eine Vorlage struct instanziiert, die einen direkten Aufruf an MKL hat:Kompilierung von Eigen3 mit MKL
In file included from /usr/local/include/eigen3/unsupported/Eigen/CXX11/../../../Eigen/Core:526:0,
from /usr/local/include/eigen3/unsupported/Eigen/CXX11/Tensor:14,
from /home/drormeirovich/projects/tensorflow/third_party/eigen3/unsupported/Eigen/CXX11/Tensor:1,
from /home/drormeirovich/projects/tensorflow/tensorflow/core/framework/tensor.h:19,
from /home/drormeirovich/projects/tensorflow/tensorflow/cc/framework/ops.h:21,
from /home/drormeirovich/projects/tensorflow/tensorflow/cc/client/client_session.h:24,
from /home/drormeirovich/projects/my_project.cpp:10:
/usr/local/include/eigen3/unsupported/Eigen/CXX11/../../../Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h: In static member function ‘static void Eigen::internal::general_matrix_matrix_product<Index, double, LhsStorageOrder, ConjugateLhs, double, RhsStorageOrder, ConjugateRhs, 0>::run(Index, Index, Index, const double*, Index, const double*, Index, double*, Index, double, Eigen::internal::level3_blocking<double, double>&, Eigen::internal::GemmParallelInfo<Index>*)’:
/usr/local/include/eigen3/unsupported/Eigen/CXX11/../../../Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h:103:173: error: cannot convert ‘char*’ to ‘CBLAS_LAYOUT’ for argument ‘1’ to ‘void cblas_dgemm(CBLAS_LAYOUT, CBLAS_TRANSPOSE, CBLAS_TRANSPOSE, long long int, long long int, long long int, double, const double*, long long int, const double*, long long int, double, double*, long long int)’
BLASPREFIX##gemm(&transa, &transb, &m, &n, &k, &numext::real_ref(alpha), (const BLASTYPE*)a, &lda, (const BLASTYPE*)b, &ldb, &numext::real_ref(beta), (BLASTYPE*)res, &ldc); \
^
/usr/local/include/eigen3/unsupported/Eigen/CXX11/../../../Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h:106:1: note: in expansion of macro ‘GEMM_SPECIALIZATION’
GEMM_SPECIALIZATION(double, d, double, cblas_d)
^
Weitere Einzelheiten ... Mein ganzer Fortschritt auf diesem Integrationsproblem ist in diesem Link:
https://docs.google.com/document/d/1VFTdPJy59QTCTHO8NHMNmnO8AOoQhNXgWixas9KmLLM/edit?usp=drivesdk
Muss ich die Unterstützung von MKL aus Eigen3 entfernen?
Jede mögliche Hilfe würde geschätzt ...
Vielleicht eine neuere Version versuchen von TF? Ich habe eine Version von Head letzte Woche erfolgreich mit MKL aktiviert - https://github.com/yaroslavvb/tensorflow-community-wheels/issues/21 –
Ich habe heute die neueste Version von Tensorflow von Github geklont. Mein Kompilierungsproblem befindet sich in meinem eigenen Projekt (nicht während des Tensorflow-Builds) –