void caffe_sqr(const int N, const Dtype* a, Dtype* y);
template <typename Dtype>
+void caffe_sqrt(const int N, const Dtype* a, Dtype* y);
+
+template <typename Dtype>
void caffe_add(const int N, const Dtype* a, const Dtype* b, Dtype* y);
template <typename Dtype>
}
template <>
+void caffe_sqrt<float>(const int n, const float* a, float* y) {
+ vsSqrt(n, a, y);
+}
+
+template <>
+void caffe_sqrt<double>(const int n, const double* a, double* y) {
+ vdSqrt(n, a, y);
+}
+
+template <>
void caffe_exp<float>(const int n, const float* a, float* y) {
vsExp(n, a, y);
}