gaocegege

gaocegege

Talk is not cheap.
🏢  环球卖萌中心 / 划水部
V2EX 第 95688 号会员,加入于 2015-02-04 14:42:03 +08:00
上海交通大学 划水专业
gaocegege
分享创造  •  gaocegege
[ANN] 关于复式记账语言 Beancount 过分难用这件事
2022 年 4 月 23 日  •  最后回复来自 wdssmq
39
水  •  gaocegege
腾讯 2022 校招 CSIG 推荐
2021 年 8 月 7 日  •  最后回复来自 gaocegege
1
gaocegege 最近回复了
@hsfzxjy

> 比如像我比较熟悉和习惯构建容器,在我看来这就是借 Python 语法实现的一个 DSL ,并没有解决我太多的痛点,反而在遇到问题时这个 DSL 会显得特别蹩脚。当然我可能不是你们的目标用户~

谢谢建议,如果你有兴趣的话,我们可以约一次线上的时间交流一下。关于你日常工作中在构建时遇到的问题,和现在你一般都是如何解决的。这对我们非常有帮助~
@hsfzxjy 谢谢建议

嗯对于这样的 heuristics ,我们是希望在支持了 envd Hub 之后,由用户提供不同的 build func ,envd 本身提供的原语需要能够支持用户利用它写出各种各样的 build func 。

对于你说的这个例子,一个类似于这样的 build func 可以被定义:


```python
def build_torch_extension():
os.environ("TORCH_CUDA_ARCH_LIST", "3.5 5.2 6.0 6.1 7.0+PTX 8.0" TORCH_NVCC_FLAGS="-Xfatbin -compress-all")
...
```

在使用的时候可以:


```python
load("build_torch_extension")
def build():
build_torch_extension()
```

作为一个帮助解决 dirty work 的项目,我们希望能够通过扩展性来解决各种不同场景的问题,因为不同场景的 dirty work 都不太一样,我们也很难把所有的 heuristics 都集成在项目里

当然最简单的框架和 CUDA 的版本映射,这个倒是不复杂。
@hsfzxjy 嗯嗯,cog 是在内存里维护了一个 map ,把每个 pytorch tf 版本对应的 cuda 版本记在了里面。我们后面也有计划提供一个 func ,来让使用者指定是否要自动推理合适的 cuda 版本
@hsfzxjy 默认用 install.cuda 配置的就是带 devel 的,不过现在只支持 11.6 和 11.2 ,也可以用
base(image="") 自定义 base image
@hsfzxjy 你想用的是哪个版本嘞?
@houshuu 欢迎试用反馈哦
@hsfzxjy 这样,学习了
这个例子是参考了 2017 年的一个 mnist streamlit 的 demo ,可能有点非最佳实践
@zsj950618 emm 这是测试下来可以跑的 code 。当然直接把 cv2 所有的依赖都装一遍也可以

ffmpeg libsm6 libxext6
嗯对,如果不冲突的话是可以的。所以我们也在设计语法让用户自己决定是不是需要并行。

有冲突就需要 fallback 到串行。
© 2026 V2EX · 18ms · 3.9.8.5