Path: utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!willett!ForthNet From: ForthNet@willett.UUCP (ForthNet articles from GEnie) Newsgroups: comp.lang.forth Subject: HS/Forth Message-ID: <698.UUL1.3#5129@willett.UUCP> Date: 22 Mar 90 23:46:15 GMT Organization: Latest link in the ForthNet chain. (Pgh, PA) Lines: 40 Date: 03-21-90 (23:38) Number: 58 (Echo) To: BILL MCCARTHY Refer#: 54 From: JULIAN NOBLE Read: NO Subj: MCCARTHY'S TIMINGS Status: PUBLIC MESSAGE Dear Mr. McCarthy, I have done some further research into timings, etc. Based on clocks, I estimated the minimum time for 25,000 repeats of a=(b+c)/(c+d) to be 0.63 sec on the 16 MHz 80386/87 combo. When I hand-coded this (10-byte) precision) in assembler, I found the running time (adjusted for clock speed) on my machine to be 0.69 sec, really very close to the estimate. If Turbo Pascal and Turbo C can really come that close to the minimum machine code execution time, they have achieved something no other com- piler writer has ever claimed to be able to do. And, in fact, I doubt they have done it. I bet these compilers removed the invariant expression from the loop! (I know their optimizations include this, and it is almost impossible to turn it off. You can check it by -- say -- incrementing one of the variables by 1 each time around (or use the in- dex as a variable).) Nevertheless, you convince me that the overhead in the IFSTACK is too great for it to be used to execute the generated FORTH code. I have some ideas that ought to improve things, and will upload a modified IFSTACK file when it is ready. But finally, I really never intended FORTE to produce production code. If you want to program in FORTRAN, get a FORTRAN compiler. My intent, as stated clearly in my Computers in Physics and upcoming JFAR articles was to add formula translation to FORTH as a matter of convenience. Finally, thank you for your comments. I appreciate the feedback and bug reports. Sincerely yours, Julian V. Noble ----- This message came from GEnie via willett through a semi-automated process. Report problems to: 'uunet!willett!dwp' or 'willett!dwp@gateway.sei.cmu.edu'