I think that CyPari ;and CyPari2 provide a relevant example.

Some background ... CyPari is a PyPi package with binary wheels which
predates and was the starting point for Sage's cypari2 (hence the 2 in the
name).   The basis for CyPari was Sage's pari module.  That module was
modified to make it independent from the rest of Sage so that Sage's Pari
support could be provided as a component of SnapPy. Binary wheels for
CyPari are available for Windows, macOS and manylinux.  The current
versions of those wheels are statically linked against Pari 2.15.4

The binary wheel for CyPari weighs in at 7MB.  Sage's CyPari2 is available
as a binay wheel for macOS and manylinux and the size is of the same order
of magnitude.  When they are unpacked and installed the sizes of these
python packages are respectively 19MB and 7.5MB (cypari2 is linked against
the dynamic libraries libgmp and libpari, which together are about 12MB and
which are external to the python package).  A full Sage installation is
about 5 gigabytes.  With some significant omissions and compression of the
documentation, the macOS app squeezes that down to 3.4GB.

So the size of this one significant self-contained component of sage is
about 200 times smaller than the full sage installation and it could be
made installable on Windows with some additional work which has already
been done for a very closely related package.

- Marc


On Wed, Apr 24, 2024 at 8:48 AM Oscar Benjamin <oscar.j.benja...@gmail.com>
wrote:

> On Tue, 23 Apr 2024 at 15:27, Marc Culler <marc.cul...@gmail.com> wrote:
> >
> > The projects that will really benefit from modularization will be those
> that provide their own limited mathematical context.  Developers of such
> projects will be able to choose which parts of Sage are relevant to their
> specific context.  Those parts of Sage can be provided for their users
> without having to embed a huge monolithic environment into a relatively
> small project.
>
> Is the benefit in this case mainly about reduced disk/network usage?
>
> I could imagine other theoretical benefits like maybe some parts could
> be installed natively on Windows or some parts might be easier to
> provide binaries for etc.
>
> Are there any indicative numbers for what the size would be when
> installing some useful portion of Sage vs installing the whole of
> Sage?
>
> --
> Oscar
>
> --
> You received this message because you are subscribed to a topic in the
> Google Groups "sage-devel" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/sage-devel/mqgtkLr2gXY/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> sage-devel+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sage-devel/CAHVvXxQUanPY%3D1svhf7Q8xDFD5BroD9wTLRc1-wmFC3vQhBMRg%40mail.gmail.com
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/CALcZXREFctqVF8Hr1B%2Bmz9WfhV9Dspop5EmWN7Q%2BsYdJLvnh4w%40mail.gmail.com.

Reply via email to