|
I'm devoted to OS/400. I build OS/400 based applications for people. My current focus is Web development. I'd like my applications to be able to compete against their Windows counterparts. But my customers are faced with a dilemma. I'll try to illustrate with an example: D theString S 50A D theShorter S 50A Inz('TEST STRING') D nbr S 10I 0 D Secs S 10I 0 D Now S Z D Then S Z C Time Then C Do 100000 nbr C Eval theString = %trim(theShorter) C EndDo C Time Now C Now Subdur Then Secs:*MS C Secs Dsply C SetOn LR C Return This simple program displays the number of milliseconds required TRIM blanks from a 50 byte string and assign the result to another string variable - 100,000 times. Let's take a look at an equivalent program, written in Visual Foxpro, and running under Windows: theString = space(50) theShorter = 'TEST STRING' theShorter = theShorter + space(50 - len(theShorter)) then = seconds() for i = 1 to 100000 theString = alltrim(theShorter) endfor now = seconds() ? now - then It takes 2095 MS to run the RPG code on my AS/400. But it only takes 365 MS to run the Foxpro code on my Laptop. The Foxpro program offers 5.74 times better performance. But Foxpro is not faster than RPG. The difference is in the computer hardware. My Laptop CPU offers a 330 Mhz clockspeed. My AS/400 offers a 200 Mhz clockspeed. That explains a small part of Foxpro's superior performance. I believe the more meaningful difference is that AS/400 CPU is not fully utilized. Alexei Pytel gave me a hint that jogged my memory. Some time ago, I read that CPU throughput was governed largely by cache - not only clockspeed. My theory is that Rochester governs CPU throughput via processor cache. A Midrange Computing chart shows that the same 200 Mhz Northstar processor offers a CPW range of between 50 and 220. Actually a 100 Mhz Apache processor offers a CPW of 210. This indicates that a lowly 100 Mhz processor is capable of running my CPU bound RPG program 3 times faster than my 200 Mhz processor. Is "64 bit RISC" meaningful? Is "silicon on wafer" meaningful? Not if you put a governor on the CPU. Or, should I say, not if you withhold processor cache? Bottom line. Web applications do large amounts of string handling. And that requires large amounts of CPU time. Why not unbridle the AS/400 CPU? Otherwise, Joe Foxpro, VB, Delphi, and C Sharp programmer is going to kill me. Nathan. +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to MIDRANGE-L@midrange.com. | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com. | To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
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.