#include "stdlib.h" #include "util.h" #include "dataset.h" void __attribute__((noinline)) matmul(const int coreid, const int ncores, const int lda, const data_t A[], const data_t B[], data_t C[] ) { // ***************************** // // **** ADD YOUR CODE HERE ***** // // ***************************** // // // feel free to make a separate function for MI and MSI versions. int i, j, k; int space=lda/ncores; int max= space*coreid+space; data_t temp=0; data_t temp1=0; data_t temp2=0; data_t temp3=0; data_t temp4=0; data_t temp_1=0; data_t temp1_1=0; data_t temp2_1=0; data_t temp3_1=0; data_t temp4_1=0; data_t temp_2=0; data_t temp1_2=0; data_t temp2_2=0; data_t temp3_2=0; data_t temp4_2=0; data_t temp_3=0; data_t temp1_3=0; data_t temp2_3=0; data_t temp3_3=0; data_t temp4_3=0; if (coreid!=ncores-1){ //main loop for (i=space*coreid;i