<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=windows-1252"
      http-equiv="Content-Type">
    <title></title>
  </head>
  <body bgcolor="#ffffff" text="#000000">
    After sending the yesterday, I caught the missing -O3. I tried
    adding it back and also just doing the compiling with the old
    script. But as long as I used the new libraries at the adlink stage,
    it went slow. And by slow, I mean more than 8 minutes for a model
    that previously took 2 1/2 minutes in ADMB version 9 if optimized
    and just over 3 minutes in safe mode (which also suggests that it's
    not just a matter of optimizing).<br>
    <br>
    I can try other models to see if the pattern I saw was consistent,
    but I'm also curious if anyone else has compared the speeds between
    versions. I don't know if this is in the documentation, but run
    times can be quantified with code like the following.<br>
    -Ian<br>
    <blockquote><tt>TOP_OF_MAIN_SECTION<br>
          time(&start);<br>
        <br>
        GLOBALS_SECTION<br>
          #include <time.h><br>
          time_t start,finish;<br>
          double elapsed_time;<br>
        <br>
        FINAL_SECTION<br>
          time(&finish);<br>
          elapsed_time = difftime(finish,start);<br>
      </tt></blockquote>
    On 11/12/2010 2:09 PM, Johnoel Ancheta wrote:
    <blockquote cite="mid:4CDDBAFD.1020404@hawaii.edu" type="cite">Opps...
      Sorry...
      <br>
      <br>
      I accidentally committed the Makefile without the -O3 option.
      <br>
      <br>
      I'll correct and commit the changes.
      <br>
      <br>
      Thanks Dave for catching that.
      <br>
      <br>
      Johnoel
      <br>
      <br>
      On 11/12/10 4:09 AM, dave fournier wrote:
      <br>
      <blockquote type="cite">Ian Taylor wrote:
        <br>
        <br>
        Just a thought Re speed. I don't see a -O3 flag for gcc for
        optimization.
        <br>
        <blockquote type="cite">Hi Johnoel and others,
          <br>
          <br>
          Compiling ADMB 10 Beta on with 64-bit linux worked perfectly
          for me with the files in the download.
          <br>
          <br>
          However, the new script you sent by email failed. From the
          commands below (fuller notes attached), it looks like for
          Ubuntu at least, it would be better to test for 64 vs 32 using
          uname -m rather than uname -p.
          <br>
          <br>
              ~/admb/admb-10.0Beta $ uname -a
          <br>
              Linux ian-laptop 2.6.32-25-generic #45-Ubuntu SMP Sat Oct
          16
          <br>
              19:52:42 UTC 2010 x86_64 GNU/Linux
          <br>
              ~/admb/admb-10.0Beta $ uname -s
          <br>
              Linux
          <br>
              ~/admb/admb-10.0Beta $ uname -p
          <br>
              unknown
          <br>
              ~/admb/admb-10.0Beta $ uname -m
          <br>
              x86_64
          <br>
          <br>
          Aside from the good news of the successful install, this
          version 10 Beta also produced identical results, which is also
          good news. However, it seems to be running slower than version
          9, by a large margin, at least for a single model that I
          tried. Perhaps related to this, when I compiled using GCC in
          and ADMB version 9, the safe executable was about double the
          size of the optimized. Compiling with ADMB version 10, the
          file sizes are similar, and in between the old sizes. Perhaps
          the speed and file size differences are related to changes in
          the compile scripts? My old script was dated "23 May 2009".
          <br>
          <br>
          Finally, thank you, Johnoel, and all the others who've
          contributed to the developments that have gone into this new
          beta release.
          <br>
          -Ian
          <br>
          <br>
          On 11/10/2010 02:44 PM, Johnoel Ancheta wrote:
          <br>
          <blockquote type="cite">Updated configure script is available.
            <br>
            <br>
            <a class="moz-txt-link-freetext" href="http://admb-project.googlecode.com/files/configure">http://admb-project.googlecode.com/files/configure</a>
            <br>
            <br>
            Download and replace the configure script in the
            admb-10.0Beta distribution.
            <br>
            <br>
            <br>
            On 11/10/10 11:09 AM, Ben Bolker wrote:
            <br>
            <blockquote type="cite">   (running under VMWare Fusion on
              Mac OS X.6, but I don't think that
              <br>
              matters)
              <br>
              <br>
                 It looks like configure is getting confused and
              thinking my system is
              <br>
              64-bit ... ?
              <br>
              <br>
              <blockquote type="cite">uname -a
                <br>
              </blockquote>
              Linux ubuntu-10 2.6.32-25-generic #45-Ubuntu SMP Sat Oct
              16 19:48:22 UTC
              <br>
              2010 i686 GNU/Linux
              <br>
              <br>
              uname -m
              <br>
              i686  ## indicates 32-bit kernel
              <br>
              <br>
              $ gcc -v
              <br>
              Using built-in specs.
              <br>
              Target: i486-linux-gnu
              <br>
              Configured with: ../src/configure -v
              --with-pkgversion='Ubuntu
              <br>
              4.4.3-4ubuntu5'
              --with-bugurl=<a class="moz-txt-link-freetext" href="file:///usr/share/doc/gcc-4.4/README.Bugs">file:///usr/share/doc/gcc-4.4/README.Bugs</a>
              <br>
              --enable-languages=c,c++,fortran,objc,obj-c++
              --prefix=/usr
              <br>
              --enable-shared --enable-multiarch
              --enable-linker-build-id
              <br>
              --with-system-zlib --libexecdir=/usr/lib
              --without-included-gettext
              <br>
              --enable-threads=posix
              --with-gxx-include-dir=/usr/include/c++/4.4
              <br>
              --program-suffix=-4.4 --enable-nls --enable-clocale=gnu
              <br>
              --enable-libstdcxx-debug --enable-plugin --enable-objc-gc
              <br>
              --enable-targets=all --disable-werror --with-arch-32=i486
              <br>
              --with-tune=generic --enable-checking=release
              --build=i486-linux-gnu
              <br>
              --host=i486-linux-gnu --target=i486-linux-gnu
              <br>
              Thread model: posix
              <br>
              gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5)
              <br>
              <br>
              <br>
              <br>
              <a class="moz-txt-link-abbreviated" href="mailto:bolker@ubuntu-10:/usr/local/src/admb-10.0Beta$">bolker@ubuntu-10:/usr/local/src/admb-10.0Beta$</a>
              <a class="moz-txt-link-rfc2396E" href="mailto:bolker@ubuntu-10:/usr/local/src/admb-10.0Beta$"><mailto:bolker@ubuntu-10:/usr/local/src/admb-10.0Beta$></a>
              sudo ./configure
              <br>
              checking for gcc... gcc
              <br>
              checking whether the C compiler works... yes
              <br>
              checking for C compiler default output file name... a.out
              <br>
              checking for suffix of executables...
              <br>
              checking whether we are cross compiling... no
              <br>
              checking for suffix of object files... o
              <br>
              checking whether we are using the GNU C compiler... yes
              <br>
              checking whether gcc accepts -g... yes
              <br>
              checking for gcc option to accept ISO C89... none needed
              <br>
              checking for g++... g++
              <br>
              checking whether we are using the GNU C++ compiler... yes
              <br>
              checking whether g++ accepts -g... yes
              <br>
              checking how to run the C++ preprocessor... g++ -E
              <br>
              checking for grep that handles long lines and -e...
              /bin/grep
              <br>
              checking for egrep... /bin/grep -E
              <br>
              checking for ANSI C header files... yes
              <br>
              checking for sys/types.h... yes
              <br>
              checking for sys/stat.h... yes
              <br>
              checking for stdlib.h... yes
              <br>
              checking for string.h... yes
              <br>
              checking for memory.h... yes
              <br>
              checking for strings.h... yes
              <br>
              checking for inttypes.h... yes
              <br>
              checking for stdint.h... yes
              <br>
              checking for unistd.h... yes
              <br>
              checking iostream usability... yes
              <br>
              checking iostream presence... yes
              <br>
              checking for iostream... yes
              <br>
              checking for flex... flex
              <br>
              checking lex output file root... lex.yy
              <br>
              checking lex library... none needed
              <br>
              checking whether yytext is a pointer... no
              <br>
              checking for sed... yes
              <br>
              checking whether C++ compiler is 64-bit enabled... yes
              <br>
              checking for svnversion... yes
              <br>
              configure: creating ./config.status
              <br>
              config.status: creating GNUmakefile
              <br>
              config.status: creating admb_configure.h
              <br>
              config.status: creating scripts/bash/admb-bin
              <br>
              <br>
              Configure completed for admb10.0Beta-linux-gcc4.4.3-64bit
              <br>
              To build ADMB, type 'make'
              <br>
              <a class="moz-txt-link-abbreviated" href="mailto:bolker@ubuntu-10:/usr/local/src/admb-10.0Beta$">bolker@ubuntu-10:/usr/local/src/admb-10.0Beta$</a>
              <a class="moz-txt-link-rfc2396E" href="mailto:bolker@ubuntu-10:/usr/local/src/admb-10.0Beta$"><mailto:bolker@ubuntu-10:/usr/local/src/admb-10.0Beta$></a>
              sudo make
              <br>
              CXX=g++ CXXFLAGS="-m64"
              <br>
              LIBPATH=../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects
              <br>
              DISK=../build/admb10.0Beta-linux-gcc4.4.3-64bit/dist
              ADMB_CONFIGURE=1
              <br>
              make --directory=src --file=linux.mak
              <br>
              make[1]: Entering directory
              `/usr/local/src/admb-10.0Beta/src'
              <br>
              rm -rf ../build/admb10.0Beta-linux-gcc4.4.3-64bit/dist
              <br>
              mkdir -p
              <br>
              ../build/admb10.0Beta-linux-gcc4.4.3-64bit/dist/{bin,lib,include,docs,docs/manuals,examples}
              <br>
              mkdir -p
              ../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects/linad99-olp
              <br>
              mkdir -p
              ../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects/linad99-slp
              <br>
              mkdir -p
              ../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects/nh99-olp
              <br>
              mkdir -p
              ../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects/nh99-olp-stub
              <br>
              mkdir -p
              ../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects/tools99-olp
              <br>
              mkdir -p
              <br>
../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects/df1b2-separable-slp
              <br>
              mkdir -p
              <br>
../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects/df1b2-separable-olp
              <br>
              make --directory=df1b2-separable CC=gcc CXXFLAGS="-c -m64
              -Wall
              <br>
              -Wno-deprecated -DUSE_LAPLACE -fpermissive
              -I../df1b2-separable
              <br>
              -I../nh99 -I../linad99 -I../tools99 -D__SPDLL__
              -D__GNUDOS__ -Dlinux
              <br>
              -DOPT_LIB"
              <br>
              LIBPATH=../../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects/df1b2-separable-olp
              <br>
              DISKDIR=../../build/admb10.0Beta-linux-gcc4.4.3-64bit/dist
              -f
              <br>
              optg32-rh8-laplace.mak disk
              <br>
              make[2]: Entering directory
              <br>
              `/usr/local/src/admb-10.0Beta/src/df1b2-separable'
              <br>
              g++ -c -m64 -Wall -Wno-deprecated -DUSE_LAPLACE
              -fpermissive
              <br>
              -I../df1b2-separable -I../nh99 -I../linad99 -I../tools99
              -D__SPDLL__
              <br>
              -D__GNUDOS__ -Dlinux -DOPT_LIB  df1b2impspf.cpp -o
              <br>
              ../../build/admb10.0Beta-linux-gcc4.4.3-64bit/objects/df1b2-separable-olp/df1b2impspf.obj
              <br>
              In file included from /usr/include/features.h:378,
              <br>
                                from /usr/include/unistd.h:26,
              <br>
                                from ../linad99/fvar.hpp:173,
              <br>
                                from ../nh99/admodel.h:69,
              <br>
                                from df1b2impspf.cpp:8:
              <br>
              /usr/include/gnu/stubs.h:9:27: error: gnu/stubs-64.h: No
              such file or
              <br>
              directory
              <br>
              df1b2impspf.cpp: In function ‘double
              <br>
              calculate_importance_sample_shess(const dvector&,
              const dvector&, const
              <br>
              dmatrix&, const dvector&, const dvector&,
              const dmatrix&,
              <br>
              function_minimizer*)’:
              <br>
              df1b2impspf.cpp:20: warning: unused variable ‘Hessadjoint’
              <br>
              df1b2impspf.cpp:44: warning: unused variable ‘onvar’
              <br>
              df1b2impspf.cpp:49: warning: unused variable ‘j’
              <br>
              make[2]: *** [df1b2impspf.obj] Error 1
              <br>
              make[2]: Leaving directory
              <br>
              `/usr/local/src/admb-10.0Beta/src/df1b2-separable'
              <br>
              make[1]: *** [dist] Error 2
              <br>
              make[1]: Leaving directory
              `/usr/local/src/admb-10.0Beta/src'
              <br>
              make: *** [all] Error 2
              <br>
              _______________________________________________
              <br>
              Developers mailing list
              <br>
              <a class="moz-txt-link-abbreviated" href="mailto:Developers@admb-project.org">Developers@admb-project.org</a>
              <a class="moz-txt-link-rfc2396E" href="mailto:Developers@admb-project.org"><mailto:Developers@admb-project.org></a>
              <br>
              <a class="moz-txt-link-freetext" href="http://lists.admb-project.org/mailman/listinfo/developers">http://lists.admb-project.org/mailman/listinfo/developers</a>
              <br>
            </blockquote>
            <br>
            _______________________________________________
            <br>
            Developers mailing list
            <br>
            <a class="moz-txt-link-abbreviated" href="mailto:Developers@admb-project.org">Developers@admb-project.org</a>
            <a class="moz-txt-link-rfc2396E" href="mailto:Developers@admb-project.org"><mailto:Developers@admb-project.org></a>
            <br>
            <a class="moz-txt-link-freetext" href="http://lists.admb-project.org/mailman/listinfo/developers">http://lists.admb-project.org/mailman/listinfo/developers</a>
            <br>
          </blockquote>
------------------------------------------------------------------------
          <br>
          <br>
          _______________________________________________
          <br>
          Developers mailing list
          <br>
          <a class="moz-txt-link-abbreviated" href="mailto:Developers@admb-project.org">Developers@admb-project.org</a>
          <br>
          <a class="moz-txt-link-freetext" href="http://lists.admb-project.org/mailman/listinfo/developers">http://lists.admb-project.org/mailman/listinfo/developers</a>
          <br>
        </blockquote>
        <br>
      </blockquote>
      <br>
    </blockquote>
  </body>
</html>