pagxir 最近的时间轴更新
pagxir

pagxir

V2EX 第 74523 号会员,加入于 2014-09-20 12:12:08 +08:00
捣鼓外贸电视盒子 h96 max x3
分享创造  •  pagxir  •  49 天前  •  最后回复来自 molezz765
12
Ubuntu 22.04 系统自带的远程桌面改进不错。
分享发现  •  pagxir  •  131 天前  •  最后回复来自 pagxir
2
第一次见识到广州的奇葩房东
广州  •  pagxir  •  2019-07-17 18:05:04 PM  •  最后回复来自 dbskcnc
41
出个诺基亚 7
二手交易  •  pagxir  •  2018-01-20 16:16:48 PM  •  最后回复来自 abbatuu
4
金山家的 wps 老抢键盘焦点干嘛!
全球工单系统  •  pagxir  •  2017-12-29 08:42:02 AM  •  最后回复来自 yingfengi
30
发现 wechat out 打锅内电话很容易断线。
Google  •  pagxir  •  2017-11-01 15:09:15 PM  •  最后回复来自 tg3253
13
android 8.0 禁止 captive portal detection, 移除信号图标上的 x,方法。
Android  •  pagxir  •  2017-09-05 09:25:26 AM  •  最后回复来自 RobertYang
33
MacOSX 下的透明代理,将 socks5 转换为 utun0
分享发现  •  pagxir  •  2017-06-17 12:58:15 PM  •  最后回复来自 noli
2
转让搬瓦工
VPS  •  pagxir  •  2017-10-10 20:56:49 PM  •  最后回复来自 Ruan
1
pagxir 最近回复了
你的使用 sendmsg 的 api ,然后在 msghdr 指定 scm_txtime 。然后 queue 也需要配置
这么搞太费劲了,应该是直接植入看门狗。没按时喂狗就直接原地爆炸,什么健康码扫描全免了。
50 天前
回复了 pagxir 创建的主题 分享创造 捣鼓外贸电视盒子 h96 max x3
@ltkun 驱动没法直接用,因为 coreelec 是 64bit 的,而 slimbox 是 32bit 的,并且内核版本也不一样。不过固件是通用的,nvram 也是可以直接用。不过驱动一般有开源的,可以自己试试编译。如果是闭源就没法,只能用原来的固件
65 天前
回复了 monetto 创建的主题 Linux 备份 Ext4 分区的正确姿势
@codehz dd 用做缓冲在 shell 里本来就很常见
65 天前
回复了 monetto 创建的主题 Linux 备份 Ext4 分区的正确姿势
[email protected]:~$ cat cloud.txt
$ echo 128 | sudo tee /sys/block/sdb/bdi/read_ahead_kb
128
$ time lz4 -c < /dev/sdb2 > /dev/null
real 0m25.977s
user 0m2.104s
sys 0m1.220s
$ time lz4 -c < /dev/sdb2 > /dev/null
real 0m26.217s
user 0m2.221s
sys 0m1.126s
$ echo 20480 | sudo tee /sys/block/sdb/bdi/read_ahead_kb
20480
$ time lz4 -c < /dev/sdb2 > /dev/null
real 0m22.859s
user 0m0.654s
sys 0m0.491s
$ time lz4 -c < /dev/sdb2 > /dev/null
real 0m22.808s
user 0m0.695s
sys 0m0.428s
$ echo 128 | sudo tee /sys/block/sdb/bdi/read_ahead_kb
128
$ time lz4 -c < /dev/sdb2 > /dev/null
real 0m25.532s
user 0m1.629s
sys 0m1.142s
$ dd if=/dev/sdb2 bs=16M iflag=direct|lz4 -c > /dev/null
记 录 了 32+0 的 读 入
记 录 了 32+0 的 写 出
536870912 字 节 ( 537 MB ,512 MiB ) 已 复 制 ,22.9 s ,23.4 MB/s
[email protected]:~$
[email protected]:~$

从这个数据看,这个 read ahead 是有效的。只能说是 page cache 的行为有些奇怪。
65 天前
回复了 monetto 创建的主题 Linux 备份 Ext4 分区的正确姿势
@codehz 在你这场景下,加 dd 那必须更慢,瓶颈在 CPU 就得减少 CPU 的开销才会快。两个 dd 的好处,一个 dd 去取数据到内存,一个 dd 负责吐数据给压缩器,取数据的 dd 不用等压缩器,压缩器不用等磁盘。当然了,你这测试环境肯定是加了比不加还慢
65 天前
回复了 monetto 创建的主题 Linux 备份 Ext4 分区的正确姿势
@codehz 你在 qemu 中还不开 kvm ,数据基本上没啥意义,因为瓶颈在 CPU ,连 IO 速度也被 CPU 给限制了
65 天前
回复了 monetto 创建的主题 Linux 备份 Ext4 分区的正确姿势
@codehz 如果不加 dd 就直接 gzip 更快,那是因为瓶颈在 CPU ,没有 dd 意味更少的进程调度开销自然更快。并且加 dd 一般是要加两个 dd 才会起到缓冲预读的效果。
66 天前
回复了 monetto 创建的主题 Linux 备份 Ext4 分区的正确姿势
$ time dd if=/dev/sdb bs=80M status=progress|dd ibs=8M obs=80M|lz4 -c | dd of=/dev/null bs=2M
31611420672 字节 (32 GB, 29 GiB) 已复制,391 s ,80.9 MB/s
输入了 376+1 块记录
输出了 376+1 块记录
31611420672 字节 (32 GB, 29 GiB) 已复制,391.608 s ,80.7 MB/s
输入了 0+482352 块记录
输出了 376+1 块记录
31611420672 字节 (32 GB, 29 GiB) 已复制,391.695 s ,80.7 MB/s
输入了 0+424343 块记录
输出了 0+424343 块记录
27642280069 字节 (28 GB, 26 GiB) 已复制,391.697 s ,70.6 MB/s

real 6m31.704s
user 0m27.970s
sys 1m28.536s
$ lz4 -c < /dev/sdb | dd of=/dev/null bs=2M status=progress
27642280069 字节 (28 GB, 26 GiB) 已复制,465 s ,59.4 MB/s
输入了 0+424180 块记录
输出了 0+424180 块记录
27642280069 字节 (28 GB, 26 GiB) 已复制,465.335 s ,59.4 MB/s

没挂文件系统下的二次读:

$ dd if=/dev/sdb of=/dev/null bs=2M count=1024
输入了 1024+0 块记录
输出了 1024+0 块记录
2147483648 字节 (2.1 GB, 2.0 GiB) 已复制,27.1303 s ,79.2 MB/s
$ dd if=/dev/sdb of=/dev/null bs=2M count=1024
输入了 1024+0 块记录
输出了 1024+0 块记录
2147483648 字节 (2.1 GB, 2.0 GiB) 已复制,26.6422 s ,80.6 MB/s
$ dd if=/dev/sdb of=/dev/null bs=2M count=100
输入了 100+0 块记录
输出了 100+0 块记录
209715200 字节 (210 MB, 200 MiB) 已复制,2.85232 s ,73.5 MB/s

挂文件系统下的二次读:
$ dd if=/dev/sdb of=/dev/null bs=2M count=100
输入了 100+0 块记录
输出了 100+0 块记录
209715200 字节 (210 MB, 200 MiB) 已复制,2.77269 s ,75.6 MB/s
$ dd if=/dev/sdb of=/dev/null bs=2M count=100
输入了 100+0 块记录
输出了 100+0 块记录
209715200 字节 (210 MB, 200 MiB) 已复制,0.0475682 s ,4.4 GB/s

之前一直想搞某个功能,结果就是在这个地方搞不下去了。从这个数据结果看,我不认为 readahead 跟 page cache 生效了。至于你说的代码,我没看过。
66 天前
回复了 monetto 创建的主题 Linux 备份 Ext4 分区的正确姿势
@codehz 大概率你的盘已经挂了文件系统。不可能有 readahead 的。你可以试试看,第二次对 sda 读会变成对内存读了。
关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1993 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 56ms · UTC 06:39 · PVG 14:39 · LAX 23:39 · JFK 02:39
Developed with CodeLauncher
♥ Do have faith in what you're doing.