Bug#846512: ITP: dijitso -- distributed just-in-time building of shared libraries

Johannes Ring johannr at simula.no
Thu Dec 1 18:51:04 UTC 2016


Package: wnpp
Severity: wishlist
Owner: Johannes Ring <johannr at simula.no>
X-Debbugs-Cc: debian-devel at lists.debian.org,debian-science-maintainers at lists.alioth.debian.org

* Package name: dijitso
  Version: 2016.2.0
  Upstream Author: Martin Sandve Alnæs <martinal at simula.no>
* URL: https://fenicsproject.org
* License: LGPL-3+
  Programming Lang: Python
  Description: distributed just-in-time building of shared libraries

Dijitso was written to improve a core component of the FEniCS
framework, namely the just in time compilation of C++ code that is
generated from Python modules, but is only called from within a C++
library, and thus do not need wrapping in a nice Python interface.

The main approach of dijitso is to use ctypes to import the dynamic
shared library directly with no attempt at wrapping it in a Python
interface.

As long as the compiled code can provide a simple factory function to
a class implementing a predefined C++ interface, there is no limit to
the complexity of that interface as long as it is only called from
C++ code, If you want a Python interface to your generated code,
dijitso is probably not the answer.

Although dijitso serves a very specific role within the FEniCS
project, it does not depend on other FEniCS components.

The parallel support depends on the mpi4py interface, although mpi4py
is not actually imported within the dijitso module so it would be
possible to mock the communicator object with a similar interface.


As of FEniCS version 2016.2.0, dijitso is now a required component for
FFC and DOLFIN. Adding dijitso to Debian is therefore essential for
upgrading the existing FEniCS packages in Debian to the 2016.2.0
release.

The package will be maintained in Debian Science Team's Git
repository.

Johannes



More information about the debian-science-maintainers mailing list