GPU / Cuda / Cudatoolkit/ Torch / Torchvision区别总结简述

256 阅读2分钟

引言

  • 由于个人前段时间测试一个项目需要安装torch,torchvision,cudatoolkit的适配安装包,也遇到了很多的版本不适配的情况,而且直到现在还在报错不知道是否依然是因为这些包缺少或者冲突的原因,所以本文总结一下个人搜集关于这几个名称以及相关名称的简单概述

正文

  • 显卡:
    • 通俗讲就是GPU,尤其指NVIDIA公司生产的GPU系列,后面要介绍的cuda,cudnn都是NVIDIA公司针对自身的GPU独家设计的,属于是配套软硬件,当然也有其他厂家的。
  • Nvidia Driver:
    • 驱动硬件的必备软件,Nvidia Driver名字还是很写实的。
  • Cuda:
    • CUDA 英文全称是 Compute Unified Device Architecture,是 NVIDIA 推出的运算平台。官方介绍,个人看参考文章介绍感觉有点像一种编程语言就像MR?可能不太准确,总之个人通俗理解就是一个官方做好的api工具包,使得GPU并行计算更简单高效吧。
    • 附上参考文章的一个图

  • Cudatoolkit:
    • CUDA 的工具包,主要包含了 CUDA-C 和 CUDA-C++ 编译器、一些科学库和实用程序库、CUDA 和 library API 的代码示例、和一些 CUDA 开发工具等,个人理解就是一种工具包。
    • CUDA Toolkit (nvidia): CUDA完整的工具安装包,其中提供了 Nvidia 驱动程序、开发 CUDA 程序相关的开发工具包等可供安装的选项。包括 CUDA 程序的编译器、IDE、调试器等,CUDA 程序所对应的各式库文件以及它们的头文件。
    • CUDA Toolkit (Pytorch): CUDA不完整的工具安装包,其主要包含在使用 CUDA 相关的功能时所依赖的动态链接库。不会安装驱动程序。
  • Cudnn:
    • 这个是一个专门为深度学习计算设计的软件库,里面提供了很多深度学习专门的计算函数,对计算性能,计算等都有优化,可以集成到常用的深度学习框架中,如torch,才能更好发挥出GPU的性能和效率
  • Torchvision:
    • torch是一个深度学习的框架(下载pytorch的时候其实下载的包叫torch,而不是pytorch),但是深度学习又可以分成很多方向,如CV,NLP等等大类,所以基于Pytorch又开发了很多专用的工具集,比如处理自然语言的 torchtext ,处理音频的 torchaudio ,以及处理图像视频的 torchvision

结尾(参3看下评论,说很多信息有歧义,注意甄别)

参考资料1

参考资料2

参考资料3