-sdy-aggressive-propagate
Menjalankan algoritma penyebaran sharding agresif.
Memperluas sharding dengan strategi penyebaran faktor yang agresif. Strategi dasar hanya menyebarkan sharding tanpa konflik, sedangkan strategi agresif menyelesaikan konflik. Agregat yang lebih tinggi dapat mengurangi jejak memori dengan mengorbankan potensi komunikasi.
Opsi:
- Semua opsi dari
BasicPropagationPass
-propagation-strategy
: strategi penyebaran faktor yang akan digunakan ###-sdy-basic-propagate
Menjalankan algoritma penyebaran sharding dasar.
Algoritma propagasi dasar adalah strategi propagasi terendah dalam hierarki, yang tidak melakukan resolusi konflik apa pun, dan sebagai gantinya menyebarkan sumbu yang kompatibel di antara semua operand dan hasil.
Opsi:
-keep-sharding-rules
: apakah akan mempertahankan aturan sharding op yang ada dan dibuat-module-dump-directory
: tempat untuk membuang modul yang ditulis ulang untuk proses debug-conservative-propagation
: apakah akan melarang sumbu pemisahan dan sumbu sharding yang tidak dapat dibagi selama penyebaran ###-sdy-op-priority-propagate
Menjalankan algoritma propagasi prioritas operasi.
Memperluas sharding dalam iterasi, berdasarkan serangkaian heuristik op. Setiap heuristika menentukan apakah akan menyebarkan ke arah maju, mundur, atau kedua arah untuk operasi tertentu.
Ini dimulai dari prioritas op 0 dan meningkat hingga semua heuristik op telah habis dan program telah mencapai titik tetap.
Untuk prioritas p, semua heuristik op dipertimbangkan dari 0 <= i < p. Arah
yang paling ekspresif dipilih untuk setiap op, dengan
BOTH > BACKWARD == FORWARD > NONE
. Jika selama iterasi ini,
FORWARD
/BACKWARD
terlihat terlebih dahulu, lalu BACKWARD
/FORWARD
terlihat,
arahnya adalah BOTH
.
Strategi penyebaran ini memperluas strategi penyebaran agresif, yang
berarti bahwa pada setiap iterasi prioritas operasi, penyebaran agresif penuh
akan diterapkan (lihat AggressivePropagationPass
).
Opsi:
- Semua opsi dari
AggressivePropagationPass
-run-op-priority-propagation
: apakah akan menjalankan (atau melewati) penyebaran prioritas op ###-sdy-populate-op-sharding-rules
Mengisi semua operasi terdaftar dengan OpShardingRuleAttr
.
Mengisi semua operasi terdaftar dengan OpShardingRuleAttr
, yang digunakan untuk
men-debug/menguji aturan sharding terdaftar. Propagasi sudah melakukannya tepat waktu, tetapi kartu ini melakukannya sekaligus.
Opsi
-conservative-propagation : whether to disllow rules that can propagate non-divisible sharding axes
-sdy-user-priority-propagate
Menjalankan algoritma penyebaran prioritas pengguna.
Memperluas sharding dalam iterasi, mulai dari prioritas tertinggi (angka terendah, biasanya p0) hingga prioritas terendah (angka tertinggi). Dengan kata lain, pada iterasi ke-i, hanya sharding dimensi dengan prioritas <=i yang di-propagate.
Strategi propagasi ini memperluas strategi propagasi prioritas op,
yang berarti bahwa pada setiap iterasi prioritas pengguna, propagasi prioritas op
penuh diterapkan (lihat OpPriorityPropagationPass
).
Opsi:
- Semua opsi dari
OpPriorityPropagationPass