当前位置: 首页 > news >正文

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&#xff1a;Darshan 日志文件的内部版本号。compression method&#xff1a;压缩方法。exe&#xff1a;生成日志…...

python中如何不修改字符串的前提,使其对大小写字母不敏感

如果你希望在不修改原字符串的基础上实现大小写不敏感的比较&#xff0c;你可以使用内置函数str.casefold()&#xff0c;它会将字符串转换为小写并处理一些特殊字符&#xff0c;使得比较更加严格。下面是如何使用它来实现大小写不敏感的比较&#xff1a; x input() y input()…...

聊聊Http服务化改造实践

在微服务架构体系中远程RPC调用主要包括Dubbo与Http调用两个大类&#xff0c;由于Dubbo拥有服务注册中心&#xff0c;并且起服务的命名非常规范&#xff0c;使用包名.类名.方法名进行描述。 而http调用通常都是使用httpclient等相关类库&#xff0c;这些在使用上并没有问题&am…...

docker打包部署

打包成容器命令 docker build -f ./Dockerfile-long -t 名称.打包镜像 tar docker save -o 名称.tar 名称:latest执行sudo -i&#xff0c;提示输入用户密码&#xff0c;输入密码后进入超级用户&#xff08;root&#xff09;模式 linux上传文件 rz -ytar恢复成镜像 sudo docker…...

解密Spring MVC异常处理:从局部到全局,打造稳固系统的关键步骤

&#x1f600;前言 在现代软件开发中&#xff0c;异常处理是不可或缺的一部分&#xff0c;它能够有效地提高系统的稳定性和健壮性。在Spring MVC框架中&#xff0c;异常处理机制起着至关重要的作用&#xff0c;它允许开发者在程序运行过程中捕获、处理和报告异常&#xff0c;从…...

Three.js添加阴影和简单后期处理

在Three.js中&#xff0c;可以使用渲染器的一些特性来实现阴影和后期处理效果。 添加阴影 要在Three.js中添加阴影效果&#xff0c;需要做以下几个步骤&#xff1a; 1.开启阴影 首先&#xff0c;要在渲染器中开启阴影&#xff1a; renderer.shadowMap.enabled true;2.设置…...

git submodule 子模块的基本使用

常用命令 命令说明git submodule add <url> <本地路径>添加子模块git submodule update --init --recursive添加子模块后&#xff0c;同步子模块内容git clone <url> --recurse-submodules克隆带有子模块的项目git submodule init初始化子模块git submodule…...

四层负载均衡的NAT模型与DR模型推导 | 京东物流技术团队

导读 本文首先讲述四层负载均衡技术的特点&#xff0c;然后通过提问的方式推导出四层负载均衡器的NAT模型和DR模型的工作原理。通过本文可以了解到四层负载均衡的技术特点、NAT模型和DR模型的工作原理、以及NAT模型和DR模型的优缺点。读者可以重点关注NAT模型到DR模型演进的原…...

【vue】vue前端实现随机验证码(数字、字母混合)功能

效果图&#xff1a;使用canvas组件对随机的数字字母添加插画背景、干扰线、干扰点 1、在components文件夹下新建securityCode.vue文件&#xff0c;代码&#xff1a; <template><canvas id"s-canvas" :width"contentWidth" :height"contentH…...

使用Visual Studio 2022实现透明按钮和标签、POPUP样式窗体的一种工业系统的UI例程

例程实现的功能说明 1、主窗体采用POPUP样式&#xff0c;无标题栏、无菜单栏&#xff0c;适合工业类软件 2、按钮、标签使用自绘&#xff0c;实现透明样式&#xff0c;可以实现灵活的样式设计&#xff0c;更具设计感 按钮重绘函数&#xff1a;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 教程》笔记&#xff08;12&#xff09; 12 推导式12.1 列表推导式12.2 字典推导式12.3 集合推导式12.4 元组推导式&#xff08;生成器表达式&#xff09; 笔记带有个人侧重点&#xff0c;不追求面面俱到。 12 推导式 出处&#xff1a; 菜鸟教程 - 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目录下 如果是默认安装路径是如下&#xff1a; C:\Program Files\Git\usr\bin 然后大功告成。...

springboot自定义事件发布及监听

自定义线程池 Configuration public class MyThreadPool {//ThreadPoolTaskExecutor不会自动创建ThreadPoolExecutor&#xff0c;需要手动调initialize才会创建。如果Bean就不需手动&#xff0c;会自动InitializingBean的afterPropertiesSet来调initializeBean("myExecut…...

手写RPC框架--2.介绍Zookeeper

RPC框架-Gitee代码(麻烦点个Starred, 支持一下吧) RPC框架-GitHub代码(麻烦点个Starred, 支持一下吧) 该项目的RPC通信将采用NettyZookeeper&#xff0c;所以会在前两章介绍使用方法 介绍Zookeeper Zookeepera.概述1) 数据模型2) Watcher机制 b.安装和基本操作1) Java操作zooke…...

Docker harbor 私有仓库的部署和管理

目录 一、什么是Harbor 二、Harbor的特性 三、Harbor的构成 四、部署配置Docker Harbor 1. 首先需要安装 Docker-Compose 服务 2.部署 Harbor 服务 3.使用harbor仓库 &#xff08;1&#xff09;项目管理 &#xff08;2&#xff09;用户管理 一、什么是Harbor Harbor …...

从零开始搭建AI网站(6):如何使用响应式编程

响应式编程&#xff08;Reactive Programming&#xff09;是一种编程范式&#xff0c;旨在处理异步数据流和事件流。它通过使用观察者模式和函数式编程的概念&#xff0c;将数据流和事件流抽象为可观察的序列&#xff0c;然后通过操作这些序列来实现各种功能。 在响应式编程中…...

MPI之虚拟进程拓扑

什么是虚拟进程拓扑 在很多并行应用进程中&#xff0c;进程的线性排列不能充分的反映进程间在逻辑上的通信模型&#xff0c;通常由问题几何和所用的算法决定&#xff0c;进程经常被排列成二维或者三维网络形式的拓扑模型而通常用一个图来描述逻辑进程排列&#xff0c;此种逻辑…...

Three.js相机参数及Z-Fighting问题的解决方案

本主题讨论透视相机以及如何为远距离环境设置合适的视锥体。 推荐&#xff1a;用 NSDT编辑器 快速搭建可编程3D场景 透视相机是一种投影模式&#xff0c;旨在模仿人类在现实世界中看待事物的方式。 这是渲染 3D 场景最常用的投影模式。 - three.js 如果你看一下 Three.js 文档…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 &#xff08;1&#xff09;连接查询&#xff08;JOIN&#xff09; 内连接&#xff08;INNER JOIN&#xff09;&#xff1a;返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

可靠性+灵活性:电力载波技术在楼宇自控中的核心价值

可靠性灵活性&#xff1a;电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中&#xff0c;电力载波技术&#xff08;PLC&#xff09;凭借其独特的优势&#xff0c;正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据&#xff0c;无需额外布…...

visual studio 2022更改主题为深色

visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中&#xff0c;选择 环境 -> 常规 &#xff0c;将其中的颜色主题改成深色 点击确定&#xff0c;更改完成...

[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?

论文网址&#xff1a;pdf 英文是纯手打的&#xff01;论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误&#xff0c;若有发现欢迎评论指正&#xff01;文章偏向于笔记&#xff0c;谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...

Angular微前端架构:Module Federation + ngx-build-plus (Webpack)

以下是一个完整的 Angular 微前端示例&#xff0c;其中使用的是 Module Federation 和 npx-build-plus 实现了主应用&#xff08;Shell&#xff09;与子应用&#xff08;Remote&#xff09;的集成。 &#x1f6e0;️ 项目结构 angular-mf/ ├── shell-app/ # 主应用&…...

JAVA后端开发——多租户

数据隔离是多租户系统中的核心概念&#xff0c;确保一个租户&#xff08;在这个系统中可能是一个公司或一个独立的客户&#xff09;的数据对其他租户是不可见的。在 RuoYi 框架&#xff08;您当前项目所使用的基础框架&#xff09;中&#xff0c;这通常是通过在数据表中增加一个…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

省略号和可变参数模板

本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...

Qt 事件处理中 return 的深入解析

Qt 事件处理中 return 的深入解析 在 Qt 事件处理中&#xff0c;return 语句的使用是另一个关键概念&#xff0c;它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别&#xff1a;不同层级的事件处理 方…...