Hi Shane,
I am wondering if you are using large memory support in linux (since you
got 2GB)? I am asking, because on my system I experienced the following
strange behavior:
Compiling a whole package, which is fairly big the compile time varies
strongly between the setup of using large memory support and when not
using it. As soon as I use large memory support the compile times grows
by a factor between 2 and 3, I never did a profiling, what exactly
causes the slow down, it just seems obvious that the large memory
support causes a massive slowdown (certainly on memory access). I wonder
if you are basically having the same problem. Maybe, after collecting
some profiling data, you might come to the conclusion that memory access
takes a lot of time, maybe you could check against a kernel without
large memory support.
I might be completely wrong, but it came across my mind, since you got 2
GB of RAM and might have large memory support enabled.
Regards
-Sven
Shane R wrote:
Hi,
I hope this is the appropriate forum. Please direct me to the correct
one if it is not.
I am trying to optimize a c++ application that I ported from a windows
system to Linux.
The app is a terminal based application that does some one time file
io at the start then runs completely in memory. After the one time io
the app runs successive timed epochs on the same data in Windows as
Linux. The app is a program that runs some code for doing non-linear
optmization (math stuff).
The reason why I am posting is that I timed the time it takes for the
application to complete an epoch. It take twice as long in Linux as
windows?!?!
My system is an Intel Centrino Duo with 2gigs of ram. The application
is only using a fraction of available memory in windows and linux. The
application is single-threaded in both.
I am using Visual Studio 2003 in Windows and when I type gcc -v I get:
Target: i486-linux-gnu
Configured with: ../src/configure -v
--enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr
--enable-shared --with-system-zlib --libexecdir=/usr/lib
--without-included-gettext --enable-threads=posix --enable-nls
--program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu
--enable-libstdcxx-debug --enable-mpfr --enable-checking=release
i486-linux-gnu
Thread model: posix
gcc version 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5)