diff --git a/test/TestAsyncOperations.cpp b/test/TestAsyncOperations.cpp index ddbcb6597..9e1cdfd88 100644 --- a/test/TestAsyncOperations.cpp +++ b/test/TestAsyncOperations.cpp @@ -5,6 +5,8 @@ #include "kompute/Kompute.hpp" +#include "TestUtils.cpp" + TEST(TestAsyncOperations, TestManagerParallelExecution) { // This test is built for NVIDIA 1650. It assumes: @@ -55,7 +57,7 @@ TEST(TestAsyncOperations, TestManagerParallelExecution) for (uint32_t i = 0; i < numParallel; i++) { mgr.evalOpDefault( - { inputsSyncB[i] }, std::vector(shader.begin(), shader.end())); + { inputsSyncB[i] }, spirv_from_string(shader)); } auto endSync = std::chrono::high_resolution_clock::now(); @@ -89,7 +91,7 @@ TEST(TestAsyncOperations, TestManagerParallelExecution) mgrAsync.evalOpAsync( { inputsAsyncB[i] }, "async" + std::to_string(i), - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); } for (uint32_t i = 0; i < numParallel; i++) { @@ -152,10 +154,10 @@ TEST(TestAsyncOperations, TestManagerAsyncExecution) mgr.rebuild({ tensorA, tensorB }); mgr.evalOpAsync( - { tensorA }, "asyncOne", std::vector(shader.begin(), shader.end())); + { tensorA }, "asyncOne", spirv_from_string(shader)); mgr.evalOpAsync( - { tensorB }, "asyncTwo", std::vector(shader.begin(), shader.end())); + { tensorB }, "asyncTwo", spirv_from_string(shader)); mgr.evalOpAwait("asyncOne"); mgr.evalOpAwait("asyncTwo"); diff --git a/test/TestDestroy.cpp b/test/TestDestroy.cpp index a7b46a078..98ded696b 100644 --- a/test/TestDestroy.cpp +++ b/test/TestDestroy.cpp @@ -3,6 +3,8 @@ #include "kompute/Kompute.hpp" +#include "TestUtils.cpp" + TEST(TestDestroy, TestDestroyTensorSingle) { std::shared_ptr tensorA{ new kp::Tensor({ 0, 0, 0 }) }; @@ -28,7 +30,7 @@ TEST(TestDestroy, TestDestroyTensorSingle) sq->begin(); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->end(); sq->eval(); @@ -71,7 +73,7 @@ TEST(TestDestroy, TestDestroyTensorVector) sq->begin(); sq->record( - { tensorA, tensorB }, std::vector(shader.begin(), shader.end())); + { tensorA, tensorB }, spirv_from_string(shader)); sq->end(); sq->eval(); @@ -136,7 +138,7 @@ TEST(TestDestroy, TestDestroySequenceSingle) sq->begin(); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->end(); sq->eval(); @@ -176,14 +178,14 @@ TEST(TestDestroy, TestDestroySequenceVector) sq1 = mgr.sequence("One"); sq1->begin(); sq1->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq1->end(); sq1->eval(); sq2 = mgr.sequence("Two"); sq2->begin(); sq2->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq2->end(); sq2->eval(); @@ -218,11 +220,11 @@ TEST(TestDestroy, TestDestroySequenceNameSingleInsideManager) mgr.evalOp( { tensorA }, "one", - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); mgr.evalOp( { tensorA }, "two", - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); mgr.evalOpDefault({ tensorA }); @@ -257,7 +259,7 @@ TEST(TestDestroy, TestDestroySequenceNameSingleOutsideManager) sq1 = mgr.sequence("One"); sq1->begin(); sq1->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq1->end(); sq1->eval(); @@ -291,11 +293,11 @@ TEST(TestDestroy, TestDestroySequenceNameVectorInsideManager) mgr.evalOp( { tensorA }, "one", - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); mgr.evalOp( { tensorA }, "two", - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); mgr.evalOpDefault({ tensorA }); @@ -325,11 +327,11 @@ TEST(TestDestroy, TestDestroySequenceNameVectorOutsideManager) mgr.evalOp( { tensorA }, "one", - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); mgr.evalOp( { tensorA }, "two", - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); mgr.evalOpDefault({ tensorA }); @@ -359,7 +361,7 @@ TEST(TestDestroy, TestDestroySequenceNameDefaultOutsideManager) mgr.evalOpDefault( { tensorA }, - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); mgr.evalOpDefault({ tensorA }); diff --git a/test/TestMultipleAlgoExecutions.cpp b/test/TestMultipleAlgoExecutions.cpp index ad37e5131..81d4b2cd6 100644 --- a/test/TestMultipleAlgoExecutions.cpp +++ b/test/TestMultipleAlgoExecutions.cpp @@ -3,6 +3,8 @@ #include "kompute/Kompute.hpp" +#include "TestUtils.cpp" + TEST(TestMultipleAlgoExecutions, SingleSequenceRecord) { @@ -28,11 +30,11 @@ TEST(TestMultipleAlgoExecutions, SingleSequenceRecord) sq->begin(); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->record({ tensorA }); @@ -73,19 +75,19 @@ TEST(TestMultipleAlgoExecutions, MultipleCmdBufRecords) // Then perform the computations sq->begin(); sq->record({ tensorA }, - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); sq->end(); sq->eval(); sq->begin(); sq->record({ tensorA }, - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); sq->end(); sq->eval(); sq->begin(); sq->record({ tensorA }, - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); sq->end(); sq->eval(); @@ -122,7 +124,7 @@ TEST(TestMultipleAlgoExecutions, MultipleSequences) sq->begin(); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->end(); sq->eval(); @@ -135,7 +137,7 @@ TEST(TestMultipleAlgoExecutions, MultipleSequences) sq->begin(); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->end(); sq->eval(); @@ -148,7 +150,7 @@ TEST(TestMultipleAlgoExecutions, MultipleSequences) sq->begin(); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->end(); sq->eval(); @@ -206,7 +208,7 @@ TEST(TestMultipleAlgoExecutions, SingleRecordMultipleEval) sq->begin(); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->end(); @@ -265,7 +267,7 @@ TEST(TestMultipleAlgoExecutions, ManagerEvalMultSourceStrOpCreate) mgr.evalOpDefault( { tensorInA, tensorInB, tensorOut }, - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); mgr.evalOpDefault({ tensorOut }); @@ -308,7 +310,7 @@ TEST(TestMultipleAlgoExecutions, ManagerEvalMultSourceStrMgrCreate) mgr.evalOpDefault( { tensorInA, tensorInB, tensorOut }, - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); mgr.evalOpDefault({ tensorOut }); @@ -340,7 +342,7 @@ TEST(TestMultipleAlgoExecutions, SequenceAlgoDestroyOutsideManagerScope) sq->begin(); sq->record( - { tensorA }, std::vector(shader.begin(), shader.end())); + { tensorA }, spirv_from_string(shader)); sq->end(); sq->eval(); diff --git a/test/TestOpAlgoLoopsPassingData.cpp b/test/TestOpAlgoLoopsPassingData.cpp index c2431bc4d..a410e4acf 100644 --- a/test/TestOpAlgoLoopsPassingData.cpp +++ b/test/TestOpAlgoLoopsPassingData.cpp @@ -3,6 +3,8 @@ #include "kompute/Kompute.hpp" +#include "TestUtils.cpp" + TEST(TestProcessingIterations, IterateThroughMultipleSumAndCopies) { kp::Manager mgr; @@ -53,7 +55,7 @@ TEST(TestProcessingIterations, IterateThroughMultipleSumAndCopies) sq->record( { tensorA, tensorB }, - std::vector(shader.begin(), shader.end())); + spirv_from_string(shader)); sq->record({ tensorB, tensorA }); sq->end(); diff --git a/test/TestOpShadersFromStringAndFile.cpp b/test/TestOpShadersFromStringAndFile.cpp index ae2bfce15..73271fc6d 100644 --- a/test/TestOpShadersFromStringAndFile.cpp +++ b/test/TestOpShadersFromStringAndFile.cpp @@ -5,6 +5,8 @@ #include "kompute_test/shaders/shadertest_op_custom_shader.hpp" +#include "TestUtils.cpp" + TEST(TestOpAlgoBase, ShaderRawDataFromConstructor) { kp::Manager mgr; @@ -29,7 +31,7 @@ TEST(TestOpAlgoBase, ShaderRawDataFromConstructor) )"); mgr.evalOpDefault( - { tensorA, tensorB }, std::vector(shader.begin(), shader.end())); + { tensorA, tensorB }, spirv_from_string(shader)); mgr.evalOpDefault({ tensorA, tensorB }); @@ -59,23 +61,6 @@ TEST(TestOpAlgoBase, ShaderCompiledDataFromConstructor) EXPECT_EQ(tensorB->data(), std::vector({ 3, 4, 5 })); } -TEST(TestOpAlgoBase, ShaderRawDataFromFile) -{ - kp::Manager mgr; - - std::shared_ptr tensorA{ new kp::Tensor({ 3, 4, 5 }) }; - std::shared_ptr tensorB{ new kp::Tensor({ 0, 0, 0 }) }; - mgr.rebuild({ tensorA, tensorB }); - - mgr.evalOpDefault( - { tensorA, tensorB }, "test/shaders/glsl/test_op_custom_shader.comp"); - - mgr.evalOpDefault({ tensorA, tensorB }); - - EXPECT_EQ(tensorA->data(), std::vector({ 0, 1, 2 })); - EXPECT_EQ(tensorB->data(), std::vector({ 3, 4, 5 })); -} - TEST(TestOpAlgoBase, ShaderCompiledDataFromFile) { kp::Manager mgr;