GPU使用

news/2024/9/22 15:18:25/

0. 写这篇文章的背景

最近还是在使用GPU、连接远程服务器上出现了一点问题,发现在这方面的知识还是学得很模糊。(最让人感到困惑的是之前GPU的使用都没有问题)

总结一下最近的问题:

1.每一次连接远程服务器(选择的Ubuntu22.04),使用服务器的文件夹还好(关键是现在用服务器也不是很熟练),但是一打开本地文件夹远程就会断开(左下角显示的ssh标识就消失了)

2. 代码在尝试加载模型时出现了 “AssertionError: Torch not compiled with CUDA enabled”,这表明安装的 PyTorch 没有启用 CUDA 支持。然后又安装了英伟达(记忆中之前安装过,之前跑GPU也没有问题的,可能是无意中删除了)


1. 英伟达

英伟达(NVIDIA)是一家人工智能计算公司。以下是关于它的详细介绍:

发展历程

  • 创立于 1993 年,总部位于美国加利福尼亚州圣克拉拉市,美籍华人黄仁勋是其创始人。
  • 1999 年发明了图形处理器(GPU)并上市。此后不断发展,推出了一系列具有影响力的产品和技术,在多个领域取得了重要突破。

业务范围

  • 游戏业务:英伟达的 GeForce 系列显卡是游戏玩家的热门选择,为游戏提供强大的图形处理能力,带来逼真的画面效果和流畅的游戏体验。例如 GeForce RTX 40 系列显卡,支持光线追踪、DLSS 等先进技术,能够显著提升游戏的视觉质量和性能。
  • 数据中心业务:随着人工智能、大数据等技术的发展,数据中心的计算需求不断增长。英伟达的 GPU 和相关技术为数据中心提供了强大的计算支持,可用于深度学习、机器学习、数据分析等任务。
  • 汽车业务:在自动驾驶领域,英伟达的技术可以加速计算和图像处理,帮助自动驾驶汽车更准确地感知和应对道路情况。其推出的 NVIDIA DRIVE 平台为汽车制造商和自动驾驶技术公司提供了全面的解决方案。
  • 设计平台业务:对于工业设计、建筑设计、影视特效渲染等专业领域,英伟达显卡以强大的计算能力和大容量视频内存,满足了设计师对高性能显卡的需求。

技术创新

  • GPU 技术:英伟达的 GPU 是其核心技术之一,具有强大的并行计算能力,在图形处理、科学计算、人工智能等领域发挥着重要作用。GPU 的不断升级和改进,提高了计算性能和能效,为各种应用提供了更好的支持。
  • CUDA 技术CUDA(Compute Unified Device Architecture)是英伟达推出的并行计算平台和编程模型,使开发者能够利用 GPU 的并行计算能力进行通用计算,大大提高了计算效率,广泛应用于科学研究、工程计算、数据分析等领域。
  • 人工智能技术:英伟达在人工智能领域投入了大量的研发资源,其 GPU 和相关软件工具被广泛应用于人工智能的训练和推理过程,为语音识别、图像识别、自然语言处理等人工智能应用提供了强大的计算支持。

行业地位和影响力:英伟达在半导体和人工智能计算领域具有重要的地位和影响力。其产品和技术被广泛应用于各个行业,推动了图形处理、人工智能、科学计算等领域的发展。英伟达的创新能力和技术实力也使其成为了行业的领导者之一,不断引领着技术的发展趋势。


Q:英伟达,CUDA,GPU,显卡,pytorch有什么关系,

      最近代码在报 “AssertionError: Torch not compiled with CUDA enabled”的错误,可        以系统地讲解这方面的知识吗?

A:英伟达(NVIDIA)、CUDA、GPU、显卡以及 PyTorch 之间存在着紧密的联系,具体如        下:

  • 英伟达与显卡的关系:英伟达是一家生产显卡的厂商。显卡全称显示接口卡,又称显示适配器,是计算机最基本配置、最重要的配件之一,承担输出显示图形的任务。显卡接在电脑主板上,将电脑的数字信号转换成模拟信号让显示器显示出来。原始的显卡一般都是集成在主板上,只完成最基本的信号输出工作,并不用来处理数据。随着显卡的迅速发展,出现了 GPU 的概念。显卡分为独立显卡和集成显卡,独立显卡作为一个独立的器件插在主板的 AGP 接口上,可以随时更换升级,且有自己的显存;集成显卡则集成在主板上,使用物理内存。一般而言,同期推出的独立显卡的性能和速度要比集成显卡好、快。值得一提的是,集成显卡和独立显卡都是有 GPU 的。
  • 英伟达与 CUDA 的关系:CUDA(Compute Unified Device Architecture)是英伟达推出的通用并行计算架构,旨在利用英伟达 GPU 的强大计算能力来加速各种科学计算、数值模拟和深度学习任务。它提供了一种编程模型,允许开发人员编写 C/C++ 代码,利用 GPU 的并行性来执行任务,还提供了一组 API 来管理 GPU 内存、控制 GPU 设备和调度核函数的执行。也就是说,CUDA 是英伟达开发的 GPU 的编程接口,只有英伟达的 GPU 支持 CUDA 技术。
  • GPU 与 CUDA 的关系:GPU 是图形处理器,是显卡的核心芯片,具有大量的并行处理单元,可同时执行大量相似的操作,非常适合进行大规模矩阵运算,如深度学习中的卷积神经网络和循环神经网络的计算。而 CUDA 是软件层面的技术和编程模型,为 GPU 提供了编程接口和开发工具,使得开发者能够利用 GPU 的强大并行计算能力进行高效的计算,将 GPU 可以被用于除图形处理之外的更广泛的计算任务,如科学计算、数据分析、人工智能等2。
  • PyTorch 与英伟达的关系:英伟达的 GPU 是 PyTorch 框架进行高效计算的重要硬件支持。PyTorch 是一个开源机器学习库,主要用于深度学习模型的构建和训练,在训练和运行深度学习模型时需要大量的计算资源。英伟达的 GPU 凭借其强大的并行计算能力,能够加速 PyTorch 模型的训练和推理过程,提高深度学习任务的效率。此外,英伟达对 PyTorch 进行了优化,使其能够更好地利用英伟达 GPU 的特性和功能,例如提供了针对 PyTorch 的 GPU 加速库和工具。
  • PyTorch 与 CUDA 的关系:PyTorch 可以使用 CUDA 作为后端的并行计算引擎。开发者在使用 PyTorch 编写深度学习代码时

http://www.ppmy.cn/news/1528872.html

相关文章

【busybox记录】【shell指令】sleep

目录 内容来源: 【GUN】【sleep】指令介绍 【busybox】【sleep】指令介绍 【linux】【sleep】指令介绍 使用示例: 1秒、234毫秒、567微秒和890纳秒的睡眠: 常用组合指令: 指令不常用/组合用法还需继续挖掘: 内容来源&…

关于github GPG的配置

GitHub 使用 OpenPGP 库来确认本地签名的提交和标记,是否根据你在 GitHub.com 上添加到帐户的公钥进行加密验证。 这里是github关于GPG密钥的文档:https://docs.github.com/zh/authentication/managing-commit-signature-verification/about-commit-sig…

【Opencv知识】图像梯度如何理解?

在图像处理和计算机视觉中,理解和计算图像的梯度是非常重要的步骤。梯度图像表示的是图像在每个像素点上的亮度变化率,通常用于边缘检测和特征提取等任务。 灰度化是将彩色图像转换为灰度图像的过程,这样每个像素只包含一个亮度值&#xff0…

解决引入ethereumjs-wallet报错Uncaught ReferenceError: process is defined

最近在学习web3.0开发DApp的视频教程,遇到用助记词生成秘钥对报错Uncaught ReferenceError: process is defined。具体报错如下截图: 在网上搜了好几个小时都没找到解决方法。突然在学习的视频论坛找到有哥们说是引入的包不兼容问题导致报这个错。我试了…

Video.js展示视频

在Vue 2中使用Video.js来展示视频是一个常见的需求,因为Video.js提供了丰富的API和灵活的自定义选项,使得在网页上嵌入和控制视频变得简单。以下是一个详细的示例,包括如何在Vue 2项目中集成Video.js,并展示一个基本的视频播放器。…

手写流程图元素检测系统源码分享

手写流程图元素检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Comput…

linux-软件包管理-包管理工具(RedHat/CentOS 系)

Linux 软件包管理:包管理工具(RedHat/CentOS 系) 一、概述 在 Linux 操作系统中,软件包管理是系统维护的重要部分,它允许用户安装、升级、卸载和查询软件包。不同的 Linux 发行版使用不同的包管理工具。对于 RedHat …

试图讲清楚spring的依赖注入

首先声明,依赖注入和反转容器是密不可分的,二者相互依存,依赖注入是实现反转控制的一种方式,允许对象在创建时将其依赖项提供给它,而不是在内部创建这些依赖项。这样可以增强代码的可测试性和可维护性。 spring依赖注入…