Your message dated Fri, 10 Jan 2025 10:04:45 +0000
with message-id <[email protected]>
and subject line Bug#929122: fixed in coinor-ipopt 3.14.17-1
has caused the Debian Bug report #929122,
regarding coinor-ipopt: use parallel version of MUMPS (though only with one
process)
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
929122: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=929122
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: src:coinor-ipopt
Version: 3.11.9-2.1
Severity: normal
I had some problems with IPopt using the sequential version of MUMPS
recently: as MUMPS provides dummy `MPI_*` functions, my program ended
up using some of them or MUMPS used some of the real MPI functions.
As mentioned in IPopt's README this doesn't work well:
+---
| Note: MUMPS uses interally a fake implementation of MPI. If you are
| using Ipopt within an MPIprogram together with MUMPS, the code will not
| run. You will have to modify the MUMPS sources so that the MPI symbols
| inside the MUMPS code are renamed.
+---[
https://projects.coin-or.org/Ipopt/browser/stable/3.12/Ipopt/doc/documentation.pdf?format=raw
]
I guess I was a bit lucky that is didn't happen before.
The attached patch builds IPopt against the MPI-parallel version of
MUMPS, but uses only one process (MPI_COMM_SELF). That has worked
better for me without needing invasive changes to the MUMPS source
code.
Ansgar
diff -Nru coinor-ipopt-3.11.9/debian/control coinor-ipopt-3.11.9/debian/control
--- coinor-ipopt-3.11.9/debian/control 2015-08-30 14:44:13.000000000 +0200
+++ coinor-ipopt-3.11.9/debian/control 2019-03-15 14:01:05.000000000 +0100
@@ -3,8 +3,9 @@
Priority: extra
Maintainer: Greg Horn <[email protected]>
Build-Depends: debhelper (>= 5), autotools-dev, gfortran, libblas-dev,
- libmumps-seq-dev (>= 4.9.2.dfsg-4),
- liblapack-dev, doxygen-latex, ghostscript, chrpath, cdbs
+ libmumps-dev (>= 4.9.2.dfsg-4),
+ liblapack-dev, doxygen-latex, ghostscript, chrpath, cdbs,
+ mpi-default-dev, mpi-default-bin
Build-Conflicts: pkg-config
Standards-Version: 3.9.5
Homepage: https://projects.coin-or.org/Ipopt
@@ -34,7 +35,7 @@
Package: coinor-libipopt-dev
Section: libdevel
Architecture: any
-Depends: coinor-libipopt1v5 (= ${binary:Version}), libmumps-seq-dev,
${shlibs:Depends}, ${misc:Depends}
+Depends: coinor-libipopt1v5 (= ${binary:Version}), libmumps-dev,
${shlibs:Depends}, ${misc:Depends}
Description: Interior-Point Optimizer - header files
Ipopt is an open-source solver for large-scale nonlinear continuous
optimization. It can be used from modeling environments, such as AMPL,
diff -Nru coinor-ipopt-3.11.9/debian/patches/parallel-mumps.patch
coinor-ipopt-3.11.9/debian/patches/parallel-mumps.patch
--- coinor-ipopt-3.11.9/debian/patches/parallel-mumps.patch 1970-01-01
01:00:00.000000000 +0100
+++ coinor-ipopt-3.11.9/debian/patches/parallel-mumps.patch 2019-03-15
14:01:05.000000000 +0100
@@ -0,0 +1,40 @@
+---
coinor-ipopt-3.11.9.orig/Ipopt/src/Algorithm/LinearSolvers/IpMumpsSolverInterface.cpp
++++
coinor-ipopt-3.11.9/Ipopt/src/Algorithm/LinearSolvers/IpMumpsSolverInterface.cpp
+@@ -12,7 +12,7 @@
+
+ // The following line is a fix for otherwise twice-defined global variable
+ // (This would have to be taken out for a parallel MUMPS version!)
+-#define MPI_COMM_WORLD IPOPT_MPI_COMM_WORLD
++//#define MPI_COMM_WORLD IPOPT_MPI_COMM_WORLD
+ // The first header to include is the one for MPI.
+ #include "mpi.h"
+
+@@ -46,8 +46,6 @@ namespace Ipopt
+ static const Index dbg_verbosity = 0;
+ #endif
+
+-#define USE_COMM_WORLD -987654
+-
+ int MumpsSolverInterface::instancecount_mpi = 0;
+
+ MumpsSolverInterface::MumpsSolverInterface()
+@@ -71,8 +69,9 @@ namespace Ipopt
+ else if( instancecount_mpi > 0 )
+ ++instancecount_mpi;
+ #endif
++ MPI_Comm comm = MPI_COMM_SELF;
+ int myid;
+- MPI_Comm_rank(MPI_COMM_WORLD, &myid);
++ MPI_Comm_rank(comm, &myid);
+ #endif
+ mumps_->n = 0;
+ mumps_->nz = 0;
+@@ -82,7 +81,7 @@ namespace Ipopt
+ mumps_->job = -1;//initialize mumps
+ mumps_->par = 1;//working host for sequential version
+ mumps_->sym = 2;//general symetric matrix
+- mumps_->comm_fortran = USE_COMM_WORLD;
++ mumps_->comm_fortran = MPI_Comm_c2f(comm);
+ dmumps_c(mumps_);
+ mumps_->icntl[1] = 0;
+ mumps_->icntl[2] = 0;//QUIETLY!
diff -Nru coinor-ipopt-3.11.9/debian/patches/series
coinor-ipopt-3.11.9/debian/patches/series
--- coinor-ipopt-3.11.9/debian/patches/series 2014-10-01 14:42:17.000000000
+0200
+++ coinor-ipopt-3.11.9/debian/patches/series 2019-03-15 14:01:05.000000000
+0100
@@ -2,3 +2,4 @@
add_missing_cstddef.patch
doxygen.patch
+parallel-mumps.patch
diff -Nru coinor-ipopt-3.11.9/debian/rules coinor-ipopt-3.11.9/debian/rules
--- coinor-ipopt-3.11.9/debian/rules 2015-08-30 14:47:04.000000000 +0200
+++ coinor-ipopt-3.11.9/debian/rules 2019-03-15 14:01:05.000000000 +0100
@@ -3,11 +3,15 @@
include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/autotools.mk
-CPPFLAGS += -I/usr/include/mumps_seq -DHAVE_CSTDDEF
-LDFLAGS += -llapack -lblas -ldmumps_seq -ldl
+export OMPI_MCA_plm_rsh_agent=/bin/false
+export OMPI_MCA_rmaps_base_oversubscribe=1
+
+CPPFLAGS += -DHAVE_CSTDDEF
+LDFLAGS += -llapack -lblas -ldmumps -ldl
DEB_CONFIGURE_EXTRA_FLAGS += --enable-static \
--with-mumps-incdir=/usr/include \
-
--with-mumps-lib='-ldmumps_seq'
+
--with-mumps-lib='-ldmumps' \
+ CC=mpicc CXX=mpicxx
DEB_MAKE_CHECK_TARGET = test
binary-install/coinor-libipopt1v5::
debian/stamp-binary-install-coinor-libipopt1
--- End Message ---
--- Begin Message ---
Source: coinor-ipopt
Source-Version: 3.14.17-1
Done: Shengqi Chen <[email protected]>
We believe that the bug you reported is fixed in the latest version of
coinor-ipopt, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Shengqi Chen <[email protected]> (supplier of updated coinor-ipopt package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Format: 1.8
Date: Fri, 10 Jan 2025 17:34:52 +0800
Source: coinor-ipopt
Architecture: source
Version: 3.14.17-1
Distribution: unstable
Urgency: medium
Maintainer: Debian Science Maintainers
<[email protected]>
Changed-By: Shengqi Chen <[email protected]>
Closes: 929122
Changes:
coinor-ipopt (3.14.17-1) unstable; urgency=medium
.
* Team upload.
.
[ Pierre Gruet ]
* Pointing Vcs-* links to Salsa
.
[ Andreas Tille ]
* New upstream version 3.14.17
* Remove trailing whitespace in debian/copyright (routine-update)
* Spelling patch was applied upstream
.
[ Shengqi Chen ]
* Fix building with parallel version of MUMPS (Closes: #929122)
+ d/rules: use pkgconf to compile MPI code
+ the original patch is from Ansgar Burchardt, thanks!
* d/rules: cleanup and use more explicit configure options
Checksums-Sha1:
910908e5345bed8656dc5faeba289e56f850ae4e 1954 coinor-ipopt_3.14.17-1.dsc
b0b19a420e548efa9b4b3710a1f408e2f86ee148 1874658
coinor-ipopt_3.14.17.orig.tar.gz
3736d767e8cd2fff76c2af3de46bb40f5a44675f 18952
coinor-ipopt_3.14.17-1.debian.tar.xz
965ce68132d7a40382185deb939d2a714dda9170 14329
coinor-ipopt_3.14.17-1_amd64.buildinfo
Checksums-Sha256:
895ea9d3c8a863ce352e151ffbe0d3f9359b26692f7d6b451b1bc0dd942e0e08 1954
coinor-ipopt_3.14.17-1.dsc
33b397a9b07e0e14c223214da68b47529f687d87743e627ac05ca118c690e133 1874658
coinor-ipopt_3.14.17.orig.tar.gz
a651afab482bd35786f600e84e20b2e9f87c411066c57373cafc0127d1aa2885 18952
coinor-ipopt_3.14.17-1.debian.tar.xz
b567565ff8f06a70e2bd342ecbf7f38c644ea0dbf3de5cf17fe71f45a9ed59b0 14329
coinor-ipopt_3.14.17-1_amd64.buildinfo
Files:
9c29f960436bfec47fc7fbefef9a77d6 1954 science optional
coinor-ipopt_3.14.17-1.dsc
ff63055c4d538bab0e7afd544c987e68 1874658 science optional
coinor-ipopt_3.14.17.orig.tar.gz
5bf933fb025973d91471380d9b23cc12 18952 science optional
coinor-ipopt_3.14.17-1.debian.tar.xz
8e82da51e715bc206ded069e3d800701 14329 science optional
coinor-ipopt_3.14.17-1_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----
iQFLBAEBCgA1FiEEj6l3eq8YAbiQe3eGbuOJwPGK93QFAmeA7skXHGhhcnJ5LWNo
ZW5Ab3V0bG9vay5jb20ACgkQbuOJwPGK93Q/owf/V9M9Bs2kaYZp4aNeaL8JW3jH
UPPZo01ChwWtfuH8vj0EYPCAYUgAUKagWlqIf2CvN0Yc0DoqTpLMhONAmfXPUnAx
LXE0rnlfQHkuc5ynAMFZTjwxupqmc2Xu4TitNp8L3SouTjqodDbc/sDFkUmIulBJ
SbRoqrpeLoUsZAW1NxQyWpg7R2YUpPdsIWiBnOWEvD8xXvX5tEgi7zQjWqL59W6x
tA5ubsdmy1lL4q3uRGoG85q+XUVpI9kLeSac7y7AZvFhXzvbid/KCzSoPf+sNRLa
0B9z4ld4Fjobni6BvC54KelqhxVafqWbF0aQbvJVva33llQpi0qkoqyjOdY2gw==
=Vrch
-----END PGP SIGNATURE-----
pgpad2cREV44k.pgp
Description: PGP signature
--- End Message ---
--
debian-science-maintainers mailing list
[email protected]
https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/debian-science-maintainers