Bruce Willmore wrote:
> Hi everyone:
>
> First off:
>
> jBASE version 4.1.6.20
> Operating System: HP-UX 11.13 (I believe. Going from memory on that,
> but don't think it'll prove relevant)
>
> In short, I have a subroutine that is invoked by the BlueFinity MVnet
> product. The traffic that passes through the BlueFinity product can
> easily exceed more than 1 million transactions/day. MVnet provides as
> an argument to this surbroutine a dynamic array, which my subroutine
> needs to perform repeated extracts from to get the required data.
>
> That said, my question is that when considering an application under
> this type of load, is there any benefit to converting the dynamic
> array that mvNET is providing to a dimensioned array and back again
> using MATPARSE/MATBUILD, or is it best to leave it as a dynamic array?
>   

It depends on the access patterns. If you traverse the dynamic array 
from start to end or end to start, then dynamic array access will 
generally be faster (depends a little on the data the array contains). 
Use the group search to find lots of posts on this subject in the dim 
and distant past.
> I should note that the number of attributes in this dynamic array is
> currently around 50, and will be rising, as we are being called upon
> to perform ever more-complicated decisions using additional data
> points.
>   
This isn't really a large enough array to worry about unless a lot of 
the individual elements are large and/or you are using random access 
patterns and cannot change that. It will almost certainly take longer to 
do the MATPARSE/MATBUILD (as using jprof would show you).
> Or, if there is no real benefit to be gained using MATPARSE/MATBUILD,
> is there an optimal method for extracting the needed data from the
> Dynamic Array?
>   
Use the data elements in order and not in a random access pattern. If 
they are being accessed a lot in random order then first copy them into  
temporaries and use those (but be aware that as you add more local 
variables to subroutines, the creation and destruction of them on 
subroutine enter and exit will start to be expensive; use COMMON 
variables to avoid that overhead).

However also note that 1 million transactions per day, while it sounds 
like a lot is essentially nothing for a modern computer... that said, 
you have an HP system ;-) Unless what you are doing is very complicated, 
you should be able to process a million transactions in a few minutes. I 
suggest that you will get a lot more performance improvements by using 
jprof on your application code than you will by second guessing the 
access patterns like this. Concentrate on why time is spent in certain 
subroutines or on certain lines of code, file sizes and so on.

Jim

--~--~---------~--~----~------------~-------~--~----~
Please read the posting guidelines at: 
http://groups.google.com/group/jBASE/web/Posting%20Guidelines

IMPORTANT: Type T24: at the start of the subject line for questions specific to 
Globus/T24

To post, send email to [email protected]
To unsubscribe, send email to [email protected]
For more options, visit this group at http://groups.google.com/group/jBASE?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to