Brandon Potter
68384da019
Update Notifier fixture to Block
...
[ROCm/rocshmem commit: 5b42cff96c ]
2024-09-10 07:10:21 -07:00
Brandon Potter
13ec689cdf
Updates to Notifier
...
[ROCm/rocshmem commit: 51c33b2a66 ]
2024-09-10 07:10:21 -07:00
Brandon Potter
4896235ada
Change read/write to load/store in Nofitier API
...
[ROCm/rocshmem commit: 039ea82777 ]
2024-09-10 07:10:21 -07:00
Brandon Potter
ef4a14e947
Fix problems with Notifier
...
[ROCm/rocshmem commit: 0c53a075f2 ]
2024-09-10 07:10:21 -07:00
Brandon Potter
cec6ba91a0
Partial notifier
...
[ROCm/rocshmem commit: c4b7e0d91b ]
2024-09-10 07:10:21 -07:00
Brandon Potter
4610659bf1
Add simple fine test
...
[ROCm/rocshmem commit: da93542c40 ]
2024-09-10 07:10:21 -07:00
Brandon Potter
94122cd208
Merge pull request #27 from ROCm/ipc_bringup
...
Ipc bringup
[ROCm/rocshmem commit: e9fb01ab6b ]
2024-09-10 09:06:51 -05:00
Brandon Potter
72c048d80a
Merge pull request #25 from mawad-amd/fix-bad-auto
...
Fix bad auto
[ROCm/rocshmem commit: 375d145913 ]
2024-09-09 16:30:17 -05:00
Avinash Kethineedi
a77375f5a0
Merge pull request #21 from avinashkethineedi/ipc_atomics
...
IPC atomics
[ROCm/rocshmem commit: fc45d7a0d3 ]
2024-09-09 14:23:21 -05:00
Avinash Kethineedi
c88645e402
Merge branch 'ipc_bringup' into ipc_atomics
...
[ROCm/rocshmem commit: e58077e3cf ]
2024-09-09 14:22:55 -05:00
Edgar Gabriel
c5be32329c
Merge pull request #22 from edgargabriel/topic/ipc_collectives
...
add support for sync_all, barrier_all, broadcast, fcollect, and alltoall
[ROCm/rocshmem commit: 7f6cc34239 ]
2024-09-09 14:14:57 -05:00
Edgar Gabriel
1ddc82fc28
remove pSync from internal_bcast functions
...
remove the pSync arguments from the internal_broadcast functions,
they are not used anyway.
[ROCm/rocshmem commit: dfcacdc4a3 ]
2024-09-09 12:06:30 -07:00
Avinash Kethineedi
1ca413a9cc
Merge pull request #23 from avinashkethineedi/fix_IPC_in_RO
...
Fix IPC in RO
[ROCm/rocshmem commit: 32657cb670 ]
2024-09-06 14:05:47 -05:00
Muhammad Awad
2a87c646f5
Fix bad auto
...
Signed-off-by: Muhammad Awad <MuhammadAbdelghaffar.Awad@amd.com >
[ROCm/rocshmem commit: b811b2b683 ]
2024-09-05 18:39:02 -05:00
avinashkethineedi
e381ea5478
remove local_pe calculation from puts, gets and atomics functions
...
* All the PEs are assumed to be accessible using IPC backend
[ROCm/rocshmem commit: 7bbf34d334 ]
2024-09-05 11:52:00 -07:00
avinashkethineedi
46176eeeff
Comment out ping pong test
...
* ping pong test fails sporadically
* issues with roc_shmem_wait_until
[ROCm/rocshmem commit: 9c9ef4ffd3 ]
2024-08-28 12:40:51 -07:00
avinashkethineedi
d71286ace4
Update IPC object
...
* Update the state of the IPC object in the RO context class with the instance created in the RO backend
[ROCm/rocshmem commit: 862421e0ca ]
2024-08-28 12:31:01 -07:00
Edgar Gabriel
caf0a7dfad
utils.hpp: silence warnings
...
silence some warnings when compiling with debug flags.
[ROCm/rocshmem commit: 1ffe62bb2e ]
2024-08-28 09:42:14 -07:00
Edgar Gabriel
6f93dd9585
ipc/context_ipc_device.cpp: set barrier_sync
...
set the barrier_sync variable on the context during
object creation
[ROCm/rocshmem commit: aae6295460 ]
2024-08-28 09:41:05 -07:00
avinashkethineedi
14a8bf726a
Add atomics
...
* Add atomic_add, atomic_set, atomic_cas, atomic_fetch_add and atomic_fetch_cas to IPC backend
[ROCm/rocshmem commit: e1e1ac6df6 ]
2024-08-28 08:30:46 -07:00
avinashkethineedi
1335d98f1f
Update IPC object
...
* Update the IPC object in the context class with the instance created in the IPC backend
[ROCm/rocshmem commit: 45a8cb3354 ]
2024-08-28 08:14:38 -07:00
Edgar Gabriel
9a380a65ff
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.
[ROCm/rocshmem commit: 0de3b5e6fc ]
2024-08-27 15:03:38 -07:00
Edgar Gabriel
f0127c9e21
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.
[ROCm/rocshmem commit: e2e30b5339 ]
2024-08-27 15:03:32 -07:00
Avinash Kethineedi
91789607fb
Merge pull request #20 from avinashkethineedi/ipc_teams
...
IPC Teams
[ROCm/rocshmem commit: 0c86939a30 ]
2024-08-23 15:28:50 -05:00
Avinash Kethineedi
a1b753b5a0
Merge pull request #19 from avinashkethineedi/ipc_gets_and_puts
...
IPC gets and puts
[ROCm/rocshmem commit: 1fbe08ed76 ]
2024-08-23 15:28:01 -05:00
Avinash Kethineedi
0cf5624aa5
Merge pull request #18 from avinashkethineedi/ipc_backend
...
IPC backend
[ROCm/rocshmem commit: 73365cfefd ]
2024-08-23 15:26:00 -05:00
avinashkethineedi
1432a6be71
Add buffers required for collectives
...
[ROCm/rocshmem commit: a9571ec002 ]
2024-08-22 09:28:09 -07:00
avinashkethineedi
6f8d2df73a
Add IPC teams
...
[ROCm/rocshmem commit: a59bdd4f6b ]
2024-08-22 09:15:44 -07:00
avinashkethineedi
6228db57e4
Add gets and puts functionality to IPC context
...
[ROCm/rocshmem commit: c8b0f2378e ]
2024-08-15 13:17:44 -07:00
avinashkethineedi
fe866aaea6
Update context_ipc_gtest.cpp to use IPCbackend
...
[ROCm/rocshmem commit: c9dbcf80c2 ]
2024-08-15 11:54:56 -07:00
avinashkethineedi
d06394fa2c
remove ipc_policy.{hpp & cpp} and context_ipc.{hpp & cpp}
...
* move ipc_policy.{hpp & cpp} to src
* rename context_ipc.{hpp & cpp} to context_ipc_device.{hpp & cpp}
[ROCm/rocshmem commit: b68867ee17 ]
2024-08-15 08:52:06 -07:00
avinashkethineedi
60fb77de73
Add IPC backend
...
* add backend_ipc.{cpp & hpp}
* rename context_ipc.{cpp & hpp} to context_ipc_device.{cpp & hpp}
* add host interface to IPC backend
* add context_ipc_host.{cpp & hpp} to support host interface
* add USE_RO compile flag to enable support for single backend interface at a time
* add ipc_single script to build rocSHMEM with IPC backend
[ROCm/rocshmem commit: 49779863c2 ]
2024-08-14 22:59:02 -07:00
avinashkethineedi
a13e2599d9
Code refactor
...
move ipc_policy.hpp and ipc_policy.cpp files to src, since they are used by all the conduits.
[ROCm/rocshmem commit: 24375a949e ]
2024-08-14 20:44:35 -07:00
Avinash Kethineedi
6be9903098
Merge pull request #16 from BKP/ipc_bringup_coarse_unit_08-07-24
...
Create unit tests for simple buffer transfers using coarse-grained memory
[ROCm/rocshmem commit: 733cb09e2a ]
2024-08-07 15:05:30 -05:00
Brandon Potter
bda68c964e
Add ipc unit_tests
...
[ROCm/rocshmem commit: 58c5a98b5d ]
2024-08-07 12:18:12 -07:00
Brandon Potter
a542e0a332
Fix memcpy_wave bug
...
[ROCm/rocshmem commit: c865fcd4bb ]
2024-08-07 11:37:45 -07:00
Edgar Gabriel
25c4ce2751
Merge pull request #11 from BKP/ipc_07-30-24
...
MI300X RO Support
[ROCm/rocshmem commit: efa075ffc6 ]
2024-08-01 15:34:41 -05:00
Brandon Potter
962f4bedf8
Add assembly for gfx94x
...
[ROCm/rocshmem commit: bb6e48dded ]
2024-07-31 14:14:24 -05:00
Edgar Gabriel
638ca35bf3
Merge pull request #10 from edgargabriel/topic/ipc-context
...
topic/ipc context
[ROCm/rocshmem commit: d21d5aa431 ]
2024-07-31 11:25:56 -05:00
Edgar Gabriel
7e446cfc81
unit_tests: add ipc_context tests
...
add the initial outline of an ipc_context unit test. The current test
only invokes the ipc_context constructor, more tests will be added later
as the class is being populated.
Also, at the moment the unit test takes an ROBackend as an argument for
the constructor, not sure whether this will be the final solution.
[ROCm/rocshmem commit: b1bc4a497a ]
2024-07-30 15:22:03 -07:00
Brandon Potter
21d8301c83
Move inline asm into separate file
...
[ROCm/rocshmem commit: 862ef5713f ]
2024-07-30 14:53:19 -05:00
Brandon Potter
61140c9a10
Move inline assembly into arch defines blocks
...
[ROCm/rocshmem commit: 73303ca2d2 ]
2024-07-30 12:56:32 -05:00
Edgar Gabriel
e3e8f13414
src/ipc: add context_ipc barebone code
...
[ROCm/rocshmem commit: de750ddacc ]
2024-07-26 08:22:33 -07:00
Edgar Gabriel
512c114caa
Merge pull request #9 from edgargabriel/topic/ipc-directory-reorg
...
src/ipc: IPC folder refactor
[ROCm/rocshmem commit: 6990f301b1 ]
2024-07-25 09:53:39 -05:00
Edgar Gabriel
edf3f98d66
src/ipc: IPC folder refactor
...
mv ipc_policy.{hpp,cpp} into a separate folder as a start for the
standalone IPC conduit.
Unit tests and functional tests pass on the developmpent system.
[ROCm/rocshmem commit: 1183006e20 ]
2024-07-25 07:33:41 -07:00
Edgar Gabriel
51c6d1fd7f
Merge pull request #7 from BKP/ft_07-12-24
...
Update functional test driver.sh script
[ROCm/rocshmem commit: a3c338c310 ]
2024-07-15 15:40:21 -05:00
Brandon Potter
13ba4a1894
Update functional_tests driver.sh script
...
[ROCm/rocshmem commit: ca36cc249e ]
2024-07-15 08:45:41 -07:00
Brandon Potter
aff61dc498
Create new ro_ipc config
...
[ROCm/rocshmem commit: 23f2983214 ]
2024-07-15 10:38:38 -05:00
Brandon Potter
b0963b2f2c
Remove CACHED_HEAP option
...
[ROCm/rocshmem commit: 39c5be18b1 ]
2024-07-15 10:18:20 -05:00
Avinash Kethineedi
c54af3b2e8
Merge pull request #5 from BKP/ut_07-11-24
...
Unit test fixes
[ROCm/rocshmem commit: ac3f87936f ]
2024-07-14 23:31:43 -05:00