× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I need some help in making some design decisions regarding ILE performance
issues.   Here's the situation:

I've created a small system that contains 10 files and all the normal
workwith and maintenance programs associated with each file.  I have one
module handling the screens and I/O for each file, as well as one that
directs all the traffic flow between these modules.  All of these modules
(plus a couple of utility modules) are compiled into one ILE program.  This
program and an associated service program make up the entire system.  A
large portion of the logic and grunt-repeatable code reside in procedures in
the service program.

I am from the design school of "Get it working right, then get it working
fast!".  Everything works well now, but I am concerned about the size of the
final program containing all these modules.  It is a little over 15 meg. and
the service program is over 3 meg.  It is mostly an interactive system (with
the exception of submitted reports) and will eventually have between
500-1000 users in it at the same time.  Currently, in testing, we hardly
ever have more than a half-dozen users in it at any one time.

Am I correct in my assumption that there will only be one copy of code in
memory at any one time, but many copies of the variables needed by each
user?  Should I be more concerned about streamlining the program's code size
or the size of the variables that will be in use for each user?  Or perhaps
my time would be better spent on trying to move even more functionality out
to the procedures in the service program?

My first thought was to make separate programs out of each module and break
the one big program down into many dynamic calls as we always did prior to
ILE.  But if there is only one copy kept in memory anyway, I am not sure
this would really improve anything over the one big program model.  How does
paging work on a big program like this with many calls to internal modules,
as compared to many smaller programs being called repeatedly?

Theoretical answers as well as real-world experience would be appreciated.

Nelson Smith, CDP, CCP
IBM Certified Specialist
AS400 RPG IV Programmer
(727) 431-8243
(800) 284-2006



************************************************************************************************************************************************************************************************************
This message originates from Lincare Holdings Inc. It contains information 
which maybe confidential or privileged and is intended only for the individual 
or entity named above.
It is prohibited for anyone else to disclose, copy, distribute or use the 
contents of this message.
All personal messages express views solely of the sender, which are not to be 
attributed to Lincare Holdings Inc., and may not be copied or distributed 
without this disclaimer.
If you received this message in error, please notify us immediately at 
MailAdmin@lincare.com or (800) 284-2006.
************************************************************************************************************************************************************************************************************


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.