gpu相关知识一二

本文介绍如何在服务器中配置一块用于显示的GeForce GT730和一块用于数据处理的Tesla K40c GPU。文章详细描述了驱动安装步骤及解决因GT730不支持GPU处理导致的错误方法,通过设置环境变量CUDA_VISIBLE_DEVICES实现。

服务器配置两个块GPU:一个是用于显示的GeForce GT 730(性能低,只能做显示),一块只能用作处理数据的GPU Tesla K40c(只作GPU用,不能做显示用)配置服务器。

如果开始有驱动,可直接卸载:

sudo apt-get remove --purge nvidia-*  #不能完全卸载

sudo apt-get remove --purge nvidia-\*    #可完全卸载,亲测有效

先安装GT730显卡驱动,在安装GPU Tesla K40c驱动(全都需要安装上,安装上GT730以后,才能使用nvidia-smi命令)

使用过程中会报错

failed initializing StreamExecutor for CUDA device ordinal 1: Internal: failed call to cuDevicePrimaryCtxRetain: CUDA_ERROR_INVALID_DEVICE: invalid device ordinal

由于gt730不能用作GPU,因此会报出错误,需要添加环境变量

export CUDA_VISIBLE_DEVICES=0,1 ##仅显卡设备0,1GPU可见。可用的GPU可通过nvidia-smi -L命令查看
### GPU 技术原理 GPU(图形处理单元)最初是为了加速计算机图形渲染而设计的硬件组件。随着时间的发展,由于其并行计算能力强大,逐渐被应用于更广泛的领域。 现代GPU通过PCI-Express总线与CPU相连,在执行图形应用程序时,会调用诸如OpenGL或Direct3D这样的API函数[^1]。这些高级编程接口允许开发者编写能够利用GPU特性的代码片段,即着色器程序。当运行这类软件时,操作系统中的图形驱动程序负责将API指令转换成具体的GPU操作命令序列,并传递给物理上的GPU完成实际工作。 在架构上,相较于通用型中央处理器(CPU),GPU拥有更多的算术逻辑单元(ALU)用于浮点数运算以及专门化的缓存结构支持大量并发任务调度管理。这种高度专业化的设计使得它特别适合处理大规模矩阵乘法等密集型数值计算任务,从而大大提高了效率和性能表现[^2]。 ```cpp // OpenGL ES 2.0 vertex shader example code snippet attribute vec4 vPosition; void main() { gl_Position = vPosition; // Set the position of current vertex. } ``` ### GPU 服务器架构与应用 GPU服务器是指配备有一个或多个高性能GPU卡的数据中心级机器。它们通常具备强大的网络通信能力和大容量内存资源,以便满足各种科学模拟、深度学习训练以及其他需要海量数据快速交换的应用需求。 从内部构造来看,除了常规配置外,GPU服务器还集成了高速互连技术如NVLink来增强多张显卡间协作效能;同时为了保障稳定性和散热效果也会采用特殊机箱布局方案。此外,针对不同应用场景可能还会预安装相应的开发工具链和服务框架,例如NVIDIA CUDA Toolkit, TensorFlow Serving等等。 对于企业而言,部署GPU集群可以显著缩短模型迭代周期,提高研发产出率的同时降低总体成本开销。而在科研机构里,则有助于推动前沿课题研究进展,比如天文学图像分析、分子动力学仿真等领域都离不开高效能计算平台的支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值