当前位置: 首页>>代码示例>>C++>>正文


C++ Queue::GetDevice方法代码示例

本文整理汇总了C++中Queue::GetDevice方法的典型用法代码示例。如果您正苦于以下问题:C++ Queue::GetDevice方法的具体用法?C++ Queue::GetDevice怎么用?C++ Queue::GetDevice使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Queue的用法示例。


在下文中一共展示了Queue::GetDevice方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: RunRoutine

 // Describes how to run the CLBlast routine
 static StatusCode RunRoutine(const Arguments<T> &args, Buffers<T> &buffers, Queue &queue) {
   #ifdef OPENCL_API
     auto queue_plain = queue();
     auto event = cl_event{};
     auto status = Col2im<T>(args.kernel_mode,
                             args.channels, args.height, args.width,
                             args.kernel_h, args.kernel_w,
                             args.pad_h, args.pad_w,
                             args.stride_h, args.stride_w,
                             args.dilation_h, args.dilation_w,
                             buffers.b_mat(), args.b_offset, // col
                             buffers.a_mat(), args.a_offset, // im
                             &queue_plain, &event);
     if (status == StatusCode::kSuccess) { clWaitForEvents(1, &event); clReleaseEvent(event); }
   #elif CUDA_API
     auto status = Col2im<T>(args.kernel_mode,
                             args.channels, args.height, args.width,
                             args.kernel_h, args.kernel_w,
                             args.pad_h, args.pad_w,
                             args.stride_h, args.stride_w,
                             args.dilation_h, args.dilation_w,
                             buffers.b_mat(), args.b_offset, // col
                             buffers.a_mat(), args.a_offset, // im
                             queue.GetContext()(), queue.GetDevice()());
     cuStreamSynchronize(queue());
   #endif
   return status;
 }
开发者ID:CNugteren,项目名称:CLBlast,代码行数:29,代码来源:xcol2im.hpp

示例2: RunRoutine

 // Describes how to run the CLBlast routine
 static StatusCode RunRoutine(const Arguments<T> &args, Buffers<T> &buffers, Queue &queue) {
   #ifdef OPENCL_API
     auto queue_plain = queue();
     auto event = cl_event{};
     auto status = Scal(args.n, args.alpha,
                        buffers.x_vec(), args.x_offset, args.x_inc,
                        &queue_plain, &event);
     if (status == StatusCode::kSuccess) { clWaitForEvents(1, &event); clReleaseEvent(event); }
   #elif CUDA_API
     auto status = Scal(args.n, args.alpha,
                        buffers.x_vec(), args.x_offset, args.x_inc,
                        queue.GetContext()(), queue.GetDevice()());
     cuStreamSynchronize(queue());
   #endif
   return status;
 }
开发者ID:CNugteren,项目名称:CLBlast,代码行数:17,代码来源:xscal.hpp


注:本文中的Queue::GetDevice方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。