guix-devel
[Top][All Lists]
Advanced

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

Re: [PATCH] gnu: Add dlib.


From: Marius Bakke
Subject: Re: [PATCH] gnu: Add dlib.
Date: Wed, 24 Aug 2016 20:08:58 +0100

Leo Famulari <address@hidden> writes:

> On Wed, Aug 24, 2016 at 11:26:28AM +0100, Marius Bakke wrote:
>> There are a couple of things going on in this thread:
>> 
>> 1. Segfault on x86_64. This seems to have been resolved simply by
>> updating OpenBLAS. At least, I'm no longer able to reproduce it even
>> with LAPACK in inputs. So, that should fix the Hydra x86_64 build.
>> Can the OpenBLAS update be cherry-picked to master?
>
> I'd say it depends on whether the OpenBLAS users are building
> successfully on core-updates, but unfortunately core-updates is
> currently failing early in the bootstrap process [0]. Can you take a
> look at `guix refresh -l dlib` and pick some important looking
> applications to test with the updated OpenBLAS?

I'm currently building the following openblas dependents: `libreoffice
bamm python-biom-format clipper shogun armadillo julia` and will try to
test BLAS functionality in some of them.

>> 2. i686 test failures. Updating OpenBLAS fixed 1/5 errors. The remaining
>> four are reproducible on 32-bit Ubuntu, so they do not seem Guix
>> related. Upstream has been notified.
>> 
>> 3. ARM failures. I don't have ARM hardware to test on, but I'm guessing
>> it's similar to i686 (i.e. not directly Guix related).
>
> Maybe dlib is 64-bit only? If that's the case, we can disable it on
> those architectures.

According to the developer[0], these targets should be supported.

0: https://github.com/davisking/dlib/issues/197

We could disable tests (at least the failing ones) on these platforms
until this issue is resolved. The mips64el target on Hydra times out
after 3600 seconds on one of the tests, but seems fine up to that point.
Some of these tests are fairly CPU heavy, so the timeout may be too low.

>> Adding "#:parallel-build? #f" had no effect on tests, indeed the check
>> phase does not seem to use the previously built dlib; it builds it again
>> without parallel-build. I will try reproducing the non-reproducibility
>> on some higher end hardware, hopefully this week.
>
> It's weird that it rebuilds the application again for the tests. Which
> build is actually installed in the case of success? Is it worth an
> upstream bug report?

We rely on cmake-build-system for everything but the check phase, which
doesn't have a "proper" check target. I'm no cmake expert, but we can
probably prevent re-build by not including the main application in
test/CmakeLists.txt and instead copy/link in our already-built version:

https://github.com/davisking/dlib/blob/master/dlib/test/CMakeLists.txt#L15

>> I've also found that FFTW is no longer used, apparently due to thread
>> safety issues. So I'd appreciate if the following patch can be added.
>> Apologies for not catching the missing reference earlier, I will be more
>> careful in the future (fftw was added in the last minute..).
>
> Can you hold this patch locally in your "dlib fixes" queue? It would
> trigger a rebuild of dlib on Hydra, but I don't see the point when we
> expect the build to fail near the end anyways.

Yep, hanging on to it for now.



reply via email to

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