Commit a3a176d6 authored by CARDOSI Paul's avatar CARDOSI Paul
Browse files

Merge branch 'rename-reorganize' into 'master'

Rename data access mode objects and reorganize source files

See merge request bramas/spetabaru!33
parents 711beabe fa5fb647
......@@ -5,11 +5,11 @@
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
#include "Utils/SpTimer.hpp"
#include "Utils/small_vector.hpp"
......
......@@ -5,11 +5,11 @@
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
int main(){
const int NumThreads = SpUtils::DefaultNumThreads();
......
......@@ -6,10 +6,10 @@
#include <random>
#include <cassert>
#include "Utils/SpModes.hpp"
#include "Utils/SpPriority.hpp"
#include "Utils/SpProbability.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Task/SpPriority.hpp"
#include "Task/SpProbability.hpp"
#include "Legacy/SpRuntime.hpp"
[[maybe_unused]] const size_t seedSpeculationSuccess = 42;
[[maybe_unused]] const size_t seedSpeculationFailure = 0;
......@@ -58,7 +58,7 @@ int main([[maybe_unused]] int argc, [[maybe_unused]] char *argv[]){
std::uniform_real_distribution<double> dis01(0,1);
runtime.task(SpPriority(0), SpProbability(0.5), SpRead(b),
SpMaybeWrite(a),
SpPotentialWrite(a),
[dis01, mtEngine] (const int &inB, int &inA) mutable -> bool{
double val = dis01(mtEngine);
......
......@@ -3,11 +3,11 @@
// Under LGPL Licence, please you must read the LICENCE file.
///////////////////////////////////////////////////////////////////////////
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
int main(){
std::cout << "Example 1:" << std::endl;
......@@ -36,7 +36,7 @@ int main(){
const int nbUncertainTasks = 3;
for(int idx = 0 ; idx < nbUncertainTasks ; ++idx){
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return true;
}).setTaskName("Uncertain task -- " + std::to_string(idx));
}
......
///////////////////////////////////////////////////////////////////////////
// Spetabaru - Berenger Bramas MPCDF - 2017
// Under LGPL Licence, please you must read the LICENCE file.
///////////////////////////////////////////////////////////////////////////
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
int main(){
return 0;
}
......@@ -5,13 +5,13 @@
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
#include "Buffer/SpBufferDataView.hpp"
#include "Utils/SpBufferDataView.hpp"
#include "Utils/small_vector.hpp"
int main(){
......
......@@ -5,14 +5,14 @@
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
#include "Buffer/SpBufferDataView.hpp"
#include "Buffer/SpHeapBuffer.hpp"
#include "Utils/SpBufferDataView.hpp"
#include "Utils/SpHeapBuffer.hpp"
#include "Utils/small_vector.hpp"
......
......@@ -5,11 +5,11 @@
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
int main(){
const int NumThreads = SpUtils::DefaultNumThreads();
......
......@@ -5,12 +5,12 @@
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Utils/SpTimer.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
#include "Random/SpPhiloxGenerator.hpp"
#include "Utils/small_vector.hpp"
......@@ -154,7 +154,7 @@ int main(){
runtime.task(SpWrite(energyAll),
SpWrite(domains[idxDomain]),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
SpAtomicWrite(*acceptedMove),
SpParallelWrite(*acceptedMove),
[verbose, BoxWidth, displacement, Temperature, idxDomain, idxLoop, randGen](
Matrix<double>& energyAllParam,
Domain<double>& domains_idxDomain,
......@@ -234,8 +234,8 @@ int main(){
for(int idxDomain = 0 ; idxDomain < NbDomains ; ++idxDomain){
runtime.task(
SpMaybeWrite(energyAll),
SpMaybeWrite(domains[idxDomain]),
SpPotentialWrite(energyAll),
SpPotentialWrite(domains[idxDomain]),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
[verbose, idxDomain, idxLoop, BoxWidth, displacement, Temperature, randGen](
Matrix<double>& energyAllParam,
......@@ -332,8 +332,8 @@ int main(){
for(int idxDomain = 0 ; idxDomain < NbDomains ; ++idxDomain){
runtime.task(
SpMaybeWrite(energyAll),
SpMaybeWrite(domains[idxDomain]),
SpPotentialWrite(energyAll),
SpPotentialWrite(domains[idxDomain]),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
[verbose, idxDomain, idxLoop, BoxWidth, displacement, Temperature, randGen](
Matrix<double>& energyAllParam,
......@@ -431,8 +431,8 @@ int main(){
for(int idxDomain = 0 ; idxDomain < NbDomains ; ++idxDomain){
runtime.task(
SpMaybeWrite(energyAll),
SpMaybeWrite(domains[idxDomain]),
SpPotentialWrite(energyAll),
SpPotentialWrite(domains[idxDomain]),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
[verbose, idxDomain, idxLoop, BoxWidth, displacement, randGen](
Matrix<double>& energyAllParam,
......
......@@ -5,11 +5,11 @@
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
#include "Random/SpPhiloxGenerator.hpp"
#include "Utils/small_vector.hpp"
......@@ -149,8 +149,8 @@ int main(){
SpWrite(*movedDomain),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
SpWrite(domains[idxDomain]),
SpAtomicWrite(*acceptedMove),
SpAtomicWrite(*failedMove),
SpParallelWrite(*acceptedMove),
SpParallelWrite(*failedMove),
[&Temperature, idxDomain, idxLoop, &collisionLimit, &BoxWidth, &displacement, randGen](
Matrix<double>& energyAllParam,
Domain<double>& movedDomainParam,
......@@ -256,12 +256,12 @@ int main(){
}).setTaskName("MoveDomain -- "+std::to_string(idxLoop)+"/"+std::to_string(idxDomain));
randGen.skip(3*NbParticlesPerDomain);
runtime.task(SpMaybeWrite(energyAll),
runtime.task(SpPotentialWrite(energyAll),
SpWrite(*movedDomain),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
SpMaybeWrite(domains[idxDomain]),
SpAtomicWrite(*acceptedMove),
SpAtomicWrite(*failedMove),
SpPotentialWrite(domains[idxDomain]),
SpParallelWrite(*acceptedMove),
SpParallelWrite(*failedMove),
[&Temperature, idxDomain, idxLoop, &collisionLimit, &BoxWidth, &displacement, randGen](
Matrix<double>& energyAllParam,
Domain<double>& movedDomainParam,
......
......@@ -5,12 +5,12 @@
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Utils/SpTimer.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
#include "Random/SpPhiloxGenerator.hpp"
#include "Utils/small_vector.hpp"
......@@ -226,7 +226,7 @@ int main(){
runtime.task(SpWrite(energyAll),
SpWrite(domains[idxDomain]),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
SpAtomicWrite(*acceptedMove),
SpParallelWrite(*acceptedMove),
[verbose, BoxWidth, displacement, Temperature, idxDomain, idxReplica, idxInnerLoop, randGen](
Matrix<double>& energyAllParam,
Domain<double>& domains_idxDomain,
......@@ -369,8 +369,8 @@ int main(){
for(int idxDomain = 0 ; idxDomain < NbDomains ; ++idxDomain){
runtime.task(
SpMaybeWrite(energyAll),
SpMaybeWrite(domains[idxDomain]),
SpPotentialWrite(energyAll),
SpPotentialWrite(domains[idxDomain]),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
[verbose, BoxWidth, displacement, Temperature, idxDomain, idxReplica, idxInnerLoop, randGen](
Matrix<double>& energyAllParam,
......@@ -433,10 +433,10 @@ int main(){
Matrix<double>& energyAll1 = replicaEnergyAll[idxReplica+1];
runtime.task(
SpMaybeWriteArray(domains0.data(), SpArrayView(NbDomains)),
SpMaybeWrite(energyAll0),
SpMaybeWriteArray(domains1.data(), SpArrayView(NbDomains)),
SpMaybeWrite(energyAll1),
SpPotentialWriteArray(domains0.data(), SpArrayView(NbDomains)),
SpPotentialWrite(energyAll0),
SpPotentialWriteArray(domains1.data(), SpArrayView(NbDomains)),
SpPotentialWrite(energyAll1),
[verbose, randGen0, idxReplica, &betas, idxLoop](
SpArrayAccessor<Domain<double>>& domains0Param,
Matrix<double>& energyAll0Param,
......@@ -534,8 +534,8 @@ int main(){
for(int idxDomain = 0 ; idxDomain < NbDomains ; ++idxDomain){
runtime.task(
SpMaybeWrite(energyAll),
SpMaybeWrite(domains[idxDomain]),
SpPotentialWrite(energyAll),
SpPotentialWrite(domains[idxDomain]),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
[verbose, BoxWidth, displacement, Temperature, idxDomain, idxReplica, idxInnerLoop, randGen](
Matrix<double>& energyAllParam,
......@@ -601,10 +601,10 @@ int main(){
Matrix<double>& energyAll1 = replicaEnergyAll[idxReplica+1];
runtime.task(
SpMaybeWriteArray(domains0.data(), SpArrayView(NbDomains)),
SpMaybeWrite(energyAll0),
SpMaybeWriteArray(domains1.data(), SpArrayView(NbDomains)),
SpMaybeWrite(energyAll1),
SpPotentialWriteArray(domains0.data(), SpArrayView(NbDomains)),
SpPotentialWrite(energyAll0),
SpPotentialWriteArray(domains1.data(), SpArrayView(NbDomains)),
SpPotentialWrite(energyAll1),
[verbose, randGen0, idxReplica, &betas, idxLoop](
SpArrayAccessor<Domain<double>>& domains0Param,
Matrix<double>& energyAll0Param,
......@@ -710,8 +710,8 @@ int main(){
}
runtime.task(
SpMaybeWrite(energyAll),
SpMaybeWrite(domains[idxDomain]),
SpPotentialWrite(energyAll),
SpPotentialWrite(domains[idxDomain]),
//SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
SpRead(*tmpDomains[0]), SpRead(*tmpDomains[1]), SpRead(*tmpDomains[2]), SpRead(*tmpDomains[3]),
[verbose, BoxWidth, displacement, idxDomain, idxReplica, idxInnerLoop, randGen, &domains](
......@@ -774,10 +774,10 @@ int main(){
Matrix<double>& energyAll1 = replicaEnergyAll[idxReplica+1];
runtime.task(
SpMaybeWriteArray(domains0.data(), SpArrayView(NbDomains)),
SpMaybeWrite(energyAll0),
SpMaybeWriteArray(domains1.data(), SpArrayView(NbDomains)),
SpMaybeWrite(energyAll1),
SpPotentialWriteArray(domains0.data(), SpArrayView(NbDomains)),
SpPotentialWrite(energyAll0),
SpPotentialWriteArray(domains1.data(), SpArrayView(NbDomains)),
SpPotentialWrite(energyAll1),
[randGen0, idxReplica, &betas](
SpArrayAccessor<Domain<double>>& /*domains0Param*/,
Matrix<double>& energyAll0Param,
......
......@@ -5,11 +5,11 @@
#include <iostream>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
#include "Random/SpPhiloxGenerator.hpp"
#include "Utils/small_vector.hpp"
......@@ -224,8 +224,8 @@ int main(){
SpWrite(*movedDomain),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
SpWrite(domains[idxDomain]),
SpAtomicWrite(*acceptedMove),
SpAtomicWrite(*failedMove),
SpParallelWrite(*acceptedMove),
SpParallelWrite(*failedMove),
[&Temperature, idxDomain, idxInnerLoop, idxReplica, &collisionLimit, &BoxWidth, &displacement, randGen](
Matrix<double>& energyAllParam,
Domain<double>& movedDomainParam,
......@@ -385,12 +385,12 @@ int main(){
});
randGen.skip(3*NbParticlesPerDomain);
runtime.task(SpMaybeWrite(energyAll),
runtime.task(SpPotentialWrite(energyAll),
SpWrite(*movedDomain),
SpReadArray(domains.data(),SpArrayView(NbDomains).removeItem(idxDomain)),
SpMaybeWrite(domains[idxDomain]),
SpAtomicWrite(*acceptedMove),
SpAtomicWrite(*failedMove),
SpPotentialWrite(domains[idxDomain]),
SpParallelWrite(*acceptedMove),
SpParallelWrite(*failedMove),
[&Temperature, idxDomain, idxInnerLoop, idxReplica, &collisionLimit, &BoxWidth, &displacement, randGen](
Matrix<double>& energyAllParam,
Domain<double>& movedDomainParam,
......@@ -470,9 +470,9 @@ int main(){
auto& domains1 = replicaDomains[idxReplica+1];
Matrix<double>& energyAll1 = replicaEnergyAll[idxReplica+1];
runtime.task(SpMaybeWrite(domains0), SpMaybeWrite(energyAll0),
SpMaybeWrite(domains1), SpMaybeWrite(energyAll1),
SpAtomicWrite(*nbExchanges),
runtime.task(SpPotentialWrite(domains0), SpPotentialWrite(energyAll0),
SpPotentialWrite(domains1), SpPotentialWrite(energyAll1),
SpParallelWrite(*nbExchanges),
[randGen0, idxReplica, &betas, idxLoop](small_vector<Domain<double>>& domains0Param,
Matrix<double>& energyAll0Param, small_vector<Domain<double>>& domains1Param,
Matrix<double>& energyAll1Param, int& nbExchangesParam) mutable -> bool {
......
......@@ -3,11 +3,11 @@
// Under LGPL Licence, please you must read the LICENCE file.
///////////////////////////////////////////////////////////////////////////
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpTask.hpp"
#include "Runtimes/SpRuntime.hpp"
#include "Task/SpTask.hpp"
#include "Legacy/SpRuntime.hpp"
int main(){
std::cout << "Example basis:" << std::endl;
......@@ -62,7 +62,7 @@ int main(){
promise1.get_future().get();
}).setTaskName("B");
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return false;
}).setTaskName("C");
......@@ -75,7 +75,7 @@ int main(){
// val is 1
runtime.task(SpMaybeWrite(val), [](int& valParam) -> bool {
runtime.task(SpPotentialWrite(val), [](int& valParam) -> bool {
valParam += 2;
return true;
}).setTaskName("E");
......@@ -119,7 +119,7 @@ int main(){
promise1.get_future().get();
}).setTaskName("B");
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return false;
}).setTaskName("C");
......@@ -132,7 +132,7 @@ int main(){
// val is 1
runtime.task(SpMaybeWrite(val), [](int& valParam) -> bool {
runtime.task(SpPotentialWrite(val), [](int& valParam) -> bool {
valParam += 2;
return true;
}).setTaskName("E");
......@@ -173,7 +173,7 @@ int main(){
promise1.get_future().get();
}).setTaskName("A");
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return false;
}).setTaskName("B");
......@@ -183,7 +183,7 @@ int main(){
counterFirstSpec += 1;
}).setTaskName("C");
runtime.task(SpMaybeWrite(val), [](int& valParam) -> bool {
runtime.task(SpPotentialWrite(val), [](int& valParam) -> bool {
valParam += 2;
return true;
}).setTaskName("D");
......@@ -223,11 +223,11 @@ int main(){
promise1.get_future().get();
}).setTaskName("A");
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return false;
}).setTaskName("B");
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return false;
}).setTaskName("C");
......@@ -265,11 +265,11 @@ int main(){
promise1.get_future().get();
}).setTaskName("A");
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return false;
}).setTaskName("B");
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return true;
}).setTaskName("C");
......@@ -310,19 +310,19 @@ int main(){
promise1.get_future().get();
}).setTaskName("A");
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return false;
}).setTaskName("B");
runtime.task(SpMaybeWrite(val), [](int& /*valParam*/) -> bool {
runtime.task(SpPotentialWrite(val), [](int& /*valParam*/) -> bool {
return true;
}).setTaskName("C");
runtime.task(SpMaybeWrite(val2), [](int& /*valParam2*/) -> bool {
runtime.task(SpPotentialWrite(val2), [](int& /*valParam2*/) -> bool {
return true;
}).setTaskName("D");
runtime.task(SpMaybeWrite(val3), [](int& /*valParam3*/) -> bool {
runtime.task(SpPotentialWrite(val3), [](int& /*valParam3*/) -> bool {
return true;
}).setTaskName("E");
......
......@@ -4,7 +4,7 @@
#include "SpComputeEngine.hpp"
#include "TaskGraph/SpAbstractTaskGraph.hpp"
#include "Tasks/SpAbstractTask.hpp"
#include "Task/SpAbstractTask.hpp"
#include "SpWorker.hpp"
void SpComputeEngine::stopIfNotAlreadyStopped() {
......
......@@ -9,7 +9,7 @@
#include <atomic>
#include "Compute/SpWorker.hpp"
#include "Schedulers/SpPrioScheduler.hpp"
#include "Scheduler/SpPrioScheduler.hpp"
#include "Utils/small_vector.hpp"
class SpAbstractTaskGraph;
......
......@@ -6,9 +6,9 @@
#include <condition_variable>
#include <thread>
#include "Utils/SpModes.hpp"
#include "Data/SpDataAccessMode.hpp"
#include "Utils/SpUtils.hpp"
#include "Tasks/SpAbstractTask.hpp"
#include "Task/SpAbstractTask.hpp"
#include "Utils/small_vector.hpp"
class SpComputeEngine;
......
......@@ -2,15 +2,15 @@
// Spetabaru - Berenger Bramas MPCDF - 2017
// Under LGPL Licence, please you must read the LICENCE file.
///////////////////////////////////////////////////////////////////////////
#ifndef SPMODES_HPP
#define SPMODES_HPP
#ifndef SPDATAACCESSMODE_HPP
#define SPDATAACCESSMODE_HPP
#include <type_traits>
#include <array>
#include "Config/SpConfig.hpp"
#include "SpArrayView.hpp"
#include "SpDebug.hpp"
#include "Utils/SpArrayView.hpp"
#include "Utils/SpDebug.hpp"
#include "Data/SpDataDuplicator.hpp"
#include "Utils/SpArrayAccessor.hpp"
#include "Utils/small_vector.hpp"
......@@ -22,9 +22,9 @@
enum class SpDataAccessMode{
READ=0,
WRITE,
ATOMIC_WRITE,
COMMUTE_WRITE,
MAYBE_WRITE
PARALLEL_WRITE,
COMMUTATIVE_WRITE,
POTENTIAL_WRITE
};
////////////////////////////////////////////////////////
......@@ -35,9 +35,9 @@ inline std::string SpModeToStr(const SpDataAccessMode inMode){
switch(inMode){
case SpDataAccessMode::READ: return "READ";
case SpDataAccessMode::WRITE: return "WRITE";
case SpDataAccessMode::ATOMIC_WRITE: return "ATOMIC_WRITE";
case SpDataAccessMode::COMMUTE_WRITE: return "COMMUTE_WRITE";
case SpDataAccessMode::MAYBE_WRITE: return "MAYBE_WRITE";
case SpDataAccessMode::PARALLEL_WRITE: return "PARALLEL_WRITE";
case SpDataAccessMode::COMMUTATIVE_WRITE: return "COMMUTATIVE_WRITE";
case SpDataAccessMode::POTENTIAL_WRITE: return "POTENTIAL_WRITE";
}
return "UNDEFINED";
}
......@@ -172,22 +172,22 @@ constexpr SpScalarDataMode<SpDataAccessMode::WRITE, DepType&> SpWrite(DepType& i
}
template <class DepType>
constexpr SpScalarDataMode<SpDataAccessMode::ATOMIC_WRITE, DepType&> SpAtomicWrite(DepType& inDep){
constexpr SpScalarDataMode<SpDataAccessMode::PARALLEL_WRITE, DepType&> SpParallelWrite(DepType& inDep){