Haonan Feng

Results 9 comments of Haonan Feng

同学,代码这边没什么问题,但我看到python black语法检查仍然没通过,辛苦再做一下代码black,就可以合进来啦!

@shnnosuke34725 hi,久等了。 会造成始终无法终止的根本原因,是指定的资源配置不足,导致tune无法分配到合适的资源。 tune.Tuner中的cluster_resource这一参数中,你指定了三个dict,这表明本次实验(也就是trainable)会在实验中启动三种远程的ray worker,每个worker分别会使用这三个dict中的资源。这样指定是正确的,但事实上FL训练过程中,alice、bob、charlie标签的使用量不止1个,而这里你指定了'alice':1,从而导致资源无法正常分配。这里每个dict中,应该让角色标签和CPU标签后的值一致,应该就能够正常分配资源了。 此外可能的问题: 1. 提供的脚本中,CPU的数量为16+16+12=44,如果不在sf.init中指定cpu的数量,请确保你的机器确实有这么多CPU,不然分配资源超额也可能有问题。 2. trainable实验最终会通过ray分配到远程执行,load_mnist这样的加载资源函数,应当放在trainable内执行,放在外面会涉及大量拷贝操作,且ray支持的拷贝量是有上限的,这个脚本应该就超额了。 另外,如果仅用于测试和科研,建议可以直接使用sf.init(debug_mode=True),开启debug模式+sf tune进行调优,这样可以免去很多复杂的资源指定,仅需要指定每个实验的CPU数量即可。 感谢提交相关问题,如果有合适使用场景,欢迎和我们联系,并提出你的问题和需求~

另外如果不使用资源支配功能,仅测试的话,cluster_resources也可以不填,默认单并行度。

> 求交结果没有问题的,后又做了200维特征的,求交日志也是在同样的地方卡了一段时间,只不过没450维的长。但后续做随机分割任务是成功了的 少特征没问题,随机分割成功,但是多特征有问题是吧?那考虑下是不是内存溢出oom了,运行过程中观察过内存用量吗?

`grep "Out of memory" /var/log/messages` 查看下oom的日志有没有

您好!这里对to_pandas()的理解有问题,to_pandas()只是将vdf或partition背后的存储形式修改为pandas,例如这里可以使用polars作为表的后端,用to_pandas()就可以修改为pandas作为表的后端。 而你这里并没有指定用什么作为后端,所以默认就是pandas作为后端存的。 我理解你这里的目标,是想获得明文的pandas表?如果是这样,应该使用: ```python alice_data_df = alice_partitions.data ``` 但要考虑reveal明文造成的安全性问题。

你这里是想用明文形式的dataframe进行预测? ```python v_df = read_csv({alice: alice_temp_path, bob: bob_temp_path}) ``` 如果使用sl_model,用这里的vdf就可以用来做predict的输入数据,不需要变成明文的pandas。

@muellerzr Yes, it is training/fine-tuning. I hope to fine-tune some layers of the llm on CPU and other layers o GPU, and implement Pipeline Parallelism. Does the `accelerate` have plans...

Thanks for your reply. I don't want to do weight offloading here, but I hope to use CPU and GPU at the same time in pipeline parallelism, for example, train...