惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
The Register - Security
The Register - Security
Hugging Face - Blog
Hugging Face - Blog
博客园 - 聂微东
GbyAI
GbyAI
Recent Commits to openclaw:main
Recent Commits to openclaw:main
博客园_首页
D
Docker
S
Security @ Cisco Blogs
K
Kaspersky official blog
爱范儿
爱范儿
Simon Willison's Weblog
Simon Willison's Weblog
TaoSecurity Blog
TaoSecurity Blog
V
V2EX
C
CXSECURITY Database RSS Feed - CXSecurity.com
T
Troy Hunt's Blog
Cloudbric
Cloudbric
博客园 - 三生石上(FineUI控件)
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
The Hacker News
The Hacker News
美团技术团队
S
SegmentFault 最新的问题
L
Lohrmann on Cybersecurity
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
宝玉的分享
宝玉的分享
The Last Watchdog
The Last Watchdog
Y
Y Combinator Blog
M
MIT News - Artificial intelligence
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Martin Fowler
Martin Fowler
Google Online Security Blog
Google Online Security Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
C
Cybersecurity and Infrastructure Security Agency CISA
T
Tor Project blog
Vercel News
Vercel News
The Cloudflare Blog
G
Google Developers Blog
T
Threat Research - Cisco Blogs
AI
AI
Stack Overflow Blog
Stack Overflow Blog
I
InfoQ
Scott Helme
Scott Helme
S
Schneier on Security
大猫的无限游戏
大猫的无限游戏
The GitHub Blog
The GitHub Blog
S
Securelist
IT之家
IT之家
Microsoft Azure Blog
Microsoft Azure Blog

mephisto.cc

修复rime-ice无法弹出候选框的问题 开机滚动字体显示优化 个人网站安全防护 树莓派上部署Vaultwarden 使用goaccess实时分析Caddy日志 个人网站监控 Hugo全站AVIF记 Linux下尝试使用Godot开发小游戏 Arch linux dae 透明代理 Airflow接管galler-dl下载任务 如何使用gallery-dl批量下载图像 Arch/labwc 环境网络相关设置 Rime添加dota2词库 Arch 重装记录 Supertuxkart iOS版终于发布了 打造自己的流媒体音乐服务 剪切板管理工具clipcat推荐 MangoHud性能监控 微信小程序开发记 Rofi试用 解决Arch下VSCode无法输入中文的问题 独立窗口管理器下无法录屏问题处理 上海市二手房成交数据监控 OpenLDAP监控 Arch linux如何顺畅连接蓝牙设备 使用Git和Ansible管理配置文件 Arch Linux SSL VPN 客户端配置 简单获取celery任务实时结果 Arch linux下iNode客户端的安装和使用方法 券商费率调整记 迷你主机组装记 Labwc更换定制皮肤 树莓派跑分流代理 实用自动代理配置示例 九年老鼠标复活记 Openvpn示例 Mac下如何旋转webp图片 如何隐藏Vscode中Markdown PDF插件的头部内容 解决Linux下网络配置无法变更保存的问题 labwc环境启用wlogout Ubuntu下新官方微信尝鲜 简单检测用户是否开启广告屏蔽 Atuin ZFS下卡顿问题解决 Wine安装64位微信 Fish 和 Atuin使用记 Fastapi简单实现临时下载链接 Fastapi微信公众号开发简要 Hugo根据语种展示不同内容 如何修复Waybar微信图标错误 信封加密简要 Linux环境下维护公众号记录 快速隐藏和呼出终端 Wayland环境自动切换壁纸 SuperTuxKart 试玩 简单抓取雪球股票快讯 为什么你的kill命令不能列出信号表 Wine安装微信保姆教程 Hysteria科学上网简要 Ubuntu 23.10 钉钉无法启动解决方法 网站导航栏防止插入Adsense自动广告 Linux环境按键检测 Hugo文末添加最后修改时间 Wayland环境ksnip无法复制问题解决 我眼中的股票市场 Caddy简单图片防盗链 greetd和regreet使用教程 Wayland环境下截图加后期修改 Wayland 环境下gif录屏 Firefox的一些有趣功能 Ubuntu 切换系统语言 Firefox 标题栏高度调整 网站添加回到顶部功能 Hugo自定义字体 Labwc 便捷配置 Wofi使用教程 窗口管理器labwc使用记 文件共享软件Dufs推荐 Hugo静态站点接入Adsense广告 Fcitx5配置详解 Ubuntu安装chrome的方法总结 一种Xterm.js的全屏方案 Google网址收录api Python示例 手机听离线音乐 Snipe it资产导入 应用启动器yofi使用配置 Snipe it资产管理系统安装使用 Ubuntu开机启动加速 Vue3 vite TypeScript跨域等相关设置 Ubuntu手动升级Libreoffice Ubuntu设置alacritty为默认终端 简体文章批量转换为繁体 使用Inkscape调整svg图片大小 实用命令 使用mitmproxy给手机app抓包 Python中rstrip方法细解 Github同主机多仓库部署deploy key问题处理 Linux安装最新版本Python KeePassXC使用教程 Ubuntu 22.10连接蓝牙耳机报错br-connection-profile-unavailable解决方法 Caddy日志配置轮转和格式化
Arch核显下如何愉快玩Dota2和CS2
2025-12-27 · via mephisto.cc

闲暇的时候,会来几局 dota2 或者 cs2,截止 steam 上统计显示 dota2 游戏时间总计:6221 小时,Counter-Strike 2 游戏时间 357 小时。cs2 玩得少主要是菜,只玩娱乐模式,见面对枪就被暴打、常年 tab 键排名倒数 1-4 名,局伤 35 左右😅;dota2 最近苦练卡尔和米波,鸟局玩起来很快乐的。

游戏和音乐一样,穷人疗伤娱乐刚需。那么,我是如何在 Linux 下游戏的呢?最近重装 Arch 进行了一些测试,希望帮到有需要的读者。

结果:60fps、2k 分辨率,dota2 能玩最高画质,cs2 中画质,方法都是网上搜索的,仅供参考。

6000 小时玩家不骗人,一点都不卡,米波、卡尔、幻影长矛手打团都不卡,我还特意开了人机局测试,真的不卡。

另外,wayland 和 xwayland 游戏表现差异不大,xwayland 下 dota2 能打字,wayland 下 cs2 按 shift 键会蹦出输入框(我玩的时候,直接关闭输入法:killall fcitx5

1. 硬件环境介绍

电脑是零刻 ser8 准系统,额外买的固态硬盘和内存条,为什么这样,我之前写过相关文章,这里不赘述。

 1➜  ~ fastfetch
 2                  -`                     mephisto@minipc
 3                 .o+`                    ---------------
 4                `ooo/                    OS: Arch Linux x86_64
 5               `+oooo:                   Host: SER8 (V10)
 6              `+oooooo:                  Kernel: Linux 6.18.2-arch2-1
 7              -+oooooo+:                 Uptime: 2 hours, 2 mins
 8            `/:-:++oooo+:                Packages: 1261 (pacman)
 9           `/++++/+++++++:               Shell: fish 4.2.1
10          `/++++++++++++++:              Display (Q27N3S2): 2560x1440 in 27", 60 Hz [External]
11         `/+++ooooooooooooo/`            DE: wlroots
12        ./ooosssso++osssssso+`           WM: labwc 0.9.3 (Wayland)
13       .oossssso-````/ossssss+`          Cursor: breeze (24px)
14      -osssssso.      :ssssssso.         Terminal: tmux 3.6a
15     :osssssss/        osssso+++.        CPU: AMD Ryzen 7 8845HS (16) @ 5.14 GHz
16    /ossssssss/        +ssssooo/-        GPU: AMD Radeon 780M Graphics [Integrated]
17  `/ossssso+/:-        -:/+osssso+-      Memory: 3.13 GiB / 23.25 GiB (13%)
18 `+sso+:-`                 `.-/+oso:     Swap: 4.00 KiB / 4.00 GiB (0%)
19`++:.                           `-/+/    Disk (/): 156.34 GiB / 952.87 GiB (16%) - btrfs
20.`                                 `/    Local IP (wlan0): 192.168.124.5/24
21                                         Locale: en_US.UTF-8

现在这个电脑都下架了,对我来说不玩大型游戏,性能严重过剩。

本文读者只需要关注上面的:

  • GPU: AMD Radeon 780M Graphics [Integrated]
  • Memory: 3.13 GiB / 23.25 GiB (13%)(为什么不是 32G 后面再说)
  • Display (Q27N3S2): 2560x1440 in 27", 60 Hz [External]

核显 AMD Radeon 780M、2 根 16G 的内存条、2k@60Hz 的丐版显示器。

2. 游戏关键设置

调整显存大小

默认好像是 4G 需要调整成 8G(因为我有 32G 内存,分配 8G 显存还是合理的),这是最关键的,能满足 dota2 和 CS2 的要求。 操作步骤:

  1. 首先关闭主机,按下电源启动后,当屏幕上出现 logo 后,迅速按下键盘上的 Del 键进入 BIOS
  2. 进入 BIOS 后,使用方向键切换到【Advanced】,进入【AMD CBS】选项
  3. 进入【NBIO Common Options】选项
  4. 进入【GFX Configuration】选项
  5. 在【UMA Frame buffer Size】这里可以调整显存的大小,可以根据自己的需求进行修改:

自定义显存大小修改参数: 【igpu Configuration】改为 UMA_SPECIFIED 【UMA Version】改为 Auto 【UMA Frame buffer Size】默认为 8G,可根据自己的需求进行调整大小 【GPU Host Translation Cache】改为 Auto 【TCON INSTANT ON LOGO】改为 Auto

  1. 修改完成后,按【F4】,选择【Y】进行保存退出即可生效

重启后进入系统,内存显示会少了 8G,即 24G 少一点,正常。

开启 Re-Size BAR

在 BIOS 中开启 Re-Size BAR Support(CAM)。这在 Linux 下同样有效,能让 CPU 更高效地访问显存,提升帧数。 操作:在 BIOS 中找到 Advanced -> PCI Subsystem Settings -> Re-Size BAR Support,设置为 Enabled。 效果:这能让 CPU 一次性访问全部显存,大幅提高在很多现代游戏(特别是支持 DirectX 12 的游戏)中的帧数,提升幅度有时能达到 10%-15%。

老实说,这个到底有没有用,反正看描述我信了,打开的。

内核参数优化

1➜  ~ cat /boot/loader/entries/2025-12-09_09-04-59_linux.conf
2# Created by: archinstall
3# Created on: 2025-12-09_09-04-59
4title   Arch Linux (linux)
5linux   /vmlinuz-linux
6initrd  /initramfs-linux.img
7options root=PARTUUID=9443f4c6-b17e-4771-8ecf-987627f0551c zswap.enabled=0 rootflags=subvol=@ rw rootfstype=btrfs video=2560x1440@60 amdgpu.runpm=0 amdgpu.gpu_recovery=1
  • amdgpu.runpm=0 作用:禁用 Runtime Power Management(运行时电源管理),设置为 0 会强制 GPU 始终保持在工作状态,不进入深度睡眠,某些 AMD 显卡在启用 runpm 后可能出现唤醒失败、黑屏、死机等问题(尤其在较老或某些特定型号上)。
  • amdgpu.gpu_recovery=1 作用:启用 GPU 错误恢复机制。当 GPU 出现挂起(hang)或超时(timeout)等错误时,驱动尝试自动重置 GPU 而不是直接崩溃或冻结整个系统。如果成功,应用程序(如游戏、图形程序)可能会崩溃,但系统本身仍可继续运行

没碰到,上面说的这些问题,为了安稳游戏,也加上去了😅。

显卡驱动

请看 vulkan 概要输出:

 1➜  ~ vulkaninfo --summary
 2==========
 3VULKANINFO
 4==========
 5Vulkan Instance Version: 1.4.335
 6Instance Extensions: count = 24
 7-------------------------------
 8VK_EXT_acquire_drm_display             : extension revision 1
 9VK_EXT_acquire_xlib_display            : extension revision 1
10VK_EXT_debug_report                    : extension revision 10
11VK_EXT_debug_utils                     : extension revision 2
12VK_EXT_direct_mode_display             : extension revision 1
13VK_EXT_display_surface_counter         : extension revision 1
14VK_EXT_headless_surface                : extension revision 1
15VK_EXT_surface_maintenance1            : extension revision 1
16VK_EXT_swapchain_colorspace            : extension revision 5
17VK_KHR_device_group_creation           : extension revision 1
18VK_KHR_display                         : extension revision 23
19VK_KHR_external_fence_capabilities     : extension revision 1
20VK_KHR_external_memory_capabilities    : extension revision 1
21VK_KHR_external_semaphore_capabilities : extension revision 1
22VK_KHR_get_display_properties2         : extension revision 1
23VK_KHR_get_physical_device_properties2 : extension revision 2
24VK_KHR_get_surface_capabilities2       : extension revision 1
25VK_KHR_portability_enumeration         : extension revision 1
26VK_KHR_surface                         : extension revision 25
27VK_KHR_surface_protected_capabilities  : extension revision 1
28VK_KHR_wayland_surface                 : extension revision 6
29VK_KHR_xcb_surface                     : extension revision 6
30VK_KHR_xlib_surface                    : extension revision 6
31VK_LUNARG_direct_driver_loading        : extension revision 1
32
33Instance Layers: count = 8
34--------------------------
35VK_LAYER_MANGOHUD_overlay_x86_64  Vulkan Hud Overlay                                           1.3.0    version 1
36VK_LAYER_MESA_anti_lag            Open-source implementation of the VK_AMD_anti_lag extension. 1.4.303  version 1
37VK_LAYER_MESA_device_select       Linux device selection layer                                 1.4.303  version 1
38VK_LAYER_RENDERDOC_Capture        Debugging capture layer for RenderDoc                        1.4.324  version 41
39VK_LAYER_VALVE_steam_fossilize_32 Steam Pipeline Caching Layer                                 1.3.207  version 1
40VK_LAYER_VALVE_steam_fossilize_64 Steam Pipeline Caching Layer                                 1.3.207  version 1
41VK_LAYER_VALVE_steam_overlay_32   Steam Overlay Layer                                          1.3.207  version 1
42VK_LAYER_VALVE_steam_overlay_64   Steam Overlay Layer                                          1.3.207  version 1
43
44Devices:
45========
46GPU0:
47	apiVersion         = 1.4.328
48	driverVersion      = 25.3.2
49	vendorID           = 0x1002
50	deviceID           = 0x1900
51	deviceType         = PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU
52	deviceName         = AMD Radeon 780M Graphics (RADV PHOENIX)
53	driverID           = DRIVER_ID_MESA_RADV
54	driverName         = radv
55	driverInfo         = Mesa 25.3.2-arch1.1
56	conformanceVersion = 1.4.0.0
57	deviceUUID         = 00000000-c400-0000-0000-000000000000
58	driverUUID         = 414d442d-4d45-5341-2d44-525600000000

现在 AMD 想通了,Arch 下就安装vulkan-radeon,不玩 amdvlk 了,直接安装即可。

1sudo pacman -S  vulkan-radeon

3. steam 启动项

  • dota2 启动项:-perfectworld -novid -vulkan -nojoy
  • cs2 启动项:-perfectworld -novid -vulkan -nojoy -threads 8 -freq 60

freq 60 因为我显示器就是 60Hz,受 HDMI 线制约,要换 dp 线,懒得换。

如果你要体验纯 wayland 运行,可以修改游戏启动脚本,比如 cs2,(下面设置启用 wayland,pipewire,实际测试和 xwayland 对面比没什么区别)

1➜  ~ grep -i "sdl" .steam/steam/steamapps/common/Counter-Strike\ Global\ Offensive/game/cs2.sh
2# There is Wayland support in SDL but a recent (7/30/2025) attempt at
3# allowing SDL to default to Wayland caused a number of customer issues so
4	if [ -z "$SDL_VIDEO_DRIVER" ]; then
5		#export SDL_VIDEO_DRIVER=x11
6		export SDL_VIDEO_DRIVER=wayland
7		export SDL_AUDIO_DRIVER=pipewire

改动方法如上所示。

4. 截图证明

最好的证明是录视频,可是文章里面不方便嵌入。截个图应付下:

Dota2 截图

steam-dota2-settings
steam-dota2-ai-mangohud

看地上有绿叶,河道符点那里有几只蜻蜓(懒得截图),说明时开了高画质。

cs2 截图

特别说明,这个截图里面没有 60 帧,是因为只要开启截图软件,cs2 帧率就掉,所以没办法,实际是稳定 60。

steam-cs2-settings
steam-cs2-ai-mangohud

有读者可能会嘀咕?60fps 也配说,2k 显示器 60Hz,玩起来真的一点不卡,调高帧率对我的硬件来说没有什么作用。

核显能愉快打游戏,别要求太高,毕竟一个高端独显都能买整个电脑了。

有钱有闲,直接上高端设备,人穷,至今没体验过高端独显在 Linux 下是什么效果。