Commit Graph

44 Commits

Author SHA1 Message Date
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 7d9e82fb34 Bug fix for PR43 (#54) 2025-03-19 09:39:07 -04:00
Avinash Kethineedi aa3121a967 Update RMA functional tests (#50)
* Update primitive tests for multi-workgroup support

* Update workgroup primitive tests for multi-workgroup support

* Update workfront primitive tests for multi-workgroup support

* Update team based primitive tests for multi-workgroup support

* Update RMA functional tests to capture timing after quiet call
   - Modified RMA functional tests to record the time after a `quiet` call in thread, wavefront, and workgroup RMA calls.

* Improve error handling and memory management
   - Replaced `cout` with `cerr` for improved error reporting.
   - Ensured all allocated memory is freed when `rocshmem_malloc` fails.

* Update start time in primitive tests and latency calculations
   - Modified primitive tests to capture the earliest start time.
   - Updated latency calculations in functional tests.

* Remove `GetSwarmTester`

* Update start time in team primitive tests

* Invoke quiet call from a single thread within a block on a rocshmem context
2025-03-18 14:39:57 -05:00
Avinash Kethineedi df4ad2c04d Refactor RO backend data structures (#49)
- Remove hdp and ipc pointers from BlockHandle, align RO stats with RO contexts

- Add run commands for `rocshmem_g` and `rocshmem_p` API tests in driver.sh

- Allocate rocshmem API return buffers based on number of device contexts.

- Associate status flag address with blocking calls and remove threadId dependency
   - Associated the status flag address with each blocking call request to notify the GPU thread.
   - Removed dependency on threadId for determining the appropriate status flag index.

- Move status flag buffer allocation to backend.

- Initialize allocated memeory to zero
2025-03-14 10:49:44 -05: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 785e31aa48 Sync develop with amd-mainline (#46)
* Update install_dependencies.sh

* Updated to ROCm repos

* Merge pull request #37 from ROCm/depBuild

locked specific version on ompi and ucx

* locked specific version on ompi and ucx

* [IPC] Fix ROCSHMEM_SIGNAL_ADD

* Generate CMake Package Configuration Files

---------

Co-authored-by: akolliasAMD <99202231+akolliasAMD@users.noreply.github.com>
Co-authored-by: akolliasAMD <akollias@amd.com>
2025-02-18 12:30:34 -05:00
Yiltan Hassan Temucin b83ff2fa84 Use the precalculated num_warps variable 2025-02-06 13:21:25 -06:00
Yiltan Hassan Temucin 8d74c7b73e Validate signal after put signal operations 2025-02-06 08:17:22 -06:00
Yiltan Hassan Temucin 3a8b0d4647 Updated RO builds script and functional test driver for multi-node support 2025-01-23 16:46:19 -06:00
Yiltan fa90f4b0ac Minor fixes for packaging 2025-01-20 18:15:07 +00:00
Yiltan 0fb673e186 Update scripts/install_dependencies.sh
Co-authored-by: Avinash Kethineedi <avinash.kethineedi@amd.com>
2025-01-16 13:38:08 -05:00
Yiltan Temucin 5de0371bec Added script to install dependencies 2025-01-16 10:06:39 -06:00
avinashkethineedi 23172c9150 Updated driver.sh and tester.hpp with sequential numbering for test identification
* Enabled Ping Pong tests
* Removed test commands for multi-workgroup collective tests
2024-12-26 21:28:21 +00:00
Yiltan Temucin 98c164d72e Added timeout to unit tests 2024-12-06 15:50:22 -06:00
Yiltan Temucin d08ea96ea3 Update build scripts
- Only build for the machine we are on
- Saves CI time
2024-12-06 15:49:55 -06:00
avinashkethineedi d8ce066adc Merge branch PR #55 into naming_scheme 2024-12-04 21:46:38 +00:00
Yiltan 46dcfbbb9e Merge pull request #57 from Yiltan/CI-fix-degeneratetiledfine
[CI Bug Fix] Updated gfilter flags for DegenerateTiledFine tests
2024-12-03 14:56:00 -05:00
Yiltan Temucin 37fe71343f Updated gfilter flags for new unit tests 2024-11-26 13:51:29 -06:00
Brandon Potter fd8dbc7fb6 Use new naming scheme 2024-11-25 14:25:29 -06:00
Yiltan Temucin f710a301fe Added functional tests 2024-11-22 15:36:17 -06:00
Yiltan Temucin 4ad24b5aab Propergate errors from build scripts so CI doesn't silently fail 2024-11-15 11:17:33 -06:00
Yiltan Temucin 3f857718fd Fixed bug in functional and unit tests driver.sh
- The driver previously did not propagate errors correctly
- Adjusted gtest filters

driver edit
2024-11-15 10:50:31 -06:00
Yiltan Hassan Temucin 997eb69b5a modified team based to_all -> reduce 2024-11-06 09:46:43 -06:00
Yiltan Hassan Temucin fe767d9abf remove cooperative groups 2024-10-30 20:10:21 +00: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 63667a3167 Added Cooperative Groups configure option and header 2024-10-09 13:11:12 -07:00
avinashkethineedi c1bcf336b4 Add script to run unit tests 2024-10-08 18:12:07 +00:00
Brandon Potter 56b2ed699b Reset config options to original values 2024-09-27 11:17:11 -05:00
Brandon Potter 2806e1be79 Intermediate commit for rebase 2024-09-10 07:10:22 -07:00
Brandon Potter c4b7e0d91b Partial notifier 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
avinashkethineedi b6d31ac7ef Add tilled version of puts and gets at wavefront level to the functional test suite
* Implemented tiled version of put*_wave and get*_wave functions
* Maintain single kernel that supports both tiled and untiled versions
* Disable IPC in the default RO build script
2024-09-07 16:06:36 -07:00
avinashkethineedi d226922733 Add tilled version of puts and gets at the workgroup level to the functional test suite 2024-09-07 15:58:14 -07:00
avinashkethineedi ff954237dd add functional tests for puts and gets at wavefront level
* These functional tests are simple puts and gets, where every wave will get/put the same amount of data
* Enabled workgroup level puts and gets tests
2024-09-05 14:52:48 -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 49779863c2 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
2024-08-14 22:59:02 -07:00
Brandon Potter 58c5a98b5d Add ipc unit_tests 2024-08-07 12:18:12 -07:00
Brandon Potter ca36cc249e Update functional_tests driver.sh script 2024-07-15 08:45:41 -07:00
Brandon Potter 23f2983214 Create new ro_ipc config 2024-07-15 10:38:38 -05:00
Brandon Potter 39c5be18b1 Remove CACHED_HEAP option 2024-07-15 10:18:20 -05:00
Brandon Potter 06e51a8132 Update functional_tests driver.sh script 2024-07-12 15:08:46 -07:00
Brandon Potter ffc7aa468d Setup ro_net_debug config for hyd-7c machine 2024-07-11 08:44:03 -07:00
Brandon Potter ea8f264a11 Transfer files from RAD repository 2024-07-01 09:57:08 -05:00