[Debian-med-packaging] Bug#938431: Fixing sambamba 0.8.6

Pjotr Prins pjotr2018 at thebird.nl
Thu Nov 28 15:36:59 GMT 2019


When 1.18 arrives I think it is a good time to get sambamba and biod
in Debian again.

On Thu, Nov 28, 2019 at 03:42:20PM +0100, Matthias Klumpp wrote:
> Am Do., 28. Nov. 2019 um 15:19 Uhr schrieb Andreas Tille <andreas at an3as.eu>:
> >
> > Hi Pjotr,
> >
> > On Thu, Nov 28, 2019 at 07:50:34AM -0600, Pjotr Prins wrote:
> > > Dear Andreas and Matthias,
> > >
> > > Good news, I think I have fixed the Sambamba bug! After a 3 day bug
> > > hunt. Thanks Andreas for pushing me again. Let me ping you when I have
> > > a new release. I need to do some performance testing still. But no
> > > more segfaults using the Debian ldc 1.17 compiler.
> >
> > Very cool!  Just waiting for your ping. :-)
> >
> > > With regard to BioD I suggest the following:
> > >
> > > 1. We create libraries libbiod.so and libbiod.a which ship with D
> > >    source code - they act like header files in C.
> > > 2. sambamba uses these header files to build (not linking against the
> > >    shared lib)
> > >
> > > The reason is simply performance. The ldc compiler is capable of heavy
> > > optimizations (mostly unrolling loops and inlining code) when it has
> > > all code available. Point I am making that code is available anyway.
> > >
> > > You can choose to change that compile time behaviour by linking
> > > against a shared lib, but just realise you'll end with a much slower
> > > sambamba. The BioD source code shoud be included because you can't
> > > build anything without it.
> >
> > As we discussed at BioHackathon: I just got your point but I have no
> > idea how to implement that source code shipping model for the
> > libbiod-dev package.  I'm fine with whatever is done with D packaging
> > in Debian.
> >
> > To get some numbers:  Do you think rinning test/test_suite.sh could
> > give some impression about the performance gain / loss?
> 
> So, we absolutely have to build this separately, ideally using Meson,
> in Debian - otherwise transitions to newer or different D compilers
> will become an even bigger mess than they already are. Also, embedded
> code copies are explicitly forbidden by the Debian Policy.
> So, libbiod needs a Meson build file or Makefile or anything that
> generates a library installed to a system path that sambamba can find
> later.
> BUT it doesn't mean that the library has to be a shared library. If
> you find that linking libbiod statically into sambamba increases
> performance significantly, we can make the libbiod package generate
> both a shared and static library and then make sambamba prefer the
> static library. This should make transition handling possible as it
> used to (our tracker is smart enough to detect this), satisfy Debian
> policy and reduce the speed impact on sambamba.
> 
> I have been on vacation for a while and then needed to go through a
> lot of stuff @work, so sorry for replying late and also I hope I
> understand the problem correctly.
> FWIW, very, very soon (maybe this week) LDC 1.18 will land in Debian,
> so these packages will go through yet another transition. If you can
> make sure they build & work with LDC 1.18, it would be very great.
> 
> Cheers,
>     Matthias
> 
> 
> 
> 
> -- 
> I welcome VSRE emails. See http://vsre.info/



More information about the Debian-med-packaging mailing list