Граф коммитов

87 Коммитов

Автор SHA1 Сообщение Дата
avinashkethineedi c1bcf336b4 Add script to run unit tests 2024-10-08 18:12:07 +00:00
Avinash Kethineedi b628903e56 Merge pull request #35 from avinashkethineedi/ipc_fence_quiet
IPC fence and quiet functionality
2024-10-04 15:13:46 -05:00
avinashkethineedi 92fb1abaf2 Add team information to the context
* Update roc_shmem_ctx_fence API to use team-relative PE numbering
* Update backend to populate team_opaque member of ROC_SHMEM_CTX_DEFAULT (used to store information about the team wrt TEAM_WORLD)
2024-10-04 17:56:15 +00:00
avinashkethineedi 979aed105a Add fence and quiet functionality
* Perform atomic stores to enforce memory ordering
2024-10-03 06:28:12 +00:00
Brandon Potter 787cf0ff3f Merge pull request #31 from BKP/ipc_bringup_fine_unit_09-26-24
Add IPC Simple Buffer Fine-grained Unit Tests
2024-10-01 15:12:30 -05:00
Avinash Kethineedi 64bc3c350a Merge pull request #33 from avinashkethineedi/CI/CD
make MPI_Init and MPI_Finalize independent of the test fixtures
2024-10-01 15:08:27 -05:00
avinashkethineedi 2f0739d823 Add MPI_THREAD_MULTIPLE check 2024-10-01 20:05:15 +00:00
Brandon Potter 24b928a007 Poll the signal from one thread instead of all 2024-10-01 15:01:37 -05:00
avinashkethineedi 0f7dc70894 make MPI_Init and MPI_Finalize independent of the test fixtures 2024-10-01 18:33:36 +00:00
Brandon Potter db221b022a Change notifier max thread block value to account for MI300 CPX 2024-09-27 11:17:53 -05:00
Brandon Potter 56b2ed699b Reset config options to original values 2024-09-27 11:17:11 -05:00
Brandon Potter f85c46ec0a Bugfixes for the ipc unit tests 2024-09-26 13:40:05 -05:00
Edgar Gabriel 74ee25817e Merge pull request #30 from edgargabriel/topic/assembly-mi300-fix
fix assembly switch/case instruction
2024-09-23 12:12:43 -05:00
Edgar Gabriel c133ea18a5 fix assembly switch/case instruction
move the case statement out of the architecture specific section.
2024-09-20 20:25:40 +00:00
Brandon Potter 46fdb1851c Update fine-grained simple tests 2024-09-10 09:35:41 -07:00
Brandon Potter 86a2f34539 Add missing header file 2024-09-10 09:35:02 -07:00
Brandon Potter 7411c45591 Conservatively use SEQ_CST atomics in IPC conduit 2024-09-10 09:34:45 -07:00
Brandon Potter 2806e1be79 Intermediate commit for rebase 2024-09-10 07:10:22 -07:00
Brandon Potter 678564ba3c Add an extra assertion check for nullptr 2024-09-10 07:10:22 -07:00
Brandon Potter 45c29e7734 Minor updates to Nofifier sync method 2024-09-10 07:10:21 -07:00
Brandon Potter 359d6be797 Add sync method to notifier class 2024-09-10 07:10:21 -07:00
Brandon Potter 1289d50be5 Change notifier fixture to prep for other fixtures 2024-09-10 07:10:21 -07:00
Brandon Potter 5b42cff96c Update Notifier fixture to Block 2024-09-10 07:10:21 -07:00
Brandon Potter 51c33b2a66 Updates to Notifier 2024-09-10 07:10:21 -07:00
Brandon Potter 039ea82777 Change read/write to load/store in Nofitier API 2024-09-10 07:10:21 -07:00
Brandon Potter 0c53a075f2 Fix problems with Notifier 2024-09-10 07:10:21 -07:00
Brandon Potter c4b7e0d91b Partial notifier 2024-09-10 07:10:21 -07:00
Brandon Potter da93542c40 Add simple fine test 2024-09-10 07:10:21 -07:00
Brandon Potter e9fb01ab6b Merge pull request #27 from ROCm/ipc_bringup
Ipc bringup
2024-09-10 09:06:51 -05:00
Brandon Potter 375d145913 Merge pull request #25 from mawad-amd/fix-bad-auto
Fix bad auto
2024-09-09 16:30:17 -05:00
Avinash Kethineedi fc45d7a0d3 Merge pull request #21 from avinashkethineedi/ipc_atomics
IPC atomics
2024-09-09 14:23:21 -05:00
Avinash Kethineedi e58077e3cf Merge branch 'ipc_bringup' into ipc_atomics 2024-09-09 14:22:55 -05:00
Edgar Gabriel 7f6cc34239 Merge pull request #22 from edgargabriel/topic/ipc_collectives
add support for sync_all, barrier_all, broadcast, fcollect, and alltoall
2024-09-09 14:14:57 -05:00
Edgar Gabriel dfcacdc4a3 remove pSync from internal_bcast functions
remove the pSync arguments from the internal_broadcast functions,
they are not used anyway.
2024-09-09 12:06:30 -07:00
Avinash Kethineedi 32657cb670 Merge pull request #23 from avinashkethineedi/fix_IPC_in_RO
Fix IPC in RO
2024-09-06 14:05:47 -05:00
Muhammad Awad b811b2b683 Fix bad auto
Signed-off-by: Muhammad Awad <MuhammadAbdelghaffar.Awad@amd.com>
2024-09-05 18:39:02 -05:00
avinashkethineedi 7bbf34d334 remove local_pe calculation from puts, gets and atomics functions
* All the PEs are assumed to be accessible using IPC backend
2024-09-05 11:52:00 -07:00
avinashkethineedi 9c9ef4ffd3 Comment out ping pong test
* ping pong test fails sporadically
* issues with roc_shmem_wait_until
2024-08-28 12:40:51 -07:00
avinashkethineedi 862421e0ca Update IPC object
* Update the state of the IPC object in the RO context class with the instance created in the RO backend
2024-08-28 12:31:01 -07:00
Edgar Gabriel 1ffe62bb2e utils.hpp: silence warnings
silence some warnings when compiling with debug flags.
2024-08-28 09:42:14 -07:00
Edgar Gabriel aae6295460 ipc/context_ipc_device.cpp: set barrier_sync
set the barrier_sync variable on the context during
object creation
2024-08-28 09:41:05 -07:00
avinashkethineedi e1e1ac6df6 Add atomics
* Add atomic_add, atomic_set, atomic_cas, atomic_fetch_add and atomic_fetch_cas to IPC backend
2024-08-28 08:30:46 -07:00
avinashkethineedi 45a8cb3354 Update IPC object
* Update the IPC object in the context class with the instance created in the IPC backend
2024-08-28 08:14:38 -07:00
Edgar Gabriel 0de3b5e6fc first cut on collectives and sync
code is based on the GPUIB implementations of the routines, which seem
however generic enough to work also for the IPC conduit.

Some code is in for broadcast, fcollect, and alltoall.
2024-08-27 15:03:38 -07:00
Edgar Gabriel e2e30b5339 remove device wait_until functions
adding the device versions of the wait_until* and test functions in the
ipc folder leads to linking errors of the functional tests. Remove them
and use for now the upper level versions of the functions, similarly to
the RO conduit. Might have to revisit this later again.
2024-08-27 15:03:32 -07:00
Avinash Kethineedi 0c86939a30 Merge pull request #20 from avinashkethineedi/ipc_teams
IPC Teams
2024-08-23 15:28:50 -05:00
Avinash Kethineedi 1fbe08ed76 Merge pull request #19 from avinashkethineedi/ipc_gets_and_puts
IPC gets and puts
2024-08-23 15:28:01 -05:00
Avinash Kethineedi 73365cfefd Merge pull request #18 from avinashkethineedi/ipc_backend
IPC backend
2024-08-23 15:26:00 -05:00
avinashkethineedi a9571ec002 Add buffers required for collectives 2024-08-22 09:28:09 -07:00
avinashkethineedi a59bdd4f6b Add IPC teams 2024-08-22 09:15:44 -07:00