标签: nvidia

现代 GPU 上纹理内存的最大大小是多少?

我们认为纹理内存是全局内存的一部分,这是真的吗?如果可以,你能分配多少?(间接地,有多少?)

并且所有多处理器都可以同时从纹理内存中读取是真的吗?

memory textures cuda gpgpu nvidia

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

OpenCL/CPU。测试OpenCL框架是否可用

我正在开发一个混合 OpenCL 应用程序,它必须在运行时决定是否使用 GPU 实现。

是否有跨平台(即对于 intel、nvidia 和 ati)的方式来确定运行应用程序的计算机是否具有 opencl 框架支持,而不会导致应用程序崩溃?一开始我只是为 Windows 平台开发。

#include <CL/cl.h>
#include <iostream>

int main() 
{
    std::cout << "Start cross paltform testing" << std::endl;
    cl_platform_id platform[1];
    clGetPlatformIDs(1, platform, 0);
    std::cout << "End cross paltform testing" << std::endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

目前我收到错误:

The application was unable to start correctly (0xc000007b)...
Run Code Online (Sandbox Code Playgroud)

如果我尝试在我上面描述的情况下启动它。

注意:实际上,至少对于 nvidia 来说应该是可能的。我已经在这个场景中测试了来自 nvidia GPU SDK 的 oclDeviceQuery 并且它工作正常。只需将 Windows/System 文件夹中的“opencl.dll”复制到应用程序文件夹中。我不知道为什么我的应用程序在相同的情况下崩溃。

先感谢您。

nvidia ati opencl hybrid

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

.net 中的静态链接是不可能的吗?你能用 C++/CLI 写一个包装器吗?

我正在处理一个 VB.Net 项目,我需要在其中加载 Nvidia 的 API NvApi.lib。但是在Nvidia网站上它说:

“NvAPI 不能动态链接到应用程序。您必须创建到库的静态链接,然后调用 NvAPI_Initialize(),它会动态加载 nvapi.dll。”

我的理解是 .Net 不支持静态链接有没有办法包装 NvApi.lib 文件,以便我可以从 Visual Basic 调用它?PS 我在这里看到了一个名为 NvApi.net的项目这让我相信这是可能的,但该项目似乎不完整,并于 2009 年被放弃,而我需要的功能在 2010 年添加到 API 中。

编辑:

我能够让它工作。我在我的解决方案中添加了一个新的 Visual c++ CLR 类项目。在将 nvapi.lib 文件链接为依赖项并将 nvapi.h 文件添加到项目后,我能够为我需要的方法编写一个小包装器。下面是我使用的代码。它只允许我打开和关闭 3D 立体声。

#include "nvapi.h"

public ref class NvApiWrapper
{   
public: 
static bool NvApiWrapper_Initialize(){
    if (NvAPI_Initialize() == 0){
        return true;
    } else {
        return false;
    }
}

static bool NvApiWrapper_Stereo_Enable(){
    if (NvAPI_Stereo_Enable() == 0){
        return true;
    } else {
        return …
Run Code Online (Sandbox Code Playgroud)

.net c++ dll reference nvidia

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

GPU 中的内存绑定内核和计算绑定内核

什么是“GPU 中的内存绑定内核和计算绑定内核”

这与 GPU 的性能有关吗?

kernel gpu nvidia

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

Android Logcat 错误消息:“文件 ... driverlist.txt 未找到!”

我收到以下 logcat 错误消息:

file /data/data/com.nvidia.NvCPLSvc/files/driverlist.txt: not found!
Run Code Online (Sandbox Code Playgroud)

这是什么意思?我可以在任何地方获取该文件以便此消息消失吗?

android driver nvidia logcat

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

用于 Kepler 架构的加载/存储单元 (LD/ST) 和特殊功能单元 (SFU)

Kepler 架构白皮书中,NVIDIA 声明SMX 上有32特殊功能单元 (SFU) 和32加载/存储单元 (LD/ST)。

SFU 用于“快速近似超越运算”。不幸的是,我不明白这是什么意思。另一方面,在SFU 的特殊 CUDA 双精度触发函数中,据说它们只能在单精度下工作。这在 K20Xm 上仍然正确吗?

LD/ST 单元显然用于存储和装载。通过这些论文之一是否需要任何内存加载/写入?它们是否也用作单一经线?换句话说,是否可以只有一个当前正在写入或读取的经线?

干杯,安迪

cuda nvidia kepler

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

在 Windows 上安装 CUDA 不兼容错误

我使用的是 Windows 8.1 Pro,我想安装 CUDA 5.5。我已经安装了 Visual Studio 2013 并且我有最新的 GPU 驱动程序版本 335.23。在 NVIDIA 控制面板中,我还将 CUDA - GPU 设置为 GeForce GT 740M。我的 CPU 是 Intel Core i7 4700MQ,它配备了 Intel HD 4600 GPU。

当我单击 setup.exe 文件时,它会显示如下错误:

“此图形驱动程序找不到兼容的图形硬件。您可以继续安装,但将无法运行 CUDA 应用程序。”

我还执行了最新稳定驱动程序的全新安装,但仍然无法安装 CUDA。

找不到 Visual Studio

我该怎么办?

更新 1:事实证明 CUDA 5.5 中捆绑的 NVIDA 图形驱动程序比我计算机上安装的要旧。所以我继续安装,没有要求 CUDA 在我的电脑上安装图形驱动程序。但现在显示以下错误。

更新 2:CUDA 5.5 和 CUDA 6.0 RC 都不支持 Visual Studio 2013。我必须安装 VS 2012,问题现已解决

windows installation cuda gpgpu nvidia

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

无法加载内核模块“nvidia.ko”

我正在尝试通过运行 NVIDIA-Linux-x86_64-331.49.run 在 Ubuntu 13.10 上安装 Nvidia 驱动程序。

我在 /etc/modprobe.d/blacklist-file-drivers.conf 下创建了一个黑名单文件并将 nouveau 添加到列表中。

另外,我在杀死我的显示管理器(sudo service lightdm stop)后运行了安装。我正在使用 gcc 4.8。

我收到以下错误(来自安装日志文件):

错误:无法加载内核模块“nvidia.ko”。当此内核模块是针对错误或配置不正确的内核源构建的,使用的 gcc 版本与用于构建目标内核的版本不同,或者存在 rivafb、nvidiafb 或 nouveau 等驱动程序时,这种情况最常发生并阻止 NVIDIA 内核模块获得 NVIDIA 图形设备的所有权,或者此 NVIDIA Linux 图形驱动程序版本不支持此系统中安装的 NVIDIA GPU。

有人可以解释一下问题是什么,我该如何解决它以便我最终可以安装驱动程序?

谢谢,

吉尔

ubuntu nvidia

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

当块的数量少于可用的 SM 时,如何将它们调度到 CUDA 中的 SM 中?

这个问题源于在内核中观察到的理论占用率和实现占用率之间的差异。我知道的计算器之间和不同nvprof占用和也约约从块CUDA分布于短信的细节的一个问题

让我们考虑一个具有计算能力 = 6.1 和 15 个 SM(GTX TITAN、Pascal 架构、芯片组 GP104)的 GPU。让我们考虑一个 2304 个元素的小问题。

如果我们将内核配置为 512 个线程,那么每个线程将处理一个元素,我们需要 5 个块来处理所有数据。并且内核非常小,因此在使用资源方面没有任何限制,无论是寄存器还是共享内存。

因此,理论上的占用率为 1,因为可以在一个 SM(2048 个线程)中分配四个并发块,从而导致 2048 / 32 = 64 个活动扭曲(最大值)。

然而,达到的占用率(由 nvidia profiler 报告)为 ~0.215,这可能与块映射到 SM 的方式有关。那么,当块的数量少于可用的 SM 时,如何将它们调度到 CUDA 中的 SM 中?

选项 1.-将 4 个 512 个线程块调度到一个 SM 中,将 1 个 512 个线程块调度到另一个 SM 中。在这种情况下,入住率将为 (1 + 0.125) / 2 = 0.56。我假设最后一个块只有 512 个线程中的 256 个处于活动状态以到达数组的最后 256 个元素,并且它在第二个 SM 中分配。因此,考虑到扭曲粒度,只有 8 个扭曲是活动的。

选项 2.- …

profiling cuda gpu nvidia nvprof

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

Linux - 在 Nouveau 驱动程序上运行 android 模拟器

Linux (Debian Sid x64),内核 4.14,Nvidia GPU。我无法在开放的 Nouveau 驱动程序上运行 Android 模拟器。没有任何我可以发布的错误消息,只是分段错误。当我选择软件渲染时,它可以工作但无法使用(运行速度很慢)。

有没有人知道任何解决方法,或者我被迫使用官方的 Nvidia 驱动程序?

linux nvidia segmentation-fault android-emulator

5
推荐指数
0
解决办法
1008
查看次数