[PATCH] kill POOMA_REORDER_ITERATES
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] kill POOMA_REORDER_ITERATES
- To: pooma-dev@xxxxxxxxxxxxxxxxxxxxxx
- Subject: [PATCH] kill POOMA_REORDER_ITERATES
- From: Richard Guenther <rguenth@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Mon, 16 Aug 2004 16:54:03 +0200 (CEST)
This patch kills POOMA_REORDER_ITERATES, i.e. assumes it is always set.
It was used inconsistently before anyways and the stub scheduler doesn't
reorder iterates anyway and the SerialAsync does so anyway. So this
reduces source code complexity.
Not tested, but looks obvious. Ok?
Richard.
2004Aug16 Richard Guenther <richard.guenther@xxxxxxxxxxxxxxxx>
* configure: remove traces of POOMA_REORDER_ITERATES.
src/Evaluator/Evaluator.h: likewise.
src/Evaluator/MultiArgEvaluator.h: likewise.
src/Evaluator/Reduction.h: likewise.
src/Pooma/Pooma.cmpl.cpp: likewise.
src/Tulip/SendReceive.h: likewise.
===== r2/configure 1.17 vs edited =====
--- 1.17/r2/configure 2004-07-15 16:22:32 +02:00
+++ edited/r2/configure 2004-08-16 16:47:58 +02:00
@@ -1498,10 +1498,6 @@
}
}
- $pooma_reorder_iterates = $threads || ($scheduler eq "serialAsync");
-
- add_yesno_define("POOMA_REORDER_ITERATES", $pooma_reorder_iterates);
-
# OpenMP support
if (scalar @{$arghash{$openmpnm}} > 1)
{
===== r2/src/Evaluator/Evaluator.h 1.3 vs edited =====
--- 1.3/r2/src/Evaluator/Evaluator.h 2003-10-23 14:41:01 +02:00
+++ edited/r2/src/Evaluator/Evaluator.h 2004-08-16 16:44:43 +02:00
@@ -153,12 +153,8 @@
void evaluate(const LHS& lhs, const Op& op, const RHS& rhs) const
{
typedef typename KernelTag<LHS,RHS>::Kernel_t Kernel_t;
-#if POOMA_REORDER_ITERATES
Pooma::Iterate_t *iterate = ::generateKernel(lhs, op, rhs, Kernel_t());
Pooma::scheduler().handOff(iterate);
-#else
- KernelEvaluator<Kernel_t>::evaluate(lhs, op, rhs);
-#endif
}
};
===== r2/src/Evaluator/MultiArgEvaluator.h 1.15 vs edited =====
--- 1.15/r2/src/Evaluator/MultiArgEvaluator.h 2004-07-15 16:47:32 +02:00
+++ edited/r2/src/Evaluator/MultiArgEvaluator.h 2004-08-16 16:45:01 +02:00
@@ -220,14 +220,10 @@
const Kernel &)
{
Kernel kernelf(function, domain);
-#if 1 || POOMA_REORDER_ITERATES
Pooma::Iterate_t *iterate =
new MultiArgKernel<A1, Kernel>(a1, kernelf,
info.writers(), info.readers());
Pooma::scheduler().handOff(iterate);
-#else
- kernelf(a1);
-#endif
}
};
===== r2/src/Evaluator/Reduction.h 1.10 vs edited =====
--- 1.10/r2/src/Evaluator/Reduction.h 2004-01-29 10:28:58 +01:00
+++ edited/r2/src/Evaluator/Reduction.h 2004-08-16 16:45:20 +02:00
@@ -168,14 +168,9 @@
{
typedef typename KernelTag1<Expr>::Kernel_t Kernel_t;
-#if POOMA_REORDER_ITERATES
Pooma::Iterate_t *iterate =
new ReductionKernel<T, Op, Expr, Kernel_t>(ret, op, e, csem);
Pooma::scheduler().handOff(iterate);
-#else
- ReductionEvaluator<Kernel_t>::evaluate(ret, op, e);
- csem.incr();
-#endif
}
template<class T, class Op, class Expr>
===== r2/src/Pooma/Pooma.cmpl.cpp 1.3 vs edited =====
--- 1.3/r2/src/Pooma/Pooma.cmpl.cpp 2004-01-17 16:20:23 +01:00
+++ edited/r2/src/Pooma/Pooma.cmpl.cpp 2004-08-16 16:47:24 +02:00
@@ -803,10 +803,6 @@
SystemContext_t::runSomething();
}
-# elif POOMA_REORDER_ITERATES
-
- CTAssert(NO_SUPPORT_FOR_THREADS_WITH_MESSAGING);
-
# else // we're using the serial scheduler, so we only need to get messages
while (Pooma::incomingMessages())
===== r2/src/Tulip/SendReceive.h 1.4 vs edited =====
--- 1.4/r2/src/Tulip/SendReceive.h 2004-01-07 09:54:09 +01:00
+++ edited/r2/src/Tulip/SendReceive.h 2004-08-16 16:47:00 +02:00
@@ -93,11 +93,9 @@
hintAffinity(engineFunctor(view_m,
DataObjectRequest<BlockAffinity>()));
-#if POOMA_REORDER_ITERATES
// Priority interface was added to r2 version of serial async so that
// message iterates would run before any other iterates.
priority(-1);
-#endif
DataObjectRequest<WriteRequest> writeReq(*this);
DataObjectRequest<ReadRequest> readReq(writeReq);
@@ -158,11 +156,9 @@
hintAffinity(engineFunctor(view,
DataObjectRequest<BlockAffinity>()));
-#if POOMA_REORDER_ITERATES
// Priority interface was added to r2 version of serial async so that
// message iterates would run before any other iterates.
priority(-1);
-#endif
DataObjectRequest<WriteRequest> writeReq(*this);
engineFunctor(view, writeReq);
@@ -181,38 +177,12 @@
// registers a method that gets handled by cheetah when the appropriate
// message arrives.
-#if !POOMA_REORDER_ITERATES
-
- bool ready_m;
-
- static void handle(This_t *me, IncomingView &viewMessage)
- {
- apply(me->view_m, viewMessage);
- me->ready_m = true;
- }
-
- virtual void run()
- {
- ready_m = false;
- Pooma::remoteEngineHandler()->request(fromContext_m, tag_m,
- This_t::handle, this);
-
- while (!ready_m)
- {
- Pooma::poll();
- }
- }
-
-#else
-
virtual void run()
{
Pooma::remoteEngineHandler()->request(fromContext_m, tag_m,
This_t::apply, view_m);
}
-#endif
-
private:
static void apply(const View &viewLocal, IncomingView &viewMessage)
@@ -302,11 +272,9 @@
hintAffinity(engineFunctor(view_m,
DataObjectRequest<BlockAffinity>()));
-#if POOMA_REORDER_ITERATES
// Priority interface was added to r2 version of serial async so that
// message send iterates would run before any other iterates.
priority(-1);
-#endif
DataObjectRequest<WriteRequest> writeReq(*this);
DataObjectRequest<ReadRequest> readReq(writeReq);
@@ -384,11 +352,9 @@
hintAffinity(engineFunctor(view,
DataObjectRequest<BlockAffinity>()));
-#if POOMA_REORDER_ITERATES
// Priority interface was added to r2 version of serial async so that
// message receive iterates would run after any other iterates.
priority(-1);
-#endif
DataObjectRequest<WriteRequest> writeReq(*this);
engineFunctor(view, writeReq);