当前位置: 首页 > news >正文

CUDA说明和安装[window]

文章目录

  • 1、查看版本信息
    • 查看GPU
    • 查看cuda版本
    • 其他方法
  • 2区分 了解
    • cuda
    • CUDA Toolkit
    • NVCC
    • cuDNN
  • 3/ 安装过程
  • 4/版本的问题
    • CUDA Toolkit和 显卡驱动 的版本对应
    • CUDA / CUDA Toolkit和cuDNN的版本对应
  • 5/关于CUDA和Cudnn
    • **5.1 CUDA的命名规则**
    • **5.2 如何查看自己所安装的CUDA的版本:**
    • **5.3 如何查看自己的cuDNN的版本**
    • 5.4 NVIDIA显卡及其计算能力查看

1、查看版本信息

查看GPU

image-20220123153251106

查看cuda版本

命令行中输入 nvidia-smi

C:\Users\Administrator>nvidia-smi
Mon Dec 14 20:24:37 2020
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 460.79       Driver Version: 460.79       CUDA Version: 11.2     |
|-------------------------------+----------------------+----------------------+
| GPU  Name            TCC/WDDM | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  GeForce RTX 3070   WDDM  | 00000000:01:00.0  On |                  N/A |
|  0%   50C    P2    48W / 240W |   1203MiB /  8192MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

其中 CUDA Version:11.2 就是当前显卡的CUDA版本啦。

找不到该命令怎么办:

1、cmd中目录切换到 C:\Program Files\NVIDIA Corporation\NVSMI下然后再使用nvidia-smi命令。

2、在系统变量的Path变量中添加C:\Program Files\NVIDIA Corporation\NVSMI,

其他方法

1、控制面板-----NVIDIA控制面板

image-20220123115552007

2、系统信息

image-20220123115620988

3、如图

image-20220123115722232

显卡驱动一般自带,官网下载地址:官方 GeForce 驱动程序 | NVIDIA

快速安装CUDA和Cudnn可参考:【CUDA】cuda安装 (windows版)

备份链接:https://app.yinxiang.com/shard/s11/nl/18572327/940c7ced-3cdf-4647-b807-e40e574ef804

下面具体讲述区别和联系以及下载流程


2区分 了解

cuda

CUDA是显卡厂商NVIDIA推出的运算平台。CUDA英文全称是Compute Unified Device Architecture。
*CUDA是NVIDIA推出的用于自家GPU的并行计算框架,是一种并行计算平台和编程模型,也就是说CUDA只能在NVIDIA的GPU上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥CUDA的作用

有人说:CUDA是一门编程语言,像C,C++,python 一样,也有人说CUDA是API。
官方说:CUDA是一个并行计算平台和编程模型,能够使得使用GPU进行通用计算变得简单和优雅。
运行CUDA应用程序要求系统至少具有一个具有CUDA功能的GPU和与CUDA Toolkit兼容的驱动程序。
查看CUDA版本命令:nvcc -Vnvcc --versioncat /usr/local/cuda/version.txt

(1) NVIDIA的显卡驱动程序和CUDA完全是两个不同的概念哦!

CUDA和CUDA Driver显卡驱动不是一一对应的,比如同一台电脑上可同时安装CUDA 9.0、CUDA 9.2、CUDA 10.0等版本。
CUDA本质上只是一个工具包(ToolKit);所以我可以在同一个设备上安装很多个不同版本的CUDA,比如我的电脑上同事安装了 CUDA 9.0、CUDA 9.2、CUDA 10.0三个版本。一般情况下,我只需要安装最新版本的显卡驱动,然后根据自己的选择选择不同CUDA工具包就可以了,但是由于使用离线的CUDA总是会捆绑CUDA和驱动程序(下面阐述),所以在使用多个CUDA的时候就不要选择离线安装的CUDA了,否则每次都会安装不同的显卡驱动,这不太好,我们直接安装一个最新版的显卡驱动,然后在线安装不同版本的CUDA即可。

显卡驱动下载地址:https://www.nvidia.com/Download/index.aspx?lang=en-us

CUDA Toolkit

CUDA工具包的主要包含了CUDA-C和CUDA-C++编译器、一些科学库和实用程序库、CUDA和library API的代码示例、和一些CUDA开发工具。(通常在安装CUDA Toolkit的时候会默认安装CUDA Driver;但是我们经常只安装CUDA Driver,没有安装CUDA Toolkit,因为有时不一定用到CUDA Toolkit;比如我们的笔记本电脑,安装个CUDA Driver就可正常看视频、办公和玩游戏了)
详细内容见NVIDIA官方

cudatoolkit有两种:
①Nvidia 官方提供的 CUDA Toolkit
(官方提供的CUDA Toolkit是一个完整的工具安装包)大
②Anaconda安装Pytorch时,会自动安装cudatoolkit
(conda安装的只包含动态链接库等pytorch框架需要用到的东西)小

原文链接

CUDA和CUDA toolkit区别: cuda和cudatoolkit_独孤的大山猫的博客-CSDN博客_cudatoolkit和cuda有关系吗

NVCC

NVCC就是CUDA的编译器,可以从CUDA Toolkit的/bin目录中获取,类似于gcc就是c语言的编译器。由于程序是要经过编译器编程成可执行的二进制文件,而cuda程序有两种代码,一种是运行在cpu上的host代码,一种是运行在gpu上的device代码,所以nvcc编译器要保证两部分代码能够编译成二进制文件在不同的机器上执行。

cuDNN

cuDNN的全称为NVIDIA CUDA® Deep Neural Network library,是NVIDIA专门针对深度神经网络中的基础操作而设计基于GPU的加速库。cuDNN为深度神经网络中的标准流程提供了高度优化的实现方式,例如convolution、pooling、normalization以及activation layers的前向以及后向过程。
CUDA这个平台一开始并没有安装cuDNN库,当开发者们需要用到深度学习GPU加速时才安装cuDNN库,工作速度相较CPU快很多。

CUDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算;
来自知乎的解释:CUDA看作是一个工作台,上面配有很多工具,如锤子、螺丝刀等。cuDNN是基于CUDA的深度学习GPU加速库,有了它才能在GPU上完成深度学习的计算。它就相当于工作的工具,比如它就是个扳手。但是CUDA这个工作台买来的时候,并没有送扳手。想要在CUDA上运行深度神经网络,就要安装cuDNN,就像你想要拧个螺帽就要把扳手买回来。这样才能使GPU进行深度神经网络的工作,工作速度相较CPU快很多。
基本上所有的深度学习框架都支持cuDNN这一加速工具,例如:Caffe、Caffe2、TensorFlow、Torch、Pytorch、Theano等。
Caffe可以通过修改Makefile.config中的相应选项来修改是否在编译Caffe的过程中编译cuDNN,如果没有编译cuDNN的话,执行一些基于Caffe这一深度学习框架的程序速度上要慢3-5倍(Caffe官网上说不差多少,明明差很多嘛)。Caffe对cuDNN的版本不是很严格,只要大于cuDNN 4就可以。
查看cuDNN版本:cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2


3/ 安装过程

1/显卡驱动下载地址:https://www.nvidia.com/Download/index.aspx?lang=en-us

2/CUDA的下载地址为:CUDA Toolkit Archive | NVIDIA Developer

我们可以选择两种安装方式,一种是在线安装(我还没用过),一中离线安装(我采用的)即本地安装,

当我们选择离线安装,当我们选定相对应的版本之后,下载的时候发现这个地方的文件大小大概在2G左右,Linux系统下面我们选择runfile(local) 完整安装包从本地安装,或者是选择windows的本地安装。

直接点击exe文件安装即可。
安装过程中

  • 选择“自定义安装”—不要勾选“CUDA- -VS Intergation”,
  • 不建议勾选“other components”和“other compontens”,如果当前版本有版本号就不要勾选了
  • 如果不是第一次安装,我觉得可以把“CUDA- - Samples”取消掉

CUDA安装完成后,打开powershell,执行nvcc -V ,成功的话会返回cuda版本号。

CUDA Toolkit本地安装包时内含特定版本Nvidia显卡驱动的,所以只选择下载CUDA Toolkit就足够了,如果想安装其他版本的显卡驱动就下载相应版本即可

所以,NVIDIA显卡驱动和CUDA工具包本身是不具有捆绑关系的,也不是一一对应的关系,只不过是离线安装的CUDA工具包会默认携带与之匹配的最新的驱动程序。

3/ CUDA ToolKit的安装

暂时理解为:安装cuda就是安装cuda ToolKit

4/ cuDNN安装cuDNN是一个SDK,是一个专门用于神经网络的加速包,注意,它跟我们的CUDA没有一一对应的关系,即每一个版本的CUDA可能有好几个版本的cuDNN与之对应,但一般有一个最新版本的cuDNN版本与CUDA对应更好。

官网直接下:cuDNN Archive | NVIDIA Developer

解压cuDNN压缩包,可以看到bin、include、lib目录;打开 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA

找到你安装的版本目录,打开,找到bin、include、lib目录,将cuDNN压缩包内对应的文件复制到bin、include、lib目录。

注意:是复制文件到bin、include、lib目录,不是复制目录。

4/版本的问题

CUDA Toolkit和 显卡驱动 的版本对应

每个版本的CUDA Toolkit 都对应一个最低版本的显卡驱动版本(CUDA Driver),详情见下表。显卡驱动下载,CUDA Toolkit下载,显卡驱动安装教程,CUDA Toolkit安装教程1,CUDA Toolkit安装教程2

安装CUDA Driver核心命令:sudo sh ./NVIDIA-Linux-x86_64-???.??.run
详细教程参考其他博客

需要知道:CUDA Toolkit和显卡驱动有版本的对应关系。
但同时:在同一台机器上(即同一个CUDA Driver版本)可以安装多个版本的CUDA(如CUDA 9.0、CUDA 10.1……只需要满足当前CUDA Driver版本支持安装的CUDA版本即可,满足关系见下图。

我的理解:安装CUDA就是安装CUDA Toolkit(CUDA是运算平台名称、CUDA Toolkit是工具包),就是从官网下载CUDA Toolkit安装.run文件(如cuda_9.0.176_384.81_linux.run)进行安装。
安装成功后,在/usr/local路径下才会有cuda-9.0文件夹,且同时才可以使用nvcc -V可以查询到CUDA版本

在这里插入图片描述
  • Anaconda在安装Pytorch时,会同时用户安装cudatoolkit,如命令conda install pytorch torchvision torchaudio cudatoolkit=10.1 -c pytorch,其主要包含应用程序在使用CUDA相关的功能时所依赖的动态链接库。conda安装只会安装一些计算库,不会安装编译工具。而官方的cuda包包含的东西会完整一些。

  • 使用 Anaconda 安装的 CUDA Toolkit 不位于 lib64 路径中,也不会产生冲突

  • 在考虑pip install tensorflow-gpu安装tensorflow时,如安装TensorFlow2.1,需要安装CUDA Toolkit版本为10.1,而安装Tensorflow1.14.0,则要求cuda==10.0(tensorflow与cuda也有版本兼容问题,官方文档)
    查询上图,我们发现需要显卡驱动版本应该大于等于418.96,故系统中的显卡驱动版本应该至少为418.39。

  • CUDA Toolkit本地安装包(local)内含特定版本Nvidia显卡驱动的,当在CUDA官网下载CUDA Toolkit后进行安装时会让用户选择安装项。

  • 如果想安装其他版本的显卡驱动,则就需要在Nvidia官网自己下载并先安装好(或本机已经安装了合适版本的显卡驱动时),最后在安装CUDA Toolkit时取消安装内置版本的Nvidia显卡驱动。

CUDA / CUDA Toolkit和cuDNN的版本对应

**CUDA / CUDA Toolkit和cuDNN之间有版本对应关系。
但同时:同一个CUDA 版本支持安装多个版本的cuDNN(如cuDNN v7.6.4、cuDNN v7.6.3……选择其一安装即可。

cuDNN下载,cuDNN下载安装教程

  • 查阅cuDNN下载网站,可以知道,如果目前电脑中安装了CUDA Toolkit=10.1(也就是CUDA10.1),那么cuDNN的可选版本有7.6.4、7.6.3、7.6.2
    同上,如需要安装TensorFlow2.1,故我们需要安装CUDA Toolkit=10.1,同时cuDNN就需要从7.6.4、7.6.3、7.6.2这三个版本中选择。

5/关于CUDA和Cudnn

5.1 CUDA的命名规则

下面以几个例子来说

(1)CUDA 9.2 CUDA 9.2.148

(2)CUDA 10.0 CUDA 10.0.130.411.31(后面的411.31对应更具体的版本号)

(3)CUDA 10.1 CUDA 10.1.105.418.96(后面的418.96对应更具体的版本号)

更多详细的请参考如下官网:https://developer.nvidia.com/cuda-toolkit-archive

5.2 如何查看自己所安装的CUDA的版本:

(1)直接在NVIDIA的控制面板里面查看NVCUDA.DLL的版本。

注意:这里网上有很多说法是错误的,这个版本并不能绝对说明自己所安装的CUDA工具包一定这个版本

(2)通过命令查看:nvcc -V 或者是nvcc --version都可以,但前提是添加了环境变量

(3)直接通过文件查看,这里分为Linux和windows两种情况

在windows平台下,可以直接进入CUDA的安装目录,比如我的是:

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2 里面有一个version.txt的文本文件,直接打开即可,也可以使用命令,即首先进入到安装目录,然后执行:type version.txt 即可查看

在Linux平台下:同windows类似,进入到安装目录,然后执行 cat version.txt 命令

5.3 如何查看自己的cuDNN的版本

因为cuDNN本质上就是一个C语言的H头文件,

(1)在windows平台下:

直接进入安装目录:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2\include 之下,然后找到

cudnn.h 的头文件,直接到开查看,在最开始的部分会有如下定义:

img

即5005,即5.0.5版本的cudnn。

5.4 NVIDIA显卡及其计算能力查看

官网:CUDA GPU | NVIDIA Developer(GeForce系列的显卡以及各个显卡的计算能力(compute capability))

image-20220123152908703

相关文章:

CUDA说明和安装[window]

文章目录 1、查看版本信息查看GPU查看cuda版本其他方法 2区分 了解cudaCUDA ToolkitNVCCcuDNN 3/ 安装过程4/版本的问题CUDA Toolkit和 显卡驱动 的版本对应CUDA / CUDA Toolkit和cuDNN的版本对应 5/关于CUDA和Cudnn**5.1 CUDA的命名规则****5.2 如何查看自己所安装的CUDA的版本…...

sqlserver2012性能优化配置:设置性能相关的服务器参数

前言 sqlserver2012 长时间运行的话会将服务器的内存占满 解决办法 通过界面设置 下图中设置最大服务器内存 通过执行脚本设置 需要先开发开启高级选项配置才能设置成功 设置完成之后将高级选择配置关闭,还原成跟之前一样 --可以配置高级选项 EXEC sp_conf…...

介绍 dubbo-go 并在Mac上安装,完成一次自己定义的接口RPC调用

目录 RPC 远程调用的说明作用:像调用本地方法一样调用远程方法和直接HTTP调用的区别:调用模型图示: Dubbo 框架说明Dubbo Go 介绍应用 Dubbo Go环境安装(Mac 系统)安装 Go语言环境安装 序列化工具protoc安装 dubbogo-c…...

目标检测数据集:摄像头成像吸烟检测数据集(自己标注)

1.专栏介绍 ✨✨✨✨✨✨目标检测数据集✨✨✨✨✨✨ 本专栏提供各种场景的数据集,主要聚焦:工业缺陷检测数据集、小目标数据集、遥感数据集、红外小目标数据集,该专栏的数据集会在多个专栏进行验证,在多个数据集进行验证mAP涨点明显,尤其是小目标、遮挡物精度提升明显的…...

Unity的UI管理器

1、代码 public class UIManager {private static UIManager instance new UIManager();public static UIManager Instance > instance;//存储显示着的面板脚本(不是面板Gameobject),每显示一个面板就存入字典//隐藏的时候获取字典中对…...

Mp4文件提取详细H.264和MP3文件

文章目录 Mp4文件提取为H.264和MP3文件**提取视频为H.264:****提取音频为MP3:** 点赞收藏加关注,追求技术不迷路!!!欢迎评论区互动。 Mp4文件提取为H.264和MP3文件 要将视频分开为H.264(视频编…...

Qt应用程序连接达梦数据库-飞腾PC麒麟V10

目录 前言1 安装ODBC1.1 下载unixODBC源码1.2 编译安装1.4 测试 2 编译QODBC2.1 修改 qsqldriverbase.pri 文件2.2 修改 odbc.pro 文件2.3 编译并安装QODBC 3 Qt应用程序连接达梦数据库测试4 优化ODBC配置,方便程序部署4.1 修改pro文件,增加DESTDIR 变量…...

2023-09-03 LeetCode每日一题(消灭怪物的最大数量)

2023-09-03每日一题 一、题目编号 1921. 消灭怪物的最大数量二、题目链接 点击跳转到题目位置 三、题目描述 你正在玩一款电子游戏,在游戏中你需要保护城市免受怪物侵袭。给你一个 下标从 0 开始 且长度为 n 的整数数组 dist ,其中 dist[i] 是第 i …...

绘图 | MATLAB

目的语法注意事项图片中出现网格grid on放在plot后面在同一图片中绘制多个图例hold on在图形中添加图例legend LineSpec 线性 线型描述线型描述" - "实线" : "点线" - - "虚线" -. "点划线 标记 标记描述标记描述“o”圆圈“squa…...

2023年下半年高项考试学习计划

之前总结 2023年上半年的考试,对于我自己,就是虎头蛇尾,也谈不上太过自信,好好学习了一段时间之后,也就是不再发博文,截止到2022年11月的时候,自己就算是放弃了,没有再主动学习。 结…...

SpringBoot中CommandLineRunner的使用

开发中,你有没有遇到这样的场景,项目启动后,立即需要进行一些操作。比如:加载一些初始化数据、执行一段逻辑代码。你可以使用SpringBoot中CommandLineRunner。它可以在项目启动后,执行CommandLineRunner接口实现类的相…...

<OpenCV> Mat属性

OpenCV的图像数据类型可参考之前的博客:https://blog.csdn.net/thisiszdy/article/details/120238017 OpenCV-Mat类型的部分属性如下: size:矩阵的大小, s i z e ( c o l s , r o w s ) size(cols,rows) size(cols,rows)&#xf…...

LAMP 综合实验

LAMP 综合实验 一.实验目标 实验目标如下: 实现 LAMP 架构 实现数据库主从复制 实现 NFS 服务器存储 wordpress 文件 实现备份服务器实时备份 NFS 服务器文件 实现日志集中存储 实现 loganalyzer 分析展示日志 二.实验准备 2.1 实验环境 实验环境: 虚拟机版本: VM…...

JavaScript发展历程

目录 一、起源(1995-1997) 二、发展(1997-2005) 三、进化——Ajax与Web 2.0(2005-2010年) 四、移动互联网与现代化(2010年至今) 结论 JavaScript是一种广泛使用的网络编程语言&…...

LP(六十九)智能文档助手升级

本文在笔者之前研发的大模型智能文档问答项目中,开发更进一步,支持多种类型文档和URL链接,支持多种大模型接入,且使用更方便、高效。 项目介绍 在文章NLP(六十一)使用Baichuan-13B-Chat模型构建智能文档中…...

VIM统计搜索关键词命令

:%s/./&/gn 统计字符数 :%s/\i\/&/gn 统计单词数 :%s/^//n 统计行数 :%s/keyword/&/g 统计任何地方出现的 "keyword" :%s/keyword/&/gn 统计任何地方出现的 "keyword" :%s/keyword/:这部分是 Vi…...

0017Java程序设计-spr农业过程化管理系统

摘 要目 录系统设计开发环境 摘 要 本农业过程化管理系统就是建立在充分利用现在完善科技技术这个理念基础之上,并使用IT技术进行对农业过程化的管理,从而保证种植户能种植出优质的农作物,可以实现农业过程化的在线管理,这样保证…...

以可视化方式解释 Go 并发 - 通道

在并发编程中,许多编程语言采用共享内存/状态模型。然而,Go 通过实现 通信顺序进程 (CSP) 区别于众多语言。在 CSP 中,一个程序由并行的进程组成,这些进程不共享状态,而是使用通道进行通信和同步它们的操作。因此&…...

kafka学习-生产者

目录 1、消息生产流程 2、生产者常见参数配置 3、序列化器 基本概念 自定义序列化器 4、分区器 默认分区规则 自定义分区器 5、生产者拦截器 作用 自定义拦截器 6、生产者原理解析 1、消息生产流程 2、生产者常见参数配置 3、序列化器 基本概念 在Kafka中保存的数…...

【Python】设计模式

设计模式分为三种类型,共23类。 创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。行为型模式:模版方法模式、命令模…...

C++ 数字

C 数字 通常,当我们需要用到数字时,我们会使用原始的数据类型,如 int、short、long、float 和 double 等等。这些用于数字的数据类型,其可能的值和数值范围,我们已经在 C 数据类型一章中讨论过。 C 定义数字 我们已…...

code阶段——gitgitlab安装

在code阶段,我们需要将不同版本的代码存储到一个仓库中,常见的版本控制工具就是SVN或者Git,这里我们采用Git作为版本控制工具,GitLab作为远程仓库。 Git安装 https://git-scm.com/(傻瓜式安装) GitLab安…...

C 风格文件输入/输出---无格式输入/输出

C 标准库的 C I/O 子集实现 C 风格流输入/输出操作。 <cstdio> 头文件提供通用文件支持并提供有窄和多字节字符输入/输出能力的函数&#xff0c;而 <cwchar>头文件提供有宽字符输入/输出能力的函数。 无格式输入/输出 从文件流获取字符 std::fgetc, std::getc …...

Spring-MVC的文件上传下载,及插件的使用(让项目开发更节省时间)

目录 一、概述 ( 1 ) 介绍 ( 2 ) 讲述 二、上传 三、下载 四、jrebel的使用 五、多文件上传 给我们带来什么收获 一、概述 ( 1 ) 介绍 Spring MVC的文件上传下载是指在Spring MVC框架中实现文件的上传和下载功能。文件上传是指将本地计算机上的文件上传到服务器端…...

算法 数据结构 递归冒泡算法 java冒泡算法 优化递归冒泡 数据结构(九)

使用递归算法实现冒泡&#xff1a; package com.nami.algorithm.study.day06;import java.util.Arrays;/*** beyond u self and trust u self.** Author: lbc* Date: 2023-09-05 15:36* email: 594599620qq.com* Description: keep coding*/ public class BubbleSort2 {// p…...

【计算机视觉 | 目标检测】目标检测常用数据集及其介绍(十五)

文章目录 一、STN PLAD (STN Power Line Assets Dataset)二、Satlas三、Street Dataset四、UAVVaste五、UDA-CH (Unsupervised Domain Adaptation on Cultural Heritage)六、USB (Universal-Scale Object Detection Benchmark)七、VEDAI (Vehicle Detection in Aerial Imagery)…...

洛谷P8814:解密 ← CSP-J 2022 复赛第2题

【题目来源】https://www.luogu.com.cn/problem/P8814https://www.acwing.com/problem/content/4732/【题目描述】 给定一个正整数 k&#xff0c;有 k 次询问&#xff0c;每次给定三个正整数 ni&#xff0c;ei&#xff0c;di&#xff0c;求两个正整数 pi&#xff0c;qi&#xf…...

Flutter实现CombineExecutor进行多个异步分组监听,监听第一个异步执行的开始和最后一个异步执行结束时机。

1.场景 我们在调用接口时&#xff0c;很多时候会同时调用多个接口&#xff0c;接口都是异步执行&#xff0c;我们很难知道调用的多个接口哪个会最后执行完成&#xff0c;我们有时候需要对最后一个接口执行完成的时机监听&#xff0c;所以基于该需求&#xff0c;设计了CombineE…...

2023 年最新Java 毕业设计选题题目参考,500道 Java 毕业设计题目,值得收藏

大家好&#xff0c;我是程序员徐师兄&#xff0c;最近有很多同学咨询&#xff0c;说毕业设计了&#xff0c;不知道选怎么题目好&#xff0c;有哪些是想需要注意的。 确实毕设选题实际上对很多同学来说一个大坑&#xff0c; 每年挖坑给自己跳的人太多太多&#xff0c;选题选得好…...

Mac电脑其他文件占用超过一大半的内存如何清理?

mac的存储空间时不时会提示内存已满&#xff0c;查看内存占用比例最大的居然是「其他文件」&#xff0c;「其他文件」是Mac无法识别的格式文件或应用插件扩展等等...如果你想要给Mac做一次彻底的磁盘空间清理&#xff0c;首当其冲可先对「其他文件」下手&#xff0c;那么我们该…...