数据湖实操讲解【 AI 训练加速】第十八讲:Fluid + JindoFS 对海量小文件的训练加速

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 数据湖 JindoFS+OSS 实操干货 36讲 每周二16点准时直播! 扫文章底部二维码入钉群,线上准时观看~ Github链接: https://github.com/aliyun/alibabacloud-jindofs

本期导读 :【AI 训练加速】第十八讲


主题:FFluid + JindoFS 对海量小文件的训练加速uid+JindoFSOSS 上数据进行训练加速

讲师:辰山,阿里巴巴计算平台事业部 EMR 技术专家


内容框架:

  • 海量小文件难题
  • Fluid JindoRuntime 小文件优化
  • 使用 JindoRuntime 加速小文件
  • 演示


直播回放链接:(18讲)

https://developer.aliyun.com/live/247034

一、海量小文件难题

 

AI 训练场景经常需要处理海量小文件

现状:

    image.png            

             

  • RPC 频繁,NameNode 压力大          
  • 延时高

      image.png    

  • 延时高
  • 高频访问稳定性

对缓存系统的诉求:

  • 低延时,高 QPS
  • 稳定可靠的访问性能
  • 能够支撑海量文件数

二、Fluid JindoRuntime 小文件优化

JindoRuntime:

image.png

高效的元数据缓存:

  • 基于 KV-Store 的元数据组织形式,可支持海量文件数,并且不会占用过多内存资源
  • 高效的元数据查询,并且通过热点缓存进一步加速点查性能
  • 元数据服务(Namespace Service)能够提供低延时、高 QPS 的访问性能

      image.pngimage.png

  • Fuse 客户端缓存

高效的数据组织及索引

  • 针对小文件数据块实现高性能磁盘存储及索引机制
  • 一致性哈希实现数据块的分布式缓存索引,缩短小文件读取的链路

        image.png

三、使用 JindoRuntime 加速小文件

JindoRuntime 加速小文件基本步骤

  • 下载并安装 Fluidhttps://github.com/aliyun/alibabacloud-jindodata/blob/master/docs/jindo_fluid/jindo_fluid_jindofs_hdfs_introduce.md
  • 创建 Dataset
  • 创建 JindoRuntime
  • 缓存预加载 DataLoad
  • 执行 AI 训练作业

       image.png

小文件加速效果

  • 参考文章:《速度提升 18倍!微博海量深度学习模型训练效率跃升的秘密》 https://www.infoq.cn/article/FClx4Cco6b1jomi6UZSy

image.png

    相比于 HDFS 接口

  • 1机 4 卡可以得到5 倍的加速
  • 2机 8 卡可以得到9 倍的加速
  • 3机 12 卡可以得到18 倍的加速

image.png

  • 训练总时长由原来的389小时(16 天)缩短到了16 小时

四、演示

Fluid JindoRuntime 使用

环境要求:

  • Kubernetes version > 1.14, 支持CSI
  • Golang 1.12+
  • Helm 3
  • Fluid 0.6.0


参考文档:https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/jindo_fluid/jindo_fluid_overview.md

ISSUE:https://github.com/aliyun/alibabacloud-jindofs/issues

image.png

演示:对 HDFS 上海量小文件进行访问加速

参考文档:https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/jindo_fluid/common/jindo_fluid_quickStart.md

image.png

image.png

相关文档链接:

  • Fluid  JindoRuntime 使用文档

https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/jindo_fluid/jindo_fluid_overview.md

  • ImageNet 数据集加速测试

https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/jindo_fluid/jindo_fluid_resnet50_example.md

  • InsightFace数据集加速测试

https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/jindo_fluid/jindo_fluid_cache_performance_report.md



点击回放链接,直接观看第18讲视频回放,获取讲师实例讲解:

   https://developer.aliyun.com/live/247034




Github链接:

https://github.com/aliyun/alibabacloud-jindofs


不错过每次直播信息、探讨更多数据湖 JindoFS+OSS 相关技术问题,欢迎扫码加入钉钉交流群!

69c0a02cc68742fca5d49d92413dc67a.png

相关实践学习
基于EMR Serverless StarRocks一键玩转世界杯
基于StarRocks构建极速统一OLAP平台
快速掌握阿里云 E-MapReduce
E-MapReduce 是构建于阿里云 ECS 弹性虚拟机之上,利用开源大数据生态系统,包括 Hadoop、Spark、HBase,为用户提供集群、作业、数据等管理的一站式大数据处理分析服务。 本课程主要介绍阿里云 E-MapReduce 的使用方法。
相关文章
|
1月前
|
JSON 人工智能 数据格式
AI计算机视觉笔记二十六:YOLOV8自训练关键点检测
本文档详细记录了使用YOLOv8训练关键点检测模型的过程。首先通过清华源安装YOLOv8,并验证安装。接着通过示例权重文件与测试图片`bus.jpg`演示预测流程。为准备训练数据,文档介绍了如何使用`labelme`标注工具进行关键点标注,并提供了一个Python脚本`labelme2yolo.py`将标注结果从JSON格式转换为YOLO所需的TXT格式。随后,通过Jupyter Notebook可视化标注结果确保准确性。最后,文档展示了如何组织数据集目录结构,并提供了训练与测试代码示例,包括配置文件`smoke.yaml`及训练脚本`train.py`,帮助读者完成自定义模型的训练与评估。
|
16天前
|
Python 机器学习/深度学习 人工智能
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
【10月更文挑战第1天】本文通过构建一个简单的强化学习环境,演示了如何创建和训练智能体以完成特定任务。我们使用Python、OpenAI Gym和PyTorch搭建了一个基础的智能体,使其学会在CartPole-v1环境中保持杆子不倒。文中详细介绍了环境设置、神经网络构建及训练过程。此实战案例有助于理解智能体的工作原理及基本训练方法,为更复杂应用奠定基础。首先需安装必要库: ```bash pip install gym torch ``` 接着定义环境并与之交互,实现智能体的训练。通过多个回合的试错学习,智能体逐步优化其策略。这一过程虽从基础做起,但为后续研究提供了良好起点。
56 4
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
|
8天前
|
存储 人工智能 开发者
三文带你轻松上手鸿蒙的AI语音02-声音文件转文本
三文带你轻松上手鸿蒙的AI语音02-声音文件转文本
33 0
三文带你轻松上手鸿蒙的AI语音02-声音文件转文本
|
4天前
|
人工智能 easyexcel
使用AI助理很方便的指导使用EasyExcel生成文件
使用AI助理很方便的指导使用EasyExcel生成文件
7 0
|
1月前
|
人工智能 开发工具 计算机视觉
AI计算机视觉笔记三十:yolov8_obb旋转框训练
本文介绍了如何使用AUTODL环境搭建YOLOv8-obb的训练流程。首先创建虚拟环境并激活,然后通过指定清华源安装ultralytics库。接着下载YOLOv8源码,并使用指定命令开始训练,过程中可能会下载yolov8n.pt文件。训练完成后,可使用相应命令进行预测测试。
|
1月前
|
人工智能 PyTorch 算法框架/工具
AI计算机视觉笔记二十二:基于 LeNet5 的手写数字识别及训练
本文介绍了使用PyTorch复现LeNet5模型并检测手写数字的过程。通过搭建PyTorch环境、安装相关库和下载MNIST数据集,实现了模型训练与测试。训练过程涉及创建虚拟环境、安装PyTorch及依赖库、准备数据集,并编写训练代码。最终模型在测试集上的准确率达到0.986,满足预期要求。此项目为后续在RK3568平台上部署模型奠定了基础。
|
1月前
|
人工智能 测试技术 PyTorch
AI计算机视觉笔记二十四:YOLOP 训练+测试+模型评估
本文介绍了通过正点原子的ATK-3568了解并实现YOLOP(You Only Look Once for Panoptic Driving Perception)的过程,包括训练、测试、转换为ONNX格式及在ONNX Runtime上的部署。YOLOP由华中科技大学团队于2021年发布,可在Jetson TX2上达到23FPS,实现了目标检测、可行驶区域分割和车道线检测的多任务学习。文章详细记录了环境搭建、训练数据准备、模型转换和测试等步骤,并解决了ONNX转换过程中的问题。
|
1月前
|
存储 人工智能 数据可视化
AI计算机视觉笔记二十一:PaddleOCR训练自定义数据集
在完成PaddleOCR环境搭建与测试后,本文档详细介绍如何训练自定义的车牌检测模型。首先,在`PaddleOCR`目录下创建`train_data`文件夹存放数据集,并下载并解压缩车牌数据集。接着,复制并修改配置文件`ch_det_mv3_db_v2.0.yml`以适应训练需求,包括设置模型存储目录、训练可视化选项及数据集路径。随后,下载预训练权重文件并放置于`pretrain_models`目录下,以便进行预测与训练。最后,通过指定命令行参数执行训练、断点续训、测试及导出推理模型等操作。
|
1月前
|
机器学习/深度学习 人工智能 测试技术
AI计算机视觉笔记二十五:ResNet50训练部署教程
该项目旨在训练ResNet50模型并将其部署到RK3568开发板上。首先介绍了ResNet50网络,该网络由何恺明等人于2015年提出,解决了传统卷积神经网络中的退化问题。项目使用车辆分类数据集进行训练,并提供了数据集下载链接。环境搭建部分详细描述了虚拟环境的创建和所需库的安装。训练过程中,通过`train.py`脚本进行了15轮训练,并可视化了训练和测试结果。最后,项目提供了将模型转换为ONNX和PT格式的方法,以便在RK3568上部署。
|
1月前
|
人工智能 计算机视觉 Python
AI计算机视觉笔记十九:Swin Transformer训练
本文介绍了使用自定义数据集训练和测试目标检测模型的步骤。首先,通过安装并使用标注工具labelme准备数据集;接着修改配置文件以适应自定义类别,并调整预训练模型;然后解决训练过程中遇到的依赖冲突问题并完成模型训练;最后利用测试命令验证模型效果。文中提供了具体命令及文件修改指导。