自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 在超算上启动h5bench

本文详细介绍了在东方超算系统上编译安装HDF5 1.14.6(支持zlib+szip+MPI)的全过程,包括环境准备、源码下载、SZIP库安装、HDF5配置编译以及H5Bench测试。关键步骤包括加载编译器模块(gcc 7.3.1+OpenMPI 4.0.4)、安装SZIP压缩库、配置HDF5并行编译选项(启用zlib和szip支持),并通过H5Bench进行验证测试。安装完成后成功实现了单节点数据写入测试,为后续大规模并行I/O性能测试奠定了基础。整个过程涉及多个依赖库的编译和环境变量配置,适用于高性能计

2025-11-10 23:36:22 325

原创 hdf5的compression在做什么

HDF5并行安装指南 安装OpenMPI:使用apt安装并验证版本(如OpenMPI 4.1.2)。 安装ZLIB:支持GZIP压缩,通过apt安装开发包。 安装Miniconda:下载脚本安装,配置环境变量。 编译HDF5:下载1.14.6源码,配置并行支持(--enable-parallel --with-mpi)及ZLIB压缩,安装到/usr/local/hdf5并设置环境变量。 验证安装:使用h5pcc -showconfig确认MPI和压缩功能启用。 可选Conda环境:创建Python环境,但避

2025-10-22 13:02:02 940

原创 Si an(1)

摘要:本文提出了一种将预测性有损压缩与HDF5深度集成的创新方法,以显著提升高性能计算(HPC)应用的并行写入性能。针对现有HDF5实现中压缩与写入必须顺序执行导致的性能瓶颈,研究团队开发了三个关键技术:1)扩展压缩比预测模型,准确预估压缩和写入时间;2)设计基于HDF5异步I/O特性的压缩-写入重叠机制;3)优化压缩任务执行顺序。在Summit超级计算机上使用4,096个核心的测试表明,该方案相比无压缩和传统H5Z-SZ压缩方案,分别实现最高4.5倍和2.9倍的写入加速,同时仅增加1.5%的存储开销。该方

2025-08-13 20:16:48 694

原创 h5bench(4)

本文介绍了h5bench基准测试套件,用于评估HDF5在多种I/O模式下的性能表现。该工具支持不同维度的数组访问(1D/2D/3D)和内存布局,并能测试Async、Cache、Log等VOL连接器的优化效果。实验表明,在不同配置下,VOL连接器可带来1.18-12.36倍的性能提升。h5bench已部署在多个超算平台(Cori、Summit等),未来将扩展支持压缩等功能。该工具采用BSD许可开源,可通过GitHub或Spack获取,旨在帮助优化百亿亿次级系统的I/O性能。

2025-08-13 19:10:46 523

原创 h5bench(3)

本文研究了OpenPMD、AMReX和E3SM三种科学计算框架的HDF5访问模式及其在超算平台上的I/O性能。OpenPMD支持并行读写,AMReX采用自适应网格细化技术,而E3SM具有复杂的非连续数据访问模式。研究在Cori和Summit超算系统上测试了同步/异步I/O模式,发现异步I/O能显著提升性能,在2K MPI进程规模下分别达到220GB/s和560GB/s的写入速率。实验还探讨了文件系统条带化、数据对齐等优化策略对性能的影响,为大规模科学计算的I/O优化提供了重要参考。

2025-08-13 18:57:40 1012

原创 h5bench(2)

HDF5子文件功能是1.14.0版本引入的折中方案,通过将逻辑HDF5文件分割为按计算节点存储的物理子文件,有效规避了单文件锁争用和海量小文件问题。子文件VFD利用I/O集中器线程聚合节点内进程请求,优化写入性能。用户可通过h5fuse.sh将子文件组合为完整HDF5文件视图,并支持配置节点本地存储路径。h5bench基准测试套件提供灵活的JSON配置接口,支持多种MPI启动器和VOL连接器,可针对不同HDF5特性进行性能测试,其架构包含MPI环境、VOL设置、文件系统参数和基准测试序列四大配置模块。

2025-08-09 15:16:34 708

原创 h5Bench(1)

摘要: h5bench是一个用于评估pre-exascale平台上HDF5并行I/O性能的统一基准测试套件。针对科学计算中HDF5库的广泛应用,h5bench通过多维度测试(读写操作、数据局部性、数组维度、同步/异步I/O模式)模拟真实应用场景。该工具在Cori、Summit等超级计算机及Perlmutter等pre-exascale平台上验证了性能,支持识别I/O瓶颈并优化HDF5功能(如异步I/O、缓存)。h5bench整合了HDF5的虚拟对象层(VOL)连接器技术(如Async VOL、Cache V

2025-08-09 11:51:09 669

原创 chukonu阅读笔记(4)

序列化:将对象转换为字节流。注册:在使用某些序列化库时,需要先告诉库有哪些类型的数据需要序列化。无需注册的快速序列化:使用现代序列化库,不需要显式注册数据类型,库会自动处理。解释完成。图 11 说明了 Chukonu 驱动程序和 Chukonu 库如何交互,以在 JVM 和本机环境之间提供安全高效的显式指针传递机制。JVM 世界中的 Chukonu 驱动程序向 Chukonu 库提供 DAG 构建和评估功能。

2025-07-31 13:51:50 903

原创 chukonu阅读笔记(3)

这张图展示了Spark如何通过将运行时DAG委托给Spark进行处理,并利用嵌套扫描器链和编译器优化来高效地处理大规模数据集。这种处理方式充分利用了Spark的分布式计算能力和优化技术,提高了数据处理的效率和性能。以上内容可能会有轻微的不准确,我个人认为嵌套扫描器就是本次自己编写并进行优化的部分。其次,Chukonu表示中的运算符采用代码模板的形式,因此可以通过C++模板元编程来实现对编译时部分的优化。相比之下,Spark表示中的运算符采用二进制文件的形式,从而阻止了编译时优化。

2025-07-31 13:20:13 1051

原创 chukonu阅读笔记(2)

本文提出了一种DAG分裂方法,将大数据分析程序划分为编译时和运行时两部分。编译时部分通过原生编译优化性能,运行时部分利用Spark现有机制降低实现复杂度。关键策略包括:1) 将shuffle、cache等复杂算子分配给运行时部分复用Spark功能;2) 对编译时部分进行算子融合等优化,减少JVM与原生环境间的数据转换开销。实验表明,该方法在保持Spark可靠性的同时,通过编译优化显著提升了性能。这种混合执行框架实现了原生计算引擎与Spark的低成本集成,为大数据处理系统性能优化提供了新思路。

2025-07-30 16:27:02 669

原创 Chukonu 阅读笔记

摘要 本文提出Chukonu框架,通过将原生计算引擎集成到Spark中,实现了高性能大数据处理。Chukonu采用创新的DAG分割方法,将程序分为编译时(原生执行)和运行时(Spark执行)两部分,既保留了Spark的弹性、容错等特性,又通过算子融合、向量化等优化技术显著提升了性能。实验表明,Chukonu在六个大数据应用上比Spark快6.09倍(最高71.58倍),比纯原生框架快2.30倍(最高7.20倍),并将SparkSQL的TPC-DS性能提升2.29倍。该方案以9K行C++代码复用Spark 8

2025-07-26 17:18:52 769

原创 leetGPU结题笔记(3)

本文介绍了6个GPU并行计算题目及其CUDA实现方案。包括:1) RGBA图像颜色反转;2) ReLU激活函数;3) 一维卷积运算;4) 数组倒置;5) 多轮整数哈希;6) 矩阵复制。每个问题都给出了核心思路和CUDA内核代码,通过线程索引计算实现并行处理。方案均采用原生CUDA特性,避免外部库依赖,展示了GPU并行计算的典型应用场景。

2025-07-14 00:44:39 564

原创 leetGPU解题笔记(2)

GPU矩阵乘法实现摘要 本文实现了一个在GPU上并行计算矩阵乘法的CUDA程序。给定两个浮点矩阵A(M×K)和B(K×N),计算乘积矩阵C(M×N)。程序采用二维线程块(16×16)和网格划分策略,每个线程计算C矩阵的一个元素。核心是通过全局索引定位数据位置,使用循环累加完成行列相乘。输入矩阵以行优先存储为一维数组,计算时需转换为逻辑二维索引。同步操作确保结果正确性。该实现满足大规模矩阵(如8192×6144)的高效计算需求,展示了CUDA在多维数据并行处理中的优势。

2025-07-13 22:09:09 1131

原创 leetGPU解题笔记(1)

本文介绍了在GPU上实现向量加法的CUDA编程方法。主要内容包括:1) 使用vector_add核函数进行逐元素相加,每个线程处理一个元素;2) 线程组织采用一维网格和一维线程块,计算线程全局索引;3) 根据向量长度N动态计算线程块数量,确保覆盖所有元素;4) 添加边界检查防止数组越界。该方案适用于一维向量运算,通过合理配置线程块大小(256线程/块)和网格规模,实现高效并行计算。对于二维/三维数据,可采用相应维度的网格和线程块组织。

2025-07-13 20:42:53 1283

原创 THman第三部分解读

异构最早完成时间(HEFT,Heterogeneous Earliest Finish Time)算法[18]是一种经典的启发式算法,旨在通过确定每个任务在不同处理器上的最早完成时间并选择最优处理器来执行任务,从而最小化工作流的完成时间。基于生成的DAG,我们结合天河HPC系统上的实际工作流特征(例如,节点和边的数量比、边权重的分布等)对DAG进行修改,使其更接近当前的实际工作流。为了全面评估(THman)的性能,我们在两种不同的场景下进行了评估:一种是使用缓冲区(BB)的场景,另一种是不使用BB的场景。

2025-04-03 18:19:25 854

原创 THman第二部分解读

(THman)的示意图如图2所示。放在了slurm之前(THman)将工作流描述和可用资源量作为输入,并将工作流转换为标准的有向无环图(DAG)-⃝1 -⃝2。然后,(THman)使用分层贡献优先(HCF)算法选择合适的任务-⃝3 ,并使用HPC资源管理器接口将任务提交到HPC系统上执行-⃝4 -⃝5。HPC资源管理器持续监控HPC系统上作业和资源的实时状态-⃝6。从第一个任务提交到系统上运行的那一刻起,(THman)不断从HPC资源管理器在线获取任务执行的实时状态和剩余可用资源-⃝7。

2025-04-03 10:05:53 334

原创 THman 第一部分解读

本节介绍了如何为在高性能计算(HPC)系统上调度工作流构建性能模型。一个工作流可以用一个标准的有向无环图(DAG)G=(V,E)G = (V, E)G=(V,E) 来表示,其中 VVV 是节点集,EEE 是边集。节点集 V={v0,v1,v2,…,vn,vn+1}V = \{v_0, v_1, v_2, \ldots, v_n, v_{n+1}\}V={v0​,v1​,v2​,…,vn​,vn+1​} 中的节点是工作流任务,其中 v0v_0v0​ 是起始节点,vn+1v_{n+1}vn+1​ 是结束节点,n

2025-04-02 19:22:25 1041

原创 Nyx 中文文档

Nyx是一个用于大规模并行计算机的,专门用于宇宙学模拟。它将可压缩流体动力学方程与暗物质的粒子表示结合在一起。

2025-03-10 11:00:14 1028

原创 IOR中文文档

n 表示n个线程同时写入hostfile可以指定这n个进程怎么分布在若干个点上。比如这里就设置了只有一个节点,这个节点并行上限是64进程。-t 1m 表示每次写入1M-b 16m 表示会连续写入16个1M-s 16 表示上述过程循环16次-e -C 去掉了cache的影响-F 表示每个 MPI 进程处理自己的文件。

2025-03-02 21:36:03 863

原创 ML-perf教程

注意,这里边dilo_benchmark是空的,需要去别处clone。需要把这个文件夹再次clone。只要cpu版本就可以了。

2025-01-13 17:39:47 327

原创 COT论文笔记(4)

论文名称:Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters本博客范围:P9-P11出现在这个框里的是我的补充,不是原文。之前的部分可以查看我的主页QAQ。

2025-01-04 01:20:24 1212 1

原创 COT论文笔记(3)

论文名称:Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters本博客范围:P6-P8。

2025-01-02 23:03:25 1140 1

原创 COT论文笔记(2)

论文名称:Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters本博客范围:P3-P5出现在这个框里的是我的补充,不是原文。

2024-12-31 03:17:20 1218 1

原创 dftracer(1)

现代高性能计算(HPC)工作流涉及仿真、数据分析和人工智能(AI)应用的复杂耦合,以提高科学洞察的时间。这些工作流需要一套协同的性能分析工具,以提供对HPC系统中数据交换模式的全面理解。然而,当前的工具并不设计用于与需要在应用程序的多个层次进行跟踪的基于AI的I/O软件堆栈一起工作。为此,我们开发了一个名为DFTracer的数据流跟踪器,用于捕获工作流和I/O堆栈中的数据中心事件,以建立对AI驱动工作流中数据交换的详细理解。DFTracer具有以下三个新颖功能,

2024-12-31 02:09:07 904

原创 COT论文笔记

通过利用更多的测试时计算来使大型语言模型(LLMs)改进其输出,这是朝着构建能够处理开放式自然语言的通用自改进智能体迈出的关键一步。在本文中,我们研究了大型语言模型中推理时计算的扩展情况,重点旨在回答这样一个问题:如果允许一个大型语言模型使用固定但并非微不足道的推理时计算量,那么它在应对具有挑战性的提示时能在多大程度上提升自身性能呢?回答这个问题不仅对大型语言模型可实现的性能有影响,而且关乎大型语言模型预训练的未来走向,以及人们应如何在推理时计算和预训练计算之间进行权衡。

2024-12-30 23:35:39 1237 1

原创 分布式I/O (5)

为了保持(4)按照原论文的主线进行,不被打断,一些零散知识记在此。

2024-12-16 13:28:19 360

原创 dlio_profiler_py

这个包非常奇怪,各种报错,受不了了。最后再试一晚上,还做不出来就随便吧。

2024-12-13 19:11:18 166

原创 build my own redis(2)

使用python的话,主要的任务就是解析和插入字典。全局共享同一个字典就可以了。

2024-11-22 23:28:55 270

原创 build my own redis

这个月免费了,做一遍记录一下。

2024-11-22 00:56:46 521

原创 ssh失败

最奇怪的一步来了,我从powershell换成了gitbash再次尝试连接。一开始有一个第一次链接的输入【yes/no】的选项,然后表示连接失败。然后进行了 ssh-key -R 服务器IP,清除了本地记忆。随后报错变成了这样。咱也不懂为啥,网上也没有太多和我一样的流程。问题的产生原因:vscode链接服务器状态下重启电脑,然后重新连接失败了。由于十分确定是本地而不是服务器的问题,所以接下来我重启了电脑,换了一台电脑发现可以正常登录,认为是本地配置出了问题。然后gitbash再次尝试连接,就行了。

2024-11-20 15:35:04 454

原创 分布式I/O(3)

练手的任务选取cifar10, vision in transformer。选取的原因是1.transformer相比cnn更难收敛,所以优化的空间更大,可能更能体现(因为模型结构上没有利用CNN一样的“离得近的相关,离得远的不相关”的假设,对于CNN这个事情是given fact,对于vit要自己学出来)2.原则上性能上限不会低于cnn,甚至更好。

2024-11-11 23:32:46 1027

原创 分布式训练的IO问题(2)

在编译 CUDA 程序时,使用nvcc来处理.cu文件,并调用适当版本的 GCC 编译主机代码。确保使用与您 CUDA Toolkit 版本兼容的 GCC 版本,以避免编译错误。如果需要特定版本的兼容性信息,可以查看 NVIDIA 的CUDA Toolkit 文档。

2024-11-03 22:59:19 607

原创 B-第一次作业解析

给这个程序绘制流程图。

2024-10-17 18:28:25 282

原创 分布式训练的IO问题(1)

进行mount挂载指令时出错。

2024-10-15 10:34:24 814

原创 邮箱发送成绩

我有一个excel文件,记录了每个人的姓名,邮箱和分数现在我要将每个人的分数发送到对应的邮箱。

2023-11-14 14:42:24 515 1

原创 ICS-linux001

习题课的笔记 基于中科大vlab的linux入门

2022-12-04 21:54:43 534

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除