On Jun 2, 2010, at 7:28 AM, Jeff Squyres wrote:
> On Jun 2, 2010, at 5:38 AM, George Bosilca wrote:
>> I think adding support for sysv shared memory is a good thing.
>> However, I have some strong objections over the implementation in
>> the hg tree. Here are 2 of the major ones:
>> 1) the sysv shared memory creation is __atomic__ based on the flags
>> used. Therefore, all the RML messages exchange is totally useless.
> Not sure what you mean here. common/sm may create new shmem
> segments at any time (e.g., during coll sm). The RML message
> exchange is to ensure that only 1 process creates and initializes
> the segment and then all the others just attach to it.
> The initializing of the segment after it is created/attached could
> be pipelined a little more. E.g, since the init has an atomicly-set
> flag indicating when it's done, the root could create the seg,
> signal the others that they can attach, and then do the init -- the
> non-root procs can wait for flag to change atomicly to know when the
> seg has been initialized). Is that what you're referring to?
>> 2) the whole code is replicated in the 3 files (mmap, sysv and
>> windows), even the common parts. However in the sysv case most of
>> the comments have been modified to remove all capitals letter.
>> I'm in favor of extracting all the common parts and moving them in
>> a special file. What should be kept in the particular files should
>> only be the really different parts (small part of the init and
> Sam -- are the common parts really common? I.e., could they be
> factored out? Or are they "just different enough" that factoring
> them out would be a PITA?
I'm sure some refactoring could be done - let me take a look.
Samuel K. Gutierrez
Los Alamos National Laboratory
> Jeff Squyres
> For corporate legal information go to:
> devel mailing list