oneflow
oneflow copied to clipboard
OneFlow is a deep learning framework designed to be user-friendly, scalable and efficient.
背景:https://github.com/Oneflow-Inc/OneCloud/issues/104#issuecomment-1156122806 概述:oneflow的ctc_loss不接受int64的target输入而torch能 实现: - ctc_loss共有四个输入参数,除log_prob之外,其余都是整数形式。实现过程中发现torch支持三个整数参数 int32/64 任意类型的组合,而oneflow只能同时为int64或int32。故增加了两个模板参数,和torch的接口对齐。 文档:  
- 解决 https://github.com/Oneflow-Inc/oneflow/pull/8741 遗留的问题 https://github.com/Oneflow-Inc/oneflow/pull/8741/files#r937727679 - 改动setitem,支持scalar tensor的输入
一些搭好并配好 sbp 的 global 模型想做扩展时,可能会迁移过来一些 local module,组成一个 global module 和 local module 混合的情况,这时如果想对其中的 local module 做统一的 to_global 操作并跳过 local tensor 的话,需要用内部接口 `_apply` 并手动写一个处理函数,这种方式对于一般用户是比较难做到的。 需要讨论一下是否有必要对 to_global 加一个参数(`skip_global_tensor=False` 之类的,参数名可以再讨论),来表示是否在 to_global 时,跳过已经是 global...
## Summary 在测试下面的 `2 机 2 卡` 混合并行脚本 `test.py` 时: ```python import oneflow as flow P01 = flow.placement(type="cpu", ranks=[0, 1]) P23 = flow.placement(type="cpu", ranks=[2, 3]) # 模型第一阶段在第 0 和第 1...
将Functor::operator()内的创建AttrMap的过程缓存起来,从3-7us开销优化到300-500ns。这个300-50ns还是在nsys上的测量值,实际时间估计在100ns一下。
- [x] Remove singleton of MultiClientContext - [x] C NN Graph 作为 JobBuildAndInferCtx 的成员 - [x] Merge LazyJobBuildAndInferCtx into JobBuildAndInferCtx 之前是 - Job Scope 下有一个 JobBuildAndInferCtx - C NN Graph...
fix https://github.com/Oneflow-Inc/oneflow/issues/8769 1. [修复]对x_grad计算错误,未考虑broadcast的逻辑 2. [修复]没计算y_grad 3. [实现]trunc_divide,实现functional供内部使用,暂时未导出python接口。
根据 https://github.com/Oneflow-Inc/OneTeam/issues/1031 中的讨论为 `flow.to_global/flow.to_local` 增加多种输入类型的输入支持,尤其关注 state dict 测试: - [x] None - [x] Tensor - [x] list - [x] tuple - [x] nn.Module 的 state dict - [x] nn.Graph 的...