用 cuda-z/gpu-z/cpu-z 分析一下自己电脑(附Ubuntu下VNC服务安装)

用 cuda-z/gpu-z/cpu-z 分析一下自己电脑(附Ubuntu下VNC服务安装)

前言

趁着国庆空闲期间对家里的有两台机器来进行一次小小的参数分析。一台是我日常在家使用的主力PC,主要用来浏览网页和视频、开发软件、玩FPS游戏;另一台是不会经常使用的工作站,主要用来跑深度学习模型,这台工作站的大部分配件已有5年使用时长!两台机器的配置如下:

主生产力PC配置

  • 操作系统(软件):Windows 10 Pro
  • 处理器:Intel Core i7-13700K
  • 内存:金百达 DDR5 6000MHz 16GB x 2
  • 硬盘1(系统盘):三星 SSD 990 PRO 1TB PCIe4.0
  • 硬盘2(软件盘):金百达 SSD KP230 512GB PCIe3.0
  • 硬盘3(文档盘):东芝 P300 (HDWD130) 3TB 7200RPM 64MB
  • 显卡:七彩虹 NVIDIA GeForce RTX 3060 12G
  • 声卡:Focusrite 2i2 Solo 3th Gen
  • 主板:技嘉 Z790M AORUS ELITE
  • 显示器1:飞利浦 272M8 IPS 144Hz 27英寸
  • 显示器2:惠普 22W IPS 低蓝光 21.5英寸
  • 键盘:IKBC W200 87键 青轴
  • 鼠标:罗技 G PRO WIRELESS 狗屁王一代
  • 耳机:罗技 G733
  • 摄像头:罗技 Pro C920 1080p
  • 机箱:JONSBO D30 MATX
  • 电源:长城(Great Wall)850W X8 白色金牌全模
  • 散热:利民(Thermalright)FC140(风冷)

家庭工作站配置

  • 操作系统(软件):Ubuntu 20.04.4
  • 处理器:Intel Core i7-8700K
  • 内存:DDR4 32GB x 2
  • 硬盘1(系统):WD Blue SN570 500GB SSD
  • 硬盘2(工作区):SAMSUNG MZVLB256HAHQ-00000 250GB SSD
  • 显卡:七彩虹 NVIDIA GeForce RTX 3090
  • 主板:ASUS TUF Z370-PLUS GAMING
  • 显示器:无
  • 键盘:无
  • 鼠标:无
  • 机箱:ATX
  • 电源:先马(SAMA)黑钻 1000W 全模组

分析工具介绍和下载

CPU-ZGPU-ZCUDA-Z 简要介绍:

  • CPU-Z (仅支持Windows平台):用于查看和收集有关计算机 CPU(中央处理器)信息的实用工具。它可以显示 CPU 的型号、频率、核心和线程数量、缓存大小以及支持的指令集等详细信息。CPU-Z 还提供了实时的 CPU 占用率监测功能,可以帮助您了解 CPU 的使用情况。CPU-Z还提供了CPU性能测试和内存带宽测试工具。
  • GPU-Z (仅支持Windows平台):用于查看和监测显卡(图形处理器)信息的工具。它可以显示显卡的型号、芯片、显存容量、驱动程序版本等详细信息。GPU-Z 还提供实时监测功能,显示显卡的温度、风扇速度、GPU 负载、显存使用情况等参数,帮助用户监控显卡的性能和状态。GPU-Z 不具备基准测试功能。
  • CUDA-Z :用于查看和评估 NVIDIA GPU 上 CUDA(Compute Unified Device Architecture)性能的工具。它可以显示 GPU 的型号、CUDA 版本、GPU 核心数量、内存带宽等信息。CUDA-Z 也提供了一些基准测试和性能评估功能,可用于测试 GPU 在 CUDA 加速应用程序中的性能。

可以发现,上面的分析工具除了可以对硬件进行实时监测外,有些还会提供一些基准测试模块。但是若需要进行更全面和专业的测试,需要使用其他专门的基准测试工具,如使用 GeekbenchCinebench 测试CPU;使用 3DMarkUnigineHeaven 测试GPU。

注:由于CPU-Z官方没有提供其Linux版本,可以选择CPU-X作为其替代品。

主力PC安装CPU-Z进行分析(Windows)

CPU-Z的安装十分简单,直接下载官网上的安装文件即可。下图为打开的主页面,可以通过上方的菜单栏切换并查看主板、内容和显卡的信息。

my-cpuz

在“测试分数”选项卡下,可以对CPU进行基准测试。此处,我选择了AMD的 锐龙9 7950X 作为参照,进行性能测试,结果如下。

cpuz-test

主力PC安装GPU-Z进行分析(Windows)

下图为打开的主页面。

gpuz

切换至“传感器”(Sensors)选项卡。

gpuz-sensor

工作站安装CPU-X进行分析(ubuutu)

安装命令如下:

sudo apt update -y && sudo apt upgrade -y
sudo apt install cpu-x

安装完成后直接在终端使用命令cpu-x启动,显示窗口如下:

cpu-x

相比于CPU-Z,CPU-X能提供的信息还不够全面和详细,但了解基本参数已经足够了。在System选项卡,也可以查看内存的使用情况。

cpu-x-sys

工作站安装CUDA-Z进行分析(ubuutu)

在官网下载适配Linux系统的CUDA-Z程序。我这里下载的版本为CUDA-Z-0.10.251-64bit.run。接着使用命令chmod +x CUDA-Z-0.10.251-64bit.run授予可执行权限。最后通过命令./CUDA-Z-0.10.251-64bit.run启动CUDA-Z即可显示如下图所示的窗口。

cuda-z

在“Performance”选项卡,可获得对GPU的算力评估结果,如下图所示:

cuda-z-performance

很明显可以看出,GPU最擅长做的,就是单精度浮点运算。如上图结果,RTX3090的算力为39.4402Tflop/s。相较之下,它对双精度浮点和64位整型数据的处理速度就下降了许多。

Ubuntu 安装VNC(Ubuntu 20.04为例)

VNC(Virtual Network Computing)是一种远程桌面协议和软件系统,允许用户通过网络远程访问和控制另一台计算机。它的工作原理是在服务器端生成并传输图像信息,然后在客户端解码并显示图像,同时将客户端的输入操作发送回服务器进行响应。

安装VNC服务器

为了实现用我的主力PC(Windows)对工作站(Linux)进行远程桌面控制,需要分别对它们进行配置。被远程桌面的工作站上要安装有VNC服务器(提供图像数据),而访问远程桌面的主机则需要安装VNC查看器,即客户端(接收图像数据)。主流的VNC服务器有RealVNCTightVNC等。这些VNC服务器一般都配备有对应的VNC客户端,但因为它们都遵循基本的VNC协议,因此基本可以互通使用。例如,我可以用TightVNC Server作为服务端,然后使用RealVNC Viewer作为客户端,本文就以这个方法进行配置。

(1)安装 tigervncserver

sudo apt install tigervnc-standalone-server tigervnc-xorg-extension 
sudo apt install xserver-xorg-core
sudo apt install ubuntu-gnome-desktop

注:若 Ubuntu 服务器是使用自带桌面的系统镜像安装(如ubuntu-20.04.4-desktop-amd64.iso),则 xserver-xorg-core 和 ubuntu-gnome-desktop 是可以不需要再安装的,但仍可以执行上面的命令,它会安装这两个组件的可更新部分。

(2)设置VNC服务器密码

vncpasswd

2023-09-30_095917

(3)验证是否可正常运行

vncserver

2023-09-30_100448

当输出类似看到上面的内容,便意味着VNC服务器正在正常运行。接下来可以执行vncserver -kill :1将运行中的VNC服务器停止。

(4)配置桌面环境

创建和编辑配置文件:

vi ~/.vnc/xstartup

输入以下文本:

# !/bin/sh

test x"$SHELL" = x"" && SHELL=/bin/bash
test x"$1"     = x"" && set -- default

vncconfig -iconic &
"$SHELL" -l <<EOF
export XDG_SESSION_TYPE=x11
dbus-launch --exit-with-session gnome-session
exec /etc/X11/Xsession "$@"
EOF
vncserver -kill $DISPLAY

注:vncconfig -iconic 是通过 vncconfig 命令运行的一个具体的操作。这里使用了 -iconic 选项,它告诉 vncconfig 在启动时以隐藏窗口的方式运行(vncconfig 的主要功能之一是支持剪贴板共享)。&符号的作用是将进程放在后台运行。

xstartup 设置为可执行文件

sudo chmod +x ~/.vnc/xstartup

接下来,启动服务器:

vncserver -localhost no -geometry 1920x1080 -depth 24

到这里,就能在另一台机子上通过VNC客户端远程操作这台服务器了。如果你在配置过程中遇到问题可以继续往下阅读。

VNC无法正常启动?我遇到的两个问题、

(1)问题一:dbus-launch: not found

解决方法很简单,安装dbus-launch即可:

sudo apt install dbus-x11

(2)问题二:Could not make bus activated clients aware of XDG_CURRENT_DESKTOP=GNOME environment variable: Could not connect: Connection refused

具体原因不明,网上的说法是系统安装的 dbus 工具与 Anaconda(我在服务器使用Anaconda作为Python包管理工具)下的 dbus 工具产生冲突。于是我使用sudo find / -name "dbus-daemon"命令进行检查,终端输出下面的结果:

find: ‘/run/user/1000/doc’: Permission denied
find: ‘/run/user/1000/gvfs’: Permission denied
/snap/core20/1974/usr/bin/dbus-daemon
/snap/core20/2015/usr/bin/dbus-daemon
/snap/core22/858/usr/bin/dbus-daemon
/snap/core22/864/usr/bin/dbus-daemon
/home/roboticscv/anaconda3/pkgs/dbus-1.13.18-hb2f20db_0/bin/dbus-daemon
/home/roboticscv/anaconda3/bin/dbus-daemon
/usr/bin/dbus-daemon

结果表明anaconda3确实自带dbus,但这并不能表明是二者冲突引起的。接着使用which dbus-daemon命令查找系统的dbus-daemon可执行文件的路径,终端输出如下:

/usr/bin/dbus-daemon

即默认使用的是系统的dbus-daemon,因此不是与Anaconda冲突问题。最后才发现是因为配置文件 xstartup 的问题(前面步骤中给出的配置在我的电脑上是可用的)。我一开始使用的、导致启动失败的配置如下:

#!/bin/sh
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
vncconfig -iconic &
export XDG_SESSION_TYPE=x11
export GNOME_SHELL_SESSION_MODE=ubuntu
dbus-launch --exit-with-session gnome-session --session=ubuntu &

另外需要注意的是,若 xtartup 配置文件不存在,直接用前面的命令启动 vncserver,可能客户端能够连接,但显示的会是黑屏。

(3)问题三:使用 sudo 或在 root 账号下执行 vncserver ?

TigerVNC是区分用户的,当使用 sudo 或在 root 账号下启动服务器时,相应地会使用 root 账号的配置,包括密码。这时 TigerVNC 使用 /root/.vnc/xstartup 作为启动文件(若存在,否则使用默认设置)。注意,不建议使用 root 权限来启动 TigerVNC。

客户端使用VNC Viewer进行远程访问

前面说过,VNC的不同软件基本是通用的,因此VNC客户端就有很多选择了。这里以RealVNC Viewer为例当然,你也可以选择其他查看器客户端,例如TigerVNC-Client 

在创建连接时,大部分VNC客户端都是需要服务器的 IP + 端口 + 密码。下图所示为RealVNC Viewer通过菜单栏 File -> New Connection… 创建连接(需要填写 IP + 端口,端口默认是5901)并打开连接时,弹出的密码输入框。

2023-09-30_091622

点击OK后,即可进入远程桌面,如下所示为我使用Windows上安装的RealVNC Viewer访问Ubuntu工作站远程桌面的截图。

2023-09-30_092121

在窗口的顶端,有多个功能按钮,可以使用其中的session infomation按钮查看连接信息。

2023-09-30_092021

可以看到,这里的信息(1080P分辨率、24位深度)和前面在服务器启动VNC服务时输入的配置是一致的。至此便大功告成了,接下来就可以在Ubuntu服务器安装具有GUI的CPU/GPU分析工具并在Windows上进行远程操作了。

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    请登录后查看评论内容