http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_literals3.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_literals3.dml b/src/test/scripts/functions/parfor/parfor_literals3.dml index feabb20..98a9328 100644 --- a/src/test/scripts/functions/parfor/parfor_literals3.dml +++ b/src/test/scripts/functions/parfor/parfor_literals3.dml @@ -19,15 +19,15 @@ # #------------------------------------------------------------- - -A = read($1, rows=$2, cols=$3, format="text"); - -parfor( i in 1:1, mode=REMOTE_MR, opt=NONE ) -{ - print("{"); #level in - print("}"); #level out - print(","); #instruction - print(";"); #component -} - + +A = read($1, rows=$2, cols=$3, format="text"); + +parfor( i in 1:1, mode=REMOTE_MR, opt=NONE ) +{ + print("{"); #level in + print("}"); #level out + print(","); #instruction + print(";"); #component +} + write(A, $4); \ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_literals4a.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_literals4a.dml b/src/test/scripts/functions/parfor/parfor_literals4a.dml index ad00243..e6da682 100644 --- a/src/test/scripts/functions/parfor/parfor_literals4a.dml +++ b/src/test/scripts/functions/parfor/parfor_literals4a.dml @@ -19,15 +19,15 @@ # #------------------------------------------------------------- - - -A = read($1, rows=$2, cols=$3, format="text"); -a_t0 = matrix(0, rows=nrow(A),cols=ncol(A)); - -parfor( i in 1:1, mode=LOCAL, opt=NONE, check=0 ) -{ - a_t0[1:nrow(A),1:ncol(A)]=A+0; -} - -write(a_t0, $4); + + +A = read($1, rows=$2, cols=$3, format="text"); +a_t0 = matrix(0, rows=nrow(A),cols=ncol(A)); + +parfor( i in 1:1, mode=LOCAL, opt=NONE, check=0 ) +{ + a_t0[1:nrow(A),1:ncol(A)]=A+0; +} + +write(a_t0, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_literals4b.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_literals4b.dml b/src/test/scripts/functions/parfor/parfor_literals4b.dml index cf72593..8fc7402 100644 --- a/src/test/scripts/functions/parfor/parfor_literals4b.dml +++ b/src/test/scripts/functions/parfor/parfor_literals4b.dml @@ -19,15 +19,15 @@ # #------------------------------------------------------------- - - -A = read($1, rows=$2, cols=$3, format="text"); -a_t0 = matrix(0, rows=nrow(A),cols=ncol(A)); - -parfor( i in 1:1, mode=REMOTE_MR, opt=NONE, check=0 ) -{ - a_t0[1:nrow(A),1:ncol(A)]=A+0; -} - -write(a_t0, $4); + + +A = read($1, rows=$2, cols=$3, format="text"); +a_t0 = matrix(0, rows=nrow(A),cols=ncol(A)); + +parfor( i in 1:1, mode=REMOTE_MR, opt=NONE, check=0 ) +{ + a_t0[1:nrow(A),1:ncol(A)]=A+0; +} + +write(a_t0, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_mdatapartitioning.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_mdatapartitioning.R b/src/test/scripts/functions/parfor/parfor_mdatapartitioning.R index ccb97fb..a719f72 100644 --- a/src/test/scripts/functions/parfor/parfor_mdatapartitioning.R +++ b/src/test/scripts/functions/parfor/parfor_mdatapartitioning.R @@ -19,40 +19,40 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -n <- ncol(V); - -R1 <- array(0,dim=c(1,n)) -R2 <- array(0,dim=c(1,n)) - -for( i in 1:n ) -{ - X <- V[ ,i]; - R1[1,i] <- sum(X); -} - -if( args[3]==1 ) -{ - for( i in 1:n ) - { - X1 <- V[i,]; - X2 <- V[i,]; - R2[1,i] <- R1[1,i] + sum(X1)+sum(X2); - } -} else { - for( i in 1:n ) - { - X1 <- V[i,]; - X2 <- V[,i]; - R2[1,i] <- R1[1,i] + sum(X1)+sum(X2); - } -} - + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +n <- ncol(V); + +R1 <- array(0,dim=c(1,n)) +R2 <- array(0,dim=c(1,n)) + +for( i in 1:n ) +{ + X <- V[ ,i]; + R1[1,i] <- sum(X); +} + +if( args[3]==1 ) +{ + for( i in 1:n ) + { + X1 <- V[i,]; + X2 <- V[i,]; + R2[1,i] <- R1[1,i] + sum(X1)+sum(X2); + } +} else { + for( i in 1:n ) + { + X1 <- V[i,]; + X2 <- V[,i]; + R2[1,i] <- R1[1,i] + sum(X1)+sum(X2); + } +} + writeMM(as(R2, "CsparseMatrix"), paste(args[2], "Rout", sep="")); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_mdatapartitioning1.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_mdatapartitioning1.dml b/src/test/scripts/functions/parfor/parfor_mdatapartitioning1.dml index 5bdfcc1..ea46c94 100644 --- a/src/test/scripts/functions/parfor/parfor_mdatapartitioning1.dml +++ b/src/test/scripts/functions/parfor/parfor_mdatapartitioning1.dml @@ -19,29 +19,29 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $3; - -R1 = matrix(0, rows=1,cols=n); -R2 = matrix(0, rows=1,cols=n); -dummy = matrix(1, rows=1, cols=1); - -parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, opt=NONE) -{ - X = V[,i]; - sX = sum(X); - R1[1,i] = dummy * sX; -} - -parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, opt=NONE) -{ - X1 = V[i,]; - X2 = V[i,]; - sX1 = sum(X1); - sX2 = sum(X2); - R2[1,i] = R1[1,i]+sX1+sX2; -} - - + +V = read($1,rows=$2,cols=$3); +n = $3; + +R1 = matrix(0, rows=1,cols=n); +R2 = matrix(0, rows=1,cols=n); +dummy = matrix(1, rows=1, cols=1); + +parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, opt=NONE) +{ + X = V[,i]; + sX = sum(X); + R1[1,i] = dummy * sX; +} + +parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, opt=NONE) +{ + X1 = V[i,]; + X2 = V[i,]; + sX1 = sum(X1); + sX2 = sum(X2); + R2[1,i] = R1[1,i]+sX1+sX2; +} + + write(R2, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_mdatapartitioning2.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_mdatapartitioning2.dml b/src/test/scripts/functions/parfor/parfor_mdatapartitioning2.dml index 4f02441..99ef171 100644 --- a/src/test/scripts/functions/parfor/parfor_mdatapartitioning2.dml +++ b/src/test/scripts/functions/parfor/parfor_mdatapartitioning2.dml @@ -19,28 +19,28 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $3; - -R1 = matrix(0,rows=1,cols=n); -R2 = matrix(0,rows=1,cols=n); -dummy = matrix(1,rows=1, cols=1); - -parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, opt=NONE ) -{ - X = V[,i]; - sX = sum(X); - R1[1,i] = dummy * sX; -} - -parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, opt=NONE ) -{ - X1 = V[i,]; - X2 = V[,i]; - sX1 = sum(X1); - sX2 = sum(X2); - R2[1,i] = R1[1,i]+sX1+sX2; -} - + +V = read($1,rows=$2,cols=$3); +n = $3; + +R1 = matrix(0,rows=1,cols=n); +R2 = matrix(0,rows=1,cols=n); +dummy = matrix(1,rows=1, cols=1); + +parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, opt=NONE ) +{ + X = V[,i]; + sX = sum(X); + R1[1,i] = dummy * sX; +} + +parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, opt=NONE ) +{ + X1 = V[i,]; + X2 = V[,i]; + sX1 = sum(X1); + sX2 = sum(X2); + R2[1,i] = R1[1,i]+sX1+sX2; +} + write(R2, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_optimizer1.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_optimizer1.R b/src/test/scripts/functions/parfor/parfor_optimizer1.R index a75cf9c..5044b71 100644 --- a/src/test/scripts/functions/parfor/parfor_optimizer1.R +++ b/src/test/scripts/functions/parfor/parfor_optimizer1.R @@ -19,37 +19,37 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -#NOTES MB: readMM returns an obj inherited from matrix -# (it seams like it internally uses lists, which makes -# is very slow if there are multiple passes over the data). -# adding 'V <- as.matrix(V1)' by more than a factor of 10. -# However, this will always result in a dense matrix. - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); - -m <- nrow(V); -n <- ncol(V); -W <- m; - -R <- array(0,dim=c(n,n)) - -for( i in 1:(n-1) ) -{ - X <- V[ ,i]; - - for( j in (i+1):n ) - { - Y <- V[ ,j]; - R[i,j] <- cor(X, Y) -# print(R[i,j]); - } -} - -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +#NOTES MB: readMM returns an obj inherited from matrix +# (it seams like it internally uses lists, which makes +# is very slow if there are multiple passes over the data). +# adding 'V <- as.matrix(V1)' by more than a factor of 10. +# However, this will always result in a dense matrix. + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); + +m <- nrow(V); +n <- ncol(V); +W <- m; + +R <- array(0,dim=c(n,n)) + +for( i in 1:(n-1) ) +{ + X <- V[ ,i]; + + for( j in (i+1):n ) + { + Y <- V[ ,j]; + R[i,j] <- cor(X, Y) +# print(R[i,j]); + } +} + +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_optimizer1.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_optimizer1.dml b/src/test/scripts/functions/parfor/parfor_optimizer1.dml index 36c3fcf..ddb7531 100644 --- a/src/test/scripts/functions/parfor/parfor_optimizer1.dml +++ b/src/test/scripts/functions/parfor/parfor_optimizer1.dml @@ -19,35 +19,35 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -m = $2; -n = $3; -W = m; - -R = matrix(0, rows=n,cols=n); -dummy = matrix(1, rows=1, cols=1); - -parfor( i in 1:(n-1), opt=RULEBASED ) -{ - X = V[,i]; - m2X = moment(X,2); - sigmaX = sqrt(m2X * (W/(W-1.0)) ); - - parfor( j in (i+1):n ) - { - Y = V[,j]; - - #corr computation - m2Y = moment(Y,2); - sigmaY = sqrt(m2Y * (W/(W-1.0)) ); - covXY = cov(X,Y); - rXY = covXY / (sigmaX*sigmaY); - - #print("R[("+i+","+j+")]="+rXY); - R[i,j] = dummy * rXY; - - } -} - + +V = read($1,rows=$2,cols=$3); +m = $2; +n = $3; +W = m; + +R = matrix(0, rows=n,cols=n); +dummy = matrix(1, rows=1, cols=1); + +parfor( i in 1:(n-1), opt=RULEBASED ) +{ + X = V[,i]; + m2X = moment(X,2); + sigmaX = sqrt(m2X * (W/(W-1.0)) ); + + parfor( j in (i+1):n ) + { + Y = V[,j]; + + #corr computation + m2Y = moment(Y,2); + sigmaY = sqrt(m2Y * (W/(W-1.0)) ); + covXY = cov(X,Y); + rXY = covXY / (sigmaX*sigmaY); + + #print("R[("+i+","+j+")]="+rXY); + R[i,j] = dummy * rXY; + + } +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_optimizer2.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_optimizer2.R b/src/test/scripts/functions/parfor/parfor_optimizer2.R index b6ef0e9..f31c0b5 100644 --- a/src/test/scripts/functions/parfor/parfor_optimizer2.R +++ b/src/test/scripts/functions/parfor/parfor_optimizer2.R @@ -19,138 +19,138 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - - -D1 <- readMM(paste(args[1], "D.mtx", sep="")) -S11 <- readMM(paste(args[1], "S1.mtx", sep="")) -S21 <- readMM(paste(args[1], "S2.mtx", sep="")) -K11 <- readMM(paste(args[1], "K1.mtx", sep="")) -K21 <- readMM(paste(args[1], "K2.mtx", sep="")) -D <- as.matrix(D1); -S1 <- as.matrix(S11); -S2 <- as.matrix(S21); -K1 <- as.matrix(K11); -K2 <- as.matrix(K21); - -numPairs <- ncol(S1) * ncol(S2); # number of attribute pairs (|S1|*|S2|) -maxC <- args[2]; # max number of categories in any categorical attribute - -s1size <- ncol(S1); -s2size <- ncol(S2); - -# R, chisq, cramers, spearman, eta, anovaf -numstats <- 8; -basestats <- array(0,dim=c(numstats,numPairs)); -cat_counts <- array(0,dim=c(maxC,numPairs)); -cat_means <- array(0,dim=c(maxC,numPairs)); -cat_vars <- array(0,dim=c(maxC,numPairs)); - - -for( i in 1:s1size ) { - a1 <- S1[,i]; - k1 <- K1[1,i]; - A1 <- as.matrix(D[,a1]); - - for( j in 1:s2size ) { - pairID <-(i-1)*s2size+j; - a2 <- S2[,j]; - k2 <- K2[1,j]; - A2 <- as.matrix(D[,a2]); - - if (k1 == k2) { - if (k1 == 1) { - # scale-scale - print("scale-scale"); - basestats[1,pairID] <- cor(D[,a1], D[,a2]); - #basestats[1,pairID] <- cor(A1, A2); - - print(basestats[1,pairID]); - } else { - # nominal-nominal or ordinal-ordinal - print("categorical-categorical"); - F <- table(A1,A2); - cst <- chisq.test(F); - chi_squared <- as.numeric(cst[1]); - degFreedom <- (nrow(F)-1)*(ncol(F)-1); - pValue <- as.numeric(cst[3]); - q <- min(dim(F)); - W <- sum(F); - cramers_v <- sqrt(chi_squared/(W*(q-1))); - - basestats[2,pairID] <- chi_squared; - basestats[3,pairID] <- degFreedom; - basestats[4,pairID] <- pValue; - basestats[5,pairID] <- cramers_v; - - if ( k1 == 3 ) { - # ordinal-ordinal - print("ordinal-ordinal"); - basestats[6,pairID] <- cor(A1,A2, method="spearman"); - } - } - } - else { - if (k1 == 1 || k2 == 1) { - # Scale-nominal/ordinal - print("scale-categorical"); - if ( k1 == 1 ) { - Av <- as.matrix(A2); - Yv <- as.matrix(A1); - } - else { - Av <- as.matrix(A1); - Yv <- as.matrix(A2); - } - - W <- nrow(Av); - my <- mean(Yv); - varY <- var(Yv); - - CFreqs <- as.matrix(table(Av)); - CMeans <- as.matrix(aggregate(Yv, by=list(Av), "mean")$V1); - CVars <- as.matrix(aggregate(Yv, by=list(Av), "var")$V1); - R <- nrow(CFreqs); - - Eta <- sqrt(1 - ( sum((CFreqs-1)*CVars) / ((W-1)*varY) )); - anova_num <- sum( (CFreqs*(CMeans-my)^2) )/(R-1); - anova_den <- sum( (CFreqs-1)*CVars )/(W-R); - ANOVAF <- anova_num/anova_den; - - basestats[7,pairID] <- Eta; - basestats[8,pairID] <- ANOVAF; - - cat_counts[ 1:length(CFreqs),pairID] <- CFreqs; - cat_means[ 1:length(CMeans),pairID] <- CMeans; - cat_vars[ 1:length(CVars),pairID] <- CVars; - } - else { - # nominal-ordinal or ordinal-nominal - print("nomial-ordinal"); #TODO should not be same code - F <- table(A1,A2); - cst <- chisq.test(F); - chi_squared <- as.numeric(cst[1]); - degFreedom <- (nrow(F)-1)*(ncol(F)-1); - pValue <- as.numeric(cst[3]); - q <- min(dim(F)); - W <- sum(F); - cramers_v <- sqrt(chi_squared/(W*(q-1))); - - basestats[2,pairID] <- chi_squared; - basestats[3,pairID] <- degFreedom; - basestats[4,pairID] <- pValue; - basestats[5,pairID] <- cramers_v; - } - } - } -} - -writeMM(as(basestats, "CsparseMatrix"), paste(args[3], "bivar.stats", sep="")); -writeMM(as(cat_counts, "CsparseMatrix"), paste(args[3], "category.counts", sep="")); -writeMM(as(cat_means, "CsparseMatrix"), paste(args[3], "category.means", sep="")); -writeMM(as(cat_vars, "CsparseMatrix"), paste(args[3], "category.variances", sep="")); - + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + + +D1 <- readMM(paste(args[1], "D.mtx", sep="")) +S11 <- readMM(paste(args[1], "S1.mtx", sep="")) +S21 <- readMM(paste(args[1], "S2.mtx", sep="")) +K11 <- readMM(paste(args[1], "K1.mtx", sep="")) +K21 <- readMM(paste(args[1], "K2.mtx", sep="")) +D <- as.matrix(D1); +S1 <- as.matrix(S11); +S2 <- as.matrix(S21); +K1 <- as.matrix(K11); +K2 <- as.matrix(K21); + +numPairs <- ncol(S1) * ncol(S2); # number of attribute pairs (|S1|*|S2|) +maxC <- args[2]; # max number of categories in any categorical attribute + +s1size <- ncol(S1); +s2size <- ncol(S2); + +# R, chisq, cramers, spearman, eta, anovaf +numstats <- 8; +basestats <- array(0,dim=c(numstats,numPairs)); +cat_counts <- array(0,dim=c(maxC,numPairs)); +cat_means <- array(0,dim=c(maxC,numPairs)); +cat_vars <- array(0,dim=c(maxC,numPairs)); + + +for( i in 1:s1size ) { + a1 <- S1[,i]; + k1 <- K1[1,i]; + A1 <- as.matrix(D[,a1]); + + for( j in 1:s2size ) { + pairID <-(i-1)*s2size+j; + a2 <- S2[,j]; + k2 <- K2[1,j]; + A2 <- as.matrix(D[,a2]); + + if (k1 == k2) { + if (k1 == 1) { + # scale-scale + print("scale-scale"); + basestats[1,pairID] <- cor(D[,a1], D[,a2]); + #basestats[1,pairID] <- cor(A1, A2); + + print(basestats[1,pairID]); + } else { + # nominal-nominal or ordinal-ordinal + print("categorical-categorical"); + F <- table(A1,A2); + cst <- chisq.test(F); + chi_squared <- as.numeric(cst[1]); + degFreedom <- (nrow(F)-1)*(ncol(F)-1); + pValue <- as.numeric(cst[3]); + q <- min(dim(F)); + W <- sum(F); + cramers_v <- sqrt(chi_squared/(W*(q-1))); + + basestats[2,pairID] <- chi_squared; + basestats[3,pairID] <- degFreedom; + basestats[4,pairID] <- pValue; + basestats[5,pairID] <- cramers_v; + + if ( k1 == 3 ) { + # ordinal-ordinal + print("ordinal-ordinal"); + basestats[6,pairID] <- cor(A1,A2, method="spearman"); + } + } + } + else { + if (k1 == 1 || k2 == 1) { + # Scale-nominal/ordinal + print("scale-categorical"); + if ( k1 == 1 ) { + Av <- as.matrix(A2); + Yv <- as.matrix(A1); + } + else { + Av <- as.matrix(A1); + Yv <- as.matrix(A2); + } + + W <- nrow(Av); + my <- mean(Yv); + varY <- var(Yv); + + CFreqs <- as.matrix(table(Av)); + CMeans <- as.matrix(aggregate(Yv, by=list(Av), "mean")$V1); + CVars <- as.matrix(aggregate(Yv, by=list(Av), "var")$V1); + R <- nrow(CFreqs); + + Eta <- sqrt(1 - ( sum((CFreqs-1)*CVars) / ((W-1)*varY) )); + anova_num <- sum( (CFreqs*(CMeans-my)^2) )/(R-1); + anova_den <- sum( (CFreqs-1)*CVars )/(W-R); + ANOVAF <- anova_num/anova_den; + + basestats[7,pairID] <- Eta; + basestats[8,pairID] <- ANOVAF; + + cat_counts[ 1:length(CFreqs),pairID] <- CFreqs; + cat_means[ 1:length(CMeans),pairID] <- CMeans; + cat_vars[ 1:length(CVars),pairID] <- CVars; + } + else { + # nominal-ordinal or ordinal-nominal + print("nomial-ordinal"); #TODO should not be same code + F <- table(A1,A2); + cst <- chisq.test(F); + chi_squared <- as.numeric(cst[1]); + degFreedom <- (nrow(F)-1)*(ncol(F)-1); + pValue <- as.numeric(cst[3]); + q <- min(dim(F)); + W <- sum(F); + cramers_v <- sqrt(chi_squared/(W*(q-1))); + + basestats[2,pairID] <- chi_squared; + basestats[3,pairID] <- degFreedom; + basestats[4,pairID] <- pValue; + basestats[5,pairID] <- cramers_v; + } + } + } +} + +writeMM(as(basestats, "CsparseMatrix"), paste(args[3], "bivar.stats", sep="")); +writeMM(as(cat_counts, "CsparseMatrix"), paste(args[3], "category.counts", sep="")); +writeMM(as(cat_means, "CsparseMatrix"), paste(args[3], "category.means", sep="")); +writeMM(as(cat_vars, "CsparseMatrix"), paste(args[3], "category.variances", sep="")); + http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_optimizer2.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_optimizer2.dml b/src/test/scripts/functions/parfor/parfor_optimizer2.dml index baf8792..e6007af 100644 --- a/src/test/scripts/functions/parfor/parfor_optimizer2.dml +++ b/src/test/scripts/functions/parfor/parfor_optimizer2.dml @@ -19,259 +19,259 @@ # #------------------------------------------------------------- - - -/* - * - * For a given pair of attribute sets, compute bivariate statistics between all attribute pairs - * Given, S_1 = {A_11, A_12, ... A_1m} and S_2 = {A_21, A_22, ... A_2n} - * compute bivariate stats for m*n pairs (A_1i, A_2j), (1<= i <=m) and (1<= j <=n) - * - * Seven inputs: - * $1) D - input data - * $2) S1 - First attribute set {A_11, A_12, ... A_1m} - * $3) S2 - Second attribute set {A_21, A_22, ... A_2n} - * $4) K1 - kind for attributes in S1 - * $5) K2 - kind for attributes in S2 - * kind=1 for scale, kind=2 for nominal, kind=3 for ordinal - * $6) numPairs - total number of pairs (m*n) - * $7) maxC - maximum number of categories in any categorical attribute - * - * One output: - * $6) output directory in which following four statistics files are created - * + bivar.stats - matrix with all 8 bivariate statistics computed for different attribute pairs - * (R, (chi-sq, df, pval, cramersv), spearman, Eta, F) - * + categorical.counts - - * + categorical.means - - * + categorical.variances - - * -> Values in these three matrices are applicable only for scale-categorical attribute pairs. - * k^th column in these matrices denote the attribute pair (A_1i,A_2j) where i*j = k. - */ - -D = read($1, rows=$7, cols=$8); # input data set -S1 = read($2, rows=1, cols=$9); # attribute set 1 -S2 = read($3, rows=1, cols=$9); # attribute set 2 -K1 = read($4, rows=1, cols=$9); # kind for attributes in S1 -K2 = read($5, rows=1, cols=$9); # kind for attributes in S2 -numPairs = $10; # number of attribute pairs (|S1|*|S2|) -maxC = $11; # max number of categories in any categorical attribute - -s1size = ncol(S1); -s2size = ncol(S2); - -#numpairs = s1size * s2size; -#print(s1size + ", " + s2size + ", " + numpairs); - -# R, chisq, cramers, spearman, eta, anovaf -numstats = 8; -basestats = matrix(0, rows=numstats, cols=numPairs); -cat_counts = matrix(0, rows=maxC, cols=numPairs); -cat_means = matrix(0, rows=maxC, cols=numPairs); -cat_vars = matrix(0, rows=maxC, cols=numPairs); - -dummy = matrix(1, rows=1, cols=1); - - -parfor( i in 1:s1size, check=0, opt=RULEBASED) { - a1 = castAsScalar(S1[,i]); - k1 = castAsScalar(K1[1,i]); - A1 = D[,a1]; - - parfor( j in 1:s2size, check=0) { - pairID = (i-1)*s2size+j; - a2 = castAsScalar(S2[,j]); - k2 = castAsScalar(K2[1,j]); - A2 = D[,a2]; - - if (k1 == k2) { - if (k1 == 1) { - # scale-scale - print("[" + i + "," + j + "] scale-scale"); - r = bivar_ss(A1,A2); - basestats[1,pairID] = dummy*r; - } else { - # nominal-nominal or ordinal-ordinal - print("[" + i + "," + j + "] categorical-categorical"); - [chisq, df, pval, cramersv] = bivar_cc(A1,A2); - basestats[2,pairID] = dummy*chisq; - basestats[3,pairID] = dummy*df; - basestats[4,pairID] = dummy*pval; - basestats[5,pairID] = dummy*cramersv; - - if ( k1 == 3 ) { - # ordinal-ordinal - print("[" + i + "," + j + "] ordinal-ordinal"); - sp = bivar_oo(A1, A2); - basestats[6,pairID] = dummy*sp; - } - } - } - else { - if (k1 == 1 | k2 == 1) { - # Scale-nominal/ordinal - print("[" + i + "," + j + "] scale-categorical"); - - if ( k1 == 1 ) { - [eta,f, counts, means, vars] = bivar_sc(A1,A2); - } - else { - [eta,f, counts, means, vars] = bivar_sc(A2,A1); - } - basestats[7,pairID] = dummy*eta; - basestats[8,pairID] = dummy*f; - cat_counts[,pairID] = counts; - cat_means[,pairID] = means; - cat_vars[,pairID] = vars; - } - else { - # nominal-ordinal or ordinal-nominal - print("[" + i + "," + j + "] categorical-categorical"); - [chisq, df, pval, cramersv] = bivar_cc(A1,A2); - basestats[2,pairID] = dummy*chisq; - basestats[3,pairID] = dummy*df; - basestats[4,pairID] = dummy*pval; - basestats[5,pairID] = dummy*cramersv; - } - } - } -} - -write(basestats, $6 + "/bivar.stats"); -write(cat_counts, $6 + "/category.counts"); -write(cat_means, $6 + "/category.means"); -write(cat_vars, $6 + "/category.variances"); - - -# ----------------------------------------------------------------------------------------------------------- - -bivar_cc = function(Matrix[Double] A, Matrix[Double] B) return (Double chisq, Double df, Double pval, Double cramersv) { - - # Contingency Table - F = table(A,B); - - # Chi-Squared - W = sum(F); - r = rowSums(F); - c = colSums(F); - E = (r %*% c)/W; - T = (F-E)^2/E; - chi_squared = sum(T); - - # compute p-value - degFreedom = (nrow(F)-1)*(ncol(F)-1); - pValue = pchisq(target=chi_squared, df=degFreedom, lower.tail=FALSE); - - # Cramer's V - R = nrow(F); - C = ncol(F); - q = min(R,C); - cramers_v = sqrt(chi_squared/(W*(q-1))); - - # Assign return values - chisq = chi_squared; - df = degFreedom; - pval = pValue; - cramersv = cramers_v; -} - -# ----------------------------------------------------------------------------------------------------------- - -bivar_ss = function(Matrix[Double] X, Matrix[Double] Y) return (Double R) { - - # Unweighted co-variance - covXY = cov(X,Y); - - # compute standard deviations for both X and Y by computing 2^nd central moment - W = nrow(X); - m2X = moment(X,2); - m2Y = moment(Y,2); - sigmaX = sqrt(m2X * (W/(W-1.0)) ); - sigmaY = sqrt(m2Y * (W/(W-1.0)) ); - - # Pearson's R - R = covXY / (sigmaX*sigmaY); -} - -# ----------------------------------------------------------------------------------------------------------- - -# Y points to SCALE variable -# A points to CATEGORICAL variable -bivar_sc = function(Matrix[Double] Y, Matrix[Double] A) return (Double Eta, Double AnovaF, Matrix[Double] CFreqs, Matrix[Double] CMeans, Matrix[Double] CVars ) { - - # mean and variance in target variable - W = nrow(A); - my = mean(Y); - varY = moment(Y,2) * W/(W-1.0) - - # category-wise (frequencies, means, variances) - CFreqs = aggregate(target=Y, groups=A, fn="count"); - CMeans = aggregate(target=Y, groups=A, fn="mean"); - CVars = aggregate(target=Y, groups=A, fn="variance"); - - # number of categories - R = nrow(CFreqs); - - Eta = sqrt(1 - ( sum((CFreqs-1)*CVars) / ((W-1)*varY) )); - - anova_num = sum( (CFreqs*(CMeans-my)^2) )/(R-1); - anova_den = sum( (CFreqs-1)*CVars )/(W-R); - AnovaF = anova_num/anova_den; -} - -# ----------------------------------------------------------------------------------------------------------- - - -# ----------------------------------------------------------------------------------------------------------- -# Function to compute ranks -# takes a column vector as input, and produces a vector of same size in which each cell denotes to the computed score for that category -computeRanks = function(Matrix[Double] X) return (Matrix[Double] Ranks) { - dummy = matrix(1, rows=1, cols=1); - Rks = X; - size = nrow(X); - for(i in 1:size) { - prefixSum = 0.0; - if( i>1 ){ - prefixSum = sum(X[1:(i-1),1]); - } - Rks[i,1] = dummy * (prefixSum + ((castAsScalar(X[i,1])+1)/2)); - } - Ranks = Rks; -} - -#------------------------------------------------------------------------- - -bivar_oo = function(Matrix[Double] A, Matrix[Double] B) return (Double sp) { - - # compute contingency table - F = table(A,B); - - catA = nrow(F); # number of categories in A - catB = ncol(F); # number of categories in B - - # compute category-wise counts for both the attributes - R = rowSums(F); - S = colSums(F); - - # compute scores, both are column vectors - [C] = computeRanks(R); - meanX = mean(C,R); - - columnS = t(S); - [D] = computeRanks(columnS); - - # scores (C,D) are individual values, and counts (R,S) act as weights - meanY = mean(D,columnS); - - W = sum(F); # total weight, or total #cases - varX = moment(C,R,2)*(W/(W-1.0)); - varY = moment(D,columnS,2)*(W/(W-1.0)); - - covXY = 0.0; - for(i in 1:catA) { - covXY = covXY + sum((F[i,]/(W-1)) * (castAsScalar(C[i,1])-meanX) * (t(D[,1])-meanY)); - } - - sp = covXY/(sqrt(varX)*sqrt(varY)); -} - -# ----------------------------------------------------------------------------------------------------------- + + +/* + * + * For a given pair of attribute sets, compute bivariate statistics between all attribute pairs + * Given, S_1 = {A_11, A_12, ... A_1m} and S_2 = {A_21, A_22, ... A_2n} + * compute bivariate stats for m*n pairs (A_1i, A_2j), (1<= i <=m) and (1<= j <=n) + * + * Seven inputs: + * $1) D - input data + * $2) S1 - First attribute set {A_11, A_12, ... A_1m} + * $3) S2 - Second attribute set {A_21, A_22, ... A_2n} + * $4) K1 - kind for attributes in S1 + * $5) K2 - kind for attributes in S2 + * kind=1 for scale, kind=2 for nominal, kind=3 for ordinal + * $6) numPairs - total number of pairs (m*n) + * $7) maxC - maximum number of categories in any categorical attribute + * + * One output: + * $6) output directory in which following four statistics files are created + * + bivar.stats - matrix with all 8 bivariate statistics computed for different attribute pairs + * (R, (chi-sq, df, pval, cramersv), spearman, Eta, F) + * + categorical.counts - + * + categorical.means - + * + categorical.variances - + * -> Values in these three matrices are applicable only for scale-categorical attribute pairs. + * k^th column in these matrices denote the attribute pair (A_1i,A_2j) where i*j = k. + */ + +D = read($1, rows=$7, cols=$8); # input data set +S1 = read($2, rows=1, cols=$9); # attribute set 1 +S2 = read($3, rows=1, cols=$9); # attribute set 2 +K1 = read($4, rows=1, cols=$9); # kind for attributes in S1 +K2 = read($5, rows=1, cols=$9); # kind for attributes in S2 +numPairs = $10; # number of attribute pairs (|S1|*|S2|) +maxC = $11; # max number of categories in any categorical attribute + +s1size = ncol(S1); +s2size = ncol(S2); + +#numpairs = s1size * s2size; +#print(s1size + ", " + s2size + ", " + numpairs); + +# R, chisq, cramers, spearman, eta, anovaf +numstats = 8; +basestats = matrix(0, rows=numstats, cols=numPairs); +cat_counts = matrix(0, rows=maxC, cols=numPairs); +cat_means = matrix(0, rows=maxC, cols=numPairs); +cat_vars = matrix(0, rows=maxC, cols=numPairs); + +dummy = matrix(1, rows=1, cols=1); + + +parfor( i in 1:s1size, check=0, opt=RULEBASED) { + a1 = castAsScalar(S1[,i]); + k1 = castAsScalar(K1[1,i]); + A1 = D[,a1]; + + parfor( j in 1:s2size, check=0) { + pairID = (i-1)*s2size+j; + a2 = castAsScalar(S2[,j]); + k2 = castAsScalar(K2[1,j]); + A2 = D[,a2]; + + if (k1 == k2) { + if (k1 == 1) { + # scale-scale + print("[" + i + "," + j + "] scale-scale"); + r = bivar_ss(A1,A2); + basestats[1,pairID] = dummy*r; + } else { + # nominal-nominal or ordinal-ordinal + print("[" + i + "," + j + "] categorical-categorical"); + [chisq, df, pval, cramersv] = bivar_cc(A1,A2); + basestats[2,pairID] = dummy*chisq; + basestats[3,pairID] = dummy*df; + basestats[4,pairID] = dummy*pval; + basestats[5,pairID] = dummy*cramersv; + + if ( k1 == 3 ) { + # ordinal-ordinal + print("[" + i + "," + j + "] ordinal-ordinal"); + sp = bivar_oo(A1, A2); + basestats[6,pairID] = dummy*sp; + } + } + } + else { + if (k1 == 1 | k2 == 1) { + # Scale-nominal/ordinal + print("[" + i + "," + j + "] scale-categorical"); + + if ( k1 == 1 ) { + [eta,f, counts, means, vars] = bivar_sc(A1,A2); + } + else { + [eta,f, counts, means, vars] = bivar_sc(A2,A1); + } + basestats[7,pairID] = dummy*eta; + basestats[8,pairID] = dummy*f; + cat_counts[,pairID] = counts; + cat_means[,pairID] = means; + cat_vars[,pairID] = vars; + } + else { + # nominal-ordinal or ordinal-nominal + print("[" + i + "," + j + "] categorical-categorical"); + [chisq, df, pval, cramersv] = bivar_cc(A1,A2); + basestats[2,pairID] = dummy*chisq; + basestats[3,pairID] = dummy*df; + basestats[4,pairID] = dummy*pval; + basestats[5,pairID] = dummy*cramersv; + } + } + } +} + +write(basestats, $6 + "/bivar.stats"); +write(cat_counts, $6 + "/category.counts"); +write(cat_means, $6 + "/category.means"); +write(cat_vars, $6 + "/category.variances"); + + +# ----------------------------------------------------------------------------------------------------------- + +bivar_cc = function(Matrix[Double] A, Matrix[Double] B) return (Double chisq, Double df, Double pval, Double cramersv) { + + # Contingency Table + F = table(A,B); + + # Chi-Squared + W = sum(F); + r = rowSums(F); + c = colSums(F); + E = (r %*% c)/W; + T = (F-E)^2/E; + chi_squared = sum(T); + + # compute p-value + degFreedom = (nrow(F)-1)*(ncol(F)-1); + pValue = pchisq(target=chi_squared, df=degFreedom, lower.tail=FALSE); + + # Cramer's V + R = nrow(F); + C = ncol(F); + q = min(R,C); + cramers_v = sqrt(chi_squared/(W*(q-1))); + + # Assign return values + chisq = chi_squared; + df = degFreedom; + pval = pValue; + cramersv = cramers_v; +} + +# ----------------------------------------------------------------------------------------------------------- + +bivar_ss = function(Matrix[Double] X, Matrix[Double] Y) return (Double R) { + + # Unweighted co-variance + covXY = cov(X,Y); + + # compute standard deviations for both X and Y by computing 2^nd central moment + W = nrow(X); + m2X = moment(X,2); + m2Y = moment(Y,2); + sigmaX = sqrt(m2X * (W/(W-1.0)) ); + sigmaY = sqrt(m2Y * (W/(W-1.0)) ); + + # Pearson's R + R = covXY / (sigmaX*sigmaY); +} + +# ----------------------------------------------------------------------------------------------------------- + +# Y points to SCALE variable +# A points to CATEGORICAL variable +bivar_sc = function(Matrix[Double] Y, Matrix[Double] A) return (Double Eta, Double AnovaF, Matrix[Double] CFreqs, Matrix[Double] CMeans, Matrix[Double] CVars ) { + + # mean and variance in target variable + W = nrow(A); + my = mean(Y); + varY = moment(Y,2) * W/(W-1.0) + + # category-wise (frequencies, means, variances) + CFreqs = aggregate(target=Y, groups=A, fn="count"); + CMeans = aggregate(target=Y, groups=A, fn="mean"); + CVars = aggregate(target=Y, groups=A, fn="variance"); + + # number of categories + R = nrow(CFreqs); + + Eta = sqrt(1 - ( sum((CFreqs-1)*CVars) / ((W-1)*varY) )); + + anova_num = sum( (CFreqs*(CMeans-my)^2) )/(R-1); + anova_den = sum( (CFreqs-1)*CVars )/(W-R); + AnovaF = anova_num/anova_den; +} + +# ----------------------------------------------------------------------------------------------------------- + + +# ----------------------------------------------------------------------------------------------------------- +# Function to compute ranks +# takes a column vector as input, and produces a vector of same size in which each cell denotes to the computed score for that category +computeRanks = function(Matrix[Double] X) return (Matrix[Double] Ranks) { + dummy = matrix(1, rows=1, cols=1); + Rks = X; + size = nrow(X); + for(i in 1:size) { + prefixSum = 0.0; + if( i>1 ){ + prefixSum = sum(X[1:(i-1),1]); + } + Rks[i,1] = dummy * (prefixSum + ((castAsScalar(X[i,1])+1)/2)); + } + Ranks = Rks; +} + +#------------------------------------------------------------------------- + +bivar_oo = function(Matrix[Double] A, Matrix[Double] B) return (Double sp) { + + # compute contingency table + F = table(A,B); + + catA = nrow(F); # number of categories in A + catB = ncol(F); # number of categories in B + + # compute category-wise counts for both the attributes + R = rowSums(F); + S = colSums(F); + + # compute scores, both are column vectors + [C] = computeRanks(R); + meanX = mean(C,R); + + columnS = t(S); + [D] = computeRanks(columnS); + + # scores (C,D) are individual values, and counts (R,S) act as weights + meanY = mean(D,columnS); + + W = sum(F); # total weight, or total #cases + varX = moment(C,R,2)*(W/(W-1.0)); + varY = moment(D,columnS,2)*(W/(W-1.0)); + + covXY = 0.0; + for(i in 1:catA) { + covXY = covXY + sum((F[i,]/(W-1)) * (castAsScalar(C[i,1])-meanX) * (t(D[,1])-meanY)); + } + + sp = covXY/(sqrt(varX)*sqrt(varY)); +} + +# ----------------------------------------------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_optimizer3.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_optimizer3.R b/src/test/scripts/functions/parfor/parfor_optimizer3.R index 1924f77..b1f991c 100644 --- a/src/test/scripts/functions/parfor/parfor_optimizer3.R +++ b/src/test/scripts/functions/parfor/parfor_optimizer3.R @@ -19,24 +19,24 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -n <- ncol(V); -n2 <- n/2; - -R <- array(0,dim=c(1,n2)) - -for( i in 1:n2 ) -{ - X <- V[,i]; - Y <- V[,n-i+1]; - R[1,i] <- sum(X)+sum(Y); -} - -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +n <- ncol(V); +n2 <- n/2; + +R <- array(0,dim=c(1,n2)) + +for( i in 1:n2 ) +{ + X <- V[,i]; + Y <- V[,n-i+1]; + R[1,i] <- sum(X)+sum(Y); +} + +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_optimizer3.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_optimizer3.dml b/src/test/scripts/functions/parfor/parfor_optimizer3.dml index cb594cb..95742c4 100644 --- a/src/test/scripts/functions/parfor/parfor_optimizer3.dml +++ b/src/test/scripts/functions/parfor/parfor_optimizer3.dml @@ -19,34 +19,34 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $3; -nd = $4; - -R = matrix(0, rows=1,cols=nd); -dummy = matrix(1, rows=1, cols=1); - -parfor( i in 1:(n/2), opt=RULEBASED ) -{ - X = V[ ,i]; - Y = V[ ,n-i+1]; - sx = execSum(X); - sy = execSum(Y); - R[1,i] = dummy*( sx+sy ); -} - -write(R, $5); - - -execSum = function(Matrix[Double] X) return (Double sx) -{ - if( ncol(X) > 0 ) - { - sx = sum(X); - } - else - { - sx = sum(X); - } + +V = read($1,rows=$2,cols=$3); +n = $3; +nd = $4; + +R = matrix(0, rows=1,cols=nd); +dummy = matrix(1, rows=1, cols=1); + +parfor( i in 1:(n/2), opt=RULEBASED ) +{ + X = V[ ,i]; + Y = V[ ,n-i+1]; + sx = execSum(X); + sy = execSum(Y); + R[1,i] = dummy*( sx+sy ); +} + +write(R, $5); + + +execSum = function(Matrix[Double] X) return (Double sx) +{ + if( ncol(X) > 0 ) + { + sx = sum(X); + } + else + { + sx = sum(X); + } } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.R b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.R index 3bdaf5b..0a66359 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.R +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.R @@ -19,24 +19,24 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -m <- nrow(V); -n <- ncol(V); - -R1 <- matrix(0,m,n); - -for( i in 1:(n-7) ) -{ - X <- V[,i]; - R1[,i] <- X; -} - -R <- R1 + R1; -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +m <- nrow(V); +n <- ncol(V); + +R1 <- matrix(0,m,n); + +for( i in 1:(n-7) ) +{ + X <- V[,i]; + R1[,i] <- X; +} + +R <- R1 + R1; +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.dml b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.dml index d134f89..e840d2d 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.dml +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1a.dml @@ -19,17 +19,17 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -m = $2; -n = $3; - -R1 = matrix(0,rows=m,cols=n); -parfor( i in 1:(n-7), par=8, mode=REMOTE_MR, resultmerge=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[,i]; - R1[,i] = X; -} - -R = R1 + R1; + +V = read($1,rows=$2,cols=$3); +m = $2; +n = $3; + +R1 = matrix(0,rows=m,cols=n); +parfor( i in 1:(n-7), par=8, mode=REMOTE_MR, resultmerge=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[,i]; + R1[,i] = X; +} + +R = R1 + R1; write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.R b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.R index 3c9bb40..466eb81 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.R +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.R @@ -19,24 +19,24 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -m <- nrow(V); -n <- ncol(V); - -R1 <- matrix(1,m,n); - -for( i in 1:(n-7) ) -{ - X <- V[,i]; - R1[,i] <- X; -} - -R <- R1 + R1; -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +m <- nrow(V); +n <- ncol(V); + +R1 <- matrix(1,m,n); + +for( i in 1:(n-7) ) +{ + X <- V[,i]; + R1[,i] <- X; +} + +R <- R1 + R1; +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.dml b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.dml index b5c533b..d83465e 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.dml +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1b.dml @@ -19,17 +19,17 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -m = $2; -n = $3; - -R1 = matrix(1,rows=m,cols=n); -parfor( i in 1:(n-7), par=8, mode=REMOTE_MR, resultmerge=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[,i]; - R1[,i] = X; -} - -R = R1 + R1; + +V = read($1,rows=$2,cols=$3); +m = $2; +n = $3; + +R1 = matrix(1,rows=m,cols=n); +parfor( i in 1:(n-7), par=8, mode=REMOTE_MR, resultmerge=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[,i]; + R1[,i] = X; +} + +R = R1 + R1; write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.R b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.R index 3bdaf5b..0a66359 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.R +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.R @@ -19,24 +19,24 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -m <- nrow(V); -n <- ncol(V); - -R1 <- matrix(0,m,n); - -for( i in 1:(n-7) ) -{ - X <- V[,i]; - R1[,i] <- X; -} - -R <- R1 + R1; -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +m <- nrow(V); +n <- ncol(V); + +R1 <- matrix(0,m,n); + +for( i in 1:(n-7) ) +{ + X <- V[,i]; + R1[,i] <- X; +} + +R <- R1 + R1; +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.dml b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.dml index 7992f8d..fa01bfe 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.dml +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1c.dml @@ -19,17 +19,17 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -m = $2; -n = $3; - -R1 = matrix(0,rows=m,cols=n); -parfor( i in 1:(n-7), par=8, mode=REMOTE_SPARK, resultmerge=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[,i]; - R1[,i] = X; -} - -R = R1 + R1; + +V = read($1,rows=$2,cols=$3); +m = $2; +n = $3; + +R1 = matrix(0,rows=m,cols=n); +parfor( i in 1:(n-7), par=8, mode=REMOTE_SPARK, resultmerge=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[,i]; + R1[,i] = X; +} + +R = R1 + R1; write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.R b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.R index 3c9bb40..466eb81 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.R +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.R @@ -19,24 +19,24 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -m <- nrow(V); -n <- ncol(V); - -R1 <- matrix(1,m,n); - -for( i in 1:(n-7) ) -{ - X <- V[,i]; - R1[,i] <- X; -} - -R <- R1 + R1; -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +m <- nrow(V); +n <- ncol(V); + +R1 <- matrix(1,m,n); + +for( i in 1:(n-7) ) +{ + X <- V[,i]; + R1[,i] <- X; +} + +R <- R1 + R1; +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.dml b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.dml index bbb7bef..02e1657 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.dml +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge1d.dml @@ -19,17 +19,17 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -m = $2; -n = $3; - -R1 = matrix(1,rows=m,cols=n); -parfor( i in 1:(n-7), par=8, mode=REMOTE_SPARK, resultmerge=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[,i]; - R1[,i] = X; -} - -R = R1 + R1; + +V = read($1,rows=$2,cols=$3); +m = $2; +n = $3; + +R1 = matrix(1,rows=m,cols=n); +parfor( i in 1:(n-7), par=8, mode=REMOTE_SPARK, resultmerge=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[,i]; + R1[,i] = X; +} + +R = R1 + R1; write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.R b/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.R index 3248ec1..7068fd3 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.R +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.R @@ -19,26 +19,26 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -m <- nrow(V); -n <- ncol(V); - -R1 <- matrix(0,m,n); -R2 <- matrix(0,m,n); - -for( i in 1:n ) -{ - X <- V[,i]; - R1[,i] <- X; - R2[,i] <- X; -} - -R <- R1 + R2; -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +m <- nrow(V); +n <- ncol(V); + +R1 <- matrix(0,m,n); +R2 <- matrix(0,m,n); + +for( i in 1:n ) +{ + X <- V[,i]; + R1[,i] <- X; + R2[,i] <- X; +} + +R <- R1 + R2; +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.dml b/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.dml index 00dc45c..5d55730 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.dml +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge2.dml @@ -19,19 +19,19 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -m = $2; -n = $3; - -R1 = matrix(0,rows=m,cols=n); -R2 = matrix(0,rows=m,cols=n); -parfor( i in 1:n, par=8, mode=REMOTE_MR, resultmerge=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[,i]; - R1[,i] = X; - R2[,i] = X; -} - -R = R1 + R2; + +V = read($1,rows=$2,cols=$3); +m = $2; +n = $3; + +R1 = matrix(0,rows=m,cols=n); +R2 = matrix(0,rows=m,cols=n); +parfor( i in 1:n, par=8, mode=REMOTE_MR, resultmerge=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[,i]; + R1[,i] = X; + R2[,i] = X; +} + +R = R1 + R2; write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.R b/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.R index 1347335..f1e9dd0 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.R +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.R @@ -19,86 +19,86 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -m <- nrow(V); -n <- ncol(V); - -R1 <- matrix(0,m,n); -R2 <- matrix(0,m,n); -R3 <- matrix(0,m,n); -R4 <- matrix(0,m,n); -R5 <- matrix(0,m,n); -R6 <- matrix(0,m,n); -R7 <- matrix(0,m,n); -R8 <- matrix(0,m,n); -R9 <- matrix(0,m,n); -R10 <- matrix(0,m,n); -R11 <- matrix(0,m,n); -R12 <- matrix(0,m,n); -R13 <- matrix(0,m,n); -R14 <- matrix(0,m,n); -R15 <- matrix(0,m,n); -R16 <- matrix(0,m,n); -R17 <- matrix(0,m,n); -R18 <- matrix(0,m,n); -R19 <- matrix(0,m,n); -R20 <- matrix(0,m,n); -R21 <- matrix(0,m,n); -R22 <- matrix(0,m,n); -R23 <- matrix(0,m,n); -R24 <- matrix(0,m,n); -R25 <- matrix(0,m,n); -R26 <- matrix(0,m,n); -R27 <- matrix(0,m,n); -R28 <- matrix(0,m,n); -R29 <- matrix(0,m,n); -R30 <- matrix(0,m,n); -R31 <- matrix(0,m,n); -R32 <- matrix(0,m,n); - -for( i in 1:n ) -{ - X <- V[,i]; - R1[,i] <- X; - R2[,i] <- X; - R3[,i] <- X; - R4[,i] <- X; - R5[,i] <- X; - R6[,i] <- X; - R7[,i] <- X; - R8[,i] <- X; - R9[,i] <- X; - R10[,i] <- X; - R11[,i] <- X; - R12[,i] <- X; - R13[,i] <- X; - R14[,i] <- X; - R15[,i] <- X; - R16[,i] <- X; - R17[,i] <- X; - R18[,i] <- X; - R19[,i] <- X; - R20[,i] <- X; - R21[,i] <- X; - R22[,i] <- X; - R23[,i] <- X; - R24[,i] <- X; - R25[,i] <- X; - R26[,i] <- X; - R27[,i] <- X; - R28[,i] <- X; - R29[,i] <- X; - R30[,i] <- X; - R31[,i] <- X; - R32[,i] <- X; -} - -R <- R1 + R2 + R3 + R4 + R5 + R6 + R7 + R8 + R9 + R10 + R11 + R12 + R13 + R14 + R15 + R16 + R17 + R18 + R19 + R20 + R21 + R22 + R23 + R24 + R25 + R26 + R27 + R28 + R29 + R30 + R31 + R32; -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +m <- nrow(V); +n <- ncol(V); + +R1 <- matrix(0,m,n); +R2 <- matrix(0,m,n); +R3 <- matrix(0,m,n); +R4 <- matrix(0,m,n); +R5 <- matrix(0,m,n); +R6 <- matrix(0,m,n); +R7 <- matrix(0,m,n); +R8 <- matrix(0,m,n); +R9 <- matrix(0,m,n); +R10 <- matrix(0,m,n); +R11 <- matrix(0,m,n); +R12 <- matrix(0,m,n); +R13 <- matrix(0,m,n); +R14 <- matrix(0,m,n); +R15 <- matrix(0,m,n); +R16 <- matrix(0,m,n); +R17 <- matrix(0,m,n); +R18 <- matrix(0,m,n); +R19 <- matrix(0,m,n); +R20 <- matrix(0,m,n); +R21 <- matrix(0,m,n); +R22 <- matrix(0,m,n); +R23 <- matrix(0,m,n); +R24 <- matrix(0,m,n); +R25 <- matrix(0,m,n); +R26 <- matrix(0,m,n); +R27 <- matrix(0,m,n); +R28 <- matrix(0,m,n); +R29 <- matrix(0,m,n); +R30 <- matrix(0,m,n); +R31 <- matrix(0,m,n); +R32 <- matrix(0,m,n); + +for( i in 1:n ) +{ + X <- V[,i]; + R1[,i] <- X; + R2[,i] <- X; + R3[,i] <- X; + R4[,i] <- X; + R5[,i] <- X; + R6[,i] <- X; + R7[,i] <- X; + R8[,i] <- X; + R9[,i] <- X; + R10[,i] <- X; + R11[,i] <- X; + R12[,i] <- X; + R13[,i] <- X; + R14[,i] <- X; + R15[,i] <- X; + R16[,i] <- X; + R17[,i] <- X; + R18[,i] <- X; + R19[,i] <- X; + R20[,i] <- X; + R21[,i] <- X; + R22[,i] <- X; + R23[,i] <- X; + R24[,i] <- X; + R25[,i] <- X; + R26[,i] <- X; + R27[,i] <- X; + R28[,i] <- X; + R29[,i] <- X; + R30[,i] <- X; + R31[,i] <- X; + R32[,i] <- X; +} + +R <- R1 + R2 + R3 + R4 + R5 + R6 + R7 + R8 + R9 + R10 + R11 + R12 + R13 + R14 + R15 + R16 + R17 + R18 + R19 + R20 + R21 + R22 + R23 + R24 + R25 + R26 + R27 + R28 + R29 + R30 + R31 + R32; +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.dml b/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.dml index 7d8d486..f1d8dd9 100644 --- a/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.dml +++ b/src/test/scripts/functions/parfor/parfor_pr_resultmerge32.dml @@ -19,79 +19,79 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -m = $2; -n = $3; - -R1 = matrix(0,rows=m,cols=n); -R2 = matrix(0,rows=m,cols=n); -R3 = matrix(0,rows=m,cols=n); -R4 = matrix(0,rows=m,cols=n); -R5 = matrix(0,rows=m,cols=n); -R6 = matrix(0,rows=m,cols=n); -R7 = matrix(0,rows=m,cols=n); -R8 = matrix(0,rows=m,cols=n); -R9 = matrix(0,rows=m,cols=n); -R10 = matrix(0,rows=m,cols=n); -R11 = matrix(0,rows=m,cols=n); -R12 = matrix(0,rows=m,cols=n); -R13 = matrix(0,rows=m,cols=n); -R14 = matrix(0,rows=m,cols=n); -R15 = matrix(0,rows=m,cols=n); -R16 = matrix(0,rows=m,cols=n); -R17 = matrix(0,rows=m,cols=n); -R18 = matrix(0,rows=m,cols=n); -R19 = matrix(0,rows=m,cols=n); -R20 = matrix(0,rows=m,cols=n); -R21 = matrix(0,rows=m,cols=n); -R22 = matrix(0,rows=m,cols=n); -R23 = matrix(0,rows=m,cols=n); -R24 = matrix(0,rows=m,cols=n); -R25 = matrix(0,rows=m,cols=n); -R26 = matrix(0,rows=m,cols=n); -R27 = matrix(0,rows=m,cols=n); -R28 = matrix(0,rows=m,cols=n); -R29 = matrix(0,rows=m,cols=n); -R30 = matrix(0,rows=m,cols=n); -R31 = matrix(0,rows=m,cols=n); -R32 = matrix(0,rows=m,cols=n); -parfor( i in 1:n, par=8, mode=REMOTE_MR, resultmerge=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[,i]; - R1[,i] = X; - R2[,i] = X; - R3[,i] = X; - R4[,i] = X; - R5[,i] = X; - R6[,i] = X; - R7[,i] = X; - R8[,i] = X; - R9[,i] = X; - R10[,i] = X; - R11[,i] = X; - R12[,i] = X; - R13[,i] = X; - R14[,i] = X; - R15[,i] = X; - R16[,i] = X; - R17[,i] = X; - R18[,i] = X; - R19[,i] = X; - R20[,i] = X; - R21[,i] = X; - R22[,i] = X; - R23[,i] = X; - R24[,i] = X; - R25[,i] = X; - R26[,i] = X; - R27[,i] = X; - R28[,i] = X; - R29[,i] = X; - R30[,i] = X; - R31[,i] = X; - R32[,i] = X; -} - -R = R1 + R2 + R3 + R4 + R5 + R6 + R7 + R8 + R9 + R10 + R11 + R12 + R13 + R14 + R15 + R16 + R17 + R18 + R19 + R20 + R21 + R22 + R23 + R24 + R25 + R26 + R27 + R28 + R29 + R30 + R31 + R32; -write(R, $4); + +V = read($1,rows=$2,cols=$3); +m = $2; +n = $3; + +R1 = matrix(0,rows=m,cols=n); +R2 = matrix(0,rows=m,cols=n); +R3 = matrix(0,rows=m,cols=n); +R4 = matrix(0,rows=m,cols=n); +R5 = matrix(0,rows=m,cols=n); +R6 = matrix(0,rows=m,cols=n); +R7 = matrix(0,rows=m,cols=n); +R8 = matrix(0,rows=m,cols=n); +R9 = matrix(0,rows=m,cols=n); +R10 = matrix(0,rows=m,cols=n); +R11 = matrix(0,rows=m,cols=n); +R12 = matrix(0,rows=m,cols=n); +R13 = matrix(0,rows=m,cols=n); +R14 = matrix(0,rows=m,cols=n); +R15 = matrix(0,rows=m,cols=n); +R16 = matrix(0,rows=m,cols=n); +R17 = matrix(0,rows=m,cols=n); +R18 = matrix(0,rows=m,cols=n); +R19 = matrix(0,rows=m,cols=n); +R20 = matrix(0,rows=m,cols=n); +R21 = matrix(0,rows=m,cols=n); +R22 = matrix(0,rows=m,cols=n); +R23 = matrix(0,rows=m,cols=n); +R24 = matrix(0,rows=m,cols=n); +R25 = matrix(0,rows=m,cols=n); +R26 = matrix(0,rows=m,cols=n); +R27 = matrix(0,rows=m,cols=n); +R28 = matrix(0,rows=m,cols=n); +R29 = matrix(0,rows=m,cols=n); +R30 = matrix(0,rows=m,cols=n); +R31 = matrix(0,rows=m,cols=n); +R32 = matrix(0,rows=m,cols=n); +parfor( i in 1:n, par=8, mode=REMOTE_MR, resultmerge=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[,i]; + R1[,i] = X; + R2[,i] = X; + R3[,i] = X; + R4[,i] = X; + R5[,i] = X; + R6[,i] = X; + R7[,i] = X; + R8[,i] = X; + R9[,i] = X; + R10[,i] = X; + R11[,i] = X; + R12[,i] = X; + R13[,i] = X; + R14[,i] = X; + R15[,i] = X; + R16[,i] = X; + R17[,i] = X; + R18[,i] = X; + R19[,i] = X; + R20[,i] = X; + R21[,i] = X; + R22[,i] = X; + R23[,i] = X; + R24[,i] = X; + R25[,i] = X; + R26[,i] = X; + R27[,i] = X; + R28[,i] = X; + R29[,i] = X; + R30[,i] = X; + R31[,i] = X; + R32[,i] = X; +} + +R = R1 + R2 + R3 + R4 + R5 + R6 + R7 + R8 + R9 + R10 + R11 + R12 + R13 + R14 + R15 + R16 + R17 + R18 + R19 + R20 + R21 + R22 + R23 + R24 + R25 + R26 + R27 + R28 + R29 + R30 + R31 + R32; +write(R, $4); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartition_leftindexing.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartition_leftindexing.dml b/src/test/scripts/functions/parfor/parfor_rdatapartition_leftindexing.dml index 46180f9..b3fed2d 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartition_leftindexing.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartition_leftindexing.dml @@ -19,19 +19,19 @@ # #------------------------------------------------------------- - -V = read($1); -m = nrow(V); -n = ncol(V); - -R = matrix(0,rows=m,cols=n); - -#parfor( i in 1:m, par=4, mode=LOCAL, datapartitioner=REMOTE_MR, resultmerge=REMOTE_MR, opt=NONE ) -parfor( i in 1:m ) -{ - col = V[i,]; - if(1==1){} - R[i,] = col; -} - + +V = read($1); +m = nrow(V); +n = ncol(V); + +R = matrix(0,rows=m,cols=n); + +#parfor( i in 1:m, par=4, mode=LOCAL, datapartitioner=REMOTE_MR, resultmerge=REMOTE_MR, opt=NONE ) +parfor( i in 1:m ) +{ + col = V[i,]; + if(1==1){} + R[i,] = col; +} + write(R, $2); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning.R b/src/test/scripts/functions/parfor/parfor_rdatapartitioning.R index 295e490..2326b0b 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning.R +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning.R @@ -19,22 +19,22 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -n <- nrow(V); - -R <- array(0,dim=c(1,n)) - -for( i in 1:n ) -{ - X <- V[i,]; - R[1,i] <- sum(X); -} - -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +n <- nrow(V); + +R <- array(0,dim=c(1,n)) + +for( i in 1:n ) +{ + X <- V[i,]; + R[1,i] <- sum(X); +} + +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning1.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning1.dml b/src/test/scripts/functions/parfor/parfor_rdatapartitioning1.dml index 013b086..9c3188b 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning1.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning1.dml @@ -19,18 +19,18 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $2; - -R = matrix(0,rows=1,cols=n); -dummy = matrix(1, rows=1, cols=1); - -parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=NONE, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[i,]; - sX = sum(X); - R[1,i] = dummy * sX; -} - + +V = read($1,rows=$2,cols=$3); +n = $2; + +R = matrix(0,rows=1,cols=n); +dummy = matrix(1, rows=1, cols=1); + +parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=NONE, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[i,]; + sX = sum(X); + R[1,i] = dummy * sX; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning2.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning2.dml b/src/test/scripts/functions/parfor/parfor_rdatapartitioning2.dml index 757fedd..116013f 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning2.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning2.dml @@ -19,18 +19,18 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $2; - -R = matrix(0,rows=1,cols=n); -dummy = matrix(1,rows=1, cols=1); - -parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[i,]; - sX = sum(X); - R[1,i] = dummy * sX; -} - + +V = read($1,rows=$2,cols=$3); +n = $2; + +R = matrix(0,rows=1,cols=n); +dummy = matrix(1,rows=1, cols=1); + +parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=LOCAL, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[i,]; + sX = sum(X); + R[1,i] = dummy * sX; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning3.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning3.dml b/src/test/scripts/functions/parfor/parfor_rdatapartitioning3.dml index c38dd13..42bc04e 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning3.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning3.dml @@ -19,18 +19,18 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $2; - -R = matrix(0, rows=1,cols=n); -dummy = matrix(1, rows=1, cols=1); - -parfor( i in 1:n, par=4, mode=REMOTE_MR,datapartitioner=LOCAL, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[i,]; - sX = sum(X); - R[1,i] = dummy * sX; -} - + +V = read($1,rows=$2,cols=$3); +n = $2; + +R = matrix(0, rows=1,cols=n); +dummy = matrix(1, rows=1, cols=1); + +parfor( i in 1:n, par=4, mode=REMOTE_MR,datapartitioner=LOCAL, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[i,]; + sX = sum(X); + R[1,i] = dummy * sX; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning4.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning4.dml b/src/test/scripts/functions/parfor/parfor_rdatapartitioning4.dml index 2e5897d..15753b2 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning4.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning4.dml @@ -19,18 +19,18 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $2; - -R = matrix(0,rows=1,cols=n); -dummy = matrix(1,rows=1, cols=1); - -parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[i,]; - sX = sum(X); - R[1,i] = dummy * sX; -} - + +V = read($1,rows=$2,cols=$3); +n = $2; + +R = matrix(0,rows=1,cols=n); +dummy = matrix(1,rows=1, cols=1); + +parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[i,]; + sX = sum(X); + R[1,i] = dummy * sX; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning5.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning5.dml b/src/test/scripts/functions/parfor/parfor_rdatapartitioning5.dml index 1442806..a6ba3a6 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning5.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning5.dml @@ -19,18 +19,18 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $2; - -R = matrix(0,rows=1,cols=n); -dummy = matrix(1,rows=1, cols=1); - -parfor( i in 1:n, par=4, mode=REMOTE_MR,datapartitioner=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[i,]; - sX = sum(X); - R[1,i] = dummy * sX; -} - + +V = read($1,rows=$2,cols=$3); +n = $2; + +R = matrix(0,rows=1,cols=n); +dummy = matrix(1,rows=1, cols=1); + +parfor( i in 1:n, par=4, mode=REMOTE_MR,datapartitioner=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[i,]; + sX = sum(X); + R[1,i] = dummy * sX; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.R b/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.R index 7492569..89b4bd4 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.R +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.R @@ -19,22 +19,22 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V1 <- readMM(paste(args[1], "V.mtx", sep="")) -V <- as.matrix(V1); -n <- nrow(V); - -R <- array(0,dim=c(1,n)) - -for( i in 1:n-1 ) -{ - X <- V[i:(i+1),]; - R[1,i] <- sum(X); -} - -writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V1 <- readMM(paste(args[1], "V.mtx", sep="")) +V <- as.matrix(V1); +n <- nrow(V); + +R <- array(0,dim=c(1,n)) + +for( i in 1:n-1 ) +{ + X <- V[i:(i+1),]; + R[1,i] <- sum(X); +} + +writeMM(as(R, "CsparseMatrix"), paste(args[2], "Rout", sep="")); http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.dml b/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.dml index ff53054..18f78b0 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning6.dml @@ -19,18 +19,18 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $2; - -R = matrix(0,rows=1,cols=n); -dummy = matrix(1,rows=1, cols=1); - -parfor( i in 1:n-1, par=4, mode=LOCAL, datapartitioner=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[i:(i+1),]; - sX = sum(X); - R[1,i] = dummy * sX; -} - + +V = read($1,rows=$2,cols=$3); +n = $2; + +R = matrix(0,rows=1,cols=n); +dummy = matrix(1,rows=1, cols=1); + +parfor( i in 1:n-1, par=4, mode=LOCAL, datapartitioner=REMOTE_MR, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[i:(i+1),]; + sX = sum(X); + R[1,i] = dummy * sX; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning7.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning7.dml b/src/test/scripts/functions/parfor/parfor_rdatapartitioning7.dml index 79354dd..494e2b0 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning7.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning7.dml @@ -19,18 +19,18 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $2; - -R = matrix(0,rows=1,cols=n); -dummy = matrix(1,rows=1, cols=1); - -parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[i,]; - sX = sum(X); - R[1,i] = dummy * sX; -} - + +V = read($1,rows=$2,cols=$3); +n = $2; + +R = matrix(0,rows=1,cols=n); +dummy = matrix(1,rows=1, cols=1); + +parfor( i in 1:n, par=4, mode=LOCAL, datapartitioner=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[i,]; + sX = sum(X); + R[1,i] = dummy * sX; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning8.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning8.dml b/src/test/scripts/functions/parfor/parfor_rdatapartitioning8.dml index 516a56a..ac77777 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning8.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning8.dml @@ -19,18 +19,18 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $2; - -R = matrix(0,rows=1,cols=n); -dummy = matrix(1,rows=1, cols=1); - -parfor( i in 1:n, par=4, mode=REMOTE_SPARK,datapartitioner=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[i,]; - sX = sum(X); - R[1,i] = dummy * sX; -} - + +V = read($1,rows=$2,cols=$3); +n = $2; + +R = matrix(0,rows=1,cols=n); +dummy = matrix(1,rows=1, cols=1); + +parfor( i in 1:n, par=4, mode=REMOTE_SPARK,datapartitioner=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[i,]; + sX = sum(X); + R[1,i] = dummy * sX; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_rdatapartitioning9.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_rdatapartitioning9.dml b/src/test/scripts/functions/parfor/parfor_rdatapartitioning9.dml index 89254c5..cea1134 100644 --- a/src/test/scripts/functions/parfor/parfor_rdatapartitioning9.dml +++ b/src/test/scripts/functions/parfor/parfor_rdatapartitioning9.dml @@ -19,18 +19,18 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $2; - -R = matrix(0,rows=1,cols=n); -dummy = matrix(1,rows=1, cols=1); - -parfor( i in 1:n-1, par=4, mode=LOCAL, datapartitioner=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) -{ - X = V[i:(i+1),]; - sX = sum(X); - R[1,i] = dummy * sX; -} - + +V = read($1,rows=$2,cols=$3); +n = $2; + +R = matrix(0,rows=1,cols=n); +dummy = matrix(1,rows=1, cols=1); + +parfor( i in 1:n-1, par=4, mode=LOCAL, datapartitioner=REMOTE_SPARK, taskpartitioner=FACTORING, opt=NONE ) +{ + X = V[i:(i+1),]; + sX = sum(X); + R[1,i] = dummy * sX; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_repeatedopt1.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_repeatedopt1.R b/src/test/scripts/functions/parfor/parfor_repeatedopt1.R index 4cf2166..f4c459b 100644 --- a/src/test/scripts/functions/parfor/parfor_repeatedopt1.R +++ b/src/test/scripts/functions/parfor/parfor_repeatedopt1.R @@ -19,26 +19,26 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V = as.matrix(readMM(paste(args[1], "V.mtx", sep=""))) -n = ncol(V); -R = matrix(0, 1, n); - -iter = 1; -while( iter <= 3 ) -{ - for( i in 1:ncol(V) ) - { - Xi = V[,i]; - R[1,i] = R[1,i] + sum(Xi); - } - - iter = iter+1; -} - + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V = as.matrix(readMM(paste(args[1], "V.mtx", sep=""))) +n = ncol(V); +R = matrix(0, 1, n); + +iter = 1; +while( iter <= 3 ) +{ + for( i in 1:ncol(V) ) + { + Xi = V[,i]; + R[1,i] = R[1,i] + sum(Xi); + } + + iter = iter+1; +} + writeMM(as(R, "CsparseMatrix"), paste(args[2], "R", sep="")); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_repeatedopt1.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_repeatedopt1.dml b/src/test/scripts/functions/parfor/parfor_repeatedopt1.dml index a804d9e..724dc4b 100644 --- a/src/test/scripts/functions/parfor/parfor_repeatedopt1.dml +++ b/src/test/scripts/functions/parfor/parfor_repeatedopt1.dml @@ -19,23 +19,23 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $3; - -R = matrix(0, rows=1,cols=n); - -iter = 1; -while( iter <= 3 ) -{ - #repeated opt for each while iteration - parfor( i in 1:ncol(V), log=DEBUG ) - { - Xi = V[,i]; - R[1,i] = R[1,i] + sum(Xi); - } - - iter = iter+1; -} - + +V = read($1,rows=$2,cols=$3); +n = $3; + +R = matrix(0, rows=1,cols=n); + +iter = 1; +while( iter <= 3 ) +{ + #repeated opt for each while iteration + parfor( i in 1:ncol(V), log=DEBUG ) + { + Xi = V[,i]; + R[1,i] = R[1,i] + sum(Xi); + } + + iter = iter+1; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_repeatedopt2.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_repeatedopt2.R b/src/test/scripts/functions/parfor/parfor_repeatedopt2.R index 3093697..0858862 100644 --- a/src/test/scripts/functions/parfor/parfor_repeatedopt2.R +++ b/src/test/scripts/functions/parfor/parfor_repeatedopt2.R @@ -19,31 +19,31 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V = as.matrix(readMM(paste(args[1], "V.mtx", sep=""))) -n = ncol(V); -R = matrix(0, 1, n); - -iter = 1; -while( iter <= 3 ) -{ - if( as.integer(args[3])==1 ) - { - V = V * iter; - } - - for( i in 1:ncol(V) ) - { - Xi = V[,i]; - R[1,i] = R[1,i] + sum(Xi); - } - - iter = iter+1; -} - + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V = as.matrix(readMM(paste(args[1], "V.mtx", sep=""))) +n = ncol(V); +R = matrix(0, 1, n); + +iter = 1; +while( iter <= 3 ) +{ + if( as.integer(args[3])==1 ) + { + V = V * iter; + } + + for( i in 1:ncol(V) ) + { + Xi = V[,i]; + R[1,i] = R[1,i] + sum(Xi); + } + + iter = iter+1; +} + writeMM(as(R, "CsparseMatrix"), paste(args[2], "R", sep="")); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_repeatedopt2.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_repeatedopt2.dml b/src/test/scripts/functions/parfor/parfor_repeatedopt2.dml index c7f141c..c61761f 100644 --- a/src/test/scripts/functions/parfor/parfor_repeatedopt2.dml +++ b/src/test/scripts/functions/parfor/parfor_repeatedopt2.dml @@ -19,28 +19,28 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $3; - -R = matrix(0, rows=1,cols=n); - -iter = 1; -while( iter <= 3 ) -{ - if( $5==1 ) - { - V = V * iter; - } - - #repeated opt for each while iteration - parfor( i in 1:ncol(V), log=DEBUG ) - { - Xi = V[,i]; - R[1,i] = R[1,i] + sum(Xi); - } - - iter = iter+1; -} - + +V = read($1,rows=$2,cols=$3); +n = $3; + +R = matrix(0, rows=1,cols=n); + +iter = 1; +while( iter <= 3 ) +{ + if( $5==1 ) + { + V = V * iter; + } + + #repeated opt for each while iteration + parfor( i in 1:ncol(V), log=DEBUG ) + { + Xi = V[,i]; + R[1,i] = R[1,i] + sum(Xi); + } + + iter = iter+1; +} + write(R, $4); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_repeatedopt3.R ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_repeatedopt3.R b/src/test/scripts/functions/parfor/parfor_repeatedopt3.R index 17d532b..889d692 100644 --- a/src/test/scripts/functions/parfor/parfor_repeatedopt3.R +++ b/src/test/scripts/functions/parfor/parfor_repeatedopt3.R @@ -19,34 +19,34 @@ # #------------------------------------------------------------- - -args <- commandArgs(TRUE) -options(digits=22) - -library("Matrix") - -V = as.matrix(readMM(paste(args[1], "V.mtx", sep=""))) -n = ncol(V); -R = matrix(0, 1, n); - -iter = 1; -while( iter <= 3 ) -{ - if( as.integer(args[3])==1 ) - { - vx = matrix(1,nrow(V),1)*iter; - V = cbind(V, vx); - rx = matrix(0,1,1); - R = cbind(R, rx); - } - - for( i in 1:ncol(V) ) - { - Xi = V[,i]; - R[1,i] = R[1,i] + sum(Xi); - } - - iter = iter+1; -} - + +args <- commandArgs(TRUE) +options(digits=22) + +library("Matrix") + +V = as.matrix(readMM(paste(args[1], "V.mtx", sep=""))) +n = ncol(V); +R = matrix(0, 1, n); + +iter = 1; +while( iter <= 3 ) +{ + if( as.integer(args[3])==1 ) + { + vx = matrix(1,nrow(V),1)*iter; + V = cbind(V, vx); + rx = matrix(0,1,1); + R = cbind(R, rx); + } + + for( i in 1:ncol(V) ) + { + Xi = V[,i]; + R[1,i] = R[1,i] + sum(Xi); + } + + iter = iter+1; +} + writeMM(as(R, "CsparseMatrix"), paste(args[2], "R", sep="")); \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/05d2c0a8/src/test/scripts/functions/parfor/parfor_repeatedopt3.dml ---------------------------------------------------------------------- diff --git a/src/test/scripts/functions/parfor/parfor_repeatedopt3.dml b/src/test/scripts/functions/parfor/parfor_repeatedopt3.dml index 0f1c313..8254388 100644 --- a/src/test/scripts/functions/parfor/parfor_repeatedopt3.dml +++ b/src/test/scripts/functions/parfor/parfor_repeatedopt3.dml @@ -19,31 +19,31 @@ # #------------------------------------------------------------- - -V = read($1,rows=$2,cols=$3); -n = $3; - -R = matrix(0, rows=1,cols=n); - -iter = 1; -while( iter <= 3 ) -{ - if( $5==1 ) - { - vx = matrix(1,rows=nrow(V),cols=1)*iter; - V = append(V, vx); - rx = matrix(0,rows=1,cols=1); - R = append(R, rx); - } - - #repeated opt for each while iteration - parfor( i in 1:ncol(V), log=DEBUG ) - { - Xi = V[,i]; - R[1,i] = R[1,i] + sum(Xi); - } - - iter = iter+1; -} - + +V = read($1,rows=$2,cols=$3); +n = $3; + +R = matrix(0, rows=1,cols=n); + +iter = 1; +while( iter <= 3 ) +{ + if( $5==1 ) + { + vx = matrix(1,rows=nrow(V),cols=1)*iter; + V = append(V, vx); + rx = matrix(0,rows=1,cols=1); + R = append(R, rx); + } + + #repeated opt for each while iteration + parfor( i in 1:ncol(V), log=DEBUG ) + { + Xi = V[,i]; + R[1,i] = R[1,i] + sum(Xi); + } + + iter = iter+1; +} + write(R, $4); \ No newline at end of file
