Avinash Kethineedi
b84b5638cf
Add AtomicWFQueue implementation and tests ( #62 )
...
* feat: Add AtomicWFQueue implementation
- Implemented wavefront-safe atomic FIFO queue ensuring first-come, first-serve order
- Added efficient synchronization using atomics
- Enhanced `dequeue` to wait until an element is available
* test: Add GTest for AtomicWFQueue
- Implemented unit tests for AtomicWFQueue using GoogleTest framework
- Added tests for `enqueue`, `dequeue`, and edge cases
- Ensured synchronization behavior and correctness under concurrent conditions
* Add assert in `enqueue` and update atomics
- Added an assert in the `enqueue` function to ensure it fails if the queue is full
2025-03-25 00:45:19 -05:00
Yiltan
3428957de9
Sync Reverse Offload Scripts ( #52 )
...
* Sync Reverse Offload scripts
- Disable IPC unit tests when IPC is not available in the rocSHMEM configuration
* Added missing ptr in ipc_policy
2025-03-19 14:31:07 -04:00
Yiltan
96424a59a8
Added option to build only tests and link to an external rocshmem library ( #43 )
...
* Rearrange CMakefile
* Enable linking to external rocshmem library
* Minor fix for the functional test driver
* ROCSHMEM_HOME detection fixed
2025-03-13 15:49:50 -04:00
Yiltan
487e5b7d0f
Fix ROCm 6.4 warnings ( #47 )
...
* Removed __AMDGCN_WAVEFRONT_SIZE
* Added unit test to validate WF_SIZE
2025-02-24 13:34:13 -05:00
Brandon Potter
b1f6621f33
Fix signal calculation bug for fine-tiled unit tests
2024-12-19 18:34:47 +00:00
Yiltan Temucin
fa0858833e
Remove comparisons of signed to unsigned values
2024-12-12 10:21:08 -06:00
Yiltan Temucin
b60a460681
Use ROCm-CMake
2024-12-06 15:49:41 -06:00
Brandon Potter
46f0b42ac3
Merge pull request #48 from BKP/ipc_fine_tiled_unit_11-04-24
...
Add tiled fine-grained unit tests
2024-11-25 14:36:04 -06:00
Yiltan Temucin
50e46847c6
Explicitly require rocPRIM and rocThrust.
2024-11-19 08:54:18 -06:00
Brandon Potter
03719bbb0e
Update tests/unit_tests/ipc_impl_tiled_fine_gtest.cpp
...
Co-authored-by: Avinash Kethineedi <avinash.kethineedi@amd.com >
2024-11-14 13:08:20 -06:00
Brandon Potter
d241015e0f
Add tiled fine-grained unit tests
2024-11-04 17:16:07 -06:00
Brandon Potter
749d9f0781
Convert simple fine tests into parameterized tests
2024-11-04 10:46:50 -06: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
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
avinashkethineedi
2f0739d823
Add MPI_THREAD_MULTIPLE check
2024-10-01 20:05:15 +00: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
db221b022a
Change notifier max thread block value to account for MI300 CPX
2024-09-27 11:17:53 -05:00
Brandon Potter
f85c46ec0a
Bugfixes for the ipc unit tests
2024-09-26 13:40:05 -05:00
Brandon Potter
46fdb1851c
Update fine-grained simple tests
2024-09-10 09:35:41 -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
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
da93542c40
Add simple fine test
2024-09-10 07:10:21 -07:00
avinashkethineedi
c9dbcf80c2
Update context_ipc_gtest.cpp to use IPCbackend
2024-08-15 11:54:56 -07:00
avinashkethineedi
24375a949e
Code refactor
...
move ipc_policy.hpp and ipc_policy.cpp files to src, since they are used by all the conduits.
2024-08-14 20:44:35 -07:00
Brandon Potter
58c5a98b5d
Add ipc unit_tests
2024-08-07 12:18:12 -07:00
Edgar Gabriel
b1bc4a497a
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.
2024-07-30 15:22:03 -07:00
Brandon Potter
afd51b3cbb
Disable forward_list unit_test
2024-07-11 10:22:36 -07:00
Brandon Potter
770890a107
Remove SpinEBOBlockMutex usage and unit tests
2024-07-11 10:12:19 -07:00
Brandon Potter
3aaf29399c
Disable unit_test for slab allocator
2024-07-11 08:49:36 -07:00
Brandon Potter
ea8f264a11
Transfer files from RAD repository
2024-07-01 09:57:08 -05:00