首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何枚举C++ AMP中的所有加速器?

如何枚举C++ AMP中的所有加速器?
EN

Stack Overflow用户
提问于 2011-09-23 19:21:36
回答 2查看 1.1K关注 0票数 1

在C++ AMP中,如何检测和枚举所有C++ AMP加速器?

Don McCrady发布了一个应用程序这里,它枚举非模拟加速器。虽然我有一个DX11卡(GTX 260),我没有看到任何可用的加速器。Daniel向这里展示了如何查询单个加速器,但我无法找到如何使用C++ AMP调用枚举所有(模拟和非)加速器。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-09-23 19:29:03

看起来很简单:concurrency::get_accelerators(); Daniel Moth 评论

在VS 11 Developer预览位中,只需调用concurrency::get_accelerators();。我们正在努力使贝塔在任何时候都更容易被发现。

这是我的密码:

代码语言:javascript
复制
#include <iostream>
#include "stdafx.h"
#include "amp.h"

using namespace std;
using namespace concurrency;

void inspect_accelerators()
{
    auto accelerators = accelerator::get_all();
    for_each(begin(accelerators), end(accelerators),[=](accelerator acc){ 
        wcout << "New accelerator: " << acc.description << endl;
        wcout << "is_debug = " << acc.is_debug << endl;
        wcout << "is_emulated = " << acc.is_emulated <<endl;
        wcout << "dedicated_memory = " << acc.dedicated_memory << endl;
        wcout << "device_path = " << acc.device_path << endl;
        wcout << "has_display = " << acc.has_display << endl;                
        wcout << "version = " << (acc.version >> 16) << '.' << (acc.version & 0xFFFF) << endl;
    });
}

更新1:

从VS 11 Beta开始,现在是accelerator::get_all();

票数 6
EN

Stack Overflow用户

发布于 2011-09-25 23:44:37

谢谢你转发我博客上的答案:-)

你在问题中作了一个旁白:

虽然我有一张DX11卡(GTX 260),但我没有看到任何可用的加速器

如果Don的工具找不到您的卡,那么它不是DX11卡,或者在他的实用程序中有一个错误,我们将感谢您向他报告复制。然而,我在供应商的网站上证实GTX 260是一张DX10卡。所以这不是C++ AMP代码的一个好目标,不幸的是.

干杯

丹尼尔

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7533792

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档