为每台服务器创建用户,有一个网页面板展示所有服务器的使用情况(主要是 GPU),大家相当于竞争状态,看到哪台服务器空了,有需要了,就把项目重新部署到空余的服务器上跑。
相当程度上,能够充分利用每个 gpu ,如果大家积极性高的话,不停的 switch 可以充分利用所有自愿(比较牵强)
劣势太明显了,有时候跑着停了一下或者正在改代码、debug ,显卡就被别人用上了。你就要重复部署自己的项目到空余的服务器上,而且文件碎片严重,也比较浪费存储空间,很多时候大家的项目都是复制了好几遍在各个服务器上。一些大的数据集、静态文件也散落各地。
比较为难的是,服务器的配置不一样的,有的老 titan ,有的 3090 、Tesla ,大家都不管模型大小都倾向于在新服务器上跑,有些旧服务器都是空闲状态。
注意不能改造、重做系统,因为大家都历史遗留 checkpoint 各种文件、特定环境,而且各系统横跨各种版本。
目前用 rsync 写了脚本,但是由于文件规则复杂(有时候只同步代码,有时候又要同步模型),很麻烦,而且很容易出错,想象你在几台服务器上,那个跑 A 实验,这个跑 B 实验,有时还要把两者结果传来传去。甚至做实验旧了,都忘记了实验结果在哪台服务器上。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.