小编jco*_*and的帖子

如何在多GPU系统中根据PCI供应商,设备和总线ID将OpenCL设备与特定GPU相匹配?

我希望能够在由PCI ID识别的多GPU系统上将OpenCL设备与系统中的GPU相匹配.

例如,如果我的系统有多个GPU,可能来自不同的供应商,我可以通过枚举PCI总线列出设备.这给了我PCI供应商,设备和总线ID.如果我根据某些选择标准选择其中一个(GPU)PCI设备用于OpenCL计算,我该如何将其与OpenCL设备相匹配?

我可以使用clGetDeviceIDs()在OpenCL中枚举GPU设备,但没有明显的方法可以将OpenCL设备与PCI设备相匹配.OpenCL函数clGetDeviceInfo()提供对PCI供应商ID和设备名称的访问,但不提供对PCI设备或总线ID的访问.我可以尝试将PCI设备名称与OpenCL设备名称匹配,但是您可能有多个相同类型的设备,并且名称并不总是相同.

为什么这有必要?假设我知道程序X在GPU A上运行CUDA或其他东西.我想避免使用GPU A进行OpenCL操作,因此我选择GPU B.然后我需要弄清楚哪个OpenCL设备是GPU A,哪个是GPU B. PCI ID似乎是识别GPU设备的唯一一致且跨平台的方式.

顺便说一下,CUDA API确实为您提供了PCI,总线和插槽ID(CU_DEVICE_ATTRIBUTE_PCI_BUS_ID,CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID),但CUDA仅适用于NVidia设备.

理想情况下,我需要使用C或C++的解决方案.

gpu opencl pci

16
推荐指数
1
解决办法
4912
查看次数

如何在 Windows 中访问继承的匿名管道句柄(除了 stdout、stderr 和 stdin)?

我正在尝试通过 Windows 中的匿名管道从子进程接收数据。我知道如何使用标准 I/O 流来执行此操作,但这些流正用于其他目的。我还知道如何在 Linux 或 OSX 中使用fork(),pipe()和 来执行此操作execv()

在 Windows 中,您可以使用 来创建管道CreatePipe()并使用 使其一端不可继承SetHandleInformation()。然后,对于 stdout 和 stderr,您可以通过STARTUPINFO、 withhStdOutputhStdErrorset 来传递 to ,CreateProcess()将另一端传递给子级。在调用CreateProcess()最接近的父级之后,它是管道子级末端的句柄。MSDN 上的使用重定向输入和输出创建子进程对此进行了详细解释。HANDLE但是,除了通过 stderr、stdout 或 stdin 之外,我还没有找到将 a 传递给子级的方法。

我尝试过将其转换HANDLE为字符串,如下所示:

std::ostringstream str;
str << hex << "0x" << handle;
std::string handleArg = str.str();
Run Code Online (Sandbox Code Playgroud)

然后将其作为命令行参数传递并将其转换回 a HANDLE,这只是void *子进程中的 a 。尽管子进程显然继承了管道, …

c++ windows ipc pipe child-process

5
推荐指数
1
解决办法
1695
查看次数

猫头鹰旋转木马在页面加载时闪烁

在本页面

http://www.exclusivecard.co.uk/offers.php

我有几个猫头鹰旋转木马在运行.您会注意到,当您第一次加载页面时,旋转木马中的所有优惠都会以全宽闪烁,直到jquery启动,然后调整所有内容的大小.反正有没有阻止这个?我发布了一些我正在使用的代码

HTML

 <?php $k='1'; do { ?>
 <div id="owlslide<?php echo $k;?>">
     <?php do { ?>
       <div class="owlItem ">
         <-- some other stuff -->
       </div>
     <?php  } while();?>
 </div>
 <?php $i++; } while();?>
Run Code Online (Sandbox Code Playgroud)

Jquery(猫头鹰)

 $(document).ready(function(){
<?php $i='1'; do { ?>
 $("#owlslide<?php echo $i;?>").owlCarousel({
  autoPlay: false, //Set AutoPlay to 3 seconds
  paginationNumbers: true,
   itemsCustom : [
    [0, 1],
    [450, 1],
    [600, 2],
    [700, 2],
    [1000, 3],
    [1200, 4],
    [1400, 4],
    [1600, 5]
  ],        
  });
<?php $i++; }while($cara = mysql_fetch_assoc($catCara)); ?> …
Run Code Online (Sandbox Code Playgroud)

html jquery twitter-bootstrap owl-carousel

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

child-process ×1

gpu ×1

html ×1

ipc ×1

jquery ×1

opencl ×1

owl-carousel ×1

pci ×1

pipe ×1

twitter-bootstrap ×1

windows ×1