Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RPP BitwiseAND and BitwiseOR Tensor on HOST and HIP #318

Merged
merged 64 commits into from
Apr 9, 2024
Merged
Show file tree
Hide file tree
Changes from 58 commits
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
8cfb9b3
HOST test suite update for voxel processing
snehaa8 Jun 28, 2023
0c818bd
Initial commit - Implements PLN1 Fmadd Kernel
snehaa8 Jun 28, 2023
aa4d371
Add dependencies for fmadd kernel
snehaa8 Jun 29, 2023
3cd067c
Implement NDHWC variant for Fmadd
snehaa8 Jun 30, 2023
43905da
Implement Slice HOST Kernel
snehaa8 Jun 30, 2023
0c81356
Fix NCDHW variant for Slice
snehaa8 Jun 30, 2023
dc57378
Cleanup
snehaa8 Jun 30, 2023
d57144d
Fix NDHWC variant
snehaa8 Jul 3, 2023
5f5681f
Fix stride used for NDHWC
snehaa8 Jul 6, 2023
2059940
Fix NDHWC layout handling in testsuite
snehaa8 Jul 11, 2023
0540626
Add sample input .nii file
snehaa8 Jul 17, 2023
39c45c3
Fix NDHWC layout for fmadd and slice
snehaa8 Jul 20, 2023
3debd2f
Initial commit - Bitwise AND HOST Tensor
snehaa8 Jan 5, 2024
569ad14
Match u8 and i8 outputs with BatchPD variant
snehaa8 Jan 5, 2024
8c68c8a
Fix i8 PKD3 -> PLN3
snehaa8 Jan 8, 2024
562c336
Initial commit - Bitwise AND HIP Tensor
snehaa8 Jan 10, 2024
d03f07a
Add reference outputs
snehaa8 Jan 10, 2024
a1f4213
License - updates to 2024 and consistency changes (#298)
r-abishek Jan 31, 2024
7096c1d
Test - Update README.md for test_suite (#299)
r-abishek Jan 31, 2024
d12870a
Merge branch 'master' of https://github.com/ROCm/rpp into sn/bitwise_AND
snehaa8 Feb 1, 2024
5e524f7
Modify reference outputs
snehaa8 Feb 1, 2024
5e4b736
Combine templated functions to support all datatypes
snehaa8 Feb 1, 2024
ac88212
Initial commit - Bitwise OR HOST
snehaa8 Feb 2, 2024
97b9aa1
Fix GPU kernel details
snehaa8 Feb 5, 2024
557d8d4
Merge branch 'sn/bitwise_AND' of https://github.com/snehaa8/rpp into …
snehaa8 Feb 5, 2024
226bf9d
Fix case number for HOST testsuite
snehaa8 Feb 5, 2024
3df2c11
Initial commit - Bitwise OR HIP
snehaa8 Feb 5, 2024
07a5f66
Bump rocm-docs-core[api_reference] from 0.33.0 to 0.33.1 in /docs/sph…
dependabot[bot] Feb 6, 2024
a5e5679
Bump rocm-docs-core[api_reference] from 0.33.1 to 0.33.2 in /docs/sph…
dependabot[bot] Feb 7, 2024
1590f34
Address review comments
snehaa8 Feb 8, 2024
e8aa6b2
Update doc codeowners (#303)
samjwu Feb 8, 2024
a921332
Documentation - Bump rocm-docs-core[api_reference] from 0.33.2 to 0.3…
dependabot[bot] Feb 9, 2024
30bed4e
Test suite - upgrade 5 qa perf (#305)
kiritigowda Feb 9, 2024
5c423ab
RPP Color Temperature on HOST and HIP (#271)
r-abishek Feb 9, 2024
df6e2c9
RPP Voxel 3D Tensor Add/Subtract scalar on HOST and HIP (#272)
r-abishek Feb 9, 2024
a4ed137
RPP Magnitude on HOST and HIP (#278)
r-abishek Feb 14, 2024
1976cbf
Bump rocm-docs-core[api_reference] from 0.34.0 to 0.34.2 in /docs/sph…
dependabot[bot] Feb 16, 2024
ec8f2f0
RPP Tensor Audio Support - Down Mixing (#296)
r-abishek Feb 16, 2024
29a5c82
RPP Voxel 3D Tensor Multiply scalar on HOST and HIP (#306)
r-abishek Feb 16, 2024
98a3c82
Test Suite Bugfix (#307)
r-abishek Feb 16, 2024
3246085
Merge branch 'ar/opt_bitwise_and_or' into sn/bitwise_OR
snehaa8 Feb 21, 2024
860b853
Update rppt_tensor_arithmetic_operations.h
r-abishek Feb 21, 2024
304fc09
Update rppt_tensor_arithmetic_operations.h
r-abishek Feb 21, 2024
608225b
Bump rocm-docs-core[api_reference] from 0.34.2 to 0.35.0 in /docs/sph…
dependabot[bot] Feb 23, 2024
a7ef385
RPP Reduction - Tensor min and Tensor max on HOST and HIP (#260)
r-abishek Feb 24, 2024
473cde4
CI - Update precheckin.groovy
kiritigowda Feb 24, 2024
ea89580
Merge branch 'develop' of https://github.com/ROCm/rpp into sn/bitwise_OR
snehaa8 Feb 27, 2024
e4c6388
Move bitwise operations into under logical ops
snehaa8 Feb 27, 2024
0aa9f07
Merge pull request #230 from snehaa8/sn/bitwise_OR
r-abishek Mar 6, 2024
5230e09
Fix doxygen comments
snehaa8 Mar 6, 2024
b1f7718
Merge with master
snehaa8 Mar 6, 2024
b0fceb1
Merge branch 'master' into sn/bitwise_OR
snehaa8 Mar 6, 2024
79acae1
Cleanup
snehaa8 Mar 6, 2024
c79f153
Revert change in CMakeLists.txt
snehaa8 Mar 6, 2024
63a8af3
Merge remote-tracking branch 'origin' into sn/bitwise_OR
snehaa8 Mar 6, 2024
d1b754e
Merge pull request #244 from snehaa8/sn/bitwise_OR
r-abishek Mar 6, 2024
92762af
Merge branch 'master' of https://github.com/GPUOpen-ProfessionalCompu…
r-abishek Mar 6, 2024
d8821f9
Merge branch 'develop' of https://github.com/ROCm/rpp into ar/opt_bit…
r-abishek Mar 16, 2024
ac6d571
Add docs outputs
snehaa8 Mar 26, 2024
1baf5db
Merge pull request #258 from snehaa8/sn/bitwise_OR
r-abishek Mar 27, 2024
d7df62c
Cleanup
snehaa8 Mar 27, 2024
5b58139
Merge pull request #260 from snehaa8/sn/bitwise_OR
r-abishek Apr 1, 2024
25d187d
Merge branch 'develop' into ar/opt_bitwise_and_or
r-abishek Apr 2, 2024
c722476
Merge branch 'develop' into ar/opt_bitwise_and_or
r-abishek Apr 3, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -967,8 +967,9 @@ INPUT = README.md \
include/rppt_tensor_geometric_augmentations.h \
include/rppt_tensor_morphological_operations.h \
include/rppt_tensor_statistical_operations.h \
include/rppt_tensor_arithmetic_operations.h
include/rppt_tensor_audio_augmentations.h
include/rppt_tensor_arithmetic_operations.h \
include/rppt_tensor_audio_augmentations.h \
include/rppt_tensor_logical_operations.h


# This tag can be used to specify the character encoding of the source files
Expand Down
3 changes: 2 additions & 1 deletion docs/doxygen/Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -966,7 +966,8 @@ INPUT = ../../README.md \
../../include/rppt_tensor_filter_augmentations.h \
../../include/rppt_tensor_geometric_augmentations.h \
../../include/rppt_tensor_morphological_operations.h \
../../include/rppt_tensor_statistical_operations.h
../../include/rppt_tensor_statistical_operations.h \
../../include/rppt_tensor_logical_operations.h


# This tag can be used to specify the character encoding of the source files
Expand Down
15 changes: 12 additions & 3 deletions include/rppdefs.h
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,7 @@ typedef struct
int y;
} RppiPoint;

/*! \brief RPPI Image 2D Rectangle (XYWH format) type struct
/*! \brief RPPI Image 3D point type struct
* \ingroup group_rppdefs
*/
typedef struct
Expand All @@ -310,6 +310,9 @@ typedef struct
int z;
} RppiPoint3D;

/*! \brief RPPI Image 2D Rectangle (XYWH format) type struct
* \ingroup group_rppdefs
*/
typedef struct
{
int x;
Expand Down Expand Up @@ -362,7 +365,7 @@ typedef enum
XYWH // X-Y-Width-Height
} RpptRoiType;

/*! \brief RPPT Tensor subpixel layout type enum
/*! \brief RPPT Tensor 3D ROI type enum
* \ingroup group_rppdefs
*/
typedef enum
Expand All @@ -371,6 +374,9 @@ typedef enum
XYZWHD // X-Y-Z-Width-Height-Depth
} RpptRoi3DType;

/*! \brief RPPT Tensor subpixel layout type enum
* \ingroup group_rppdefs
*/
typedef enum
{
RGBtype,
Expand Down Expand Up @@ -482,7 +488,7 @@ typedef struct
RpptLayout layout;
} RpptDesc, *RpptDescPtr;

/*! \brief RPPT Tensor 8-bit uchar RGB type struct
/*! \brief RPPT Tensor Generic descriptor type struct
* \ingroup group_rppdefs
*/
typedef struct
Expand All @@ -495,6 +501,9 @@ typedef struct
RpptLayout layout;
} RpptGenericDesc, *RpptGenericDescPtr;

/*! \brief RPPT Tensor 8-bit uchar RGB type struct
* \ingroup group_rppdefs
*/
typedef struct
{
Rpp8u R;
Expand Down
1 change: 1 addition & 0 deletions include/rppt.h
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ extern "C" {
#include "rppt_tensor_arithmetic_operations.h"
#include "rppt_tensor_statistical_operations.h"
#include "rppt_tensor_audio_augmentations.h"
#include "rppt_tensor_logical_operations.h"

#ifdef __cplusplus
}
Expand Down
26 changes: 13 additions & 13 deletions include/rppt_tensor_arithmetic_operations.h
Original file line number Diff line number Diff line change
Expand Up @@ -210,9 +210,9 @@ RppStatus rppt_multiply_scalar_gpu(RppPtr_t srcPtr, RpptGenericDescPtr srcGeneri
* \details This function computes magnitude of corresponding pixels for a batch of RGB(3 channel) / greyscale(1 channel) images with an NHWC/NCHW tensor layout.<br>
* srcPtr depth ranges - Rpp8u (0 to 255), Rpp16f (0 to 1), Rpp32f (0 to 1), Rpp8s (-128 to 127).
* dstPtr depth ranges - Will be same depth as srcPtr. <br>
* \image html img150x150.jpg Sample Input1
* \image html img150x150_2.jpg Sample Input2
* \image html magnitude_operation_img150x150.jpg Sample Output
* \image html img150x150.png Sample Input1
* \image html img150x150_2.png Sample Input2
* \image html magnitude_operation_img150x150.png Sample Output
* \param [in] srcPtr1 source1 tensor in HOST memory
* \param [in] srcPtr2 source2 tensor in HOST memory
* \param [in] srcDescPtr source tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = 1/3)
Expand All @@ -228,21 +228,21 @@ RppStatus rppt_multiply_scalar_gpu(RppPtr_t srcPtr, RpptGenericDescPtr srcGeneri
RppStatus rppt_magnitude_host(RppPtr_t srcPtr1, RppPtr_t srcPtr2, RpptDescPtr srcDescPtr, RppPtr_t dstPtr, RpptDescPtr dstDescPtr, RpptROIPtr roiTensorPtrSrc, RpptRoiType roiType, rppHandle_t rppHandle);

#ifdef GPU_SUPPORT
/*! \brief Magnitude computation on HOST backend for a NCHW/NHWC layout tensor
/*! \brief Magnitude computation on HIP backend for a NCHW/NHWC layout tensor
* \details This function computes magnitude of corresponding pixels for a batch of RGB(3 channel) / greyscale(1 channel) images with an NHWC/NCHW tensor layout.<br>
* srcPtr depth ranges - Rpp8u (0 to 255), Rpp16f (0 to 1), Rpp32f (0 to 1), Rpp8s (-128 to 127).
* dstPtr depth ranges - Will be same depth as srcPtr. <br>
* \image html img150x150.jpg Sample Input1
* \image html img150x150_2.jpg Sample Input2
* \image html magnitude_operation_img150x150.jpg Sample Output
* \param [in] srcPtr1 source1 tensor in HOST memory
* \param [in] srcPtr2 source2 tensor in HOST memory
* \image html img150x150.png Sample Input1
* \image html img150x150_2.png Sample Input2
* \image html magnitude_operation_img150x150.png Sample Output
* \param [in] srcPtr1 source1 tensor in HIP memory
* \param [in] srcPtr2 source2 tensor in HIP memory
* \param [in] srcDescPtr source tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = 1/3)
* \param [out] dstPtr destination tensor in HOST memory
* \param [out] dstPtr destination tensor in HIP memory
* \param [in] dstDescPtr destination tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = same as that of srcDescPtr)
* \param [in] roiTensorSrc ROI data in HOST memory, for each image in source tensor (2D tensor of size batchSize * 4, in either format - XYWH(xy.x, xy.y, roiWidth, roiHeight) or LTRB(lt.x, lt.y, rb.x, rb.y))
* \param [in] roiTensorSrc ROI data in HIP memory, for each image in source tensor (2D tensor of size batchSize * 4, in either format - XYWH(xy.x, xy.y, roiWidth, roiHeight) or LTRB(lt.x, lt.y, rb.x, rb.y))
* \param [in] roiType ROI type used (RpptRoiType::XYWH or RpptRoiType::LTRB)
* \param [in] rppHandle RPP HOST handle created with <tt>\ref rppCreateWithStreamAndBatchSize()</tt>
* \param [in] rppHandle RPP HIP handle created with <tt>\ref rppCreateWithStreamAndBatchSize()</tt>
* \return A <tt> \ref RppStatus</tt> enumeration.
* \retval RPP_SUCCESS Successful completion.
* \retval RPP_ERROR* Unsuccessful completion.
Expand All @@ -256,4 +256,4 @@ RppStatus rppt_magnitude_gpu(RppPtr_t srcPtr1, RppPtr_t srcPtr2, RpptDescPtr src
#ifdef __cplusplus
}
#endif
#endif // RPPT_TENSOR_ARITHMETIC_OPERATIONS_H
#endif // RPPT_TENSOR_ARITHMETIC_OPERATIONS_H
139 changes: 139 additions & 0 deletions include/rppt_tensor_logical_operations.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
/*
MIT License

Copyright (c) 2019 - 2024 Advanced Micro Devices, Inc.

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/

#ifndef RPPT_TENSOR_LOGICAL_OPERATIONS_H
#define RPPT_TENSOR_LOGICAL_OPERATIONS_H

#include "rpp.h"
#include "rppdefs.h"
#ifdef __cplusplus
extern "C" {
#endif

/*!
* \file
* \brief RPPT Tensor Operations - Logical Operations.
* \defgroup group_tensor_logical_operations RPPT Tensor Operations - Logical Operations.
* \brief RPPT Tensor Operations - Logical Operations.
*/

/*! \addtogroup group_rppt_tensor_logical_operations
* @{
*/

/*! \brief Bitwise AND computation on HOST backend for a NCHW/NHWC layout tensor
* \details This function computes bitwise AND of corresponding pixels for a batch of RGB(3 channel) / greyscale(1 channel) images with an NHWC/NCHW tensor layout.<br>
* srcPtr depth ranges - Rpp8u (0 to 255), Rpp16f (0 to 1), Rpp32f (0 to 1), Rpp8s (-128 to 127).
* dstPtr depth ranges - Will be same depth as srcPtr.
* \image html img150x150.jpg Sample Input1
* \image html img150x150_2.jpg Sample Input2
* \image html bitwise_and_operation_img150x150.jpg Sample Output
* \param [in] srcPtr1 source1 tensor in HOST memory
* \param [in] srcPtr2 source2 tensor in HOST memory
* \param [in] srcDescPtr source tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = 1/3)
* \param [out] dstPtr destination tensor in HOST memory
* \param [in] dstDescPtr destination tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = same as that of srcDescPtr)
* \param [in] roiTensorSrc ROI data in HOST memory, for each image in source tensor (2D tensor of size batchSize * 4, in either format - XYWH(xy.x, xy.y, roiWidth, roiHeight) or LTRB(lt.x, lt.y, rb.x, rb.y))
* \param [in] roiType ROI type used (RpptRoiType::XYWH or RpptRoiType::LTRB)
* \param [in] rppHandle RPP HOST handle created with <tt>\ref rppCreateWithBatchSize()</tt>
* \return A <tt> \ref RppStatus</tt> enumeration.
* \retval RPP_SUCCESS Successful completion.
* \retval RPP_ERROR* Unsuccessful completion.
*/
RppStatus rppt_bitwise_and_host(RppPtr_t srcPtr1, RppPtr_t srcPtr2, RpptDescPtr srcDescPtr, RppPtr_t dstPtr, RpptDescPtr dstDescPtr, RpptROIPtr roiTensorPtrSrc, RpptRoiType roiType, rppHandle_t rppHandle);

#ifdef GPU_SUPPORT
/*! \brief Bitwise AND computation on HIP backend for a NCHW/NHWC layout tensor
* \details This function computes bitwise AND of corresponding pixels for a batch of RGB(3 channel) / greyscale(1 channel) images with an NHWC/NCHW tensor layout.<br>
* srcPtr depth ranges - Rpp8u (0 to 255), Rpp16f (0 to 1), Rpp32f (0 to 1), Rpp8s (-128 to 127).
* dstPtr depth ranges - Will be same depth as srcPtr.
* \image html img150x150.jpg Sample Input1
* \image html img150x150_2.jpg Sample Input2
* \image html bitwise_and_operation_img150x150.jpg Sample Output
* \param [in] srcPtr1 source1 tensor in HIP memory
* \param [in] srcPtr2 source2 tensor in HIP memory
* \param [in] srcDescPtr source tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = 1/3)
* \param [out] dstPtr destination tensor in HIP memory
* \param [in] dstDescPtr destination tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = same as that of srcDescPtr)
* \param [in] roiTensorSrc ROI data in HIP memory, for each image in source tensor (2D tensor of size batchSize * 4, in either format - XYWH(xy.x, xy.y, roiWidth, roiHeight) or LTRB(lt.x, lt.y, rb.x, rb.y))
* \param [in] roiType ROI type used (RpptRoiType::XYWH or RpptRoiType::LTRB)
* \param [in] rppHandle RPP HIP handle created with <tt>\ref rppCreateWithStreamAndBatchSize()</tt>
* \return A <tt> \ref RppStatus</tt> enumeration.
* \retval RPP_SUCCESS Successful completion.
* \retval RPP_ERROR* Unsuccessful completion.
*/
RppStatus rppt_bitwise_and_gpu(RppPtr_t srcPtr1, RppPtr_t srcPtr2, RpptDescPtr srcDescPtr, RppPtr_t dstPtr, RpptDescPtr dstDescPtr, RpptROIPtr roiTensorPtrSrc, RpptRoiType roiType, rppHandle_t rppHandle);
#endif // GPU_SUPPORT

/*! \brief Bitwise OR computation on HOST backend for a NCHW/NHWC layout tensor
* \details This function computes bitwise OR of corresponding pixels for a batch of RGB(3 channel) / greyscale(1 channel) images with an NHWC/NCHW tensor layout.<br>
* srcPtr depth ranges - Rpp8u (0 to 255), Rpp16f (0 to 1), Rpp32f (0 to 1), Rpp8s (-128 to 127).
* dstPtr depth ranges - Will be same depth as srcPtr.
* \image html img150x150.jpg Sample Input1
* \image html img150x150_2.jpg Sample Input2
* \image html bitwise_or_operation_img150x150.jpg Sample Output
* \param [in] srcPtr1 source1 tensor in HOST memory
* \param [in] srcPtr2 source2 tensor in HOST memory
* \param [in] srcDescPtr source tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = 1/3)
* \param [out] dstPtr destination tensor in HOST memory
* \param [in] dstDescPtr destination tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = same as that of srcDescPtr)
* \param [in] roiTensorSrc ROI data in HOST memory, for each image in source tensor (2D tensor of size batchSize * 4, in either format - XYWH(xy.x, xy.y, roiWidth, roiHeight) or LTRB(lt.x, lt.y, rb.x, rb.y))
* \param [in] roiType ROI type used (RpptRoiType::XYWH or RpptRoiType::LTRB)
* \param [in] rppHandle RPP HOST handle created with <tt>\ref rppCreateWithBatchSize()</tt>
* \return A <tt> \ref RppStatus</tt> enumeration.
* \retval RPP_SUCCESS Successful completion.
* \retval RPP_ERROR* Unsuccessful completion.
*/
RppStatus rppt_bitwise_or_host(RppPtr_t srcPtr1, RppPtr_t srcPtr2, RpptDescPtr srcDescPtr, RppPtr_t dstPtr, RpptDescPtr dstDescPtr, RpptROIPtr roiTensorPtrSrc, RpptRoiType roiType, rppHandle_t rppHandle);

#ifdef GPU_SUPPORT
/*! \brief Bitwise OR computation on HIP backend for a NCHW/NHWC layout tensor
* \details This function computes bitwise OR of corresponding pixels for a batch of RGB(3 channel) / greyscale(1 channel) images with an NHWC/NCHW tensor layout.<br>
* srcPtr depth ranges - Rpp8u (0 to 255), Rpp16f (0 to 1), Rpp32f (0 to 1), Rpp8s (-128 to 127).
* dstPtr depth ranges - Will be same depth as srcPtr.
* \image html img150x150.jpg Sample Input1
* \image html img150x150_2.jpg Sample Input2
* \image html bitwise_or_operation_img150x150.jpg Sample Output
* \param [in] srcPtr1 source1 tensor in HIP memory
* \param [in] srcPtr2 source2 tensor in HIP memory
* \param [in] srcDescPtr source tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = 1/3)
* \param [out] dstPtr destination tensor in HIP memory
* \param [in] dstDescPtr destination tensor descriptor (Restrictions - numDims = 4, offsetInBytes >= 0, dataType = U8/F16/F32/I8, layout = NCHW/NHWC, c = same as that of srcDescPtr)
* \param [in] roiTensorSrc ROI data in HIP memory, for each image in source tensor (2D tensor of size batchSize * 4, in either format - XYWH(xy.x, xy.y, roiWidth, roiHeight) or LTRB(lt.x, lt.y, rb.x, rb.y))
* \param [in] roiType ROI type used (RpptRoiType::XYWH or RpptRoiType::LTRB)
* \param [in] rppHandle RPP HIP handle created with <tt>\ref rppCreateWithStreamAndBatchSize()</tt>
* \return A <tt> \ref RppStatus</tt> enumeration.
* \retval RPP_SUCCESS Successful completion.
* \retval RPP_ERROR* Unsuccessful completion.
*/
RppStatus rppt_bitwise_or_gpu(RppPtr_t srcPtr1, RppPtr_t srcPtr2, RpptDescPtr srcDescPtr, RppPtr_t dstPtr, RpptDescPtr dstDescPtr, RpptROIPtr roiTensorPtrSrc, RpptRoiType roiType, rppHandle_t rppHandle);
#endif // GPU_SUPPORT

/*! @}
*/

#ifdef __cplusplus
}
#endif
#endif // RPPT_TENSOR_LOGICAL_OPERATIONS_H
Loading