Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/5/84; site mordor.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!ut-sally!mordor!jdb From: jdb@mordor.UUCP (John Bruner) Newsgroups: net.works Subject: Re: assembly vs. HOL Message-ID: <1563@mordor.UUCP> Date: Thu, 25-Apr-85 19:09:50 EST Article-I.D.: mordor.1563 Posted: Thu Apr 25 19:09:50 1985 Date-Received: Sat, 27-Apr-85 03:12:38 EST References: <1220@topaz.ARPA> <511@terak.UUCP> <1440@amdahl.UUCP> Organization: S-1 Project, LLNL Lines: 19 Ackermann's function is very recursive, and the VAX calling sequence is VERY slow. The execution time is dominated by the time it takes to call the recursive function. Thus, this 750/Z80 comparison is really comparing one aspect of the architectures of the two machines, not the difference between assembly and C. (Does someone want to volunteer to rewrite Ackermann in MACRO-32?) By recoding Ackermann as a non-recursive function (in C), I was able to make my 11/750 run faster than a 4MHz Z80 :-). My non-recursive version computes ack(3,6) ten times in 15.4 seconds (user time). I am wary of using one program as a benchmark. For instance, the VAX-11/780 is faster (overall) than the PDP-11/70; however, my non-recursive Ackermann takes 7.1 seconds (user) on an 11/780 but only 6.5 seconds on an 11/70. -- John Bruner (S-1 Project, Lawrence Livermore National Laboratory) MILNET: jdb@mordor.ARPA [jdb@s1-c] (415) 422-0758 UUCP: ...!ucbvax!dual!mordor!jdb ...!decvax!decwrl!mordor!jdb