-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[REQUEST]Does the current version support distributed fine-tuning on mac devices (M2-M4)? #7148
Comments
@hsoftxl, a user previously created initial support for Apple accelerators. However, I have not seen much activity since. This is a feature of great interest to us, but we lack both bandwidth and hardware to maintain on-par with other supported accelerators. Would you be interested in working on this? |
@tjruwase i can test this feature. I don't know if I can make any relevant code modifications because I haven't done this before But I am willing to do this |
@hsoftxl, thanks for offering to help with this. You can start by installing deepspeed and running the unit tests to see how much succeeds in your environment. |
pytest ================================================ ERRORS ================================================ BUILDING MODEL tests/unit/checkpoint/test_universal_checkpoint.py:217 tests/unit/checkpoint/test_universal_checkpoint.py:221 tests/unit/checkpoint/test_universal_checkpoint.py:225 tests/unit/inference/test_human_eval.py:12 tests/unit/inference/test_inference.py:351 tests/unit/inference/test_inference.py:437 tests/unit/inference/test_inference.py:483 tests/unit/inference/test_inference.py:515 tests/unit/inference/test_inference.py:556 tests/unit/inference/test_inference.py:611 tests/unit/inference/test_inference.py:652 tests/unit/inference/test_inference_config.py:13 tests/unit/inference/test_stable_diffusion.py:16 tests/unit/inference/v2/kernels/core_ops/test_bias_activation.py:66 tests/unit/inference/v2/kernels/core_ops/test_bias_activation.py:79 tests/unit/inference/v2/kernels/core_ops/test_bias_activation.py:92 tests/unit/inference/v2/kernels/core_ops/test_blas_linear.py:36 tests/unit/inference/v2/kernels/core_ops/test_blas_linear.py:54 tests/unit/inference/v2/kernels/core_ops/test_gated_activation.py:41 tests/unit/inference/v2/kernels/core_ops/test_gated_activation.py:63 tests/unit/inference/v2/kernels/core_ops/test_gated_activation.py:80 tests/unit/inference/v2/kernels/core_ops/test_gated_activation.py:98 tests/unit/inference/v2/kernels/core_ops/test_gated_activation.py:112 tests/unit/inference/v2/kernels/core_ops/test_gated_activation.py:118 tests/unit/inference/v2/kernels/core_ops/test_gated_activation.py:124 tests/unit/inference/v2/kernels/core_ops/test_gated_activation.py:130 tests/unit/inference/v2/kernels/core_ops/test_post_ln.py:26 tests/unit/inference/v2/kernels/core_ops/test_pre_ln.py:28 tests/unit/inference/v2/kernels/core_ops/test_rms_norm.py:66 tests/unit/inference/v2/kernels/core_ops/test_rms_norm.py:73 tests/unit/inference/v2/kernels/cutlass_ops/test_moe_gemm.py:23 tests/unit/inference/v2/kernels/cutlass_ops/test_moe_gemm.py:89 tests/unit/inference/v2/kernels/cutlass_ops/test_moe_gemm.py:98 tests/unit/inference/v2/kernels/cutlass_ops/test_moe_gemm.py:107 tests/unit/inference/v2/kernels/ragged_ops/test_atom_builder.py:16 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_flash.py:129 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_flash.py:140 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_flash.py:154 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_flash.py:167 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_flash.py:177 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_flash.py:189 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_kv_copy.py:14 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_kv_copy.py:47 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_kv_copy.py:80 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_rotary_emb.py:84 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_rotary_emb.py:128 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_rotary_emb.py:172 tests/unit/inference/v2/kernels/ragged_ops/test_blocked_rotary_emb.py:218 tests/unit/inference/v2/kernels/ragged_ops/test_logits_gather.py:30 tests/unit/inference/v2/kernels/ragged_ops/test_logits_gather.py:52 tests/unit/inference/v2/kernels/ragged_ops/test_logits_gather.py:76 tests/unit/inference/v2/kernels/ragged_ops/test_moe_gather.py:81 tests/unit/inference/v2/kernels/ragged_ops/test_moe_gather.py:104 tests/unit/inference/v2/kernels/ragged_ops/test_moe_scatter.py:29 tests/unit/inference/v2/kernels/ragged_ops/test_ragged_embed.py:106 tests/unit/inference/v2/kernels/ragged_ops/test_ragged_embed.py:120 tests/unit/inference/v2/kernels/ragged_ops/test_ragged_embed.py:130 tests/unit/inference/v2/kernels/ragged_ops/test_ragged_embed.py:148 tests/unit/inference/v2/kernels/ragged_ops/test_ragged_embed.py:162 tests/unit/inference/v2/kernels/ragged_ops/test_top_k_gating.py:54 tests/unit/inference/v2/kernels/ragged_ops/test_top_k_gating.py:90 tests/unit/inference/v2/kernels/ragged_ops/test_top_k_gating.py:101 tests/unit/inference/v2/kernels/ragged_ops/test_top_k_gating.py:110 tests/unit/inference/v2/kernels/ragged_ops/test_top_k_gating.py:148 tests/unit/inference/v2/model_implementations/parameters/test_contiguify.py:51 tests/unit/inference/v2/model_implementations/parameters/test_layer_inheritance.py:31 tests/unit/inference/v2/model_implementations/parameters/test_mapping.py:73 tests/unit/inference/v2/model_implementations/parameters/test_mapping.py:93 tests/unit/inference/v2/model_implementations/parameters/test_mapping.py:120 tests/unit/inference/v2/model_implementations/parameters/test_mapping.py:133 tests/unit/inference/v2/model_implementations/parameters/test_mapping.py:153 tests/unit/inference/v2/model_implementations/parameters/test_multi_parameter_layer.py:35 tests/unit/inference/v2/model_implementations/parameters/test_multi_parameter_layer.py:55 tests/unit/inference/v2/model_implementations/parameters/test_parameter_list.py:37 tests/unit/inference/v2/model_implementations/parameters/test_parameter_list.py:98 tests/unit/inference/v2/model_implementations/sharding/test_attn_out_sharding.py:26 tests/unit/inference/v2/model_implementations/sharding/test_attn_out_sharding.py:54 tests/unit/inference/v2/model_implementations/sharding/test_attn_out_sharding.py:92 tests/unit/inference/v2/model_implementations/sharding/test_mlp_sharding.py:49 tests/unit/inference/v2/model_implementations/sharding/test_mlp_sharding.py:85 tests/unit/inference/v2/model_implementations/sharding/test_qkv_sharding.py:40 tests/unit/inference/v2/model_implementations/sharding/test_qkv_sharding.py:67 tests/unit/inference/v2/model_implementations/sharding/test_qkv_sharding.py:112 tests/unit/inference/v2/model_implementations/sharding/test_qkv_sharding.py:146 tests/unit/inference/v2/model_implementations/sharding/test_qkv_sharding.py:193 tests/unit/inference/v2/model_implementations/sharding/test_qkv_sharding.py:209 tests/unit/inference/v2/model_implementations/sharding/test_qkv_sharding.py:228 tests/unit/inference/v2/model_implementations/sharding/test_qkv_sharding.py:240 tests/unit/inference/v2/modules/test_blas_linear_module.py:89 tests/unit/inference/v2/modules/test_blas_linear_module.py:106 tests/unit/inference/v2/modules/test_blocked_attn.py:127 tests/unit/inference/v2/modules/test_blocked_attn.py:138 tests/unit/inference/v2/modules/test_blocked_attn.py:152 tests/unit/inference/v2/modules/test_blocked_attn.py:165 tests/unit/inference/v2/modules/test_blocked_attn.py:175 tests/unit/inference/v2/modules/test_blocked_attn.py:187 tests/unit/inference/v2/modules/test_blocked_attn.py:198 tests/unit/inference/v2/modules/test_cuda_pre_ln_module.py:74 tests/unit/inference/v2/modules/test_cuda_pre_ln_module.py:80 tests/unit/inference/v2/modules/test_cuda_pre_ln_module.py:86 tests/unit/inference/v2/modules/test_custom_module.py:44 tests/unit/inference/v2/modules/test_cutlass_moe.py:153 tests/unit/inference/v2/modules/test_cutlass_moe.py:165 tests/unit/inference/v2/modules/test_cutlass_moe.py:181 tests/unit/inference/v2/modules/test_cutlass_moe.py:193 tests/unit/inference/v2/modules/test_cutlass_moe.py:205 tests/unit/inference/v2/modules/test_cutlass_moe.py:273 tests/unit/inference/v2/modules/test_post_ln_module.py:28 tests/unit/inference/v2/modules/test_pre_rms_module.py:74 tests/unit/inference/v2/modules/test_pre_rms_module.py:80 tests/unit/inference/v2/modules/test_pre_rms_module.py:86 tests/unit/inference/v2/modules/test_quantized_linear_module.py:154 tests/unit/inference/v2/modules/test_quantized_linear_module.py:170 tests/unit/inference/v2/ragged/test_blocked_allocator.py:15 tests/unit/inference/v2/ragged/test_blocked_allocator.py:22 tests/unit/inference/v2/ragged/test_blocked_allocator.py:50 tests/unit/inference/v2/ragged/test_blocked_allocator.py:58 tests/unit/inference/v2/ragged/test_blocked_allocator.py:90 tests/unit/inference/v2/ragged/test_blocked_allocator.py:99 tests/unit/inference/v2/ragged/test_blocked_allocator.py:117 tests/unit/inference/v2/ragged/test_manager_configs.py:13 tests/unit/inference/v2/ragged/test_manager_configs.py:19 tests/unit/inference/v2/ragged/test_manager_configs.py:25 tests/unit/inference/v2/ragged/test_manager_configs.py:31 tests/unit/inference/v2/ragged/test_manager_configs.py:37 tests/unit/inference/v2/ragged/test_manager_configs.py:43 tests/unit/inference/v2/ragged/test_manager_configs.py:49 tests/unit/inference/v2/ragged/test_manager_configs.py:55 tests/unit/inference/v2/ragged/test_ragged_wrapper.py:19 tests/unit/inference/v2/ragged/test_ragged_wrapper.py:32 tests/unit/inference/v2/ragged/test_ragged_wrapper.py:66 tests/unit/model_parallelism/test_autotp_training.py:164 tests/unit/model_parallelism/test_autotp_training.py:275 tests/unit/model_parallelism/test_configurable_parallel_mp.py:61 tests/unit/model_parallelism/test_configurable_parallel_mp.py:89 tests/unit/model_parallelism/test_configurable_parallel_pp.py:234 tests/unit/model_parallelism/test_configurable_parallel_pp.py:241 tests/unit/model_parallelism/test_configurable_parallel_pp.py:248 tests/unit/model_parallelism/test_configurable_parallel_pp.py:255 tests/unit/model_parallelism/test_configurable_parallel_pp.py:262 tests/unit/ops/transformer/inference/test_attention.py:22 tests/unit/runtime/half_precision/onebit/test_onebit.py:1163 tests/unit/runtime/zero/test_nvme_checkpointing.py:21 tests/unit/runtime/zero/test_zeropp.py:64 tests/unit/runtime/zero/test_zeropp.py:190 -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html |
run pytest , got this result |
Does the current version support distributed fine-tuning on mac devices (M2-M4)?
Thanks
The text was updated successfully, but these errors were encountered: