Repository: systemml Updated Branches: refs/heads/master d69686273 -> 6a11413b1
http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/TaskPartitionerFixedsize.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/TaskPartitionerFixedsize.java b/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/TaskPartitionerFixedsize.java index d69837f..f283b69 100644 --- a/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/TaskPartitionerFixedsize.java +++ b/src/main/java/org/apache/sysml/runtime/controlprogram/parfor/TaskPartitionerFixedsize.java @@ -60,7 +60,7 @@ public class TaskPartitionerFixedsize extends TaskPartitioner for( long i = lFrom; i<=lTo; ) { //create new task and add to list of tasks - Task lTask = new Task( type ); + Task lTask = new Task(_iterVarName, type); tasks.addLast(lTask); int corr = (lfnp1-- > 0)? 1:0; //correction for static partitioner @@ -71,9 +71,7 @@ public class TaskPartitionerFixedsize extends TaskPartitioner { //value based tasks for( long j=0; j<_taskSize+corr && i<=lTo; j++, i+=lIncr ) - { - lTask.addIteration(new IntObject(_iterVarName, i)); - } + lTask.addIteration(new IntObject(i)); } else { @@ -81,9 +79,9 @@ public class TaskPartitionerFixedsize extends TaskPartitioner long to = Math.min( i+(_taskSize-1+corr)*lIncr, lTo ); //range based tasks - lTask.addIteration(new IntObject(_iterVarName, i)); //from - lTask.addIteration(new IntObject(_iterVarName, to)); //to - lTask.addIteration(new IntObject(_iterVarName, lIncr)); //increment + lTask.addIteration(new IntObject(i)); //from + lTask.addIteration(new IntObject(to)); //to + lTask.addIteration(new IntObject(lIncr)); //increment i = to + lIncr; } @@ -112,7 +110,7 @@ public class TaskPartitionerFixedsize extends TaskPartitioner for( long i = lFrom; i<=lTo; ) { //create new task and add to list of tasks - Task lTask = new Task( type ); + Task lTask = new Task(_iterVarName, type); int corr = (lfnp1-- > 0)? 1:0; //correction for static partitioner @@ -122,9 +120,7 @@ public class TaskPartitionerFixedsize extends TaskPartitioner { //value based tasks for( long j=0; j<_taskSize+corr && i<=lTo; j++, i+=lIncr ) - { - lTask.addIteration(new IntObject(_iterVarName, i)); - } + lTask.addIteration(new IntObject(i)); } else { @@ -132,9 +128,9 @@ public class TaskPartitionerFixedsize extends TaskPartitioner long to = Math.min( i+(_taskSize-1+corr)*lIncr, lTo ); //range based tasks - lTask.addIteration(new IntObject(_iterVarName, i)); //from - lTask.addIteration(new IntObject(_iterVarName, to)); //to - lTask.addIteration(new IntObject(_iterVarName, lIncr)); //increment + lTask.addIteration(new IntObject(i)); //from + lTask.addIteration(new IntObject(to)); //to + lTask.addIteration(new IntObject(lIncr)); //increment i = to + lIncr; } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/AggregateUnaryCPInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/AggregateUnaryCPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/AggregateUnaryCPInstruction.java index 132ec0a..d57a8dd 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/AggregateUnaryCPInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/AggregateUnaryCPInstruction.java @@ -127,9 +127,9 @@ public class AggregateUnaryCPInstruction extends UnaryCPInstruction { //create and set output scalar ScalarObject ret = null; switch( output.getValueType() ) { - case INT: ret = new IntObject(output_name, rval); break; - case DOUBLE: ret = new DoubleObject(output_name, rval); break; - case STRING: ret = new StringObject(output_name, String.valueOf(rval)); break; + case INT: ret = new IntObject(rval); break; + case DOUBLE: ret = new DoubleObject(rval); break; + case STRING: ret = new StringObject(String.valueOf(rval)); break; default: throw new DMLRuntimeException("Invalid output value type: "+output.getValueType()); @@ -148,7 +148,7 @@ public class AggregateUnaryCPInstruction extends UnaryCPInstruction { ec.releaseMatrixInput(input1.getName(), getExtendedOpcode()); if(output.getDataType() == DataType.SCALAR){ - DoubleObject ret = new DoubleObject(output_name, resultBlock.getValue(0, 0)); + DoubleObject ret = new DoubleObject(resultBlock.getValue(0, 0)); ec.setScalarOutput(output_name, ret); } else{ // since the computed value is a scalar, allocate a "temp" output matrix http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/BooleanObject.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/BooleanObject.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/BooleanObject.java index 757807f..31b8f8e 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/BooleanObject.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/BooleanObject.java @@ -30,13 +30,9 @@ public class BooleanObject extends ScalarObject private static final long serialVersionUID = -4506242165735516984L; private final boolean _value; - + public BooleanObject(boolean val){ - this(null,val); - } - - public BooleanObject(String name,boolean val){ - super(name, ValueType.BOOLEAN); + super(ValueType.BOOLEAN); _value = val; } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/CentralMomentCPInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/CentralMomentCPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/CentralMomentCPInstruction.java index aa3fd86..c13ca4c 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/CentralMomentCPInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/CentralMomentCPInstruction.java @@ -123,7 +123,6 @@ public class CentralMomentCPInstruction extends AggregateUnaryCPInstruction { ec.releaseMatrixInput(input1.getName(), getExtendedOpcode()); double val = cmobj.getRequiredResult(cm_op); - DoubleObject ret = new DoubleObject(output_name, val); - ec.setScalarOutput(output_name, ret); + ec.setScalarOutput(output_name, new DoubleObject(val)); } } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/CovarianceCPInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/CovarianceCPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/CovarianceCPInstruction.java index 9457c65..699572f 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/CovarianceCPInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/CovarianceCPInstruction.java @@ -104,8 +104,6 @@ public class CovarianceCPInstruction extends BinaryCPInstruction { } double val = covobj.getRequiredResult(_optr); - DoubleObject ret = new DoubleObject(output_name, val); - - ec.setScalarOutput(output_name, ret); + ec.setScalarOutput(output_name, new DoubleObject(val)); } } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/Data.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/Data.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/Data.java index d52583f..3b15b9e 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/Data.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/Data.java @@ -30,15 +30,10 @@ import org.apache.sysml.runtime.matrix.MetaData; public abstract class Data implements Serializable { - private static final long serialVersionUID = 9176228330268046168L; - protected DataType dataType; - protected ValueType valueType; - - public Data() { - //default constructor for serialize - } + protected final DataType dataType; + protected final ValueType valueType; protected Data(DataType dt, ValueType vt) { dataType = dt; @@ -52,18 +47,10 @@ public abstract class Data implements Serializable return dataType; } - public void setDataType(DataType dataType) { - this.dataType = dataType; - } - public ValueType getValueType() { return valueType; } - public void setValueType(ValueType valueType) { - this.valueType = valueType; - } - public void setMetaData(MetaData md) throws DMLRuntimeException { throw new DMLRuntimeException("This method in the base class should never be invoked."); } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/DoubleObject.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/DoubleObject.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/DoubleObject.java index 4290788..2c7e89d 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/DoubleObject.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/DoubleObject.java @@ -29,11 +29,7 @@ public class DoubleObject extends ScalarObject private final double _value; public DoubleObject(double val){ - this(null,val); - } - - public DoubleObject(String name, double val){ - super(name, ValueType.DOUBLE); + super(ValueType.DOUBLE); _value = val; } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/FunctionCallCPInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/FunctionCallCPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/FunctionCallCPInstruction.java index 1c001f0..b36365c 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/FunctionCallCPInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/FunctionCallCPInstruction.java @@ -201,8 +201,6 @@ public class FunctionCallCPInstruction extends CPInstruction { } //add/replace data in symbol table - if( boundValue instanceof MatrixObject ) - ((MatrixObject) boundValue).setVarName(boundVarName); ec.setVariable(boundVarName, boundValue); } } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/IntObject.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/IntObject.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/IntObject.java index d4d44a9..6816c6b 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/IntObject.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/IntObject.java @@ -30,14 +30,10 @@ public class IntObject extends ScalarObject private final long _value; public IntObject(long val) { - this(null,val); - } - - public IntObject(String name, long val) { - super(name, ValueType.INT); + super(ValueType.INT); _value = val; } - + @Override public boolean getBooleanValue(){ return (_value!=0); http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/ScalarObject.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/ScalarObject.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/ScalarObject.java index 1529dc1..7872ac9 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/ScalarObject.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/ScalarObject.java @@ -25,16 +25,9 @@ import org.apache.sysml.parser.Expression.ValueType; public abstract class ScalarObject extends Data { private static final long serialVersionUID = 6994413375932824892L; - - private String _name; - public ScalarObject(String name, ValueType vt) { + public ScalarObject(ValueType vt) { super(DataType.SCALAR, vt); - _name = name; - } - - public String getName() { - return _name; } public abstract boolean getBooleanValue(); @@ -49,7 +42,7 @@ public abstract class ScalarObject extends Data return getStringValue(); } - public abstract Object getValue(); + public abstract Object getValue(); @Override public String toString() { http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/StringObject.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/StringObject.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/StringObject.java index 844d8a6..e099a3c 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/StringObject.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/StringObject.java @@ -30,12 +30,8 @@ public class StringObject extends ScalarObject private final String _value; - public StringObject (String val){ - this(null,val); - } - - public StringObject(String name, String val){ - super(name, ValueType.STRING); + public StringObject(String val){ + super(ValueType.STRING); _value = val; } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/UaggOuterChainCPInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/UaggOuterChainCPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/UaggOuterChainCPInstruction.java index e48f396..d6fb334 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/UaggOuterChainCPInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/UaggOuterChainCPInstruction.java @@ -105,7 +105,7 @@ public class UaggOuterChainCPInstruction extends UnaryCPInstruction { //create and set output scalar ScalarObject ret = null; switch( output.getValueType() ) { - case DOUBLE: ret = new DoubleObject(output_name, mbOut.quickGetValue(0, 0)); break; + case DOUBLE: ret = new DoubleObject(mbOut.quickGetValue(0, 0)); break; default: throw new DMLRuntimeException("Invalid output value type: "+output.getValueType()); http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cp/VariableCPInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/VariableCPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/VariableCPInstruction.java index 9ddcdcc..659924c 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cp/VariableCPInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/VariableCPInstruction.java @@ -316,7 +316,7 @@ public class VariableCPInstruction extends CPInstruction { in1 = new CPOperand(parts[1], vt, dt); // file name in2 = new CPOperand(parts[2], ValueType.STRING, DataType.SCALAR); - // file name override flag + // file name override flag (always literal) in3 = new CPOperand(parts[3], ValueType.BOOLEAN, DataType.SCALAR); // format @@ -477,11 +477,11 @@ public class VariableCPInstruction extends CPInstruction { //(existing objects gets cleared through rmvar instructions) String fname = getInput2().getName(); // check if unique filename needs to be generated - if( Boolean.parseBoolean(getInput3().getName()) ) - fname = fname + "_" + _uniqueVarID.getNextID(); - + if( Boolean.parseBoolean(getInput3().getName()) ) { + fname = new StringBuilder(fname.length()+16).append(fname) + .append('_').append(_uniqueVarID.getNextID()).toString(); + } MatrixObject mobj = new MatrixObject(getInput1().getValueType(), fname ); - mobj.setVarName(getInput1().getName()); //clone meta data because it is updated on copy-on-write, otherwise there //is potential for hidden side effects between variables. mobj.setMetaData((MetaData)metadata.clone()); @@ -494,7 +494,6 @@ public class VariableCPInstruction extends CPInstruction { else if( getInput1().getDataType() == DataType.FRAME ) { String fname = getInput2().getName(); FrameObject fobj = new FrameObject(fname); - fobj.setVarName(getInput1().getName()); fobj.setMetaData((MetaData)metadata.clone()); fobj.setFileFormatProperties(_formatProperties); if( _schema != null ) http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cpfile/MatrixIndexingCPFileInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cpfile/MatrixIndexingCPFileInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/cpfile/MatrixIndexingCPFileInstruction.java index 0b35837..6ebdbf6 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cpfile/MatrixIndexingCPFileInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cpfile/MatrixIndexingCPFileInstruction.java @@ -21,7 +21,6 @@ package org.apache.sysml.runtime.instructions.cpfile; import org.apache.sysml.lops.LeftIndex; import org.apache.sysml.lops.RightIndex; -import org.apache.sysml.parser.Expression.DataType; import org.apache.sysml.runtime.DMLRuntimeException; import org.apache.sysml.runtime.controlprogram.caching.MatrixObject; import org.apache.sysml.runtime.controlprogram.context.ExecutionContext; @@ -98,12 +97,8 @@ public final class MatrixIndexingCPFileInstruction extends IndexingCPInstruction if( MapReduceTool.existsFileOnHDFS(pfname) ) { - MatrixObject out = ec.getMatrixObject(output.getName()); - - //create output matrix object + //create output matrix object MatrixObject mobj = new MatrixObject(mo.getValueType(), pfname ); - mobj.setDataType( DataType.MATRIX ); - mobj.setVarName( out.getVarName() ); MatrixCharacteristics mcNew = null; switch( mo.getPartitionFormat() ) { http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/cpfile/ParameterizedBuiltinCPFileInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cpfile/ParameterizedBuiltinCPFileInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/cpfile/ParameterizedBuiltinCPFileInstruction.java index fed3ad5..3cd19f5 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/cpfile/ParameterizedBuiltinCPFileInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/cpfile/ParameterizedBuiltinCPFileInstruction.java @@ -42,8 +42,6 @@ import org.apache.hadoop.mapred.RecordReader; import org.apache.hadoop.mapred.Reporter; import org.apache.hadoop.mapred.TextInputFormat; import org.apache.sysml.conf.ConfigurationManager; -import org.apache.sysml.parser.Expression.DataType; -import org.apache.sysml.parser.Expression.ValueType; import org.apache.sysml.runtime.DMLRuntimeException; import org.apache.sysml.runtime.controlprogram.caching.CacheException; import org.apache.sysml.runtime.controlprogram.caching.MatrixObject; @@ -225,14 +223,9 @@ public class ParameterizedBuiltinCPFileInstruction extends ParameterizedBuiltinC private static MatrixObject createNewOutputObject( MatrixObject src, MatrixObject out, long rows, long cols ) throws DMLRuntimeException { - String varName = out.getVarName(); String fName = out.getFileName(); - ValueType vt = src.getValueType(); MetaDataFormat metadata = (MetaDataFormat) src.getMetaData(); - - MatrixObject moNew = new MatrixObject( vt, fName ); - moNew.setVarName( varName ); - moNew.setDataType( DataType.MATRIX ); + MatrixObject moNew = new MatrixObject(src.getValueType(), fName); //handle empty output block (ensure valid dimensions) if( rows==0 || cols ==0 ){ @@ -251,8 +244,8 @@ public class ParameterizedBuiltinCPFileInstruction extends ParameterizedBuiltinC MatrixCharacteristics mcOld = metadata.getMatrixCharacteristics(); OutputInfo oiOld = metadata.getOutputInfo(); InputInfo iiOld = metadata.getInputInfo(); - MatrixCharacteristics mc = new MatrixCharacteristics( rows, cols, mcOld.getRowsPerBlock(), - mcOld.getColsPerBlock(), mcOld.getNonZeros()); + MatrixCharacteristics mc = new MatrixCharacteristics( rows, cols, + mcOld.getRowsPerBlock(), mcOld.getColsPerBlock(), mcOld.getNonZeros()); MetaDataFormat meta = new MetaDataFormat(mc,oiOld,iiOld); moNew.setMetaData( meta ); http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/spark/CentralMomentSPInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/spark/CentralMomentSPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/spark/CentralMomentSPInstruction.java index 82edf32..4e7b3f8 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/spark/CentralMomentSPInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/spark/CentralMomentSPInstruction.java @@ -132,8 +132,7 @@ public class CentralMomentSPInstruction extends UnarySPInstruction { //create scalar output (no lineage information required) double val = cmobj.getRequiredResult(_optr); - DoubleObject ret = new DoubleObject(output.getName(), val); - ec.setScalarOutput(output.getName(), ret); + ec.setScalarOutput(output.getName(), new DoubleObject(val)); } private static class RDDCMFunction implements Function<MatrixBlock, CM_COV_Object> http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/spark/CheckpointSPInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/spark/CheckpointSPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/spark/CheckpointSPInstruction.java index 484cdaa..1db615d 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/spark/CheckpointSPInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/spark/CheckpointSPInstruction.java @@ -157,7 +157,7 @@ public class CheckpointSPInstruction extends UnarySPInstruction { CacheableData<?> cd = sec.getCacheableData( input1.getName() ); if( out != in ) { //prevent unnecessary lineage info RDDObject inro = cd.getRDDHandle(); //guaranteed to exist (see above) - RDDObject outro = new RDDObject(out, output.getName()); //create new rdd object + RDDObject outro = new RDDObject(out); //create new rdd object outro.setCheckpointRDD(true); //mark as checkpointed outro.addLineageChild(inro); //keep lineage to prevent cycles on cleanup cd.setRDDHandle(outro); http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/spark/CovarianceSPInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/spark/CovarianceSPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/spark/CovarianceSPInstruction.java index 07cf40d..dbc5695 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/spark/CovarianceSPInstruction.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/spark/CovarianceSPInstruction.java @@ -112,8 +112,7 @@ public class CovarianceSPInstruction extends BinarySPInstruction { //create scalar output (no lineage information required) double val = cmobj.getRequiredResult(_optr); - DoubleObject ret = new DoubleObject(output.getName(), val); - ec.setScalarOutput(output.getName(), ret); + ec.setScalarOutput(output.getName(), new DoubleObject(val)); } private static class RDDCOVFunction implements Function<Tuple2<MatrixBlock,MatrixBlock>, CM_COV_Object> http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/spark/data/BroadcastObject.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/spark/data/BroadcastObject.java b/src/main/java/org/apache/sysml/runtime/instructions/spark/data/BroadcastObject.java index 53b9d34..ff1ac4f 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/spark/data/BroadcastObject.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/spark/data/BroadcastObject.java @@ -30,8 +30,8 @@ public class BroadcastObject<T extends CacheBlock> extends LineageObject protected final SoftReference<PartitionedBroadcast<T>> _bcHandle; private final long _size; - public BroadcastObject( PartitionedBroadcast<T> bvar, String varName, long size ) { - super(varName); + public BroadcastObject( PartitionedBroadcast<T> bvar, long size ) { + super(); _bcHandle = new SoftReference<>(bvar); _size = size; } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/spark/data/DatasetObject.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/spark/data/DatasetObject.java b/src/main/java/org/apache/sysml/runtime/instructions/spark/data/DatasetObject.java index 5030136..333a7cf 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/spark/data/DatasetObject.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/spark/data/DatasetObject.java @@ -28,12 +28,12 @@ public class DatasetObject extends LineageObject private final boolean _isVector; private final boolean _containsID; - public DatasetObject( Dataset<Row> dsvar, String varName) { - this(dsvar, varName, true, true); + public DatasetObject( Dataset<Row> dsvar) { + this(dsvar, true, true); } - public DatasetObject( Dataset<Row> dsvar, String varName, boolean isVector, boolean containsID) { - super(varName); + public DatasetObject( Dataset<Row> dsvar, boolean isVector, boolean containsID) { + super(); _dsHandle = dsvar; _isVector = isVector; _containsID = containsID; http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/spark/data/LineageObject.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/spark/data/LineageObject.java b/src/main/java/org/apache/sysml/runtime/instructions/spark/data/LineageObject.java index 4d6f0c6..cd7c2ae 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/spark/data/LineageObject.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/spark/data/LineageObject.java @@ -28,22 +28,16 @@ public abstract class LineageObject { //basic lineage information protected int _numRef = -1; - protected List<LineageObject> _childs = null; - protected final String _varName; + protected final List<LineageObject> _childs; //N:1 back reference to matrix/frame object protected CacheableData<?> _cd = null; - protected LineageObject(String varName) { - _varName = varName; + protected LineageObject() { _numRef = 0; _childs = new ArrayList<>(); } - public String getVarName() { - return _varName; - } - public int getNumReferences() { return _numRef; } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/runtime/instructions/spark/data/RDDObject.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/runtime/instructions/spark/data/RDDObject.java b/src/main/java/org/apache/sysml/runtime/instructions/spark/data/RDDObject.java index 0a52323..f2ff064 100644 --- a/src/main/java/org/apache/sysml/runtime/instructions/spark/data/RDDObject.java +++ b/src/main/java/org/apache/sysml/runtime/instructions/spark/data/RDDObject.java @@ -32,8 +32,8 @@ public class RDDObject extends LineageObject private boolean _parRDD = false; //is a parallelized rdd at driver private boolean _pending = true; //is a pending rdd operation - public RDDObject( JavaPairRDD<?,?> rddvar, String varName) { - super(varName); + public RDDObject( JavaPairRDD<?,?> rddvar) { + super(); _rddHandle = rddvar; } http://git-wip-us.apache.org/repos/asf/systemml/blob/ffefd8e6/src/main/java/org/apache/sysml/udf/ExternalFunctionInvocationInstruction.java ---------------------------------------------------------------------- diff --git a/src/main/java/org/apache/sysml/udf/ExternalFunctionInvocationInstruction.java b/src/main/java/org/apache/sysml/udf/ExternalFunctionInvocationInstruction.java index 70eb4bf..196ca37 100644 --- a/src/main/java/org/apache/sysml/udf/ExternalFunctionInvocationInstruction.java +++ b/src/main/java/org/apache/sysml/udf/ExternalFunctionInvocationInstruction.java @@ -130,7 +130,6 @@ public class ExternalFunctionInvocationInstruction extends Instruction case Matrix: Matrix m = (Matrix) fun.getFunctionOutput(i); MatrixObject newVar = createOutputMatrixObject( m ); - newVar.setVarName(output.getName()); ec.setVariable(output.getName(), newVar); break; case Scalar: @@ -138,19 +137,16 @@ public class ExternalFunctionInvocationInstruction extends Instruction ScalarObject scalarObject = null; switch( s.getScalarType() ) { case Integer: - scalarObject = new IntObject(output.getName(), - Long.parseLong(s.getValue())); + scalarObject = new IntObject(Long.parseLong(s.getValue())); break; case Double: - scalarObject = new DoubleObject(output.getName(), - Double.parseDouble(s.getValue())); + scalarObject = new DoubleObject(Double.parseDouble(s.getValue())); break; case Boolean: - scalarObject = new BooleanObject(output.getName(), - Boolean.parseBoolean(s.getValue())); + scalarObject = new BooleanObject(Boolean.parseBoolean(s.getValue())); break; case Text: - scalarObject = new StringObject(output.getName(), s.getValue()); + scalarObject = new StringObject(s.getValue()); break; default: throw new DMLRuntimeException("Unknown scalar value type '"