Skip to content

RPP Unified External API for HOST and HIP#536

Merged
r-abishek merged 65 commits intor-abishek:ar/unified_apifrom
Srihari-mcw:unified_api_branch_rebased
Feb 11, 2026
Merged

RPP Unified External API for HOST and HIP#536
r-abishek merged 65 commits intor-abishek:ar/unified_apifrom
Srihari-mcw:unified_api_branch_rebased

Conversation

@Srihari-mcw
Copy link
Copy Markdown
Collaborator

@Srihari-mcw Srihari-mcw commented Nov 28, 2025

  • Made changes to the handle to add a member of type RppBackend indicating backend for which the handle for created with rppCreate() function
  • Introduced an additional parameter to the external API indicating the backend for which augmentation is to be executed
  • Unified the external API functions for HOST and HIP Versions for all augmentations, enclosing the respective kernel calls inside conditional blocks based on user provided execution backend – Headers also updated with appropriate signatures.
  • Updated the external API calls across the test suite to use the unified API functions
  • Added additional layout checks for image augmentations within the unified API, ensuring more robust check of user provided parameters

@r-abishek r-abishek marked this pull request as draft December 2, 2025 05:34
@Srihari-mcw Srihari-mcw force-pushed the unified_api_branch_rebased branch from 856c677 to 3c57d3d Compare December 3, 2025 17:41
@Srihari-mcw Srihari-mcw changed the base branch from ar/device_memcpy_removal to develop December 3, 2025 17:41
Srihari-mcw pushed a commit to Srihari-mcw/rpp that referenced this pull request Dec 8, 2025
…e interpreted as links (r-abishek#536)

Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>
ManasaDattaT pushed a commit to ManasaDattaT/rpp that referenced this pull request Dec 19, 2025
…e interpreted as links (r-abishek#536)

Co-authored-by: Kiriti Gowda <kiritigowda@gmail.com>
@HazarathKumarM HazarathKumarM marked this pull request as ready for review January 27, 2026 05:58
@r-abishek r-abishek changed the base branch from develop to ar/unified_api February 5, 2026 02:49
@r-abishek r-abishek requested a review from Copilot February 5, 2026 02:49
@r-abishek r-abishek added the enhancement New feature or request label Feb 5, 2026
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request unifies the external API for RPP (ROCm Performance Primitives) by merging separate HOST and HIP (GPU) backend implementations into a single API with a runtime backend parameter. The changes enable users to specify the execution backend (HOST or HIP) when calling API functions, eliminating the need for separate function names for each backend.

Changes:

  • Added backend tracking to the rppHandle structure to store whether a handle was created for HOST or HIP execution
  • Unified API functions by adding an executionBackend parameter to all tensor operations, replacing separate _host and _gpu suffixed functions
  • Updated test suite calls across HOST and HIP test files to use the unified API with the appropriate backend parameter

Reviewed changes

Copilot reviewed 27 out of 32 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
utilities/test_suite/HOST/Tensor_voxel_host.cpp Updated function calls to use unified API with RPP_HOST_BACKEND parameter
utilities/test_suite/HOST/Tensor_misc_host.cpp Updated function calls to use unified API with RPP_HOST_BACKEND parameter
utilities/test_suite/HOST/Tensor_audio_host.cpp Updated function calls to use unified API with RPP_HOST_BACKEND parameter
utilities/test_suite/HIP/Tensor_voxel_hip.cpp Updated function calls to use unified API with RPP_HIP_BACKEND parameter
utilities/test_suite/HIP/Tensor_misc_hip.cpp Updated function calls to use unified API with RPP_HIP_BACKEND parameter
utilities/test_suite/HIP/Tensor_audio_hip.cpp Updated function calls to use unified API with RPP_HIP_BACKEND parameter
src/modules/tensor/rppt_tensor_morphological_operations.cpp Merged _host/_gpu functions, added backend validation and layout checks
src/modules/tensor/rppt_tensor_filter_augmentations.cpp Merged _host/_gpu functions, added backend validation and layout checks
src/modules/tensor/rppt_tensor_data_exchange_operations.cpp Merged _host/_gpu functions, added backend validation
src/modules/tensor/rppt_tensor_bitwise_operations.cpp Merged _host/_gpu functions, added backend validation and layout checks
src/modules/tensor/rppt_tensor_audio_augmentations.cpp Merged _host/_gpu functions, added backend validation
src/modules/tensor/rppt_tensor_arithmetic_operations.cpp Merged _host/_gpu functions, added backend validation
src/modules/handle_host.cpp Added backend member initialization and GetBackend() method for HOST handle
src/modules/handle_hip.cpp Added backend member initialization and GetBackend() method for HIP handle
src/include/common/handle.hpp Added GetBackend() method declaration to handle interfaces
api/rppt_tensor_statistical_operations.h Updated API documentation to reflect unified HOST/HIP functions
api/rppt_tensor_morphological_operations.h Updated API documentation and function signatures
api/rppt_tensor_filter_augmentations.h Updated API documentation and function signatures
api/rppt_tensor_data_exchange_operations.h Updated API documentation and function signatures
api/rppt_tensor_bitwise_operations.h Updated API documentation and function signatures
api/rppt_tensor_audio_augmentations.h Updated API documentation and function signatures
api/rppt_tensor_arithmetic_operations.h Updated API documentation and function signatures
api/rppdefs.h Added RPP_ERROR_INCOMPATIBLE_BACKEND error code

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

HazarathKumarM and others added 2 commits February 5, 2026 22:16
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@r-abishek r-abishek merged commit f3a07d1 into r-abishek:ar/unified_api Feb 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants