itaps-parallel A question about iMeshP interface functions

Jason Kraftcheck kraftche at cae.wisc.edu
Thu Aug 14 09:13:09 CDT 2008


txie at scorec.rpi.edu wrote:
> Jason Kraftcheck wrote:
> 
>> Which functions in particular do you find problematic?  The one with the
>> specified error behavior that you describe above is:
>> iMeshP_getEntOwnerPart.
> 
> These functions include:
> iMeshP_getEntOwnerPart(), iMeshP_getEntOwnerPartArr(),
>  iMeshP_getNumCopies(),  iMeshP_getCopyParts(),
> iMeshP_getCopies(),  iMeshP_getOwnerCopy().
> 
> 
> 
>>  If the above sequence of steps is required for you to determine whether
>> or
>> not an entity is in a partition, wouldn't you have to do that search
>> anyway
>> to find the part handle?
>>
> 
> The problem is: even the part handle is given, we still need to do mesh
> entity iteration to determine whether or not the given entity is valid
> within the part mesh. That is inefficient.
> 

I'm not sure what the issue is.  Are you suggesting some alternate form of
these functions?  You began your initial message with a statement about
functions for which the first two arguments are a partition handle and an
entity handle.  I assume you are not suggesting that we remove the partition
handle argument as that would just increase the potential search space for
these queries (naive implementations are still O(n) but N is larger if the
search space is not constrained to a partition.)

All of these functions are inherently expensive as they imply a search of at
least the local mesh on a processor.  There are, of course, speed vs memory
trade offs possible in the implementation (the simple O(n) search you
described in your original message certainly isn't the only possible
implementation.)

- jason




More information about the itaps-parallel mailing list