- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello:
Currently, we are using Compaq Visual Fortran 6.1a. We're currently in the process of getting the purchase order prepared for the purchase of Intel Visual Fortran 8.0. However, this question related to Compaq Visual Fortran 6.1a.
My question relates to the understanding of what NT is doing with memory management. In particular, I have made some modifications to a large program written in Fortran 95 and running under NT in which changes were made to make use of dynamically-allocated arrays to replace fixed-dimension arrays. The intent was to reduce the overall memory requirements of the program so that it could be coupled with other large, and memory-intensive programs. The original version dimensioned arrays to the maximum number of segments (20), but depending upon the scenario, frequently used only a single segment. Many arrays require the number of segments as one of their indices, so the potential nominal memory saving is substantial. Our intent was to dynamically size all arrays that had segment number as one of their dimensions and thus, reduce the memory.
We found that indeed the total amount of virtual memory was reduced in proportion to the number of segments needed. However, 2 unexpected things happened as well. First of all, the memory usage, as reported by the NT task manager, which I believe is the working set size, increased. Secondly, and more importantly, it seems that in spite of reduced virtual memory for the single segment case, the number of page faults increased dramatically. I would have expected that since the virtual memory was reduced, there would be less need for page faults, as fewer addresses would have been in memory swapped to disk. Here's a table showing the relationship between the number of segments and the memory use reported by NT.
(Please see attached text file for table.)
I must be missing something and wondered if you might be able to help me understand why in spite of my efforts to reduce memory, I'm seeing higher page fault rates, larger working set sizes and slower execution. Any light you can shed would be most appreciated. Thanks.
Bill
Link Copied
0 Replies
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page