Hi - I'm trying to do an LBANN build on a CentOS 6.8 system. I have a custom build of the gcc 4.9.3 toolchain. I had trouble with the internal build of Elemental that manifested as
but I resolved that by pulling Elemental and building it outside the LBANN tree. However I am now running into the C++ compile errors below.
[ 28%] Building CXX object CMakeFiles/src.dir/src/layers/lbann_layer_softmax.cpp.o
In file included from /tmp/elemental/include/El/optimization/solvers.hpp:12:0,
from /tmp/elemental/include/El/optimization.hpp:14,
from /tmp/elemental/include/El.hpp:18,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/optimization/solvers/LP.hpp:274:68: warning: ‘deprecated’ attribute directive ignored [-Wattributes]
const lp::direct::Ctrl<Real>& ctrl=lp::direct::Ctrl<Real>(false) );
^
/tmp/elemental/include/El/optimization/solvers/LP.hpp:284:68: warning: ‘deprecated’ attribute directive ignored [-Wattributes]
const lp::direct::Ctrl<Real>& ctrl=lp::direct::Ctrl<Real>(false) );
^
/tmp/elemental/include/El/optimization/solvers/LP.hpp:294:67: warning: ‘deprecated’ attribute directive ignored [-Wattributes]
const lp::direct::Ctrl<Real>& ctrl=lp::direct::Ctrl<Real>(true) );
^
/tmp/elemental/include/El/optimization/solvers/LP.hpp:304:67: warning: ‘deprecated’ attribute directive ignored [-Wattributes]
const lp::direct::Ctrl<Real>& ctrl=lp::direct::Ctrl<Real>(true) );
^
/tmp/elemental/include/El/optimization/solvers/LP.hpp:540:63: warning: ‘deprecated’ attribute directive ignored [-Wattributes]
const lp::affine::Ctrl<Real>& ctrl=lp::affine::Ctrl<Real>() );
^
/tmp/elemental/include/El/optimization/solvers/LP.hpp:553:63: warning: ‘deprecated’ attribute directive ignored [-Wattributes]
const lp::affine::Ctrl<Real>& ctrl=lp::affine::Ctrl<Real>() );
^
/tmp/elemental/include/El/optimization/solvers/LP.hpp:566:63: warning: ‘deprecated’ attribute directive ignored [-Wattributes]
const lp::affine::Ctrl<Real>& ctrl=lp::affine::Ctrl<Real>() );
^
/tmp/elemental/include/El/optimization/solvers/LP.hpp:579:63: warning: ‘deprecated’ attribute directive ignored [-Wattributes]
const lp::affine::Ctrl<Real>& ctrl=lp::affine::Ctrl<Real>() );
^
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp: In member function ‘virtual void lbann::SoftmaxLayer::fp_linearity(ElMat&, ElMat&, ElMat&, ElMat&)’:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:158:7: error: no matching function for call to ‘IndexDependentMap(ElMat&, std::function<float(int, int, float)>)’
}));
^
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:158:7: note: candidates are:
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:15:6: note: template<class T> void El::IndexDependentMap(El::Matrix<Ring>&, std::function<T(int, int, const T&)>)
void IndexDependentMap( Matrix<T>& A, function<T(Int,Int,const T&)> func )
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:15:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:158:7: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘El::Matrix<Ring>’
}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:26:6: note: template<class T> void El::IndexDependentMap(El::AbstractDistMatrix<Ring>&, std::function<T(int, int, const T&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:26:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:158:7: note: mismatched types ‘const T&’ and ‘float’
}));
^
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:158:7: note: ‘std::function<float(int, int, float)>’ is not derived from ‘std::function<T(int, int, const T&)>’
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:45:6: note: template<class S, class T> void El::IndexDependentMap(const El::Matrix<Ring>&, El::Matrix<T>&, std::function<T(int, int, const S&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:45:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:158:7: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘const El::Matrix<Ring>’
}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:58:6: note: template<class S, class T, El::DistNS::Dist U, El::DistNS::Dist V, El::DistWrapNS::DistWrap wrap> void El::IndexDependentMap(const El::DistMatrix<S, U, V, wrap>&, El::DistMatrix<T, U, V, wrapType>&, std::function<T(int, int, const S&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:58:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:158:7: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘const El::DistMatrix<S, U, V, wrap>’
}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:82:6: note: template<class S, class T, El::DistNS::Dist U, El::DistNS::Dist V> void El::IndexDependentMap(const El::AbstractDistMatrix<Ring>&, El::DistMatrix<T, U, V>&, std::function<T(int, int, const S&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:82:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:158:7: note: ‘std::function<float(int, int, float)>’ is not derived from ‘El::DistMatrix<T, U, V>’
}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:110:6: note: template<class S, class T, El::DistNS::Dist U, El::DistNS::Dist V> void El::IndexDependentMap(const El::AbstractDistMatrix<Ring>&, El::DistMatrix<T, U, V, (El::DistWrapNS::DistWrap)1u>&, std::function<T(int, int, const S&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:110:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:158:7: note: ‘std::function<float(int, int, float)>’ is not derived from ‘El::DistMatrix<T, U, V, (El::DistWrapNS::DistWrap)1u>’
}));
^
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:170:168: error: no matching function for call to ‘IndexDependentMap(ElMat&, std::function<float(int, int, float)>)’
DataType{Int rL = this->ZsNormExpSumStar.LocalRow(c); return z/this->ZsNormExpSumStar.GetLocal(rL,0);}));
^
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:170:168: note: candidates are:
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:15:6: note: template<class T> void El::IndexDependentMap(El::Matrix<Ring>&, std::function<T(int, int, const T&)>)
void IndexDependentMap( Matrix<T>& A, function<T(Int,Int,const T&)> func )
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:15:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:170:168: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘El::Matrix<Ring>’
DataType{Int rL = this->ZsNormExpSumStar.LocalRow(c); return z/this->ZsNormExpSumStar.GetLocal(rL,0);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:26:6: note: template<class T> void El::IndexDependentMap(El::AbstractDistMatrix<Ring>&, std::function<T(int, int, const T&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:26:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:170:168: note: mismatched types ‘const T&’ and ‘float’
DataType{Int rL = this->ZsNormExpSumStar.LocalRow(c); return z/this->ZsNormExpSumStar.GetLocal(rL,0);}));
^
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:170:168: note: ‘std::function<float(int, int, float)>’ is not derived from ‘std::function<T(int, int, const T&)>’
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:45:6: note: template<class S, class T> void El::IndexDependentMap(const El::Matrix<Ring>&, El::Matrix<T>&, std::function<T(int, int, const S&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:45:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:170:168: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘const El::Matrix<Ring>’
DataType{Int rL = this->ZsNormExpSumStar.LocalRow(c); return z/this->ZsNormExpSumStar.GetLocal(rL,0);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:58:6: note: template<class S, class T, El::DistNS::Dist U, El::DistNS::Dist V, El::DistWrapNS::DistWrap wrap> void El::IndexDependentMap(const El::DistMatrix<S, U, V, wrap>&, El::DistMatrix<T, U, V, wrapType>&, std::function<T(int, int, const S&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:58:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:170:168: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘const El::DistMatrix<S, U, V, wrap>’
DataType{Int rL = this->ZsNormExpSumStar.LocalRow(c); return z/this->ZsNormExpSumStar.GetLocal(rL,0);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:82:6: note: template<class S, class T, El::DistNS::Dist U, El::DistNS::Dist V> void El::IndexDependentMap(const El::AbstractDistMatrix<Ring>&, El::DistMatrix<T, U, V>&, std::function<T(int, int, const S&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:82:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:170:168: note: ‘std::function<float(int, int, float)>’ is not derived from ‘El::DistMatrix<T, U, V>’
DataType{Int rL = this->ZsNormExpSumStar.LocalRow(c); return z/this->ZsNormExpSumStar.GetLocal(rL,0);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:39:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:110:6: note: template<class S, class T, El::DistNS::Dist U, El::DistNS::Dist V> void El::IndexDependentMap(const El::AbstractDistMatrix<Ring>&, El::DistMatrix<T, U, V, (El::DistWrapNS::DistWrap)1u>&, std::function<T(int, int, const S&)>)
void IndexDependentMap
^
/tmp/elemental/include/El/blas_like/level1/IndexDependentMap.hpp:110:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:170:168: note: ‘std::function<float(int, int, float)>’ is not derived from ‘El::DistMatrix<T, U, V, (El::DistWrapNS::DistWrap)1u>’
DataType{Int rL = this->ZsNormExpSumStar.LocalRow(c); return z/this->ZsNormExpSumStar.GetLocal(rL,0);}));
^
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp: In member function ‘DataType lbann::SoftmaxLayer::computeCost(const DistMat&)’:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: error: no matching function for call to ‘EntrywiseMap(ElMat&, std::function<float(float)>)’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: candidates are:
In file included from /tmp/elemental/include/El/core.hpp:274:0,
from /tmp/elemental/include/El.hpp:14,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/core/Graph/decl.hpp:142:17: note: template<class U, class V> void El::EntrywiseMap(const El::SparseMatrix<U>&, El::SparseMatrix<V>&, std::function<V(U)>)
friend void EntrywiseMap
^
/tmp/elemental/include/El/core/Graph/decl.hpp:142:17: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘const El::SparseMatrix<U>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:15:6: note: template<class T> void El::EntrywiseMap(El::Matrix<Ring>&, std::function<T(const T&)>)
void EntrywiseMap( Matrix<T>& A, function<T(const T&)> func )
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:15:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘El::Matrix<Ring>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:28:6: note: template<class T> void El::EntrywiseMap(El::SparseMatrix<U>&, std::function<T(const T&)>)
void EntrywiseMap( SparseMatrix<T>& A, function<T(const T&)> func )
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:28:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘El::SparseMatrix<U>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:38:6: note: template<class T> void El::EntrywiseMap(El::AbstractDistMatrix<Ring>&, std::function<T(const T&)>)
void EntrywiseMap( AbstractDistMatrix<T>& A, function<T(const T&)> func )
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:38:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: mismatched types ‘const T&’ and ‘float’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘std::function<float(float)>’ is not derived from ‘std::function<T(const T&)>’
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:42:6: note: template<class T> void El::EntrywiseMap(El::DistSparseMatrix<U>&, std::function<T(const T&)>)
void EntrywiseMap( DistSparseMatrix<T>& A, function<T(const T&)> func )
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:42:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘El::DistSparseMatrix<U>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:52:6: note: template<class T> void El::EntrywiseMap(El::DistMultiVec<Ring1>&, std::function<T(const T&)>)
void EntrywiseMap( DistMultiVec<T>& A, function<T(const T&)> func )
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:52:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘El::DistMultiVec<Ring1>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:56:6: note: template<class S, class T> void El::EntrywiseMap(const El::Matrix<Ring>&, El::Matrix<T>&, std::function<T(const S&)>)
void EntrywiseMap
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:56:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘const El::Matrix<Ring>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:74:6: note: template<class S, class T> void El::EntrywiseMap(const El::SparseMatrix<U>&, El::SparseMatrix<V>&, std::function<T(const S&)>)
void EntrywiseMap
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:74:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘const El::SparseMatrix<U>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:90:6: note: template<class S, class T> void El::EntrywiseMap(const El::AbstractDistMatrix<Ring>&, El::AbstractDistMatrix<T>&, std::function<T(const S&)>)
void EntrywiseMap
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:90:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘std::function<float(float)>’ is not derived from ‘El::AbstractDistMatrix<T>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:121:6: note: template<class S, class T> void El::EntrywiseMap(const El::DistSparseMatrix<U>&, El::DistSparseMatrix<T>&, std::function<T(const S&)>)
void EntrywiseMap
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:121:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘const El::DistSparseMatrix<U>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
In file included from /tmp/elemental/include/El/blas_like/level1/impl.hpp:28:0,
from /tmp/elemental/include/El/blas_like/level1.hpp:13,
from /tmp/elemental/include/El/blas_like.hpp:12,
from /tmp/elemental/include/El.hpp:15,
from /homes/olson/Pilot1/lbann/include/lbann/lbann_base.hpp:33,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer.hpp:32,
from /homes/olson/Pilot1/lbann/include/lbann/layers/lbann_layer_softmax.hpp:32,
from /homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:27:
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:138:6: note: template<class S, class T> void El::EntrywiseMap(const El::DistMultiVec<Ring1>&, El::DistMultiVec<T>&, std::function<T(const S&)>)
void EntrywiseMap
^
/tmp/elemental/include/El/blas_like/level1/EntrywiseMap.hpp:138:6: note: template argument deduction/substitution failed:
/homes/olson/Pilot1/lbann/src/layers/lbann_layer_softmax.cpp:227:102: note: ‘ElMat {aka El::ElementalMatrix<float>}’ is not derived from ‘const El::DistMultiVec<Ring1>’
EntrywiseMap(*Acts, (std::function<DataType(DataType)>)([](DataType z)->DataType{return log(z);}));
^
make[2]: *** [CMakeFiles/src.dir/src/layers/lbann_layer_softmax.cpp.o] Error 1
make[1]: *** [CMakeFiles/src.dir/all] Error 2
make: *** [all] Error 2