开发者社区 > 云原生 > Serverless > 正文

函数计算FC尝试跑 SDXL,直接报错了,目前函数计算是不是不支持 SDXL?

函数计算FC尝试跑 SDXL,直接报错了,目前函数计算是不是不支持 SDXL?torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 390.00 MiB (GPU 0; 22.05 GiB total capacity; 21.33 GiB already allocated; 53.12 MiB free; 21.70 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation. See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF

展开
收起
三分钟热度的鱼 2023-08-15 13:47:17 216 0
2 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    函数计算(FC)本身并不直接支持 Synthetic Data XL (SDXL)。SDXL 是一种基于 PyTorch 的 Synthetic Data 扩展,它利用多个 GPU 和分布式计算资源来加速 Synthetic Data 的生成和训练过程。然而,函数计算的资源限制和运行环境的特性可能不适合直接运行 SDXL。

    在您提供的错误信息中,报错信息为 "torch.cuda.OutOfMemoryError: CUDA out of memory",表示在运行过程中 CUDA 内存不足。这是因为函数计算实例的资源限制,包括 GPU 内存的容量限制,无法满足 SDXL 所需的大规模模型训练和数据生成。

    如果您希望在函数计算中利用 Synthetic Data 进行模型训练,可以考虑以下替代方案:

    数据集缩减:减小输入数据集的规模,以减少内存占用。可以使用更小的图像尺寸、采样更少的数据样本等方式来降低内存需求。

    单 GPU 训练:在函数计算实例上使用单个 GPU 进行训练,以适应较小的资源限制。可以调整模型大小、批处理大小和训练参数等,以确保在单个 GPU 上能够顺利运行。

    分布式训练:如果您的任务要求更高的计算资源,可以考虑使用其他云平台的资源(如云服务器、容器服务等)进行分布式训练。这样可以充分利用多个 GPU 和计算节点来完成大规模 Synthetic Data 训练。

    优化模型和算法:优化模型结构和算法,以减少模型对内存的需求。例如,减少模型的层数、参数量或使用更轻量级的模型架构。

    2023-08-17 19:30:49
    赞同 展开评论 打赏
  • 不支持,这个已经在测试了。此回答整理自钉群“【答疑群】函数计算 AIGC 场景技术交流”

    2023-08-15 13:57:32
    赞同 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    Serverless开发平台: 让研发效能再提升 立即下载
    Serverless 引领云上研发新范式 立即下载
    All in Serverless 阿里云核心产品全面升级 立即下载