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