Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!pasteur!ucbvax!decwrl!sun!pitstop!sundc!seismo!uunet!mcvax!unido!estevax!wck353 From: wck353@estevax.UUCP (HrDr Weicker Reinhold ) Newsgroups: comp.arch Subject: FORTRAN Dhrystone for i860? Keywords: Dhrystone, benchmark, i860 Message-ID: <471@estevax.UUCP> Date: 14 Mar 89 15:19:50 GMT Organization: Siemens AG ESTE3 Erlangen, W-Germany Lines: 67 In the discussion about Intel's new chip (i860, alias N10), there has been some confusion about the Dhrystone number for this chip. John Mashey said (Article <15074@winchester.mips.COM>) that according to Intel's i860 performance document, the Dhrystones performance claims are based on a FORTRAN version of Dhrystone. "Fortran Dhrystone" sounds very strange, and first I couldn't believe it since I have never made a Fortran version of Dhrystone, nor seen one made by somebody else. However, I now have seen the Intel document "i860 (TM) Processor Performance", Release 1.0 (March 1989). The claimed numbers are: 33.3 Mhz (measured): 69_000 Dhry/sec for version 1.1, 65_000 Dhry/sec for version 2.1 (version 2.1 number scaled down by me from the 40 MHz number given by Intel) 40 MHz (scaled from 33.3 MHz): 82_900 Dhry/sec for version 1.1, 78_100 Dhry/sec for version 2.1. (Note that Dhrystone fits completely into the on-chip instruction cache.) In this paper, on page 11, they say that Dhrystone was compiled with "Green Hills Fortran 1.8.5", and on page 12: ".. developed in ADA .. Fortran and C versions are more commonly used". I still suspect that this is a misunderstanding between those doing the measurements and those writing the brochure, and that the measurements for Dhrystone actually have been performed with the C versions. However, I am not able to verify this; the i860 specialist at Intel Germany is on a bussiness trip. Anyway, in the original article about Dhrystone, I had written: "Translation into a language like Fortran would be difficult, since Fortran has no notion of a pointer type. Attempts to simulate pointer types with the language features of Fortran (say, with indexes) would, in fact, change the benchmark into a different program." Dhrystone is intended to be representative for system programs (few loops, more if's and calls), and system programs are not written in Fortran. By the way, my impression is that although many people are using Dhrystone, few read the original article (Communication of the ACM, vol. 27, no. 10, Oct. 1984, pp.1013-1030). Version 2.0 (in C) has been published, together with measurement rules, in SIGPLAN Notices, vol. 23, no. 8, Aug. 1988, pp. 49-62. Version 2.1 corrects only a few minor deficiencies of version 2.0; the execution time should be equal. I encourage everyone to use Dhrystone version 2 since it gives more realistic results than version 1. However, I know that manufacturers tend to publish whatever results make their product look better. Intel (for the i860), AMD and MIPS Co. do publish version 2 numbers; possibly others do it also by now (I often don't have the most recent "Performance Brief" brochures available). Sometimes the version 2 numbers are contained in the full material, but the impressive bar charts used for marketing presentations show the (better) version 1 numbers. The difference between the versions varies with the compiler and optimization level; I have seen differences betwen 0 and 15 %. Again, I can only cite what I wrote in the SIGPLAN Notices paper: "For serious performance evaluation, users are advised to ask for code listings and to check them carefully." Critical points for Dhrystone are separate compilation of the two modules and the rule "no procedure inlining". Can someone at Intel please help in the confusion? If really a Fortran version was used, I am certainly interested to see it and to check wether it can be considered equivalent to the C, Pascal and Ada versions. -- Reinhold P. Weicker, Siemens AG, E STE 35, PO Box 3220, D-8520 Erlangen, Germany Phone: +49-9131-720330 (Centr.Europ.Time, 8 am - 5 pm) UUCP: ...!mcvax!unido!estevax!weicker Disclaimer: Although I work for Siemens, I speak here only for myself