freepooma-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [pooma-dev] Re: [PATCH] MPI support for SerialAsync scheduler


From: Jeffrey D. Oldham
Subject: Re: [pooma-dev] Re: [PATCH] MPI support for SerialAsync scheduler
Date: Tue, 06 Jan 2004 10:36:23 -0800
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030624

Richard Guenther wrote:
Whoops, I just noticed I didn't answer one of your questions:

On Mon, 5 Jan 2004, Jeffrey D. Oldham wrote:


  static std::list<RunnablePtr_t> workQueue_m;
+#if POOMA_MPI
+  static MPI_Request requests_m[1024];

What is this fixed constant of 1024?  Does this come from the MPI standard?


+  static std::map<int, IteratePtr_t> allocated_requests_m;


Well - it's somewhat arbitrary, but with some reason.  First, with mpich
an MPI_Request is an integer identifier, so 1024 requests will fill just a
page of memory.  Second, the mpich library seems to use poll/select on
distinct sockets for which 1024 seems an appropriate upper number.  Third,
its about the number of in-flight requests I have with my 3d CFD code (but
you may see we hard-limit here and wait for requests to finish at
appropriate places).

So, I dont like having this magic number either, but for the MPI standard
the requests need to be allocated continuously and we need _some_ limit.
Once someone has a problem with this we could make it configurable, but I
dont see the point at the moment.

Thus, ok again?

Let's move the magic constant into a const variable instead of having the constant scattered throughout the code. Then, please commit. Thanks.

--
Jeffrey D. Oldham
address@hidden

reply via email to

[Prev in Thread] Current Thread [Next in Thread]