SageMaker PIPE 模式与 FSx 有什么区别?

0

【以下的问题经过翻译处理】 您好, SageMaker支持通过管道模式以数据流的方式提供训练数据,也支持从FSx分布式文件系统中读取数据。 这两个选项看起来提供的价值相同:低延迟,高吞吐量。

  • 选择这两个选项的原因分别是什么?
  • 在成本和速度方面,我们有PIPE和FSx for SageMaker的任何基准测试数据吗?
profile picture
专家
已提问 6 个月前46 查看次数
1 回答
0

【以下的回答经过翻译处理】 我能想到以下几种情况

管道模式缺点

** 更新**

  1. 数据Shuffle - 在管道模式下,你使用流式数据,因此除非你准备在Batch内Shuffle(即等待读取一批记录并在Batch内部增加shuffle逻辑),否则无法执行数据shuffle操作。如果你的数据分布在多个文件中,可以使用Sagemaker data shuffle来执行文件级shuffle。
  2. 数据读取器 - 管道模式下有默认的数据读取器,适用于Tensorflow的格式,如csv、tfrecord等。但如果你有自定义的数据格式或使用不同的深度学习框架,你需要使用自定义的数据读取器来处理原始二进制数据并理解记录的逻辑结尾。你可以使用ml-io来查看任何内置的管道模式读取器是否适合你的用例。
  3. 管道模式从S3中为每个Epoch流式传输数据,因此在运行少量epoch时速度会比FSX慢。

FSX:

  1. FSX通过懒加载方式读取s3文件,因此会有启动延迟,但在重复训练期间会变得更快。
  2. 不依赖框架,你的现有代码将照常工作。
  3. 使用FSX唯一的缺点是额外的存储成本,但在大多数情况下,我更喜欢FSX而不是管道模式。
profile picture
专家
已回答 6 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则