Ok. I will take the opportunity to update the other partitioners. By the way, 
the interface to Jostle is broken. Jostle is not distributed in source code, so 
I would vote for removing the interface. Any objection?

Question: I used identifiers such as MP_PTSCOTCH_QUALITY as a shortcut of 
MATPARTITIONING_PTSCOTCH_QUALITY. Should the long version be preferred?

Jose


El 20/08/2011, a las 22:17, Barry Smith escribi?:

> 
>   I have updated all the Scotch stuff to use the proper PTScotch names:
> 
>     --download-ptscotch     -mat_partitioning_type ptscotch   
> MatPartitioningSetType(p,MATPARTITIONINGPTSCOTCH) Scotch.py to PTScotch.py   
> etc etc
> 
>    You will need to hg pull BuildSystem also.
> 
> 
>     Barry
> 
> 
> On Aug 20, 2011, at 3:10 AM, Jose E. Roman wrote:
> 
>> 
>> El 20/08/2011, a las 05:45, Barry Smith escribi?:
>> 
>>> 
>>> Questions for anyone with knowledge on this subject:
>>> 
>>>    Are Scotch and ptscotch different packages? 
>> 
>> They are different libraries but are included in the same distribution file. 
>> The tarball contains both the serial and parallel versions (as opposed to 
>> e.g. Metis/Parmetis).
>> 
>>> 
>>>   How come the download site has scotch_5.1.11.tar.gz and 
>>> scotch_5.1.11_esmumps.tar.gz and neither mentions ptscotch do one or both 
>>> of them contain ptscotch? Do either contain scotch? What is the mumps 
>>> business in the name?
>> 
>> Both of them contain scotch+ptscotch. I have diff'ed the two of them. The 
>> esmumps one contains an additional file esmumps.c with a single function 
>> esmumps(): "This routine acts as an interface between ordering software such 
>> as MUMPS and Scotch+Emilio." The other difference is that esmumps has
>>   typedef int32_t SCOTCH_Num;
>> instead of
>>   typedef int SCOTCH_Num;
>> (also for indices) so probably 64-bit integers/indices are disabled in this 
>> version.
>> 
>>> 
>>>   If this uses ptscotch why is the call in the source code 
>>> SCOTCH_dgraphBuild()? and doesn't mention pt?
>> 
>> The differences in usage/interface between scotch and ptscotch are very 
>> small:
>> 1) One has to include either scotch.h or ptscotch.h, and link with -lscotch 
>> or -lptscotch
>> 2) For ptscotch one has to use distributed graphs, i.e. call 
>> SCOTCH_dgraph*() instead of SCOTCH_graph*()
>> Apart from this, the interface seems to be the same.
>> 
>>> 
>>>   If scotch and ptscotch are different shouldn't scotch.py be called 
>>> ptscotch.py?  
>> 
>> They are different because the algorithms available in the parallel version 
>> are much more limited compared to the serial version. But since they are 
>> both included in the same distribution file, I guess it doesn't matter to 
>> call it scotch.py or ptscotch.py.
>> 
>> In terms of MatPartitioning, it could be possible to create two 
>> partitioners, one for scotch and another for ptscotch. But I think it is far 
>> more useful to have the ptscotch interface, because the sequential one would 
>> require gathering the whole graph in a single process (as it happens with 
>> chaco and party). Also, in that case one could also have another one for 
>> Metis (since the method is not exactly the same as Parmetis).
>> 
>> 
>>> 
>>>   Pastix seems to use either scotch or ptscotch?  Will anyone ever fix the 
>>> install of pastix.py for PETSc? Will that require a --download-scotch that 
>>> installs sequential scotch?
>> 
>> I have no idea about Pastix (I haven't seen pastix.py in petsc-dev), but I 
>> guess it will be enough to force --download-scotch together with 
>> --download-pastix.
>> 
>> Jose
>> 
>>> 
>>> 
>>>  Barry
>>> 
>>> 
>>> 
>>> 
>>> 
>>> On Aug 19, 2011, at 6:10 PM, Jose E. Roman wrote:
>>> 
>>>> I have rewritten the Scotch interface so that it can be used again as a 
>>>> MatPartitioning object. I have done limited testing, so please let me know 
>>>> if problems arise.
>>>> 
>>>> The interface is really to PT-Scotch rather than serial Scotch.
>>>> 
>>>> Some comments regarding configure's download-scotch option:
>>>> - It will probably fail in batch environments since the program 
>>>> 'dummysizes' must be run before compiling
>>>> - Compilation requires lex & yacc, I don't know if these are tested by 
>>>> configure.
>>>> 
>>>> Jose
>>>> 
>>> 
>> 
> 


Reply via email to