SWDEV-292643 - [dtest] Catch2 additional unit tests for stream management apis. (#2349)
APIs covered :
hipStreamGetPriority, hipStreamCreate, hipStreamGetFlags, hipExtStreamGetCUMask apis.
Change-Id: I238b4e631938471eab05c598f91477eeb0856054
[ROCm/hip commit: bef1aa7ee6]
Esse commit está contido em:
@@ -16,16 +16,24 @@ 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.
|
||||
*/
|
||||
/**
|
||||
Testcase Scenarios :
|
||||
1) Test flag value of stream created with hipStreamCreateWithFlags/
|
||||
/hipStreamCreate/hipStreamCreateWithPriority.
|
||||
2) Negative tests for hipStreamGetFlags api.
|
||||
3) Test flag value when streams created with CUMask.
|
||||
*/
|
||||
|
||||
#include <hip_test_common.hh>
|
||||
TEST_CASE("Unit_hipStreamGetFlags_Negative") {
|
||||
// Get flags for uninitialized stream
|
||||
|
||||
/**
|
||||
* Test flag value of stream created with various types.
|
||||
*/
|
||||
TEST_CASE("Unit_hipStreamGetFlags_BasicFunctionalities") {
|
||||
hipStream_t stream;
|
||||
HIP_CHECK(hipStreamCreateWithFlags(&stream, hipStreamDefault));
|
||||
REQUIRE(hipStreamGetFlags(stream, nullptr) == hipErrorInvalidValue);
|
||||
}
|
||||
TEST_CASE("Unit_hipStreamGetFlags") {
|
||||
hipStream_t stream;
|
||||
unsigned int flags;
|
||||
unsigned int flags;
|
||||
// Check flag value of stream created with hipStreamCreateWithFlags
|
||||
SECTION("Check flag value of streams hipStreamCreateWithFlags") {
|
||||
HIP_CHECK(hipStreamCreateWithFlags(&stream, hipStreamDefault));
|
||||
HIP_CHECK(hipStreamGetFlags(stream, &flags));
|
||||
REQUIRE(flags == hipStreamDefault);
|
||||
@@ -34,4 +42,50 @@ TEST_CASE("Unit_hipStreamGetFlags") {
|
||||
HIP_CHECK(hipStreamGetFlags(stream, &flags));
|
||||
REQUIRE(flags == hipStreamNonBlocking);
|
||||
HIP_CHECK(hipStreamDestroy(stream));
|
||||
}
|
||||
// Check flag value of stream created with hipStreamCreate
|
||||
SECTION("Check flag value of streams hipStreamCreate") {
|
||||
HIP_CHECK(hipStreamCreate(&stream));
|
||||
HIP_CHECK(hipStreamGetFlags(stream, &flags));
|
||||
REQUIRE(flags == hipStreamDefault);
|
||||
HIP_CHECK(hipStreamDestroy(stream));
|
||||
}
|
||||
// Check flag value of stream created with hipStreamCreateWithPriority
|
||||
SECTION("Check flag value of streams hipStreamCreateWithPriority") {
|
||||
HIP_CHECK(hipStreamCreateWithPriority(&stream, hipStreamDefault, 0));
|
||||
HIP_CHECK(hipStreamGetFlags(stream, &flags));
|
||||
REQUIRE(flags == hipStreamDefault);
|
||||
HIP_CHECK(hipStreamDestroy(stream));
|
||||
HIP_CHECK(hipStreamCreateWithPriority(&stream, hipStreamNonBlocking, 0));
|
||||
HIP_CHECK(hipStreamGetFlags(stream, &flags));
|
||||
REQUIRE(flags == hipStreamNonBlocking);
|
||||
HIP_CHECK(hipStreamDestroy(stream));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Negative Scenarios
|
||||
*/
|
||||
TEST_CASE("Unit_hipStreamGetFlags_Negative") {
|
||||
hipStream_t stream;
|
||||
HIP_CHECK(hipStreamCreate(&stream));
|
||||
// nullptr check
|
||||
REQUIRE(hipStreamGetFlags(stream, nullptr) != hipSuccess);
|
||||
REQUIRE(hipStreamGetFlags(nullptr, hipStreamDefault) != hipSuccess);
|
||||
HIP_CHECK(hipStreamDestroy(stream));
|
||||
}
|
||||
|
||||
#if HT_AMD
|
||||
/**
|
||||
* Test flag value when streams created with CUMask.
|
||||
*/
|
||||
TEST_CASE("Unit_hipStreamGetFlags_StreamsCreatedWithCUMask") {
|
||||
hipStream_t stream;
|
||||
unsigned int flags;
|
||||
const uint32_t cuMask = 0xffffffff;
|
||||
HIP_CHECK(hipExtStreamCreateWithCUMask(&stream, 1, &cuMask));
|
||||
HIP_CHECK(hipStreamGetFlags(stream, &flags));
|
||||
REQUIRE(flags == hipStreamDefault);
|
||||
HIP_CHECK(hipStreamDestroy(stream));
|
||||
}
|
||||
#endif
|
||||
|
||||
Referência em uma Nova Issue
Bloquear um usuário