Я написал свою первую программу в OpenCL. Но я не могу запустить программу, потому что не удалось установить размер платформы:
#include <iostream>
#include <vector>
#include <cassert>
#include <fstream>
#include <string>
//#define CL_USE_DEPRECATED_OPENCL_2_0_APIS
#include <CL/cl.hpp>
using utyp = unsigned int;
constexpr utyp SIZE = 100000000;
int main(int argc, char *argv[] ) {
std::vector< cl::Platform > platforms;
const auto retGet = cl::Platform::get( &platforms );
std::cout << "retGet == " << retGet << std::endl;
std::cout << "Platforms.size == " << platforms.size() << std::endl;
assert( platforms.size() > 0 );
// etc
Я использую kubuntu 18.x.
Спасибо за любую помощь. С наилучшими пожеланиями.
Продолжить ...
У меня есть доступ к источнику cl :: Platform :: get:
static cl_int get( VECTOR_CLASS<Platform>* platforms) {
cl_uint n = 0;
if( platforms == NULL ) {
return detail::errHandler(CL_INVALID_ARG_VALUE, __GET_PLATFORM_IDS_ERR);
}
cl_int err = ::clGetPlatformIDs(0, NULL, &n);
if (err != CL_SUCCESS) {
return detail::errHandler(err, __GET_PLATFORM_IDS_ERR);
}
//etc
:: clGetPlatformIDs (0, NULL, & n ) возврат -1001.
Я не могу найти какое-либо описание -1001 в документации. : /