Update Barrier and Sync APIs (#73)

* Add thread, wavefront, and workgroup-level `barrier` APIs in IPC and RO conduits; remove collectives on default context
 - Implemented `barrier` APIs for thread, wavefront, and workgroup scopes
 - Added support into both IPC and RO conduits
 - Added functional tests to cover all `barrier` APIs
 - Removed collective operations on default context

* Add thread, wavefront, and workgroup-level `sync` APIs in IPC and RO conduits.
  - Implemented `sync` APIs for thread, wavefront, and workgroup scopes
  - Added support into both IPC and RO conduits
  - Added functional tests to cover all `sync` APIs

* update naming convention for context-based `barrier` APIs

[ROCm/rocshmem commit: dc61bca066]
このコミットが含まれているのは:
Avinash Kethineedi
2025-04-08 11:25:31 -05:00
committed by GitHub
コミット 9bd2b04899
16個のファイルの変更347行の追加67行の削除
+6
ファイルの表示
@@ -132,6 +132,9 @@ void Backend::dump_stats() {
printf("BarrierAll %llu\n", device_stats.getStat(NUM_BARRIER_ALL));
printf("WAVE_BarrierAll %llu\n", device_stats.getStat(NUM_BARRIER_ALL_WAVE));
printf("WG_BarrierAll %llu\n", device_stats.getStat(NUM_BARRIER_ALL_WG));
printf("Barrier %llu\n", device_stats.getStat(NUM_BARRIER));
printf("WAVE_Barrier %llu\n", device_stats.getStat(NUM_BARRIER_WAVE));
printf("WG_Barrier %llu\n", device_stats.getStat(NUM_BARRIER_WG));
printf("Wait Until %llu\n", device_stats.getStat(NUM_WAIT_UNTIL));
printf("Wait Until Any %llu\n", device_stats.getStat(NUM_WAIT_UNTIL_ANY));
printf("Wait Until All %llu\n", device_stats.getStat(NUM_WAIT_UNTIL_ALL));
@@ -157,6 +160,9 @@ void Backend::dump_stats() {
printf("SyncAll %llu\n", device_stats.getStat(NUM_SYNC_ALL));
printf("WAVE_SyncAll %llu\n", device_stats.getStat(NUM_SYNC_ALL_WAVE));
printf("WG_SyncAll %llu\n", device_stats.getStat(NUM_SYNC_ALL_WG));
printf("Sync %llu\n", device_stats.getStat(NUM_SYNC));
printf("WAVE_Sync %llu\n", device_stats.getStat(NUM_SYNC_WAVE));
printf("WG_Sync %llu\n", device_stats.getStat(NUM_SYNC_WG));
const auto& host_stats{globalHostStats};
printf("HOST STATS\n");