Re: Structure of large link libraries in f95
- From: Gordon Sande <g.sande@xxxxxxxxxxxxxxxx>
- Date: Thu, 30 Mar 2006 15:26:16 GMT
On 2006-03-30 10:30:04 -0400, Jan Vorbrüggen <jvorbrueggen-not@xxxxxxxxxxx> said:
Besides the simple size of the executable on disk, you may wonder
about memory space while the program is running. Again, don't worry
about it. Modern virtual memory systems only 'page in' portions of
the code, as needed, so wasting a lot of time worrying about it
is again somewhat fruitless in reality.
That doesn't jive with my reality. I spend minutes each day on a laptop
with 512 MBytes of memory waiting for the stupid Windoze paging system to
page in those bloatware applications. That's even true for Thunderbird and
Firefox, which are relatively light weight - "only" 56 MB and 7 MB, respec-
tively. Of course, the enormous sizes of those MS Office files that swamp
the file system cache contribute to this.
Jan
Is this a question of shared libraries vrs static linking?
If all the program is contained in the executable file then it would seem
that all of the program has to be brought into memory so that execution
can begin. Much of it can then be paged out and left out. A truly clever
execution loader would be able to mark some pages as not yet referenced
with the source to be the executable. One they are used they come from
the paging file.
This is one of those areas where there seems to be an excess of jargon
and shorthand that often means well intended statments are often false
with the exceptions rather narrowly defined. Technically true 2% of cases
and false othrwise leading to long threads of folks talking past each other.
I have no trouble believing that there are well designed operating systems
where a properly installed program will be paged in from its executable
file. I do have trouble believing that less well designed systems are
as well behaved for arbitrary programs that have been set up to be
completely self contained and have no prior installation required. Not
having read the fine print I do not know which are which but I cetainly
have my suspicions. I would guess that Jan's reality is rather common.
My observation is that that large Fortran arrays are not much of a problem
unless they are initialized with something like
real my_data ( 1000,1000,1000 )
data my_data / 1000000000 * 0 /
and the executable file format does not have a repeated initialization
construct.
Hopefully someone who has read the fine print and is willing to name names
will post substantive responses.
.
- Follow-Ups:
- Re: Structure of large link libraries in f95
- From: Jan Vorbrüggen
- Re: Structure of large link libraries in f95
- From: Walter Spector
- Re: Structure of large link libraries in f95
- References:
- Structure of large link libraries in f95
- From: Charles Russell
- Re: Structure of large link libraries in f95
- From: robert . corbett
- Re: Structure of large link libraries in f95
- From: Charles Russell
- Re: Structure of large link libraries in f95
- From: Walter Spector
- Re: Structure of large link libraries in f95
- From: Jan Vorbrüggen
- Structure of large link libraries in f95
- Prev by Date: Re: .mod generation question
- Next by Date: Re: Making fortran libraries
- Previous by thread: Re: Structure of large link libraries in f95
- Next by thread: Re: Structure of large link libraries in f95
- Index(es):