From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 55765 invoked by alias); 26 Jul 2017 15:55:39 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 55749 invoked by uid 89); 26 Jul 2017 15:55:39 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.6 required=5.0 tests=AWL,BAYES_50,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS autolearn=no version=3.3.2 spammy=mpi, moose, alexlindsay239@gmail.com, U*alexlindsay239 X-HELO: mail-qk0-f170.google.com Received: from mail-qk0-f170.google.com (HELO mail-qk0-f170.google.com) (209.85.220.170) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 26 Jul 2017 15:55:36 +0000 Received: by mail-qk0-f170.google.com with SMTP id d136so92360567qkg.3 for ; Wed, 26 Jul 2017 08:55:36 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=ysMswyOgT63AGF3J1KoE/7JK5IBEZeGHtVXO45jQ0AM=; b=WuhzK/0XV0vUvdmaBo4fYFp/WfkuCD3OtBoG37+F3figBIrlA3wv6kAuitieWk8ZOP kDIYsl9Z64NcxmVOVNON2P+CYQ74tMEiaFUrf6SuvN1jXSCO+DjZK+MtFmwTUmyfZ51h SNQq0Rwy00pYysWm/sDk/sgEMTIGzHk4m6z157MChEu9h+jeNqzYG2UEK2RQp1sXIKFN laMt/XwGqXQqCC2kIbkLZJfBiL2QiBlvPvpG8fEUU65V6NjZIw0ajMSStZSfuYiePKIr FZdGkKKiInbSFclz14AqwONiI97YgHwBchDlv8ZRFFIg9qrxXoAoLGKMuRQGIIciAm61 3UOw== X-Gm-Message-State: AIVw112mHh6R7QPX0ud53oNye4kk1Ubbs6Iple4srwfmdNxlcXRdilTk otLK9PvJoov0/PO/hZgtQq9R3vK7eA== X-Received: by 10.55.139.4 with SMTP id n4mr2005061qkd.100.1501084534949; Wed, 26 Jul 2017 08:55:34 -0700 (PDT) MIME-Version: 1.0 Received: by 10.12.142.67 with HTTP; Wed, 26 Jul 2017 08:55:34 -0700 (PDT) In-Reply-To: <4fc14853-b066-4fd7-f0c9-b98f442a9a95@gmail.com> References: <8d511930-9914-9aef-363f-2fff37dfc6a8@gmail.com> <86bmo7pshw.fsf@gmail.com> <4fc14853-b066-4fd7-f0c9-b98f442a9a95@gmail.com> From: Yao Qi Date: Wed, 26 Jul 2017 15:55:00 -0000 Message-ID: Subject: Re: Large memory usage by gdb To: Alex Lindsay Cc: GDB Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2017-07/txt/msg00045.txt.bz2 [Add gdb@ back] On Wed, Jul 26, 2017 at 2:50 PM, Alex Lindsay wr= ote: > Thanks for your suggestion Philippe. I hope to try that this weekend. > > Yao, Hi Alex, thanks for your information. I'll write a small program which needs many small libraries, and see if I can find some leaks. >> >> What is your executable? > > My project is here: github.com/arfc/moltres >> >> Can you give us some characteristics of your >> executable to help us to reproduce this problem? Is it multi-threaded >> program? > > It can be parallelized with threads or MPI, but when running with gdb I r= un > single thread, single process. >> >> Is it a C or C++ program? > > C++ >> >> Does it load many shared library? > > Yes it does load *a lot* of shared libraries, so I do expect a fairly lar= ge > memory footprint, but I don't expect it to grow by large chunks with time. > In case it's of use here's the output from `ldd moltres-dbg`: > > linux-vdso.so.1 =3D> (0x00007ffdaf953000) > libmoltres-dbg.so.0 =3D> > /home/lindsayad/projects/moltres/lib/libmoltres-dbg.so.0 > (0x00007f4fa02de000) > libsquirrel-dbg.so.0 =3D> > /home/lindsayad/projects/moltres/squirrel/lib/libsquirrel-dbg.so.0 > (0x00007f4f9ff4a000) > libmodule_loader_with_fp_rdg_ns_tm_pf-dbg.so.0 =3D> > /home/lindsayad/projects/moose/modules/module_loader/lib/libmodule_loader= _with_fp_rdg_ns_tm_pf-dbg.so.0 > (0x00007f4f9fd0b000) > libphase_field-dbg.so.0 =3D> > /home/lindsayad/projects/moose/modules/phase_field/lib/libphase_field-dbg= .so.0 > (0x00007f4f9f124000) > libtensor_mechanics-dbg.so.0 =3D> > /home/lindsayad/projects/moose/modules/tensor_mechanics/lib/libtensor_mec= hanics-dbg.so.0 > (0x00007f4f9e733000) > libnavier_stokes-dbg.so.0 =3D> > /home/lindsayad/projects/moose/modules/navier_stokes/lib/libnavier_stokes= -dbg.so.0 > (0x00007f4f9e0d4000) > librdg-dbg.so.0 =3D> > /home/lindsayad/projects/moose/modules/rdg/lib/librdg-dbg.so.0 > (0x00007f4f9dd9e000) > libfluid_properties-dbg.so.0 =3D> > /home/lindsayad/projects/moose/modules/fluid_properties/lib/libfluid_prop= erties-dbg.so.0 > (0x00007f4f9da48000) > libmoose-dbg.so.0 =3D> > /home/lindsayad/projects/moose/framework/libmoose-dbg.so.0 > (0x00007f4f9b79c000) > libpcre-dbg.so.0 =3D> > /home/lindsayad/projects/moose/framework/contrib/pcre/libpcre-dbg.so.0 > (0x00007f4f9b567000) > libgcc_s.so.1 =3D> /opt/moose/gcc-6.2.0/lib64/libgcc_s.so.1 > (0x00007f4f9b351000) > libmesh_dbg.so.0 =3D> > /home/lindsayad/projects/moose/scripts/../libmesh/installed/lib/libmesh_d= bg.so.0 > (0x00007f4f98f16000) > libnetcdf.so.11 =3D> /usr/lib/x86_64-linux-gnu/libnetcdf.so.11 > (0x00007f4f95bb0000) > libvtkIOCore-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkIOCore-7.1.so.1 > (0x00007f4f958e4000) > libvtkCommonCore-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkCommonCore-7.1.so.1 > (0x00007f4f95052000) > libvtkCommonDataModel-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkCommonDataModel-7.1.so.1 > (0x00007f4f948a0000) > libvtkFiltersCore-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkFiltersCore-7.1.so.1 > (0x00007f4f9404b000) > libvtkIOXML-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkIOXML-7.1.so.1 (0x00007f4f93ce40= 00) > libvtkImagingCore-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkImagingCore-7.1.so.1 > (0x00007f4f9389a000) > libvtkIOImage-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkIOImage-7.1.so.1 > (0x00007f4f93452000) > libvtkImagingMath-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkImagingMath-7.1.so.1 > (0x00007f4f931fd000) > libvtkIOParallelXML-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkIOParallelXML-7.1.so.1 > (0x00007f4f92fb6000) > libvtkParallelMPI-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkParallelMPI-7.1.so.1 > (0x00007f4f92d98000) > libvtkParallelCore-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkParallelCore-7.1.so.1 > (0x00007f4f92aee000) > libz.so.1 =3D> /lib/x86_64-linux-gnu/libz.so.1 (0x00007f4f928d2000) > libtbb.so.2 =3D> > /home/lindsayad/embree-2.15.0.x86_64.linux/lib/libtbb.so.2 > (0x00007f4f92679000) > libtbbmalloc.so.2 =3D> > /home/lindsayad/embree-2.15.0.x86_64.linux/lib/libtbbmalloc.so.2 > (0x00007f4f92425000) > libslepc.so.3.7 =3D> > /opt/moose/slepc/slepc-3.7.3-mpich-clang/lib/libslepc.so.3.7 > (0x00007f4f91ff4000) > libpetsc.so.3.7 =3D> > /opt/moose/petsc/mpich_petsc-3.7.5/clang-opt-superlu/lib/libpetsc.so.3.7 > (0x00007f4f90c66000) > libsuperlu_dist.so.5 =3D> > /opt/moose/petsc/mpich_petsc-3.7.5/clang-opt-superlu/lib/libsuperlu_dist.= so.5 > (0x00007f4f909b8000) > libparmetis.so =3D> > /opt/moose/petsc/mpich_petsc-3.7.5/clang-opt-superlu/lib/libparmetis.so > (0x00007f4f9076d000) > libmetis.so =3D> > /opt/moose/petsc/mpich_petsc-3.7.5/clang-opt-superlu/lib/libmetis.so > (0x00007f4f904ec000) > libX11.so.6 =3D> /usr/lib/x86_64-linux-gnu/libX11.so.6 > (0x00007f4f901b3000) > libhwloc.so.5 =3D> /usr/lib/x86_64-linux-gnu/libhwloc.so.5 > (0x00007f4f8ff78000) > libmpifort.so.12 =3D> > /opt/moose/mpich/mpich-3.2/clang-opt/lib/libmpifort.so.12 > (0x00007f4f8fd3c000) > libgfortran.so.3 =3D> /opt/moose/gcc-6.2.0/lib64/libgfortran.so.3 > (0x00007f4f8fa16000) > libgomp.so.1 =3D> /opt/moose/gcc-6.2.0/lib64/libgomp.so.1 > (0x00007f4f8f7e9000) > libquadmath.so.0 =3D> /opt/moose/gcc-6.2.0/lib64/libquadmath.so.0 > (0x00007f4f8f5a8000) > libmpicxx.so.12 =3D> > /opt/moose/mpich/mpich-3.2/clang-opt/lib/libmpicxx.so.12 > (0x00007f4f8f37e000) > libmpi.so.12 =3D> /opt/moose/mpich/mpich-3.2/clang-opt/lib/libmpi.so.= 12 > (0x00007f4f8ee09000) > librt.so.1 =3D> /lib/x86_64-linux-gnu/librt.so.1 (0x00007f4f8ec01000) > libomp.so =3D> /opt/moose/llvm-3.9.0/lib/libomp.so (0x00007f4f8e94400= 0) > libpthread.so.0 =3D> /lib/x86_64-linux-gnu/libpthread.so.0 > (0x00007f4f8e726000) > libdl.so.2 =3D> /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f4f8e520000) > libstdc++.so.6 =3D> /opt/moose/gcc-6.2.0/lib64/libstdc++.so.6 > (0x00007f4f8e1a0000) > libm.so.6 =3D> /lib/x86_64-linux-gnu/libm.so.6 (0x00007f4f8de97000) > libc.so.6 =3D> /lib/x86_64-linux-gnu/libc.so.6 (0x00007f4f8dad0000) > libhdf5_serial_hl.so.100 =3D> > /usr/lib/x86_64-linux-gnu/libhdf5_serial_hl.so.100 (0x00007f4f8d882000) > libhdf5_serial.so.100 =3D> /usr/lib/x86_64-linux-gnu/libhdf5_serial.s= o.100 > (0x00007f4f8d32b000) > libcurl-gnutls.so.4 =3D> /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4 > (0x00007f4f8d0b9000) > libvtkCommonExecutionModel-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkCommonExecutionModel-7.1.so.1 > (0x00007f4f8cd89000) > libvtkCommonMisc-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkCommonMisc-7.1.so.1 > (0x00007f4f8cb41000) > libvtkzlib-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkzlib-7.1.so.1 (0x00007f4f8c92200= 0) > libvtkCommonTransforms-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkCommonTransforms-7.1.so.1 > (0x00007f4f8c6e4000) > libvtkCommonMath-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkCommonMath-7.1.so.1 > (0x00007f4f8c4b7000) > libvtksys-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtksys-7.1.so.1 (0x00007f4f8c227000) > libvtkCommonSystem-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkCommonSystem-7.1.so.1 > (0x00007f4f8c009000) > libvtkIOXMLParser-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkIOXMLParser-7.1.so.1 > (0x00007f4f8bde0000) > libvtkDICOMParser-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkDICOMParser-7.1.so.1 > (0x00007f4f8bb8a000) > libvtkmetaio-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkmetaio-7.1.so.1 > (0x00007f4f8b86a000) > libvtkpng-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkpng-7.1.so.1 (0x00007f4f8b633000) > libvtktiff-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtktiff-7.1.so.1 (0x00007f4f8b3a300= 0) > libvtkjpeg-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkjpeg-7.1.so.1 (0x00007f4f8b17300= 0) > libvtkIOLegacy-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkIOLegacy-7.1.so.1 > (0x00007f4f8ae6e000) > libxcb.so.1 =3D> /usr/lib/x86_64-linux-gnu/libxcb.so.1 > (0x00007f4f8ac4c000) > libnuma.so.1 =3D> /usr/lib/x86_64-linux-gnu/libnuma.so.1 > (0x00007f4f8aa41000) > libltdl.so.7 =3D> /usr/lib/x86_64-linux-gnu/libltdl.so.7 > (0x00007f4f8a837000) > /lib64/ld-linux-x86-64.so.2 (0x000056155f77e000) > libsz.so.2 =3D> /usr/lib/x86_64-linux-gnu/libsz.so.2 (0x00007f4f8a632= 000) > libidn2.so.0 =3D> /usr/lib/x86_64-linux-gnu/libidn2.so.0 > (0x00007f4f8a410000) > librtmp.so.1 =3D> /usr/lib/x86_64-linux-gnu/librtmp.so.1 > (0x00007f4f8a1f4000) > libpsl.so.5 =3D> /usr/lib/x86_64-linux-gnu/libpsl.so.5 > (0x00007f4f89fe6000) > libnettle.so.6 =3D> /usr/lib/x86_64-linux-gnu/libnettle.so.6 > (0x00007f4f89db0000) > libgnutls.so.30 =3D> /usr/lib/x86_64-linux-gnu/libgnutls.so.30 > (0x00007f4f89a50000) > libgssapi_krb5.so.2 =3D> /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 > (0x00007f4f89804000) > liblber-2.4.so.2 =3D> /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2 > (0x00007f4f895f6000) > libldap_r-2.4.so.2 =3D> /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2 > (0x00007f4f893a4000) > libvtkexpat-7.1.so.1 =3D> > /opt/moose/VTK-7.1.0/clang-opt/lib/libvtkexpat-7.1.so.1 (0x00007f4f8916f0= 00) > libXau.so.6 =3D> /usr/lib/x86_64-linux-gnu/libXau.so.6 > (0x00007f4f88f69000) > libXdmcp.so.6 =3D> /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 > (0x00007f4f88d63000) > libaec.so.0 =3D> /usr/lib/x86_64-linux-gnu/libaec.so.0 > (0x00007f4f88b5b000) > libunistring.so.0 =3D> /usr/lib/x86_64-linux-gnu/libunistring.so.0 > (0x00007f4f88845000) > libhogweed.so.4 =3D> /usr/lib/x86_64-linux-gnu/libhogweed.so.4 > (0x00007f4f88612000) > libgmp.so.10 =3D> /usr/lib/x86_64-linux-gnu/libgmp.so.10 > (0x00007f4f88392000) > libp11-kit.so.0 =3D> /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 > (0x00007f4f8812b000) > libidn.so.11 =3D> /lib/x86_64-linux-gnu/libidn.so.11 (0x00007f4f87ef8= 000) > libtasn1.so.6 =3D> /usr/lib/x86_64-linux-gnu/libtasn1.so.6 > (0x00007f4f87ce5000) > libkrb5.so.3 =3D> /usr/lib/x86_64-linux-gnu/libkrb5.so.3 > (0x00007f4f87a10000) > libk5crypto.so.3 =3D> /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 > (0x00007f4f877de000) > libcom_err.so.2 =3D> /lib/x86_64-linux-gnu/libcom_err.so.2 > (0x00007f4f875da000) > libkrb5support.so.0 =3D> /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 > (0x00007f4f873cd000) > libresolv.so.2 =3D> /lib/x86_64-linux-gnu/libresolv.so.2 > (0x00007f4f871b2000) > libsasl2.so.2 =3D> /usr/lib/x86_64-linux-gnu/libsasl2.so.2 > (0x00007f4f86f97000) > libgssapi.so.3 =3D> /usr/lib/x86_64-linux-gnu/libgssapi.so.3 > (0x00007f4f86d55000) > libffi.so.6 =3D> /usr/lib/x86_64-linux-gnu/libffi.so.6 > (0x00007f4f86b4d000) > libkeyutils.so.1 =3D> /lib/x86_64-linux-gnu/libkeyutils.so.1 > (0x00007f4f86947000) > libheimntlm.so.0 =3D> /usr/lib/x86_64-linux-gnu/libheimntlm.so.0 > (0x00007f4f8673e000) > libkrb5.so.26 =3D> /usr/lib/x86_64-linux-gnu/libkrb5.so.26 > (0x00007f4f864b1000) > libasn1.so.8 =3D> /usr/lib/x86_64-linux-gnu/libasn1.so.8 > (0x00007f4f8620e000) > libhcrypto.so.4 =3D> /usr/lib/x86_64-linux-gnu/libhcrypto.so.4 > (0x00007f4f85fd7000) > libroken.so.18 =3D> /usr/lib/x86_64-linux-gnu/libroken.so.18 > (0x00007f4f85dc1000) > libwind.so.0 =3D> /usr/lib/x86_64-linux-gnu/libwind.so.0 > (0x00007f4f85b96000) > libheimbase.so.1 =3D> /usr/lib/x86_64-linux-gnu/libheimbase.so.1 > (0x00007f4f85987000) > libhx509.so.5 =3D> /usr/lib/x86_64-linux-gnu/libhx509.so.5 > (0x00007f4f8573c000) > libsqlite3.so.0 =3D> /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 > (0x00007f4f85435000) > libcrypt.so.1 =3D> /lib/x86_64-linux-gnu/libcrypt.so.1 > (0x00007f4f851fd000) --=20 Yao (=E9=BD=90=E5=B0=A7)