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 >>>> >>> >> >
