From 8697b44f5364065f80920002e3c965671edd7522 Mon Sep 17 00:00:00 2001 From: AlmeidaDaniel <2309248@upy.edu.mx> Date: Fri, 27 Mar 2026 16:05:53 -0600 Subject: [PATCH 1/7] Added document --- src/spider/runtime/math/Matrix_Multiply.cpp | 122 ++++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 src/spider/runtime/math/Matrix_Multiply.cpp diff --git a/src/spider/runtime/math/Matrix_Multiply.cpp b/src/spider/runtime/math/Matrix_Multiply.cpp new file mode 100644 index 0000000..cb965db --- /dev/null +++ b/src/spider/runtime/math/Matrix_Multiply.cpp @@ -0,0 +1,122 @@ +#include + + +template +struct Matrix { + T data[Rows][Cols]; + + void setZero() { + for (int i = 0; i < Rows; i++) { + for (int j = 0; j < Cols; j++) { + data[i][j] = T(); + } + } + } +}; + +template +Matrix mat_multiply(Matrix A, Matrix B) { + //Determination of resulting matrix size + int RSize; + if(M > P){ + RSize = M ; + } + else{ + RSize = P; + } + + //Condition for resulting matrix size rounding calculation + int CSize; + if (RSize <= 4){ + CSize = 4; + } + else if (RSize % 4 == 0){ + CSize = RSize; + } + else{ + CSize = 4 * (int(RSize/4) + 1); + } + + // SIMD width selection (based on your Python logic) + int simd_width; + if (RSize > 8) { + simd_width = 8; + } + else if (RSize > 4 && RSize < 8){ + simd_width = 4; + } + else { + simd_width = RSize; + } + + + // Create result square matrix with size CSize(optimization) + Matrix tempResult; + tempResult.setZero(); + + // Matrix multiplication with SIMD-style unrolling + for (int i = 0; i < M; i++) { // For each row in A + for (int k = 0; k < N; k++) { // For each inner dimension + T a_val = A.data[i][k]; + + // Process columns in chunks of simd_width + int j = 0; + while (j < P) { + int remaining = P - j; + + if (remaining >= simd_width) { + // Full SIMD operation - unrolled loops + if (simd_width == 8) { + tempResult.data[i][j] += a_val * B.data[k][j]; + tempResult.data[i][j+1] += a_val * B.data[k][j+1]; + tempResult.data[i][j+2] += a_val * B.data[k][j+2]; + tempResult.data[i][j+3] += a_val * B.data[k][j+3]; + tempResult.data[i][j+4] += a_val * B.data[k][j+4]; + tempResult.data[i][j+5] += a_val * B.data[k][j+5]; + tempResult.data[i][j+6] += a_val * B.data[k][j+6]; + tempResult.data[i][j+7] += a_val * B.data[k][j+7]; + } + else if (simd_width == 4) { + tempResult.data[i][j] += a_val * B.data[k][j]; + tempResult.data[i][j+1] += a_val * B.data[k][j+1]; + tempResult.data[i][j+2] += a_val * B.data[k][j+2]; + tempResult.data[i][j+3] += a_val * B.data[k][j+3]; + } + else if (simd_width == 3) { + tempResult.data[i][j] += a_val * B.data[k][j]; + tempResult.data[i][j+1] += a_val * B.data[k][j+1]; + tempResult.data[i][j+2] += a_val * B.data[k][j+2]; + } + else if (simd_width == 2) { + tempResult.data[i][j] += a_val * B.data[k][j]; + tempResult.data[i][j+1] += a_val * B.data[k][j+1]; + } + else { // simd_width == 1 + tempResult.data[i][j] += a_val * B.data[k][j]; + } + + j += simd_width; + } + else { + // Handle remaining columns that don't fit in SIMD width + for (int s = 0; s < remaining; s++) { + tempResult.data[i][j + s] += a_val * B.data[k][j + s]; + } + j += remaining; + } + } + } + } + + // Extract the actual result (M x P) from the temporary square matrix + Matrix result; + for (int i = 0; i < M; i++) { + for (int j = 0; j < P; j++) { + result.data[i][j] = tempResult.data[i][j]; + } + } + + return result; + + +} \ No newline at end of file From a5ffb69565e80c3b8afd7579bae2acebb1cfb6d6 Mon Sep 17 00:00:00 2001 From: AlmeidaDaniel <2309248@upy.edu.mx> Date: Fri, 27 Mar 2026 16:34:23 -0600 Subject: [PATCH 2/7] code chnages --- src/spider/runtime/math/Matrix_Multiply.cpp | 404 +++++++++++++++++++- src/spider/runtime/math/matrix_multiply.exe | Bin 0 -> 145554 bytes 2 files changed, 383 insertions(+), 21 deletions(-) create mode 100644 src/spider/runtime/math/matrix_multiply.exe diff --git a/src/spider/runtime/math/Matrix_Multiply.cpp b/src/spider/runtime/math/Matrix_Multiply.cpp index cb965db..ed47dff 100644 --- a/src/spider/runtime/math/Matrix_Multiply.cpp +++ b/src/spider/runtime/math/Matrix_Multiply.cpp @@ -17,27 +17,15 @@ struct Matrix { template Matrix mat_multiply(Matrix A, Matrix B) { //Determination of resulting matrix size - int RSize; - if(M > P){ - RSize = M ; - } - else{ - RSize = P; - } - - //Condition for resulting matrix size rounding calculation - int CSize; - if (RSize <= 4){ - CSize = 4; - } - else if (RSize % 4 == 0){ - CSize = RSize; - } - else{ - CSize = 4 * (int(RSize/4) + 1); - } + // COMPILE-TIME calculation (using constexpr) + constexpr int RSize = (M > P) ? M : P; + + // COMPILE-TIME square size calculation + constexpr int CSize = (RSize <= 4) ? 4 : + (RSize % 4 == 0) ? RSize : + 4 * (RSize / 4 + 1); - // SIMD width selection (based on your Python logic) + // SIMD width selection int simd_width; if (RSize > 8) { simd_width = 8; @@ -116,7 +104,381 @@ Matrix mat_multiply(Matrix A, Matrix B) { } } - return result; + return result; +} +// Helper function to print matrices for testing +void printMatrix(const Matrix& m) { + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 3; j++) { + std::cout << m.data[i][j] << " "; + } + std::cout << std::endl; + } +} + +void printMatrix(const Matrix& m) { + for (int i = 0; i < 2; i++) { + for (int j = 0; j < 2; j++) { + std::cout << m.data[i][j] << " "; + } + std::cout << std::endl; + } +} + +void printMatrix(const Matrix& m) { + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 2; j++) { + std::cout << m.data[i][j] << " "; + } + std::cout << std::endl; + } +} + +void printMatrix(const Matrix& m) { + std::cout << m.data[0][0] << std::endl; +} + +int main() { + std::cout << "========================================" << std::endl; + std::cout << " MATRIX MULTIPLICATION TEST SUITE" << std::endl; + std::cout << "========================================" << std::endl; + int tests_passed = 0; + int total_tests = 6; + + // ==================== TEST 1: Simple 2x2 ==================== + std::cout << "\n========================================" << std::endl; + std::cout << "TEST 1: 2x2 Matrix Multiplication" << std::endl; + std::cout << "========================================" << std::endl; + { + Matrix A; + A.data[0][0] = 1; A.data[0][1] = 2; + A.data[1][0] = 3; A.data[1][1] = 4; + + Matrix B; + B.data[0][0] = 5; B.data[0][1] = 6; + B.data[1][0] = 7; B.data[1][1] = 8; + + Matrix expected; + expected.data[0][0] = 19; expected.data[0][1] = 22; + expected.data[1][0] = 43; expected.data[1][1] = 50; + + auto result = mat_multiply(A, B); + + std::cout << "A:" << std::endl; + printMatrix(A); + std::cout << "B:" << std::endl; + printMatrix(B); + std::cout << "Expected:" << std::endl; + printMatrix(expected); + std::cout << "Result:" << std::endl; + printMatrix(result); + + bool passed = true; + for (int i = 0; i < 2; i++) { + for (int j = 0; j < 2; j++) { + if (std::abs(result.data[i][j] - expected.data[i][j]) > 1e-6) { + passed = false; + } + } + } + + if (passed) { + std::cout << "✓ PASSED" << std::endl; + tests_passed++; + } else { + std::cout << "✗ FAILED" << std::endl; + } + } + + // ==================== TEST 2: Non-Square Matrices ==================== + std::cout << "\n========================================" << std::endl; + std::cout << "TEST 2: Non-Square Matrix Multiplication (3x4 * 4x2)" << std::endl; + std::cout << "========================================" << std::endl; + { + Matrix A; + int val = 1; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 4; j++) { + A.data[i][j] = val++; + } + } + + Matrix B; + val = 1; + for (int i = 0; i < 4; i++) { + for (int j = 0; j < 2; j++) { + B.data[i][j] = val++; + } + } + + Matrix expected; + expected.data[0][0] = 50; expected.data[0][1] = 60; + expected.data[1][0] = 114; expected.data[1][1] = 140; + expected.data[2][0] = 178; expected.data[2][1] = 220; + + auto result = mat_multiply(A, B); + + std::cout << "A (3x4):" << std::endl; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 4; j++) { + std::cout << A.data[i][j] << " "; + } + std::cout << std::endl; + } + std::cout << "B (4x2):" << std::endl; + for (int i = 0; i < 4; i++) { + for (int j = 0; j < 2; j++) { + std::cout << B.data[i][j] << " "; + } + std::cout << std::endl; + } + std::cout << "Expected (3x2):" << std::endl; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 2; j++) { + std::cout << expected.data[i][j] << " "; + } + std::cout << std::endl; + } + std::cout << "Result:" << std::endl; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 2; j++) { + std::cout << result.data[i][j] << " "; + } + std::cout << std::endl; + } + + bool passed = true; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 2; j++) { + if (std::abs(result.data[i][j] - expected.data[i][j]) > 1e-6) { + passed = false; + } + } + } + + if (passed) { + std::cout << "✓ PASSED" << std::endl; + tests_passed++; + } else { + std::cout << "✗ FAILED" << std::endl; + } + } + + // ==================== TEST 3: Identity Matrix ==================== + std::cout << "\n========================================" << std::endl; + std::cout << "TEST 3: Identity Matrix Multiplication" << std::endl; + std::cout << "========================================" << std::endl; + { + Matrix A; + int val = 1; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 3; j++) { + A.data[i][j] = val++; + } + } + + Matrix I; + // Initialize identity matrix + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 3; j++) { + I.data[i][j] = (i == j) ? 1.0 : 0.0; + } + } + + auto result = mat_multiply(A, I); + + std::cout << "A * I should equal A" << std::endl; + std::cout << "A:" << std::endl; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 3; j++) { + std::cout << A.data[i][j] << " "; + } + std::cout << std::endl; + } + std::cout << "Result:" << std::endl; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 3; j++) { + std::cout << result.data[i][j] << " "; + } + std::cout << std::endl; + } + + bool passed = true; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 3; j++) { + if (std::abs(result.data[i][j] - A.data[i][j]) > 1e-6) { + passed = false; + } + } + } + + if (passed) { + std::cout << "✓ PASSED" << std::endl; + tests_passed++; + } else { + std::cout << "✗ FAILED" << std::endl; + } + } + + // ==================== TEST 4: Negative Numbers ==================== + std::cout << "\n========================================" << std::endl; + std::cout << "TEST 4: Matrix with Negative Numbers" << std::endl; + std::cout << "========================================" << std::endl; + { + Matrix A; + A.data[0][0] = 1; A.data[0][1] = -2; + A.data[1][0] = -3; A.data[1][1] = 4; + + Matrix B; + B.data[0][0] = -5; B.data[0][1] = 6; + B.data[1][0] = 7; B.data[1][1] = -8; + + Matrix expected; + expected.data[0][0] = -19; expected.data[0][1] = 22; + expected.data[1][0] = 43; expected.data[1][1] = -50; + + auto result = mat_multiply(A, B); + + std::cout << "A:" << std::endl; + printMatrix(A); + std::cout << "B:" << std::endl; + printMatrix(B); + std::cout << "Expected:" << std::endl; + printMatrix(expected); + std::cout << "Result:" << std::endl; + printMatrix(result); + + bool passed = true; + for (int i = 0; i < 2; i++) { + for (int j = 0; j < 2; j++) { + if (std::abs(result.data[i][j] - expected.data[i][j]) > 1e-6) { + passed = false; + } + } + } + + if (passed) { + std::cout << "✓ PASSED" << std::endl; + tests_passed++; + } else { + std::cout << "✗ FAILED" << std::endl; + } + } + + // ==================== TEST 5: Vector Dot Product ==================== + std::cout << "\n========================================" << std::endl; + std::cout << "TEST 5: Vector Dot Product (1x3 * 3x1)" << std::endl; + std::cout << "========================================" << std::endl; + { + Matrix rowVector; + rowVector.data[0][0] = 1; + rowVector.data[0][1] = 2; + rowVector.data[0][2] = 3; + + Matrix colVector; + colVector.data[0][0] = 4; + colVector.data[1][0] = 5; + colVector.data[2][0] = 6; + + auto result = mat_multiply(rowVector, colVector); + + std::cout << "Row vector (1x3): "; + std::cout << rowVector.data[0][0] << " " << rowVector.data[0][1] << " " << rowVector.data[0][2] << std::endl; + std::cout << "Column vector (3x1):" << std::endl; + std::cout << colVector.data[0][0] << std::endl; + std::cout << colVector.data[1][0] << std::endl; + std::cout << colVector.data[2][0] << std::endl; + std::cout << "Result (should be 32): " << result.data[0][0] << std::endl; + + bool passed = std::abs(result.data[0][0] - 32) < 1e-6; + + if (passed) { + std::cout << "✓ PASSED" << std::endl; + tests_passed++; + } else { + std::cout << "✗ FAILED" << std::endl; + } + } + + // ==================== TEST 6: Associativity ==================== + std::cout << "\n========================================" << std::endl; + std::cout << "TEST 6: Associativity (A*B)*C == A*(B*C)" << std::endl; + std::cout << "========================================" << std::endl; + { + Matrix A; + int val = 1; + for (int i = 0; i < 2; i++) { + for (int j = 0; j < 3; j++) { + A.data[i][j] = val++; + } + } + + Matrix B; + val = 1; + for (int i = 0; i < 3; i++) { + for (int j = 0; j < 4; j++) { + B.data[i][j] = val++; + } + } + + Matrix C; + val = 1; + for (int i = 0; i < 4; i++) { + for (int j = 0; j < 2; j++) { + C.data[i][j] = val++; + } + } + + auto AB = mat_multiply(A, B); + auto AB_C = mat_multiply(AB, C); + + auto BC = mat_multiply(B, C); + auto A_BC = mat_multiply(A, BC); + + std::cout << "Result of (A*B)*C:" << std::endl; + for (int i = 0; i < 2; i++) { + for (int j = 0; j < 2; j++) { + std::cout << AB_C.data[i][j] << " "; + } + std::cout << std::endl; + } + std::cout << "Result of A*(B*C):" << std::endl; + for (int i = 0; i < 2; i++) { + for (int j = 0; j < 2; j++) { + std::cout << A_BC.data[i][j] << " "; + } + std::cout << std::endl; + } + + bool passed = true; + for (int i = 0; i < 2; i++) { + for (int j = 0; j < 2; j++) { + if (std::abs(AB_C.data[i][j] - A_BC.data[i][j]) > 1e-6) { + passed = false; + } + } + } + + if (passed) { + std::cout << "✓ PASSED (A*B)*C equals A*(B*C)" << std::endl; + tests_passed++; + } else { + std::cout << "✗ FAILED" << std::endl; + } + } + + // ==================== FINAL RESULTS ==================== + std::cout << "\n========================================" << std::endl; + std::cout << "RESULTS: " << tests_passed << " / " << total_tests << " tests passed" << std::endl; + std::cout << "========================================" << std::endl; + + if (tests_passed == total_tests) { + std::cout << "🎉 All tests passed! Your matrix multiplication is correct! 🎉" << std::endl; + } else { + std::cout << "⚠️ " << (total_tests - tests_passed) << " test(s) failed. Please check your implementation." << std::endl; + } + + return 0; } \ No newline at end of file diff --git a/src/spider/runtime/math/matrix_multiply.exe b/src/spider/runtime/math/matrix_multiply.exe new file mode 100644 index 0000000000000000000000000000000000000000..a822df00039321567e58f0b09c9a273ff113c7eb GIT binary patch literal 145554 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ξe!JrwpYk4d_T|!6>X#<+TyzLh$h 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 vs&50( Date: Fri, 27 Mar 2026 16:35:54 -0600 Subject: [PATCH 3/7] deleted --- src/spider/runtime/math/matrix_multiply.exe | Bin 145554 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/spider/runtime/math/matrix_multiply.exe diff --git a/src/spider/runtime/math/matrix_multiply.exe b/src/spider/runtime/math/matrix_multiply.exe deleted file mode 100644 index a822df00039321567e58f0b09c9a273ff113c7eb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 145554 zcmeFa34D~r{Xag>9@)*gn~*>_0t*HVNFWDCf<$+dENpa>tVw|2(PfitAezhUE(A|7 zK}};cTD7*NEw);r+Ha}Viq^IX5QSRXXl=!#iuXo5(0Txh`M*Ci^XzUGr2c(<{r$iH z-`D4rXJ&w5ww%BtT?#Cj0H*fCg?};tIt8knpOYFTra|(1i$lsh~$c&gb36; zzqiv*BuX>sMlRA3`B;#;c?}-F2gq$iaN#B0mJkqrtc(rJ>ky1PN!A*?DR`ISjd-k# zS?9G2KAy%+AX1tu@J2jV;_DQA=@ef-UgE358}V3)ug>Qq)Fw*nHu9bLY$E-dggllkhFh;e1b1Iw`S~ zo`#d~6$t&#mlmot0xYwM7FE=+I6m|oVT;RhWyZuBy;`#RZ z|1Jmin5J1-W8*y2v~I41ZIx}MZH297#j2Inj;?oVcaiyc*E)Kcqqp7Y=*{@7mcd(e z*UuO`l+xJmD16M+{SbH_4x$?weKvRCu*3A5{J>lG+)o_6+5ZA}ubp)rQB2*d!2ti3 z0aN$w2=KUm(@ng_F#DEIOx-_%fjD~gQ@D8M*fQWxu;&guLS~b@e{?wb?{vnTz4{9g zrZ=$>zs?@;r`5n0G)y66A-r4mo4P+knBKJ033}SpeFn+x+FN_Ucib1*F0@@_`;N`M zCnCLnB%2&LZ*+9jG_4d`*{KqNC42dxuE>~fZb8=TIx`SHy2PJ7+7R_$d%r>`B*%1 zDj7PHR}-*w?V@r?T0fz*_xd9|FYHL;ZG&ogA+m`O*^_wYjf|D{A}py^e$SXuM+*JTIHbMm8A8>fo)O|jO)5;Le z(VLhDCm4VzigBS}y%9KPpZ=jfaP+0^;!fhjaC%u!X{Hmx=7OWN*XZaY5I9Tl{0StY zbAz*f=1t(V^*J*YNBw@s;49kTwGdy{Gep*~%D&}w(~UoXiq77m?|_jP+#!o;+9u#w zS#Qm!N6LDRIC=(yW(rmKk^f>x*JDaquk+I*!4-(a(buUsdX5HjxzN&&k3ekT@rSA5 z4BkDSF<$;qX=!jRxO?Fl*>ik!w2|X;2OQUFM=l7#50haA8^JiT74~p$U+Ejn@i=Kh zSsjBcLl(Wig3L5~=M7*j0c)^A&n=9?j>M3x{#_VzF)sIEnBZuznIwLnEUYh)`kdg8 z5`b6_L|3Oj$#iW3e5JkpL4?ZPZ-;^3HaKzwk{+ghCHPVrOkptiDN@rf^hO=dLbiWg zqZ(vz(&wY2{r#vCS*ZJ{8l3(QPKO8yj^IWhF%>haaisW1{QqBQqW>&D8 ze7*2JLZdJk(nl-y&y&)1L=*ViNp!!6>z*Cf z-5mTE1%&QTk_+8$C%YisVH=x}Eg(J@93Y~qe_vt`EP|5ZDBS0ND3pv}1)IRuAL=d=^B%})Lp@am=h-EOCO;P>Fgsk8RnH!mqR0;?II&x(~)Iy*xj?!_2 z(xawBmcySy33xEL9dwk#nEsI4Gi)Xn)j0>r3I2#@${yY!!o+)T(2lk5sj7Wn!x^Q0 zw*cVnh@*#$yp?E?M!pagH^RvOq?!iMk+rYCe{|*}TM0Ef^Jmh%MY`8Ww?n#h(yfwi zF?VHs*B4NHyqlfV7+HTthtXQRwHVYs7rJ|^(b1E3fIzgBuc?hjM1A9<1Xyd@X)cne z=^5-gGU_ixb+`2F>l#rUeN%QjX76+K`F9_otQ{Ta=sIL{6#hH#F`ANAv?9XdM!tt; z2klYr0DdCmm-bneof$;v^ zfw3)A*De#_H-!yeH-j@*l8CL%sHJ^IrssTb7vV;<*2*REq4|G2JWioZhW8>%0D z8J<;?TMN%8r|{qYm&fEM?2URa4f3^X4^Q{IQh?e%Q+*qm2`ywlGge=&Pp2u_pJ_EE zUyp1`^b0FnIiX*G6=L1wF`2FafCu0QEZ!%N-X2hR60Ey55 ziRirGJ80kfGLE7VI&^zD-ZI2{=-Mzm5%7pl_7~vaNN{}^wh>%Sme7~+J@PN7f|CzV ze*yI*7%|jx)t%_0*Ems+);W4=GHYoRkrnKQnn=X25T2R=ZxY;Ie`c2Kr-|D0d|A(7 zA{s#qK0)bf>=(mam!p2+?OTZF35-Q=oIs68ul{;q?790LT?6STEHOTI_A+PTo{n*j zUYD`A%2=ih12kRpU6h5bYfu4imaXuEzyWG+`cbHkp2t!CrtUYv0FetRlD;Xwa}2(w zbtvHKw1`1N@aOR;%~c6DKHzrrC7`JE2F_iRX+f)zo<5qk{QC$^(ypYUFU>6NbA8_R z>SumqpKGA&)jtJNy7Yg8n$Tje3ynDS@8}Dtp|Lo6YcdOLyQ~PfONXCQQ|W+1n{hYT z9X;n7%X*%3^i-Qi(_XxtYE$5MqiH{b4^{N8Vb?{M@rXIgs~ra{=2PyES_KCcm) zs{{3m_B^itq)XK2;2;JbjyoKEx=nb8P<-g64;~I4L&l-6*+V7YoADQNX77DmzX!qS zA-l;sOjBZjNc(H)65-LwTI-8&A$s4e~EE78$lmLsc;sO_dLf1|#; zYfpl+cj0*u?dmam7d#H(=Iv%xLPK2BxlKX4969)H$0TGBj=(*cjtTq$M@y z>;b2;Z}Teyq)U(eNFd!&LosH{rW?qh#U3~zyC(6mImSDto9+c03JnWfrW<|= zM;6+H=)G*bV#&O_0r8D2*`9F<)$mjq*OPTii}W8 zWD!X{j0{2fV;Z<+CA?I8BL(E?OT2bDw0qo6105C|JVuofQ>=2BeP7}aK@0whaD9oh z$bTpNmZLGzC`54-tn#?Rya!qCqdWF(V>*z2| zAZqtu{@;_>1on};(AH6tP2(jrHp#sjw52_Rn_od{Et`*)lq`pJ-UPWtXjTR`EHCPX zv)-dezi@Wfk=PBFpz(H*_EG&uVi=k47KJ>$`Zz>Ss@u`zLMh7y zj?shR@-5OM9#i+-hCcj1G?!31+mIc(@QCvqDmN@Z(T>gaV0}xY8qpBO8y1{U5*u zsj(S(i`r^Tr9vw~LZ8rlq%ZNQs}Ox!S3l)?#$5m$TVC+zW07YYM-^QPr@uFT^dF9% z$3~xZpgB)OPlADS2?miL(7^HnGlB$OgaK}$;BuSs}=%16n2Q5^O{wa7z(|!-0L*L~la%cx)t3!#6{bfD-NVCZpcl0WS$OD@>aHt%ZS!F#|bMVIo z1nEm$&&60FM#d0sPkZ!*ARhXMI-WxQU@U6trUq-nY>Z@!diB%5L00lN;2zf}0wVho z^IDO4=$^EJ_plCt{sWP}9?V2>ANp5gf3N;kjxudQgUovM&j5m92X>=o4Zu&z&x&Yo zkq*oXkXi&oFqGb4 zFIut@e~1r4S3|~V+GGkp4R|>)l+FvUjU6xN4m55q#Oj*KQGXs**Phy3NULjpqdHzE z`o{Eljp^0_psZ+bY+&1GddLyeh@vYhH9cfa<@1(=o^$$2S-P{&xi2eRD@uE<2~JE% z3U_xHwGIsE|J)HzgFa{BzQAjkY=r7d&)LUro?bNg5e~=Tg6#ss)2#R8g zSOoRQ_Ux1S(I}&**acG5e=Gs-w{iWUGL>@~1UQx5o0p6&=f=&Kk@|;Gp2abZ7*Y7& zfG-uJK~1`?&&Bn3^wkV!kr71L_b1lVEq)A-_WK`nkQtz89fi9CK@_c+zxV3PDE_BI z`a4i=gVM}m9X-Q>Pgt45R60zkG5H@W^#4DW{|S_cvcf@bpS{-1PlpGC)71Ll?9JF{ zrD@IpO8iWbq1DLH=VgW(F!cs6Oqb{92ff#zsU{9L-mFo~NRk z(J(Mz=yfHajeB;>{;S`hs#mTYpa9`E;5-*bV`kJd3{%oOCOS5caHuPmIkLHrQ#ZWj zm_6tKvUYVuSdt>9AvrX`?D?m&=keg>NFFAAe5&}o11r@%S6~)gga#EgHiu?a;mAYb zt&YAcGTT)lrJ3zCJ?*5R1;IHd75EOY5NM4S=;+fwJd1^wRZ(ANpAFVtiQ?m{o+re# z7X1afNt(Rd&jJsowk>ENAEuFHkopJcr?y9>Jx}rk?s1@Dx(Bqb;|lLayPg{jUQGe& z@PlP~L(l^ctqt|W1d}M)YmSGbv!XTb4e7ek^EogK7Ad@3x~g-!&r}#?k&>2M!Fr+t&?t*bc>~%C*2v` zb!>hI@w1_$s|JP+uiC$N&vC_AIuu;>H2KW$?S1V^{Up=S(PUjFc{N}(XJ$Hj_U(Q3 zUv~`def8a4dxnlDD?>*%I5zJkL1V2I>;7T+dk3#HTlNlKl)8?7)7Dt_zII%B_W=FA zj+KdhJeIPaSEy>O0f3nV|FsSsH>Z?!4O&o*Ekp0FeiH99q|I|C`rU2Z`&vul3kv*+ zgNb_wH`dw??tLu~^XFWi3`l<}NOA0ccj##C9=yBp4uUV)cFZ7{6!0mqXJNwWh4joB;Ak!*5k7l~a)0y0zxkh+y$ZQv$ zTQfHa&(_R-;khewoABJ1Nyh+!{f97Z=*^gYCMrc=+Mn~tc{FoCOB2((GIweKqZ2;= zZJKrs20wh0rdnx#CpMrDw`zCohrO7vcVeo~^-B>GnZ{iZ~JF(PE&F3`&*`YnmR z8ffI3{0ccz(YFx(utAZ5%2i5AdY0A`-e`LM3$=-G`-MxG!oLtnJ%V?Y36 zD^JwW7gx*hpd<*&U73utfH8e2lOoZzP-dFhhZD0#O@UeZ$XT7pjq-cN9RfwK9*&RDfTuTLD95!v4l`5k=AOpB$03&zj>&?V_-6-uK_oWrd1Wc9*_$_wW9xu(D zi`*sh135f>j-D@qM=2*^U^jyUlu0t+s}g;gK%XH31fP)TdZ34nwJp3C$1*Tnx4gx~rlZy{`9Z3uflWp}Pyc26`?Nn+z zsi}fh{Szfc2K63XvMwtO%GvioChZ(?!=lwSRAGG!g~sx7U)vfgYKOBgdkNNR5Cw!0 z&lhdoyhd^Bv!F_G>*Mhd=^$n0@#MQQttx4lR3H+gx=N;cSYY&IYCu3$GU;job!YYy z8TR@iUkXVx=kSaT{+#Rxxq9YnqoelR(Y<$GZcg|D7FE{uxDxyYh@riz{qrcqU~n^# zWnH7Xz~5<+AN!ro-beXnQ27>YmiMHfZ{Bou0W)53Rper` z>LwK9&GSV8BiAU|!Er?EyDyVg36V>wSPG&@x4t@7ysP!a>Jfuj`k3fe~~ zC0)@z@FEXB1lEwI&(9T_-ooouq^8(o<>fv`)0mR$K^Wzd-AJv@aw9c6Z^9U;HF*y%r|}laK%^&tk}c9O_wJ@_fR&nKhr13d(+4RN ze%+08FyA#n@xHXzx&F@ucf+tL`tuKBahMtw(7q#SzmT-EKm&T3$iLuC5`DTrA2@@X zXs}bF%|KJtI>4>s7>24pfktQtvL6G6+J%?Mr8-GXHnBd*S-Ug0!Kxj*P!sXYusV8x z0SDISIrk>wrV-HbWKjWlYp{u`{Ly5M10`xjWv6D#@p$oJlHn-)5ZjYjcd zx9atwS601%7AN}*Qt8-LMdQdlYK}u^aK0HcA{xD<4_&(YS-ejU-CJutIP}5lzYP7h z))gG`)vh@_blU1Ydu_ARp5ANAP1}z`sNKDH@RHi6hCWE!KlG#8{d;Yfrwj}oO$F9h z`veVh28KRMb{vL=)`M6o4%~v+?#iUj0>%%&XuOcSL1ZJ~TX{QI*7L5juV~Syl<)Ut zZl@$Zm%0yjI&}0gG-U{_@WyeNCmuq0Gj}xkR?#&dO}-&>K;#SLlZW~^Gc|>up-DYV z7_@bdk-?+vzw;6=--j_Lp&I#XiC#`^lS<=82l~;>Kf(8BTh8` zTM||CFHQ(mRDMjNLq=9dZsB`@?;$I!LJ?=ro6ep$WOaQs^9ZyKj+5;7{)<%Br+y+- zjIOI(PXl;Edd`u0zDh>>rFy;%?L;-b7z?K1#yLIsX9|aOJ_5I_@KfkX)zs1RwvAWS zTokier=hx9sz*7Z|3@XF%4&max*gNZ0i$g?b`6iD;{*we4D~a;tnk^ukezB}1tLa! zS;4i$rrU?X*)qbx7sC~EC`*)3qNLpo8uIHg5i0n}%ROCt z)le55RYB#bMLj}4OGW`I>B|v}sv8h46`|JFQL@y?(O(jA5W(6FA%c*>?axpR!4Mh9;imYmh;FF-Ngc+5#9PY z9zcH`@qGrNd}IfqiwFS|IE#3%s{|VgmTFkJ)c1|&!(}^y`90BcC2c=wDBBd7#7Po; zzd+YZZmmTBNTA~-_dCcyq#?0JTE^!hLuc|(IM*Y|MY2--OORtE`M)H2mL&g?$gurI zB9ezs7n)ut(bIsY$VO%4H%Yuf;@_9}4HEzUbAtb6iFZrfkoQ zcvAm1^hz3PJK{M=2=a(N!kn_V?#hYb&Tj8u)9UAkezW@3p^?=?c%L15C3PPHzc92q z_0^&0(q2ay?Af~~kp35C=;K->`;eKY_366_+_$&*<2w!vU71|VJGVP2|14-UW?sO{ z_87eCz}=j&7C7Fr@B|Y@s@9#ki6;YHJB|1UM4D8x8T~T4bQACKeSCNio#@bKvLb^+j~l3_36a0pbQR7sPO70;&TN|EN^cJaZNy zE=Lzlhnn{e7N!nTGipVeWFgWNgp#s%(3bjV$|Sx@(Vgj{c9G9UC~4GE?!@SXV=O9W zSjAXX3=LsubaWF86@lc81b?r?@ zhnJ$u1gimEF2SJIZ8M-v>6*O!jJ5ax$I*l~EPh<-9JnhiVfh7}i zsrQ&q6%p0<@qdht=6-?_aDL2N#>K#g`t$RrBM_KUcx7Iu@N>WDT{VHfhQ{9y$U}HI zN1m)l$9@$}yH;ZqWcuSuG3ξe!JrwpYk4d_T|!6>X#<+TyzLh$h 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 vs&50( Date: Fri, 27 Mar 2026 16:37:47 -0600 Subject: [PATCH 4/7] changed code --- src/spider/runtime/math/Matrix_Multiply.cpp | 371 -------------------- 1 file changed, 371 deletions(-) diff --git a/src/spider/runtime/math/Matrix_Multiply.cpp b/src/spider/runtime/math/Matrix_Multiply.cpp index ed47dff..c2bb756 100644 --- a/src/spider/runtime/math/Matrix_Multiply.cpp +++ b/src/spider/runtime/math/Matrix_Multiply.cpp @@ -107,378 +107,7 @@ Matrix mat_multiply(Matrix A, Matrix B) { return result; } -// Helper function to print matrices for testing -void printMatrix(const Matrix& m) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 3; j++) { - std::cout << m.data[i][j] << " "; - } - std::cout << std::endl; - } -} - -void printMatrix(const Matrix& m) { - for (int i = 0; i < 2; i++) { - for (int j = 0; j < 2; j++) { - std::cout << m.data[i][j] << " "; - } - std::cout << std::endl; - } -} - -void printMatrix(const Matrix& m) { - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 2; j++) { - std::cout << m.data[i][j] << " "; - } - std::cout << std::endl; - } -} - -void printMatrix(const Matrix& m) { - std::cout << m.data[0][0] << std::endl; -} - int main() { - std::cout << "========================================" << std::endl; - std::cout << " MATRIX MULTIPLICATION TEST SUITE" << std::endl; - std::cout << "========================================" << std::endl; - - int tests_passed = 0; - int total_tests = 6; - - // ==================== TEST 1: Simple 2x2 ==================== - std::cout << "\n========================================" << std::endl; - std::cout << "TEST 1: 2x2 Matrix Multiplication" << std::endl; - std::cout << "========================================" << std::endl; - { - Matrix A; - A.data[0][0] = 1; A.data[0][1] = 2; - A.data[1][0] = 3; A.data[1][1] = 4; - - Matrix B; - B.data[0][0] = 5; B.data[0][1] = 6; - B.data[1][0] = 7; B.data[1][1] = 8; - - Matrix expected; - expected.data[0][0] = 19; expected.data[0][1] = 22; - expected.data[1][0] = 43; expected.data[1][1] = 50; - - auto result = mat_multiply(A, B); - - std::cout << "A:" << std::endl; - printMatrix(A); - std::cout << "B:" << std::endl; - printMatrix(B); - std::cout << "Expected:" << std::endl; - printMatrix(expected); - std::cout << "Result:" << std::endl; - printMatrix(result); - - bool passed = true; - for (int i = 0; i < 2; i++) { - for (int j = 0; j < 2; j++) { - if (std::abs(result.data[i][j] - expected.data[i][j]) > 1e-6) { - passed = false; - } - } - } - - if (passed) { - std::cout << "✓ PASSED" << std::endl; - tests_passed++; - } else { - std::cout << "✗ FAILED" << std::endl; - } - } - - // ==================== TEST 2: Non-Square Matrices ==================== - std::cout << "\n========================================" << std::endl; - std::cout << "TEST 2: Non-Square Matrix Multiplication (3x4 * 4x2)" << std::endl; - std::cout << "========================================" << std::endl; - { - Matrix A; - int val = 1; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 4; j++) { - A.data[i][j] = val++; - } - } - - Matrix B; - val = 1; - for (int i = 0; i < 4; i++) { - for (int j = 0; j < 2; j++) { - B.data[i][j] = val++; - } - } - - Matrix expected; - expected.data[0][0] = 50; expected.data[0][1] = 60; - expected.data[1][0] = 114; expected.data[1][1] = 140; - expected.data[2][0] = 178; expected.data[2][1] = 220; - - auto result = mat_multiply(A, B); - - std::cout << "A (3x4):" << std::endl; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 4; j++) { - std::cout << A.data[i][j] << " "; - } - std::cout << std::endl; - } - std::cout << "B (4x2):" << std::endl; - for (int i = 0; i < 4; i++) { - for (int j = 0; j < 2; j++) { - std::cout << B.data[i][j] << " "; - } - std::cout << std::endl; - } - std::cout << "Expected (3x2):" << std::endl; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 2; j++) { - std::cout << expected.data[i][j] << " "; - } - std::cout << std::endl; - } - std::cout << "Result:" << std::endl; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 2; j++) { - std::cout << result.data[i][j] << " "; - } - std::cout << std::endl; - } - - bool passed = true; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 2; j++) { - if (std::abs(result.data[i][j] - expected.data[i][j]) > 1e-6) { - passed = false; - } - } - } - - if (passed) { - std::cout << "✓ PASSED" << std::endl; - tests_passed++; - } else { - std::cout << "✗ FAILED" << std::endl; - } - } - - // ==================== TEST 3: Identity Matrix ==================== - std::cout << "\n========================================" << std::endl; - std::cout << "TEST 3: Identity Matrix Multiplication" << std::endl; - std::cout << "========================================" << std::endl; - { - Matrix A; - int val = 1; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 3; j++) { - A.data[i][j] = val++; - } - } - - Matrix I; - // Initialize identity matrix - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 3; j++) { - I.data[i][j] = (i == j) ? 1.0 : 0.0; - } - } - - auto result = mat_multiply(A, I); - - std::cout << "A * I should equal A" << std::endl; - std::cout << "A:" << std::endl; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 3; j++) { - std::cout << A.data[i][j] << " "; - } - std::cout << std::endl; - } - std::cout << "Result:" << std::endl; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 3; j++) { - std::cout << result.data[i][j] << " "; - } - std::cout << std::endl; - } - - bool passed = true; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 3; j++) { - if (std::abs(result.data[i][j] - A.data[i][j]) > 1e-6) { - passed = false; - } - } - } - - if (passed) { - std::cout << "✓ PASSED" << std::endl; - tests_passed++; - } else { - std::cout << "✗ FAILED" << std::endl; - } - } - - // ==================== TEST 4: Negative Numbers ==================== - std::cout << "\n========================================" << std::endl; - std::cout << "TEST 4: Matrix with Negative Numbers" << std::endl; - std::cout << "========================================" << std::endl; - { - Matrix A; - A.data[0][0] = 1; A.data[0][1] = -2; - A.data[1][0] = -3; A.data[1][1] = 4; - - Matrix B; - B.data[0][0] = -5; B.data[0][1] = 6; - B.data[1][0] = 7; B.data[1][1] = -8; - - Matrix expected; - expected.data[0][0] = -19; expected.data[0][1] = 22; - expected.data[1][0] = 43; expected.data[1][1] = -50; - - auto result = mat_multiply(A, B); - - std::cout << "A:" << std::endl; - printMatrix(A); - std::cout << "B:" << std::endl; - printMatrix(B); - std::cout << "Expected:" << std::endl; - printMatrix(expected); - std::cout << "Result:" << std::endl; - printMatrix(result); - - bool passed = true; - for (int i = 0; i < 2; i++) { - for (int j = 0; j < 2; j++) { - if (std::abs(result.data[i][j] - expected.data[i][j]) > 1e-6) { - passed = false; - } - } - } - - if (passed) { - std::cout << "✓ PASSED" << std::endl; - tests_passed++; - } else { - std::cout << "✗ FAILED" << std::endl; - } - } - - // ==================== TEST 5: Vector Dot Product ==================== - std::cout << "\n========================================" << std::endl; - std::cout << "TEST 5: Vector Dot Product (1x3 * 3x1)" << std::endl; - std::cout << "========================================" << std::endl; - { - Matrix rowVector; - rowVector.data[0][0] = 1; - rowVector.data[0][1] = 2; - rowVector.data[0][2] = 3; - - Matrix colVector; - colVector.data[0][0] = 4; - colVector.data[1][0] = 5; - colVector.data[2][0] = 6; - - auto result = mat_multiply(rowVector, colVector); - - std::cout << "Row vector (1x3): "; - std::cout << rowVector.data[0][0] << " " << rowVector.data[0][1] << " " << rowVector.data[0][2] << std::endl; - std::cout << "Column vector (3x1):" << std::endl; - std::cout << colVector.data[0][0] << std::endl; - std::cout << colVector.data[1][0] << std::endl; - std::cout << colVector.data[2][0] << std::endl; - std::cout << "Result (should be 32): " << result.data[0][0] << std::endl; - - bool passed = std::abs(result.data[0][0] - 32) < 1e-6; - - if (passed) { - std::cout << "✓ PASSED" << std::endl; - tests_passed++; - } else { - std::cout << "✗ FAILED" << std::endl; - } - } - - // ==================== TEST 6: Associativity ==================== - std::cout << "\n========================================" << std::endl; - std::cout << "TEST 6: Associativity (A*B)*C == A*(B*C)" << std::endl; - std::cout << "========================================" << std::endl; - { - Matrix A; - int val = 1; - for (int i = 0; i < 2; i++) { - for (int j = 0; j < 3; j++) { - A.data[i][j] = val++; - } - } - - Matrix B; - val = 1; - for (int i = 0; i < 3; i++) { - for (int j = 0; j < 4; j++) { - B.data[i][j] = val++; - } - } - - Matrix C; - val = 1; - for (int i = 0; i < 4; i++) { - for (int j = 0; j < 2; j++) { - C.data[i][j] = val++; - } - } - - auto AB = mat_multiply(A, B); - auto AB_C = mat_multiply(AB, C); - - auto BC = mat_multiply(B, C); - auto A_BC = mat_multiply(A, BC); - - std::cout << "Result of (A*B)*C:" << std::endl; - for (int i = 0; i < 2; i++) { - for (int j = 0; j < 2; j++) { - std::cout << AB_C.data[i][j] << " "; - } - std::cout << std::endl; - } - std::cout << "Result of A*(B*C):" << std::endl; - for (int i = 0; i < 2; i++) { - for (int j = 0; j < 2; j++) { - std::cout << A_BC.data[i][j] << " "; - } - std::cout << std::endl; - } - - bool passed = true; - for (int i = 0; i < 2; i++) { - for (int j = 0; j < 2; j++) { - if (std::abs(AB_C.data[i][j] - A_BC.data[i][j]) > 1e-6) { - passed = false; - } - } - } - - if (passed) { - std::cout << "✓ PASSED (A*B)*C equals A*(B*C)" << std::endl; - tests_passed++; - } else { - std::cout << "✗ FAILED" << std::endl; - } - } - - // ==================== FINAL RESULTS ==================== - std::cout << "\n========================================" << std::endl; - std::cout << "RESULTS: " << tests_passed << " / " << total_tests << " tests passed" << std::endl; - std::cout << "========================================" << std::endl; - - if (tests_passed == total_tests) { - std::cout << "🎉 All tests passed! Your matrix multiplication is correct! 🎉" << std::endl; - } else { - std::cout << "⚠️ " << (total_tests - tests_passed) << " test(s) failed. Please check your implementation." << std::endl; - } return 0; } \ No newline at end of file From 6895309679dcd1409db72a30de4d759eb0e348cc Mon Sep 17 00:00:00 2001 From: AlmeidaDaniel <2309248@upy.edu.mx> Date: Fri, 27 Mar 2026 16:39:29 -0600 Subject: [PATCH 5/7] tested code --- src/spider/runtime/math/matrix_multiply.exe | Bin 0 -> 132410 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/spider/runtime/math/matrix_multiply.exe diff --git a/src/spider/runtime/math/matrix_multiply.exe b/src/spider/runtime/math/matrix_multiply.exe new file mode 100644 index 0000000000000000000000000000000000000000..a580c890e1df8600f10deb1b88b9d918929b0a87 GIT binary patch literal 132410 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 Sw1Cg%S!v^x_O0|f`TqjRs4Kq! literal 0 HcmV?d00001 From 38006fe19a186d753144487217b61ed5cc54761e Mon Sep 17 00:00:00 2001 From: AlmeidaDaniel <2309248@upy.edu.mx> Date: Fri, 27 Mar 2026 16:40:28 -0600 Subject: [PATCH 6/7] deleted document --- src/spider/runtime/math/matrix_multiply.exe | Bin 132410 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/spider/runtime/math/matrix_multiply.exe diff --git a/src/spider/runtime/math/matrix_multiply.exe b/src/spider/runtime/math/matrix_multiply.exe deleted file mode 100644 index a580c890e1df8600f10deb1b88b9d918929b0a87..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 132410 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 Sw1Cg%S!v^x_O0|f`TqjRs4Kq! From a077c084a2b070e43036c28cfaf1f12ed4e198ed Mon Sep 17 00:00:00 2001 From: AlmeidaDaniel <2309248@upy.edu.mx> Date: Fri, 27 Mar 2026 16:47:50 -0600 Subject: [PATCH 7/7] code changed --- src/spider/runtime/math/Matrix_Multiply.cpp | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/spider/runtime/math/Matrix_Multiply.cpp b/src/spider/runtime/math/Matrix_Multiply.cpp index c2bb756..df708aa 100644 --- a/src/spider/runtime/math/Matrix_Multiply.cpp +++ b/src/spider/runtime/math/Matrix_Multiply.cpp @@ -106,8 +106,3 @@ Matrix mat_multiply(Matrix A, Matrix B) { return result; } - -int main() { - - return 0; -} \ No newline at end of file