Graf commitů

118 Commity

Autor SHA1 Zpráva Datum
Edgar Gabriel 1fbb89bc73 ipc: add ring_allreduce algorithms
add the ring allreduce algorithm to the ipc conduit in order to be able
to execute slightly largers reductions.
2024-10-24 15:07:17 +00:00
Edgar Gabriel ba21cb7b85 ipc/to_all: add direct allreduce algorithm
add a simple version of an allreduce algorithm as a starting point.
2024-10-24 15:07:14 +00:00
Brandon Potter 416dffa129 Merge pull request #34 from BKP/ipc_parameterized_simple_tests_10-01-24
IPC Parameterized Simple Tests
2024-10-24 08:23:26 -05:00
Avinash Kethineedi 8a16968cf2 Merge pull request #41 from avinashkethineedi/collective_routine_buffers
Fine grained memory buffers for work/sync arrays
2024-10-23 23:33:48 -05:00
Avinash Kethineedi e594a9cb85 Merge pull request #42 from avinashkethineedi/fix_quiet/fence
Fix quiet and fence of default context
2024-10-22 12:56:43 -05:00
avinashkethineedi d5ea5868e3 Fix quiet and fence of default context
* Update tinfo of default context
2024-10-22 16:18:05 +00:00
avinashkethineedi 6685d0ab60 Add fine grained memory buffers for work/sync arrays
* Add interanl put_mem/get_mem{_wave, _wg} functions to read/write to work/sync arrays
* Add condition check to ensure all MPI processes are on the same compute node for IPC conduit
2024-10-21 15:28:39 +00:00
Yiltan b922bdcf4c Merge pull request #39 from Yiltan/LWPRHMEM-75-API-differences
LWPRHMEM-75 API Differences
2024-10-18 15:27:34 -04:00
Avinash Kethineedi 892b4e2436 Merge pull request #40 from avinashkethineedi/functional_tests/puts_gets
Functional tests {wave, wg} puts and gets
2024-10-17 17:23:05 -05:00
avinashkethineedi 18a1bdd0ac Use C++ iota function to reset buffers and use its values for verification
* Update functional test script to include new tests
2024-10-15 20:23:25 +00:00
Avinash Kethineedi e981f61693 Merge branch 'ROCm:develop' into functional_tests/puts_gets 2024-10-14 10:27:54 -05:00
Yiltan Hassan Temucin 8b3854b252 updated atomic_fetch() parameters 2024-10-11 13:34:28 -07:00
Yiltan Hassan Temucin 722a5f0731 updated *_wait* APIs to use int rather than roc_shmem_cmps 2024-10-11 13:34:28 -07:00
Yiltan Hassan Temucin bcf3fdff10 *_wait* routines changed parameter from ptr to ivars to match OpenSHMEM 2024-10-11 13:34:28 -07:00
Brandon Potter ce0ca36d37 Merge branch 'ROCm:develop' into ipc_parameterized_simple_tests_10-01-24 2024-10-11 12:49:56 -05:00
Brandon Potter e419a8b963 Merge pull request #29 from ROCm/improve-ib-latency
Vectorize WQE segments writes
2024-10-11 11:55:48 -05:00
Yiltan 8015a453ff Merge pull request #36 from Yiltan/LWPRHMEM-71-add-coop-groups
Add cooperative groups for sync collective
2024-10-11 12:55:33 -04:00
Yiltan Hassan Temucin 509277c034 fixed notifier bug 2024-10-10 06:45:43 -07:00
Yiltan Hassan Temucin b1134e8633 added notifier->sync() when we are not using cooperative groups
updated scope bug
2024-10-09 13:11:28 -07:00
Yiltan Hassan Temucin 63667a3167 Added Cooperative Groups configure option and header 2024-10-09 13:11:12 -07:00
Yiltan Hassan Temucin 1baa071edf Fix initialization order bug 2024-10-09 13:11:12 -07:00
Yiltan Hassan Temucin e2f6a65284 fixed barrier issue on MI250X 2024-10-08 13:18:04 -07:00
Yiltan Hassan Temucin 120453c75c added .gitignore, we do not want to include the build directory in our commits 2024-10-08 13:18:04 -07:00
Avinash Kethineedi d4bcd11262 Merge pull request #37 from avinashkethineedi/unit_test_script
Unit tests script
2024-10-08 15:05:58 -05:00
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
Brandon Potter 526811957b Use gtest parameterized test macros for IPC simple
The IPC simple test fixtures had replicated code in many places.
This changeset removes most of the duplication in the relevant files.
2024-10-01 14:57:21 -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 0659f8d93c Poll the signal from one thread instead of all 2024-09-27 15:17:57 -05: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
Muhammad Awad 3162d49b56 Vectorize WQe segments writes
Signed-off-by: Muhammad Awad <MuhammadAbdelghaffar.Awad@amd.com>
2024-09-17 20:34:18 -05: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