Darshan日志分析
标头

darshan-parser 输出的开头显示了有关作业的总体信息的摘要。还可以使用–perf、–file或–total命令行选项生成其他作业级别摘要信息。
- darshan log version:Darshan 日志文件的内部版本号。
- compression method:压缩方法。
- exe:生成日志文件的可执行文件的名称。
- uid:作业运行时的用户ID。
- jobid:来自调度程序的作业ID。
- start_time:作业的开始时间(自纪元以来的秒数)。
- start_time_asci:作业的开始时间,采用人类可读的格式。
- end_time:作业的结束时间,自纪元以来的秒数。
- end_time_asci:作业的结束时间,采用人类可读的格式。
- nprocs:MPI 进程数。
- run time:作业的运行时间(以秒为单位)。
日志文件区域大小

解析器输出的下一部分显示给定日志文件中包含的每个区域的大小。每个日志文件将包含以下区域:
- header:恒定大小的未压缩标头,提供有关如何正确访问日志的数据。
- 作业数据:日志的作业级元数据(例如,开始/结束时间和 exe 名称)。
- 记录表:将 Darshan记录标识符映射到完整文件名路径的表。
- 模块数据:每个模块(例如,POSIX、MPI-IO 等)将其 I/O 特征数据存储在日志的不同区域中。
除标头外,日志文件的所有区域都经过压缩(采用 libz 或 bzip2 格式)。
已挂载的文件系统表
输出的下一部分显示了作业运行时安装的所有通用文件系统的表。每行使用以下格式:
<mount point> <fs type>

I/O 特征字段的格式

输出的其余部分将显示应用程序打开的每个文件的特征。每行使用以下格式:
<module> <rank> <record id> <counter name> <counter value> <file name> <mount point> <fs type>
module:指定负责记录这条I/O特征数据的模块。
rank:指示打开文件的进程的等级。等级值为 -1 表示文件在所有进程间共享,并且统计信息被聚合。
record id:是打开的文件路径/名称的 64 位哈希值。它用作唯一区分每个文件的方法。
counter name和counter value:统计计数器。值 -1 表示 Darshan 无法收集该特定计数器的统计信息,并且应忽略该值。
file name:字段显示记录对应的完整文件名。
mount point:该文件所属文件系统的挂载点
fs type:该文件系统的类型。
I/O特征字段
1.POSIX模块

-
POSIX_*:POSIX操作计数。
-
READS、WRITES、OPENS、SEEKS、STATS、MMAPS、SYNCS、FILENOS、DUPS是操作类型。
-
POSIX_RENAME_SOURCES/TARGETS:此文件作为重命名操作源/操作目标的次数
-
POSIX_RENAMED_FROM:如果文件是重命名目标,则第一个重命名源的Darshan记录ID
-
POSIX_MODE:打开文件的模式。
-
POSIX_BYTES_*:读取和写入的总字节数。
-
POSIX_MAX_BYTE_*:读取和写入的最高偏移字节。
-
POSIX_CONSEC_*:与上次访问紧邻的读写次数。
-
POSIX_SEQ_*:从增加的偏移量读取和写入的次数。
-
POSIX_RW_SWITCHES:在读取和写入之间交替访问的次数。
-
POSIX_*_ALIGNMENT:内存和文件对齐。
-
POSIX_*_NOT_ALIGNED:未对齐的读写次数。
-
POSIX_MAX_*_TIME_SIZE:最慢的读写操作的大小。
-
POSIX_SIZE__:读取和写入访问大小的直方图。
-
POSIX_STRIDE*_STRIDE:检测到的四个最常见的步幅。
-
POSIX_STRIDE*_COUNT:四个最常见步幅的计数。
-
POSIX_ACCESS*_ACCESS:四种最常见的访问大小。
-
POSIX_ACCESS*_COUNT:四种最常见的访问大小的计数。
-
POSIX_*_RANK:I/O速度最快和最慢的进程的级别(对于共享文件)。
-
POSIX_*_RANK_BYTES:由最快和最慢列组传输的字节(对于共享文件)。
-
POSIX_F_*_START_TIMESTAMP:第一次打开/读取/写入/关闭的时间戳。
-
POSIX_F_*_END_TIMESTAMP:最后一次打开/读取/写入/关闭的时间戳。
-
POSIX_F_READ/WRITE/META_TIME:用于读取、写入或元数据操作的累计时间。
-
POSIX_F_MAX_*_TIME:最慢读写操作的持续时间。
-
POSIX_F_*_RANK_TIME:单个列组的最快和最慢I/O时间。
-
POSIX_F_VARIANCE_RANK_*:所有列组的总I/O时间和移动字节的方差。

2.STDIO模块


3.HEATMAP


4.MPI-IO模块
相关文章:
Darshan日志分析
标头 darshan-parser 输出的开头显示了有关作业的总体信息的摘要。还可以使用–perf、–file或–total命令行选项生成其他作业级别摘要信息。 darshan log version:Darshan 日志文件的内部版本号。compression method:压缩方法。exe:生成日志…...
python中如何不修改字符串的前提,使其对大小写字母不敏感
如果你希望在不修改原字符串的基础上实现大小写不敏感的比较,你可以使用内置函数str.casefold(),它会将字符串转换为小写并处理一些特殊字符,使得比较更加严格。下面是如何使用它来实现大小写不敏感的比较: x input() y input()…...
聊聊Http服务化改造实践
在微服务架构体系中远程RPC调用主要包括Dubbo与Http调用两个大类,由于Dubbo拥有服务注册中心,并且起服务的命名非常规范,使用包名.类名.方法名进行描述。 而http调用通常都是使用httpclient等相关类库,这些在使用上并没有问题&am…...
docker打包部署
打包成容器命令 docker build -f ./Dockerfile-long -t 名称.打包镜像 tar docker save -o 名称.tar 名称:latest执行sudo -i,提示输入用户密码,输入密码后进入超级用户(root)模式 linux上传文件 rz -ytar恢复成镜像 sudo docker…...
解密Spring MVC异常处理:从局部到全局,打造稳固系统的关键步骤
😀前言 在现代软件开发中,异常处理是不可或缺的一部分,它能够有效地提高系统的稳定性和健壮性。在Spring MVC框架中,异常处理机制起着至关重要的作用,它允许开发者在程序运行过程中捕获、处理和报告异常,从…...
Three.js添加阴影和简单后期处理
在Three.js中,可以使用渲染器的一些特性来实现阴影和后期处理效果。 添加阴影 要在Three.js中添加阴影效果,需要做以下几个步骤: 1.开启阴影 首先,要在渲染器中开启阴影: renderer.shadowMap.enabled true;2.设置…...
git submodule 子模块的基本使用
常用命令 命令说明git submodule add <url> <本地路径>添加子模块git submodule update --init --recursive添加子模块后,同步子模块内容git clone <url> --recurse-submodules克隆带有子模块的项目git submodule init初始化子模块git submodule…...
四层负载均衡的NAT模型与DR模型推导 | 京东物流技术团队
导读 本文首先讲述四层负载均衡技术的特点,然后通过提问的方式推导出四层负载均衡器的NAT模型和DR模型的工作原理。通过本文可以了解到四层负载均衡的技术特点、NAT模型和DR模型的工作原理、以及NAT模型和DR模型的优缺点。读者可以重点关注NAT模型到DR模型演进的原…...
【vue】vue前端实现随机验证码(数字、字母混合)功能
效果图:使用canvas组件对随机的数字字母添加插画背景、干扰线、干扰点 1、在components文件夹下新建securityCode.vue文件,代码: <template><canvas id"s-canvas" :width"contentWidth" :height"contentH…...
使用Visual Studio 2022实现透明按钮和标签、POPUP样式窗体的一种工业系统的UI例程
例程实现的功能说明 1、主窗体采用POPUP样式,无标题栏、无菜单栏,适合工业类软件 2、按钮、标签使用自绘,实现透明样式,可以实现灵活的样式设计,更具设计感 按钮重绘函数:OnDrawItem()按钮样式设定&#…...
【爬虫】7.1. JavaScript动态渲染界面爬取-Selenium
JavaScript动态渲染界面爬取-Selenium的简单学习 文章目录 JavaScript动态渲染界面爬取-Selenium的简单学习1. Selenium准备工作2. Selenium简单用法2.1. 初始化浏览器对象-webdriver.Chrome()2.2. 访问界面-browser.get()2.3. 查找节点-find_element()2.4. 节点交互-send_keys…...
菜鸟教程《Python 3 教程》笔记(12):推导式
菜鸟教程《Python 3 教程》笔记(12) 12 推导式12.1 列表推导式12.2 字典推导式12.3 集合推导式12.4 元组推导式(生成器表达式) 笔记带有个人侧重点,不追求面面俱到。 12 推导式 出处: 菜鸟教程 - Python3 …...
MAC修改python3命令为py
1, 找到python3安装路径 2, vi ~/.bash_profile 3, 增加内容: alias py“/usr/bin/python3” 4, 重载source ~/.bash_profile 5,执行py...
Windows下Git Bash调用rsync
rsync 提供了补充只需要在git安装目录下放入对应的文件即可。 需要将这个三个文件放到git的bin目录下 如果是默认安装路径是如下: C:\Program Files\Git\usr\bin 然后大功告成。...
springboot自定义事件发布及监听
自定义线程池 Configuration public class MyThreadPool {//ThreadPoolTaskExecutor不会自动创建ThreadPoolExecutor,需要手动调initialize才会创建。如果Bean就不需手动,会自动InitializingBean的afterPropertiesSet来调initializeBean("myExecut…...
手写RPC框架--2.介绍Zookeeper
RPC框架-Gitee代码(麻烦点个Starred, 支持一下吧) RPC框架-GitHub代码(麻烦点个Starred, 支持一下吧) 该项目的RPC通信将采用NettyZookeeper,所以会在前两章介绍使用方法 介绍Zookeeper Zookeepera.概述1) 数据模型2) Watcher机制 b.安装和基本操作1) Java操作zooke…...
Docker harbor 私有仓库的部署和管理
目录 一、什么是Harbor 二、Harbor的特性 三、Harbor的构成 四、部署配置Docker Harbor 1. 首先需要安装 Docker-Compose 服务 2.部署 Harbor 服务 3.使用harbor仓库 (1)项目管理 (2)用户管理 一、什么是Harbor Harbor …...
从零开始搭建AI网站(6):如何使用响应式编程
响应式编程(Reactive Programming)是一种编程范式,旨在处理异步数据流和事件流。它通过使用观察者模式和函数式编程的概念,将数据流和事件流抽象为可观察的序列,然后通过操作这些序列来实现各种功能。 在响应式编程中…...
MPI之虚拟进程拓扑
什么是虚拟进程拓扑 在很多并行应用进程中,进程的线性排列不能充分的反映进程间在逻辑上的通信模型,通常由问题几何和所用的算法决定,进程经常被排列成二维或者三维网络形式的拓扑模型而通常用一个图来描述逻辑进程排列,此种逻辑…...
Three.js相机参数及Z-Fighting问题的解决方案
本主题讨论透视相机以及如何为远距离环境设置合适的视锥体。 推荐:用 NSDT编辑器 快速搭建可编程3D场景 透视相机是一种投影模式,旨在模仿人类在现实世界中看待事物的方式。 这是渲染 3D 场景最常用的投影模式。 - three.js 如果你看一下 Three.js 文档…...
保姆级教程:在CentOS 7上用达梦8搭建DCA练习环境(附ulimit、VNC、ODBC全配置)
达梦8 DCA认证实战:CentOS 7环境搭建与调优全指南 在国产数据库技术快速发展的今天,达梦数据库作为核心产品之一,其DCA认证已成为众多从业者提升竞争力的重要选择。与理论为主的认证不同,DCA更注重实际操作能力,而一个…...
AI赋能5G核心网故障诊断:从PCAP解析到智能根因分析的工程实践
1. 项目概述:当AI遇见5G核心网故障诊断在5G核心网的运维与测试一线干了这么多年,最头疼的莫过于面对海量的PCAP抓包文件。一个复杂的信令流程下来,动辄几千甚至上万个数据包,工程师需要像侦探一样,逐帧审视协议交互&am…...
echarts中heatmap鼠标滚动禁用缩放,向下滚动
配置如下效果如下...
内存占用3KB!极致瘦身释放MCU无限可能
极致小体积,给工业领域带来了无限的可能:更低硬件成本,更小芯片体积,更低功耗,更高可靠性,让每一颗小MCU都拥有大系统的完整能力。 https://www.bilibili.com/video/BV1eZLi6PEjc/?spm_id_from333.1387.ho…...
MongoDB Limit 与 Skip 方法详解
MongoDB Limit 与 Skip 方法详解 引言 MongoDB 是一个高性能、可伸缩的文档存储系统,它提供了强大的数据存储和查询功能。在处理大量数据时,Limit 与 Skip 方法是 MongoDB 中常用的查询优化工具。本文将详细介绍 MongoDB 中的 Limit 与 Skip 方法,包括其基本用法、性能影响…...
Sora 2 MOV导出画质崩坏真相:HDR10元数据丢失、BT.2020色域截断、帧率标志位误写——3大隐性缺陷紧急修复方案
更多请点击: https://intelliparadigm.com 第一章:Sora 2 MOV导出画质崩坏的系统性认知 Sora 2 在生成高保真视频后,导出为 MOV 格式时频繁出现色度抽样失真、动态范围压缩、帧间伪影加剧等现象,其本质并非单一环节失效ÿ…...
YOLOv8晶圆体缺识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+环境配置)
摘要 晶圆制造过程中的缺陷检测是保证芯片良率的关键环节。本文基于YOLOv8目标检测算法,构建了一套针对晶圆表面9类典型缺陷的自动检测系统。所识别的缺陷类型包括:Center、Donut、Edge-Loc、Edge-Ring、Loc、Near-full、None、Random、Scratch。模型在…...
5个必知的Universal-Updater高级功能:从QR扫描到后台安装
5个必知的Universal-Updater高级功能:从QR扫描到后台安装 【免费下载链接】Universal-Updater An easy to use app for installing and updating 3DS homebrew 项目地址: https://gitcode.com/gh_mirrors/un/Universal-Updater Universal-Updater是一款专为任…...
如何快速解锁艾尔登法环帧率限制:终极性能优化指南
如何快速解锁艾尔登法环帧率限制:终极性能优化指南 【免费下载链接】EldenRingFpsUnlockAndMore A small utility to remove frame rate limit, change FOV, add widescreen support and more for Elden Ring 项目地址: https://gitcode.com/gh_mirrors/el/EldenR…...
打造XBEE封装BLE112蓝牙模块:硬件设计、射频布局与调试全攻略
1. 项目概述:为什么我们需要一个“XBEE格式”的蓝牙模块?在嵌入式开发和物联网项目中,无线通信模块的选择往往决定了项目的成败。对于很多工程师和创客来说,Silicon Labs(芯科科技)的BLE112/113模块是蓝牙4…...
