|
|
|
@ -448,6 +448,24 @@ void testMatrixZeroAtOffset(int height, int width) {
|
|
|
|
|
MatrixCheckEqual(*cpuA, *cpuTest);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void testMatrixDeepSwap(int height, int width) {
|
|
|
|
|
MatrixPtr cpuA = std::make_shared<CpuMatrix>(height, width);
|
|
|
|
|
MatrixPtr cpuB = std::make_shared<CpuMatrix>(height, width);
|
|
|
|
|
MatrixPtr cpuCopyA = std::make_shared<CpuMatrix>(height, width);
|
|
|
|
|
MatrixPtr cpuCopyB = std::make_shared<CpuMatrix>(height, width);
|
|
|
|
|
|
|
|
|
|
cpuA->randomizeUniform();
|
|
|
|
|
cpuB->randomizeUniform();
|
|
|
|
|
cpuCopyA->copyFrom(*cpuA);
|
|
|
|
|
cpuCopyB->copyFrom(*cpuB);
|
|
|
|
|
|
|
|
|
|
// swap matrix cpuA and cpuB
|
|
|
|
|
cpuA->deepSwap(*cpuB);
|
|
|
|
|
|
|
|
|
|
MatrixCheckEqual(*cpuA, *cpuCopyB);
|
|
|
|
|
MatrixCheckEqual(*cpuB, *cpuCopyA);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void testMatrixBinaryAdd(int height, int width) {
|
|
|
|
|
MatrixPtr cpuA = std::make_shared<CpuMatrix>(height, width);
|
|
|
|
|
MatrixPtr cpuB = std::make_shared<CpuMatrix>(height, width);
|
|
|
|
@ -480,6 +498,7 @@ void testMatrixAssign(int height, int width) {
|
|
|
|
|
MatrixCheckEqual(*cpuA, *outputCheck);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void testMatrixAdd(int height, int width) {
|
|
|
|
|
MatrixPtr cpuA = std::make_shared<CpuMatrix>(height, width);
|
|
|
|
|
MatrixPtr gpuA = std::make_shared<GpuMatrix>(height, width);
|
|
|
|
@ -798,6 +817,7 @@ TEST(Matrix, unary) {
|
|
|
|
|
testMatrixBinaryAdd(height, width);
|
|
|
|
|
testMatrixTanh(height, width);
|
|
|
|
|
testMatrixTanhDerivative(height, width);
|
|
|
|
|
testMatrixDeepSwap(height, width);
|
|
|
|
|
|
|
|
|
|
// applyTernary
|
|
|
|
|
testMatrixTernarySub(height, width);
|
|
|
|
|