[Trilinos-Users] [EXTERNAL] Zoltan2 RCB Bounding box algorithm not implemented

Abhishek Kumar abhishek.iitd16 at gmail.com
Tue Aug 4 03:39:54 EDT 2015


Karen,

How to do partitioning using Zoltan2 if only 1 out of 4 processes has the
data? So effectively data passed to input adapter are just null pointers
for rest of the 3 processes. Is this supported? Or do I have to manually
distribute the data and then do the partitioning?

Currently I have the data only in one processes and it is throwing
following exception on problem->solve(); I tried going through the trace
but it just an assertion which is failing because part size is 0 and hence
returning a null.

libc++abi.dylib: terminating with uncaught exception of type
std::runtime_error: 1:
/Users/abhishek/Work/sources/trilinos/packages/zoltan2/src/util/Zoltan2_Metric.hpp,892
1: error: parts not set

libc++abi.dylib: terminating with uncaught exception of type
std::runtime_error: 2:
/Users/abhishek/Work/sources/trilinos/packages/zoltan2/src/util/Zoltan2_Metric.hpp,892
2: error: parts not set

libc++abi.dylib: terminating with uncaught exception of type
std::runtime_error: 3:
/Users/abhishek/Work/sources/trilinos/packages/zoltan2/src/util/Zoltan2_Metric.hpp,892
3: error: parts not set

Thanks,
Abhishek

On Fri, Jul 10, 2015 at 12:58 AM, Devine, Karen D <kddevin at sandia.gov>
wrote:

> Zoltan2's interface differs from Zoltan's.  Zoltan2 does not use callbacks
> to implement a partitioning algorithms' model. Instead, it uses adapters
> that describe the user's data in a way that allows Zoltan2 to implement the
> model it needs.   Adapters are defined for matrices, meshes, graphs, and
> vectors.  Specific instantiations are provided for Trilinos classes in
> Tpetra, Epetra, and Pamgen, as well as data in C-style arrays.  Examples
> using the adapters are in the directories zoltan2/example and
> zoltan2/test/partition.
>
> Migration is implemented in the adapters' method
> applyPartitioningSolution.  An example using this method is in
> zoltan2/test/partition/partitioning1.cpp.
>
> To help with your transition from Zoltan to Zoltan2, you could transition
> in stages.  For example, you could use Zoltan2's Multijagged method for
> partitioning, and Zoltan's Help_Migrate function for the migration.  Or you
> could use Zoltan's Help_Migrate to implement applyPartitioningSolution in
> your adapter.  That way, you could test your changes more incrementally.
>
>
>
> From: Abhishek Kumar <abhishek.iitd16 at gmail.com>
> Date: Thursday, July 9, 2015 at 11:01 AM
> To: KDevine <kddevin at sandia.gov>
> Cc: "trilinos-users at trilinos.org" <trilinos-users at trilinos.org>
> Subject: Re: [EXTERNAL] [Trilinos-Users] Zoltan2 RCB Bounding box
> algorithm not implemented
>
> Karen,
>
> Thanks for the response but I have some more doubts about Zoltan2
> implementation.
>
> How do we migrate data in Zoltan2? I couldn't find any function for that.
> In Zoltan we could attach callbacks to Zoltan handle which would pack data,
> migrate points and unpack data followed by migration of corresponding
> cells, bounding boxes etc.
>
> Have the callbacks are completely removed from Zoltan2 or they have not
> been implemented yet? And how do we perform the migration step in Zoltan2
> or we'll have to do it manually? Please share any examples you might have
> of Zoltan2 for the same.
>
>
> On Wed, Jul 8, 2015 at 8:47 PM, Devine, Karen D <kddevin at sandia.gov>
> wrote:
>
>> I suggest you use the multijagged partitioner in Zoltan2.  Like RCB, it
>> is a geometric method, so you would need to change only one parameter to
>> use it (algorithm == multijagged).  The bounding boxes are implemented for
>> multijagged.
>>
>>
>> From: Trilinos-Users <trilinos-users-bounces at trilinos.org> on behalf of
>> Abhishek Kumar <abhishek.iitd16 at gmail.com>
>> Date: Tuesday, July 7, 2015 at 11:42 PM
>> To: "trilinos-users at trilinos.org" <trilinos-users at trilinos.org>
>> Subject: [EXTERNAL] [Trilinos-Users] Zoltan2 RCB Bounding box algorithm
>> not implemented
>>
>> Hello all,
>>
>> I am working on an application <http://github.com/biddisco/pv-zoltan>which
>> partitions the data using Zoltan using RCB algorithm and obtains bounding
>> boxes for each partition. Currently I am trying to replace Zoltan calls by
>> Zoltan2 for my gsoc project. But turns out Zoltan2 is still not fully
>> implemented in Zoltan2.
>>
>> Zoltan2 has a function getPartBoxesView(). But it has not been
>> implemented for RCB algorithm yet. So it throws runtime error saying "getPartBoxesView
>> is not implemented in selected algorithm".
>>
>> Can you please guide me how can I solve this problem? Or redirect me to
>> related references/code fragments which might help me implementing this
>> function?
>>
>> --
>> Regards
>>
>> Abhishek Kumar
>> abhishekkumar.me
>> Senior Undergraduate, IIT Delhi CSE
>>
>>
>
>
> --
> Regards
>
> Abhishek Kumar
> abhishekkumar.me
> Senior Undergraduate, IIT Delhi CSE
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://trilinos.org/pipermail/trilinos-users/attachments/20150804/c6f71257/attachment.html>


More information about the Trilinos-Users mailing list