use of edu.iu.dsc.tws.common.config.Config in project twister2 by DSC-SPIDAL.
the class MPIDataFlowCommunication method partition.
@Override
public DataFlowOperation partition(Map<String, Object> properties, MessageType type, int edge1, Set<Integer> sourceTasks, Set<Integer> destTasks, MessageReceiver receiver, CompletionListener cmpListener) {
// merge with the user specified configuration, user specified will take precedence
Config mergedCfg = Config.newBuilder().putAll(config).putAll(properties).build();
MPIDataFlowPartition dataFlowOperation = new MPIDataFlowPartition(channel, sourceTasks, destTasks, receiver, MPIDataFlowPartition.PartitionStratergy.DIRECT, cmpListener);
dataFlowOperation.init(mergedCfg, type, instancePlan, edge1);
return dataFlowOperation;
}
use of edu.iu.dsc.tws.common.config.Config in project twister2 by DSC-SPIDAL.
the class MPIDataFlowCommunication method broadCast.
public DataFlowOperation broadCast(Map<String, Object> properties, MessageType type, int edge, int sourceTask, Set<Integer> destTasks, MessageReceiver receiver) {
// merge with the user specified configuration, user specified will take precedence
Config mergedCfg = Config.newBuilder().putAll(config).putAll(properties).build();
// create the dataflow operation
MPIDataFlowBroadcast dataFlowOperation = new MPIDataFlowBroadcast(channel, sourceTask, destTasks, receiver);
// intialize the operation
dataFlowOperation.init(mergedCfg, type, instancePlan, edge);
return dataFlowOperation;
}
use of edu.iu.dsc.tws.common.config.Config in project twister2 by DSC-SPIDAL.
the class MPIDataFlowCommunication method keyedReduce.
public DataFlowOperation keyedReduce(Map<String, Object> properties, MessageType type, Set<Integer> edge, Set<Integer> sourceTasks, Set<Integer> destTasks, MultiMessageReceiver receiver, MultiMessageReceiver partial) {
// merge with the user specified configuration, user specified will take precedence
Config mergedCfg = Config.newBuilder().putAll(config).putAll(properties).build();
// create the dataflow operation
MPIDataFlowMultiReduce dataFlowOperation = new MPIDataFlowMultiReduce(channel, sourceTasks, destTasks, receiver, partial, edge);
// intialize the operation
dataFlowOperation.init(mergedCfg, type, instancePlan, 0);
return dataFlowOperation;
}
use of edu.iu.dsc.tws.common.config.Config in project twister2 by DSC-SPIDAL.
the class MPIDataFlowCommunication method gather.
@Override
public DataFlowOperation gather(Map<String, Object> properties, MessageType type, MessageType keyType, int edge1, Set<Integer> sourceTasks, int destTask, MessageReceiver receiver) {
// merge with the user specified configuration, user specified will take precedence
Config mergedCfg = Config.newBuilder().putAll(config).putAll(properties).build();
// create the dataflow operation
MPIDataFlowGather dataFlowOperation = new MPIDataFlowGather(channel, sourceTasks, destTask, receiver, 0, 0, mergedCfg, type, keyType, instancePlan, edge1);
// intialize the operation
dataFlowOperation.init(mergedCfg, type, instancePlan, edge1);
return dataFlowOperation;
}
use of edu.iu.dsc.tws.common.config.Config in project twister2 by DSC-SPIDAL.
the class MPIDataFlowCommunication method loadBalance.
public DataFlowOperation loadBalance(Map<String, Object> properties, MessageType type, int edge, Set<Integer> sourceTasks, Set<Integer> destTasks, MessageReceiver receiver) {
// merge with the user specified configuration, user specified will take precedence
Config mergedCfg = Config.newBuilder().putAll(config).putAll(properties).build();
// create the dataflow operation
MPIDataFlowLoadBalance dataFlowOperation = new MPIDataFlowLoadBalance(channel, sourceTasks, destTasks, receiver);
// intialize the operation
dataFlowOperation.init(mergedCfg, type, instancePlan, edge);
return dataFlowOperation;
}
Aggregations