在郑州建设网站这么做,莱芜雪野湖简介,创意设计学院,网站制作app问题
FATE框架1.x支持GPU训练吗#xff1f;
寻找
先看了官网#xff0c;搜官网#xff0c;发现还是有的。 打开第一个后#xff0c;里面可以用training param指定各个client的训练GPU#xff0c;但是好像都是在large language model的。 而在文档中搜寻到的gpu#xf…问题
FATE框架1.x支持GPU训练吗
寻找
先看了官网搜官网发现还是有的。 打开第一个后里面可以用training param指定各个client的训练GPU但是好像都是在large language model的。 而在文档中搜寻到的gpu其实是release的版本说明里面搜来搜去也是只有跟LLM相关的。莫非是一开始就支持GPU我希望找到具体什么地方验证了FATE支持/不支持GPU
在官方群里提问后群友提供了一个文档说横向的联邦是支持GPU的并且给了examplehttps://github.com/FederatedAI/FATE/blob/master/doc/tutorial/pipeline/nn_tutorial/README.md简单把所有example搜了下gpu这个关键字没有说明。。
淦那就先探索一下这个trainer param吧搜索文档后只有简单的几行代码这能看出来个毛。
def __init__(self, trainer_nameNone, **kwargs):super(TrainerParam, self).__init__()self.trainer_name trainer_nameself.param kwargs结果在他源码https://github.com/FederatedAI/FATE/blob/master/python/federatedml/param/homo_nn_param.py里面还真就只有这么些代码
class TrainerParam(BaseParam):def __init__(self, trainer_nameNone, **kwargs):super(TrainerParam, self).__init__()self.trainer_name trainer_nameself.param kwargsdef check(self):if self.trainer_name is not None:self.check_string(self.trainer_name, trainer_name)def to_dict(self):ret {trainer_name: self.trainer_name, param: self.param}return ret可是他在调用的时候是写了这么多的。他既没有告诉我有什么kwargs也没告诉我每个kwargs是什么作用会有什么结果。感觉文档的提升空间还是有的。。好不方便啊。不但没明说GPU的支持与否参数的具体意义和选项也没有给全或者说给个全参数指引链接也好呀。
trainer_param TrainerParam(trainer_namefedavg_trainer, epochs1, batch_size8, data_loader_worker8, secure_aggregateTrue, cuda0)解决
我是在/federatedml/param/homo_nn_param.py下找到的这个trainer param类所以他大概率只能支持homo nn的场景。
使用的方法根据文档应该是通过trainer param类把param给传入然后带动训练过程。 例子可以参考这个里面的例子homo nn场景应该每个例子都会有trainer_param类加入cuda0这个参数应该就可以使用GPU了。
后续真实场景我会再测试
此参数 是否真是有效通过查看GPU使用hetero场景能否使用GPU
到时再来更新。