octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Metis


From: David Bateman
Subject: Re: Metis
Date: Wed, 17 Oct 2007 10:13:27 +0200
User-agent: Thunderbird 1.5.0.7 (X11/20060921)

John W. Eaton wrote:
> I think there is a slight difference with the BLAS.  In that case,
> there are multiple implementations and some have licenses that are
> compatible with the GPL.  For Metis, I don't know of any
> GPL-compatible replacment.
>   
We could consider CHOLMOD and CHOLMOD+METIS as two different
implementations and then the comparison with GOTO BLAS is more clear
cut.. Your right there is no API compatible replacement for METIS. This
is however different graph partitioning software available. Its just
that Metis is one of the fastest ones out there

> In any case, I'm not saying prevent linking entirely, but make it so
> that Octave's configure script looks for cholmod without metis only.
> If people want to specify something else explicitly when configuring I
> can't prevent that, but I think the default should be to link with
> ufsparse without Metis.
>   
The check for cholmod at the moment looks for METIS and defines
HAVE_METIS if it exists.. We in fact don't use the HAVE_METIS flag. In
fact if libcholmod.so is linked to libmetis.so then we don't need to
explicitly link Octave to metis.. This has the advantage that Octave
could be built with a metis version of cholmod and then have a GPL
compliant version of cholmod swapped in at the time the binary is
distributed. So the test for cholmod should test whether we can link
without METIS first and then and only then try with METIS if it fails..

> Did we ever request a change in the Metis license to make it GPL
> compatible?
>   
Yes, though the METIS author was very uncommunicative. He responded to
my first request in a manner that was insufficient and  didn't respond
to the second request. See the attached thread. If someone want to
contact him again then why not. I hope they have better luck..

D.

-- 
David Bateman                                address@hidden
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph) 
Parc Les Algorithmes, Commune de St Aubin    +33 6 72 01 06 33 (Mob) 
91193 Gif-Sur-Yvette FRANCE                  +33 1 69 35 77 01 (Fax) 

The information contained in this communication has been classified as: 

[x] General Business Information 
[ ] Motorola Internal Use Only 
[ ] Motorola Confidential Proprietary

--- Begin Message --- Subject: License of METIS? Date: Tue, 06 Sep 2005 18:21:52 +0200 User-agent: Mozilla Thunderbird 0.8 (X11/20040923)
To whom it mat concern,

I'm writing to you about the license under which I can distribute METIS. I'm currently in the process of including support for Tim Davis' CHOLMOD package (http://www.cise.ufl.edu/research/sparse/beta/Aug31_2005/) in octave (www.octave.org). However Davis' CHOLMOD package relies on METIS. To allow inclusion of Davis' code I'll also need to include METIS. Octave is distributed under the terms of the GPL. Davis' code is distributed under a mix of the terms of the GPL and LGPL and causes no issues. However the license for METIS states

<quote>


     Can I distribute METIS with my application?

Our policy regarding the distribution of METIS with third-party applications is as follows:

   * *Non-commercial applications*
     METIS can be freely distributed provided that:
         o Proper references are included.
         o The original documentation and copyright notice is included.
   * *Commercial applications
     *METIS can be freely distributed provided that:
         o Proper references are included.
         o The original documentation and copyright notice is included.
         o METIS is a relatively small portion of the overall application.

In either case, permission to distribute/include METIS with your application must be obtained by sending email to address@hidden <mailto:address@hidden>.
</quote>

which does cause several issues. Code distributed under the GPL makes no distinction of commercial or non-commercial use, it also doesn't require permission for redistribution. I might ask for permission to include METIS in octave, but this clause on redistribution would prevent it as it is incompatible with the GPL under which octave is released. The more traditional way of using packages such as METIS in programs such as octave is to have METIS built as a separate library to which octave links. However, then the clause of the size of the portion is not meet as METIS itself is almost 100% of such a library package with a small amount of glue code for the packaging itself. Additionally the permission to allow distribution would prevent such a package from being included in such distributions as debian or fedora.

For this reason I'm writing to you to request a special dispensation to release METIS under the terms of the GPL. Note that the GPL as opposed to the LGPL would prevent the commercial use of METIS as linking to this version of METIS would make the whole program GPLed. I believe such a release under the GPL meets the spirit of the above license of preventing unrestricted commercial use, while still allowing octave to profit from Davis' CHOLMOD software.

Best Regards
David Bateman

--
David Bateman                                address@hidden
Motorola Labs - Paris +33 1 69 35 48 04 (Ph) Parc Les Algorithmes, Commune de St Aubin +33 1 69 35 77 01 (Fax) 91193 Gif-Sur-Yvette FRANCE

The information contained in this communication has been classified as: [x] General Business Information [ ] Motorola Internal Use Only [ ] Motorola Confidential Proprietary



--- End Message ---
--- Begin Message --- Subject: Re: License of METIS? Date: Wed, 07 Sep 2005 10:34:05 +0200 User-agent: Mozilla Thunderbird 0.8 (X11/20040923)
George Karypis wrote:

David,

Metis is been used freely in commercial codes, so the GPL license will not work with the existing companies that use Metis. I have no problem
in giving you permission to use Metis in octave with no requirement for
the users of octave to ask for additional permission.

regards,

George

George,

Thanks for your rapid response... I don't propose that you remove your current license, in fact you can't as you have already distributed code under it to several people. Only that I can have permission to use METIS in a GPL compatible manner... Thus METIS might be used under a dual license scheme, something like

Our policy regarding the distribution of METIS with third-party applications is as follows:

   * METIS can be distributed under the terms of the GPL. Any copy of METIS
     used under the GPL will remain so in perpetuity.
   * Alternatively,
     * *Non-commercial applications*
       METIS can be freely distributed provided that:
           o Proper references are included.
           o The original documentation and copyright notice is included.
     * *Commercial applications
       *METIS can be freely distributed provided that:
           o Proper references are included.
           o The original documentation and copyright notice is included.
           o METIS is a relatively small portion of the overall application.
* In the above cases, permission to distribute/include METIS with your application must be obtained by sending email to address@hidden <mailto:address@hidden>.


The existing users are served by the second clause and distributions like debian or fedora might package METIS under the second.

Unfortunately even allowing octave to use METIS without further permission is not necessarily sufficient, since the nature of the GPLed code is that people are free to use any portion of that code elsewhere as long as the result is also GPL. Therefore if METIS is included in octave in a GPL compatible manner, then nothing can stop someone extracting METIS from octave and using it elsewhere. This is why I asked for a GPL release to prevent any such hairy legal questions, with a GPL release all of these problems go away. It would also allow separate packaging of METIS for debian and fedora.

Best Wishes
David

--
David Bateman                                address@hidden
Motorola Labs - Paris +33 1 69 35 48 04 (Ph) Parc Les Algorithmes, Commune de St Aubin +33 1 69 35 77 01 (Fax) 91193 Gif-Sur-Yvette FRANCE

The information contained in this communication has been classified as: [x] General Business Information [ ] Motorola Internal Use Only [ ] Motorola Confidential Proprietary



--- End Message ---
--- Begin Message --- Subject: RE: License of METIS? Date: Tue, 6 Sep 2005 16:20:01 -0500
David,

Metis is been used freely in commercial codes, so the GPL license will 
not work with the existing companies that use Metis. I have no problem
in giving you permission to use Metis in octave with no requirement for
the users of octave to ask for additional permission.

regards,

George

-----Original Message-----
From: David Bateman [mailto:address@hidden 
Sent: Tuesday, September 06, 2005 11:22 AM
To: address@hidden
Cc: address@hidden
Subject: License of METIS?

To whom it mat concern,

I'm writing to you about the license under which I can distribute METIS. 
I'm currently in the process of including support for Tim Davis' CHOLMOD 
package (http://www.cise.ufl.edu/research/sparse/beta/Aug31_2005/) in 
octave (www.octave.org). However Davis' CHOLMOD package relies on METIS. 
To allow inclusion of Davis' code I'll also need to include METIS. 
Octave is distributed under the terms of the GPL. Davis' code is 
distributed under a mix of the terms of the GPL and LGPL and causes no 
issues. However the license for METIS states

<quote>


      Can I distribute METIS with my application?

Our policy regarding the distribution of METIS with third-party 
applications is as follows:

    * *Non-commercial applications*
      METIS can be freely distributed provided that:
          o Proper references are included.
          o The original documentation and copyright notice is included.
    * *Commercial applications
      *METIS can be freely distributed provided that:
          o Proper references are included.
          o The original documentation and copyright notice is included.
          o METIS is a relatively small portion of the overall application.

In either case, permission to distribute/include METIS with your 
application must be obtained by sending email to address@hidden 
<mailto:address@hidden>.
</quote>

which does cause several issues. Code distributed under the GPL makes no 
distinction of commercial or non-commercial use, it also doesn't require 
permission for redistribution. I might ask for permission to include 
METIS in octave, but this clause on redistribution would prevent it as 
it is incompatible with the GPL under which octave is released. The more 
traditional way of using packages such as METIS in programs such as 
octave is to have METIS built as a separate library to which octave 
links. However, then the clause of the size of the portion is not meet 
as METIS itself is almost 100% of such a library package with a small 
amount of glue code for the packaging itself. Additionally the 
permission to allow distribution would prevent such a package from being 
included in such distributions as debian or fedora.

For this reason I'm writing to you to request a special dispensation to 
release METIS under the terms of the GPL. Note that the GPL as opposed 
to the LGPL would prevent the commercial use of METIS as linking to this 
version of METIS would make the whole program GPLed. I believe such a 
release under the GPL meets the spirit of the above license of 
preventing unrestricted commercial use, while still allowing octave to 
profit from Davis' CHOLMOD software.

Best Regards
David Bateman

-- 
David Bateman                                address@hidden
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph) 
Parc Les Algorithmes, Commune de St Aubin    +33 1 69 35 77 01 (Fax) 
91193 Gif-Sur-Yvette FRANCE

The information contained in this communication has been classified as: 

[x] General Business Information 
[ ] Motorola Internal Use Only 
[ ] Motorola Confidential Proprietary



--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]