我正在编写一个使用OpenCL的python / C应用程序,我想让用户选择他/她最喜欢的OpenCL设备来运行它。 这应该是离线发生的,首选设备存储在ini文件中。
有人知道怎么做吗?进程调用之间的设备ID不一致,所以我可以存储设备名称,然后执行字符串匹配?
答案 0 :(得分:3)
我见过的示例查询可用的平台/设备(clGetAvailablePlatforms / Devices)并将名称放在组合框中,然后使用组合框的“选定索引”作为用户想要使用的设备的指示在运行时。 所以我想让用户选择设备的索引,因为它显示在clGetAvailablePlatforms / Device中。唯一的问题是,如果用户经常使用图形卡或驱动程序版本,则订单可能会发生变化。然后你需要获得精确的设备名称字符串(也可以在驱动程序版本之间进行更改 - 尽管供应商通常不会这样做)。