Hello Luis, Bruno,
10M variables / 5M Constraints is indeed a considerable model.
On 26 jan, 19:28, ck <
ChrisK...@gmail.com> wrote:
> Hi Luis,
>
> I honestly don't remember. Sorry. These runs were of the form:
> start today - look at results tomorrow or after the weekend.
> So I wasn't too concerned with the performance degradation due
> to a heavy use of page files.
>
> As far as I know, if a computer has a large paging file, yet the
> application fits completely or almost completely within the
> physical memory of the computer, the paging file is hardly used.
> If that's true, I could be mistaken, creating a large page file
> doesn't hurt your application. Maybe your IT people can verify
> or falsify this statement of mine.
>
> It's just that if you've got a valid run, you can look at the
> results in the data cardinalities dialog.
>
> Another option to obtain results in the data cardinalities dialog is
> to reduce one or two root sets to 70 % of their elements and then
> using CleanDependents before doing the actual computations.
> The results in the data cardinalities dialog are, in that case,'
> only indicative, but might be a good starting point for further
> investigation.
>
> > You stated earlier that:
> > "Bruno is right about AIMMS keeping memory in store in order to
> > be *quickly* able to reuse it later on."
> > Is there anyway to stop AIMMS from doing this? Or limiting the amount of
> > memory it can keep ready for this quick reuse?
> > I had the impression that the auto rebuild and/or garbage collector function
> > would take care of this.
>
> AIMMS 3 engine works as follows (for an assignment/Data read/Case
> read)
> A) Compute the result as a linked list for each identifier read in /
> computed'
> (Such a list contains values for the indices and the actual
> value).
> B) Do range checking, unit conversions (if applicable)
> C) Work this list into the tree that contains the data of the
> identifier(s) at hand.
> D) Reclaim this list into the memory waiting to be reused, but do not
> deallocate
> that memory to the operating system.
> In the case many values are computed / read in these lists may become
> very long. Therefore the steps A, B, C and D are done interchangebly
> (limited
> buffer size) for the assignment statement and the Case read action.
> But this
> technique has not yet been extended to Data read (from database).
> Maybe Bruno has stumbeld on this 'feature'. If so I apologize to Bruno
> for the inconvenience.
> Once these lists have been created, AIMMS can use them for other
> intermediate
> results, but not for identifier data storage or for storage of rows in
> a
> mathematical program. The multiple memory manager option can be
> switched
> off and then there some reuse possible, at the expense of loosing
> locality and
> loosing rebuild feature.
>
> I don't intend to tell you how to do your work, but Imho I think that
> the best way
> to continue is to get an overview of how much memory is used in each
> phase of
> your application (does your application have different phases?)
> In addition, which identifiers are the most expensive and how
> expensive are they?
> How much memory is used by the mathematical program and how much is
> that
> relative to the total memory used by your application?
>
> Once the above figures are available, the road for further analysis
> should become
> clear and possibly followed by a solution (or work-around if the
> problem is
> indeed in the data read as Bruno suggests). I think that this analysis
> of
> your application is by far the best option you have.
>
> The other option you have is indeed to play with the memory manager
> options.
> However, I would be surprised if the gain you can obtain in this way
> is more
> that a few percent. If you want to play with these options, I suggest
> you start
> with the option 'use multiple memory managers' and turn it 'off'. But
> on the
> other hand, it might be counter productive. Don't get your hopes up
> until you
> have any positive results. In addition, if you observe any
> improvements in
> memory usage, how did that affect the througput times?
>
> BTW I'm curious about the memory size figures you obtain.
>
> Best regards,
>
> Chris Kuip
> AIMMS Software Developer
>
> On 26 jan, 16:46, Luis Pinto <
luisf...@gmail.com> wrote:
>
>
>
> > 16GB of physical memory. We have tried to limit the use of paging files due
> > to its lower speed.
> > Are you having good results with the large paging file?
> > I belive that our server is running on Windows Server 2003 x64 (if im not
> > mistken).
>
> > Cheers,
>
> > Luis
>
> > 2009/1/26 ck <
ChrisK...@gmail.com>
> ...
>
> meer lezen »- Tekst uit oorspronkelijk bericht niet weergeven -
>
> - Tekst uit oorspronkelijk bericht weergeven -