循环很简单,但是我似乎不能用我的头围绕着使用STL算法给出下面相同的嵌套循环.
const int a_size = 5; // input const int c_size = 2; // output const int b_size = a_size * c_size; // multipliers std::vector<float> a(a_size); std::vector<float> b(b_size); std::vector<float> c(c_size); // fill a and b with data // this nested loop for(int i = 0; i<c_size; i++) { c[i] = 0.0; for(int k = 0; k<a_size; k++) { c[i] += (a[k] * b[i*a_size+k]); } c[i] = sigmoid(c[i]); }
我想这样做的原因是Boost.Compute库,它将使用类似STL的算法(std :: transform,std :: for_each等)对GPU进行计算.
解决方法
原文地址:https://www.jb51.cc/c/113786.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。