0%

gcov 是一个测试覆盖程序。将它与 gcc 配合使用,可以分析您的程序,帮助创建更高效、运行更快的代码,并发现程序中未经测试的部分。您可以将 gcov 用作剖析工具,帮助发现优化工作对代码的最佳影响。您还可以将 gcov 与其他剖析工具 gprof 一起使用,以评估代码中哪些部分占用了最多的计算时间。

剖析工具可帮助您分析代码的性能。使用 gcov 或 gprof 等剖析器,您可以找到一些基本的性能统计信息,例如

  • 每行代码的执行频率
  • 实际执行了哪些代码行
  • 每段代码使用了多少计算时间
阅读全文 »

linux系统中的流量控制器(Traffic Control)主要是在输出端口处建立一个队列进行流量控制。

阅读全文 »

随着 SSD 固态硬盘越来越便宜,后续使用全闪的数据中心会越来越普及,刚好最近在调试nvme相关的代码,这里记录一下。

nvme-cli 常用命令

命令 描述、说明
nvme list 扫描 NVMe 设备的 sysfs 树,并返回这些设备的 /dev 节点以及有关它们的一些相关信息。
nvme id-ctrl NVMe控制器信息以及控制器支持功能
nvme id-ns 查看 NVMe namespaces, 优化, 功能, 和支持
nvme format 安全删除SSD上数据,格式化一个LBA大小或者为端到端数据保护信息
nvme sanitize 安全擦除SSD所有用户数据
nvme smart-log 输出NVMe SMART health status, temp, endurance, 以及更多的日志页面
nvme fw-log 输出firmware 日志页面
nvme error-log 输出 NVMe 错误日志页面
nvme reset 重置NVMe controller / NVMe SSD
nvme delete-ns 删除一个namespace
nvme create-ns 创建一个新的namespace, 例如创建一个较小的namespace 来过度配置 SSD 以提高耐用性、性能和延迟
nvme fw-download 将新固件下载到 NVMe 设备
nvme fw-commit 提交 (激活) firmware 立即运行或者在reset之后运行

解析结果

  • 列出 NVMe 设备
1
nvme list

image-20240302190521063

  • 扫描映射,连接target
1
nvme connect -t rdma -n nqn.2023-05.nvmf.startgt.uuid:aaaaaaaaaaaaaaa -a 70.22.160.123 -s 4420 -c 10 -l 60
  • 删除映射,断开连接
1
2
3
4
nvme disconnect --device=/dev/nvme4

# 断开所有的连接
nvme disconnect-all

RDMA 命令

  • 命令查看网口映射关系
1
ibdev2netdev 

image-20240302191242505

reference

[1] https://cloud-atlas.readthedocs.io/zh-cn/latest/linux/storage/nvme/nvme-cli.html

离线安装

vim和Chrome一样,没有插件是没有灵魂的。曾几何时我也是痴迷各种vim配置,经常捣鼓各种。使用Vim插件就需要用到插件管理工具,用的比较多的插件有vim-plug、vundle等等。

配置好的vim可以是自己非常好的IDE,记录一下自己的vim配置。

有时间在内网网络隔离的时候配置我们开发环境就比较麻烦,记录一下离线安装的过程。

阅读全文 »