[Debian-med-packaging] Bug#854500: iqtree: FTBFS on single-CPU machines (ERROR: You have specified more threads than CPU cores available)
Andreas Tille
tille at debian.org
Tue Feb 7 19:24:34 UTC 2017
Hi Santiago,
On Tue, Feb 07, 2017 at 06:55:09PM +0000, Santiago Vila wrote:
> Package: src:iqtree
> Version: 1.5.3+dfsg-1
> Severity: serious
>
> Dear maintainer:
>
> I tried to build this package in stretch with "dpkg-buildpackage -B"
> but it failed:
>
> --------------------------------------------------------------------------------
> [...]
> debian/rules build-arch
> dh build-arch
> dh_testdir -a
> dh_update_autotools_config -a
> dh_autoreconf -a
> debian/rules override_dh_auto_configure
> make[1]: Entering directory '/<<BUILDDIR>>/iqtree-1.5.3+dfsg'
> dh_auto_configure -Bbuild.omp -- -DIQTREE_FLAGS="omp"
> cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DIQTREE_FLAGS=omp
> -- The C compiler identification is GNU 6.3.0
> -- The CXX compiler identification is GNU 6.3.0
> -- Check for working C compiler: /usr/bin/cc
> -- Check for working C compiler: /usr/bin/cc -- works
> -- Detecting C compiler ABI info
>
> [... snipped ...]
>
> Estimate model parameters (epsilon = 0.010)
> 1. Initial log-likelihood: -23117.037
> Optimal log-likelihood: -23117.034
> Rate parameters: A-C: 1.000 A-G: 2.440 A-T: 1.000 C-G: 1.000 C-T: 2.440 G-T: 1.000
> Base frequencies: A: 0.355 C: 0.228 G: 0.192 T: 0.225
> Parameters optimization took 1 rounds (0.013 sec)
> BEST SCORE FOUND : -23117.034
> Total tree length: 2.805
>
> Total number of iterations: 102
> CPU time used for tree search: 9.360 sec (0h:0m:9s)
> Wall-clock time used for tree search: 9.601 sec (0h:0m:9s)
> Total CPU time used: 9.492 sec (0h:0m:9s)
> Total wall-clock time used: 9.763 sec (0h:0m:9s)
>
> Analysis results written to:
> IQ-TREE report: example.phy.iqtree
> Maximum-likelihood tree: example.phy.treefile
> Likelihood distances: example.phy.mldist
> Screen log file: example.phy.log
>
> Date and Time: Tue Jan 31 06:15:04 2017
> 9.50user 0.09system 0:09.79elapsed 97%CPU (0avgtext+0avgdata 8292maxresident)k
> 536inputs+88outputs (0major+719minor)pagefaults 0swaps
> IQ-TREE multicore version 1.5.3 for Linux 64-bit built Jan 19 2017
> Copyright (c) 2011-2016 Nguyen Lam Tung, Olga Chernomor, Arndt von Haeseler and Bui Quang Minh.
>
> Host: leaseweb1 (SSE3, 0 GB RAM)
> Command: /<<BUILDDIR>>/iqtree-1.5.3+dfsg/build.omp/iqtree-omp -s example.phy -omp 2 -redo
> Seed: 870150 (Using SPRNG - Scalable Parallel Random Number Generator)
> Time: Tue Jan 31 06:15:04 2017
> Kernel: SSE3 - 2 threads(1 CPU cores detected)
> ERROR: You have specified more threads than CPU cores available
> Command exited with non-zero status 2
> 0.00user 0.00system 0:00.04elapsed 17%CPU (0avgtext+0avgdata 5124maxresident)k
> 2528inputs+8outputs (11major+251minor)pagefaults 0swaps
> Command exited with non-zero status 2
> 9.51user 0.11system 0:09.97elapsed 96%CPU (0avgtext+0avgdata 8292maxresident)k
> 5040inputs+176outputs (16major+2178minor)pagefaults 0swaps
> debian/rules:58: recipe for target 'override_dh_auto_test' failed
> make[1]: *** [override_dh_auto_test] Error 2
> make[1]: Leaving directory '/<<BUILDDIR>>/iqtree-1.5.3+dfsg'
> debian/rules:12: recipe for target 'build-arch' failed
> make: *** [build-arch] Error 2
> dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2
> --------------------------------------------------------------------------------
>
> To reproduce, please try using sbuild on a single CPU virtual machine,
> because that was actually what I was doing and the error message speaks
> by itself:
>
> ERROR: You have specified more threads than CPU cores available
>
> I think the following changelog entry may be related:
>
> * Enable build of MPI-parallelised executable
Most probably.
> I guess you could always disable such change so that the package
> builds everywhere again (multi-core is not part of build-essential
> definition).
Hmmm, I do not understand. The MPI version was *intentionally* enabled
since the resulting binary *should* run using MPI to make sense for the
users. Probably we only need to disable the test suite on single core
machines. What do you think?
Kind regards
Andreas.
--
http://fam-tille.de
More information about the Debian-med-packaging
mailing list