Commit Graph

19 Commits

Author SHA1 Message Date
Avinash Kethineedi 426bbf525b Update Barrier_All and Sync_All APIs (#72)
* Fix deadlock in `rocshmem_ctx_wg_barrier_all` API in IPC conduit by adding per-context pSync buffers and context IDs
  - Added separate pSync buffers for each device context
  - Resolved deadlock when invoking barrier API (`rocshmem_ctx_wg_barrier_all`) concurrently from multiple contexts

* Update barrier_all functional tests for multi-context support

* Add thread, wavefront, and workgroup-level barrier_all APIs in IPC and RO conduits
  - Implemented barrier_all APIs at thread, wavefront, and workgroup granularity
  - Added support in both IPC and RO conduits
  - Updated functional tests to cover all `barrier_all` APIs

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

[ROCm/rocshmem commit: c652f58cef]
2025-04-02 11:58:55 -05:00
Edgar Gabriel 2ab585ce8d add uniqueID initialization (#69)
add the interfaces required to support rocshmem initialization
through the uniqueID mechanism. At the moment this still maps to
MPI initialization underneath the hood, but adding the functions might
simplify the porting of some applications to rocshmem. In addition, if
we need to transition away from MPI one day, this is also one step into
this direction.

[ROCm/rocshmem commit: e9f6227d75]
2025-03-28 16:34:00 -05:00
Edgar Gabriel 1ee9b72449 add rocshmem_barrier() (#61)
* add team-barrier implementation

add a team-barrier API and implementation in the IPC and RO conduit.
Clean up some of the logic in the RO Conduit to distinguish between
sync, sync_all, barrier, and barrier_all.

* add team_barrier_tests to functional tests

[ROCm/rocshmem commit: bcbc42e78f]
2025-03-24 11:23:03 -05:00
avinashkethineedi 6c70aee32e Remove rocshmem_timer function
[ROCm/rocshmem commit: 21dbd5cc5e]
2025-02-17 17:10:51 +00:00
Yiltan Temucin 8da69cf1f4 Renamed debug.hpp to rocshmem_debug.hpp
[ROCm/rocshmem commit: 658915ed35]
2024-12-06 15:49:50 -06:00
avinashkethineedi 29b0518afc Rename config.h to roc_shmem_config.h
[ROCm/rocshmem commit: 6486e29078]
2024-12-06 01:08:13 +00:00
avinashkethineedi 52088167ae Add header files based on sections in OpenSHMEM specifications
* rocshmem_RMA.hpp
* rocshmem_AMO.hpp
* rocshmem_SIG_OP.hpp
* rocshmem_COLL.hpp
* rocshmem_P2P_SYNC.hpp
* rocshmem_RMA_X.hpp


[ROCm/rocshmem commit: 3117a47b8d]
2024-12-05 23:24:10 +00:00
avinashkethineedi 04daad3625 Merge branch PR #55 into naming_scheme
[ROCm/rocshmem commit: d8ce066adc]
2024-12-04 21:46:38 +00:00
Brandon Potter 913ce47ef1 Use new naming scheme
[ROCm/rocshmem commit: fd8dbc7fb6]
2024-11-25 14:25:29 -06:00
Yiltan Temucin ba618ba7a9 Added Signalling Operations
[ROCm/rocshmem commit: d8f44e4436]
2024-11-22 15:36:17 -06:00
Yiltan Temucin 40e28826c9 converted roc_shmemx to roc_shmem
[ROCm/rocshmem commit: c2b736ef3d]
2024-11-12 08:37:56 -06:00
Yiltan Hassan Temucin f887e9b886 removed external access to non-team based reduce
[ROCm/rocshmem commit: 9aa9aea7e6]
2024-11-06 09:46:47 -06:00
Yiltan Hassan Temucin 7f3dd33144 modified team based to_all -> reduce
[ROCm/rocshmem commit: 997eb69b5a]
2024-11-06 09:46:43 -06:00
avinashkethineedi 058aa3ccf3 Remove device-side active-set-based broadcast API interface from rocSHMEM
[ROCm/rocshmem commit: e1ff06913c]
2024-10-29 19:04:49 +00:00
avinashkethineedi 9f9ecd9a38 Remove the device-side active-set-based reduction API interface from rocSHMEM
[ROCm/rocshmem commit: c22048112e]
2024-10-28 21:35:14 +00:00
Yiltan Hassan Temucin 31fe937259 updated atomic_fetch() parameters
[ROCm/rocshmem commit: 8b3854b252]
2024-10-11 13:34:28 -07:00
Yiltan Hassan Temucin 3d0fca0387 updated *_wait* APIs to use int rather than roc_shmem_cmps
[ROCm/rocshmem commit: 722a5f0731]
2024-10-11 13:34:28 -07:00
Yiltan Hassan Temucin 496f06dd2b *_wait* routines changed parameter from ptr to ivars to match OpenSHMEM
[ROCm/rocshmem commit: bcf3fdff10]
2024-10-11 13:34:28 -07:00
Brandon Potter ad4ab69c19 Transfer files from RAD repository
[ROCm/rocshmem commit: ea8f264a11]
2024-07-01 09:57:08 -05:00