Well said, Mark. My opportunity to really learn about Pick performance was circa 1985 on an ADDS 1500, a PC XT clone with 256K RAM, a 10MB hard drive and a port of the ADDS Mentor Pick O/S.
We ported some code from an ADDS 4000 to it and I was shocked to see how slowly a 3-column screen of multivalued data displayed on the 1500. The code was a for-next loop to display REC<23,X> , REC<24,X> and REC<25,X>. Took about one-half second per "cell", or about half a minute per 20-line by 3-column screen! So the 1500 was slow enough to make the internal workings of Pick (and Unidata today) visible to the user: (1) the data was deep enough in the record to cause a frame-fault and (2) dynamic arrays find the requested data by searching forward from the first character of the record each time they're referenced, so the record was being scanned 60 times per screenful. The solution was simple: assign each attribute to its own variable before the display loop, display the variables (e.g. PRICE<1,X> rather than REC<24,X>), and voila!, the screen became nice and fast again. Hunting down (or better yet, avoiding) performance issues on modern systems is a lot easier having seen similar behavior on older, slower machines. Have fun, Tom >>> [EMAIL PROTECTED] 10/21/06 9:43 PM >>> Keep in mind that 16MB for 32 users is 250 times the memory available circa late 1970s' with the Microdata Royale series. There's something to be said for programming on an older system that gives you respect for todays horsepower. <snip> ----------------------------------------- This e-mail and any attachments may contain CONFIDENTIAL information, including PROTECTED HEALTH INFORMATION. If you are not the intended recipient, any use or disclosure of this information is STRICTLY PROHIBITED; you are requested to delete this e-mail and any attachments, notify the sender immediately, and notify the LabCorp Privacy Officer at [EMAIL PROTECTED] or call (877) 23-HIPAA / (877) 234-4722. ------- u2-users mailing list [email protected] To unsubscribe please visit http://listserver.u2ug.org/
