🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: bln.comp.lang.opal
Article #209

Re: Code Optimierung ?!

#209
From: Klaus Didrich
Date: Fri, 15 Nov 1996 00:00
82 lines
4299 bytes
In article <Pine.SUN.3.91.961115072603.3801A-100000@arvika.cs.tu-berlin.de> Henry Hoffmann <admiral@cs.tu-berlin.de> writes:


 > mich stoerte folgende Formulierung :

 > DEF quersumme == \\n. IF eqs(n)<10 THEN eqs(n) ELSE quersumme(eqs(n)) FI
			    ^^^^^^         ^^^^^^                ^^^^^^  

 > - oder noch besser :  ist OPAL gut genug die mehrfache Verwendung der 
			 gleichen Funktion mit dem gleichen Parameter im 
			 gleichen \\-Term zu erkennen und zu optimieren ?

Ebendieses. Der Opal-Compiler fuehrt so ziemlich alle
Standard-Optimierungen durch (je nach Einstellung). Dazu geh�rt auch
das Erkennen gemeinsamer Teilausdr�cke (Common Subexpression
Elimination). 

Ein Artikel, in dem mehr �ber die Optimierungen des Opal-Compilers
steht, ist dieser

http://uebb.cs.tu-berlin.de/papers/published/DesignImplOpal.html


 > ...  falls nicht optimiert wird, und nicht optimiert werden kann, bin ich 
 > eigendlich nicht bereit zu glauben, dass OPAL fast gleich "schnell" wie C 
 > ( mit evnt. In-Line-Assembler ) sein soll ?!?

Benchmarking ist immer so'ne Sache (traue keiner Statistik, die Du
nicht selbst gef�lscht hast :-). Was das "gleich schnell" betrifft:
f�r Programme mit einfachen Datentypen ist der Unterschied groesser
(10fach); sobald aber Speicherverwaltung und Strukturen mit rekursiven
Datentypen (Liste, B�ume) ist der Opal-Compiler meist ebensogut oder
besser als der durchschnittliche Programmierer.

Vor einiger Zeit gab es einen "Wettbewerb", in dem mehrere Compiler
und Interpreter untereinander und mit einem C-Programm verglichen
wurden.

@Article{         hfa+96a,
  author        = {P. H. Hartel and M. Feeley and M. Alt and L. Augustsson
                  and P. Baumann and M. Beemster and E. Chailloux and C. H.
                  Flood and W. Grieskamp and J. H. G.\ van Groningen and K.
                  Hammond and B. Hausman and M. Y. Ivory and R. E. Jones and
                  J. Kamperman and P. Lee and X. Leroy and R. D. Lins and S.
                  Loosemore and N. R\"ojemo and M. Serrano and J.-P. Talpin
                  and J. Thackray and S. Thomas and P. Walters and P. Weis
                  and P. Wentworth},
  title         = {Benchmarking Implementations of Functional Languages with
                  ``Pseudoknot'', a {Float-Intensive} Benchmark},
  journal       = {J. of Functional Programming},
  volume        = {to appear},
  year          = {1996},
  keywords      = {functional programming, benchmark, pseudoknot, Opal},
  location      = {ftp://ftp.fwi.uva.nl/pub/computer-systems/functional/reports/JFP_pseudoknotI.ps.Z}                  ,
}

Das Papier liegt auch lokal hier unter

/home/uebb/wg/text/papers/pseudoknot.ps

 > p.s. noch ne Frage : ist Opal in den math. Operationen voll auf die 
			Addition zurueckgefuehrt, oder werden die 
			Faehigkeiten der CPU 
			ausgeschoepft ? ( ich frage nur weil uns 
			Definitionen fuer die Subtraktion vorgesetzt werden 
			 ?!)

Keine Sorge, Nat, Int und Real sind sogenannte "handkodierte"
Strukturen, die direkt die Operationen von C benutzen.

MfG
	Klaus

P.S.: Followup-To: bln.comp.lang.opal, da das hier nichts mehr mit der
LV Informatik 1 zu tun hat.
--
_______________________________________________/\/\______________/\/\_
Klaus Didrich                                 _/\/\__/\/\________/\/\_
kd@cs.tu-berlin.de                            _/\/\/\/\______/\/\/\/\_
http://www.cs.tu-berlin.de/~kd                _/\/\/\/\____/\/\__/\/\_
_______________________________________________/\/\__/\/\____/\/\/\/\_
Technical Details
Message-ID: <KD.96Nov15152219@polyxena.cs.tu-berlin.de>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <Pine.SUN.3.91.961115072603.3801A-100000@arvika.cs.tu-berlin.de>

Show Full Headers
Complete Article Headers
X-Google-Language: GERMAN,ASCII
X-Google-Thread: 108421,2adbbfa013913b6d,start
X-Google-Attributes: gid108421,public
X-Google-Thread: 1056ea,664f11565938fa10
X-Google-Attributes: gid1056ea,public
From: kd@polyxena.cs.tu-berlin.de (Klaus Didrich)
Subject: Re: Code Optimierung ?!
Date: 1996/11/15
Message-ID: <KD.96Nov15152219@polyxena.cs.tu-berlin.de>
X-Deja-AN: 196746931
references: <Pine.SUN.3.91.961115072603.3801A-100000@arvika.cs.tu-berlin.de>
followup-to: bln.comp.lang.opal
content-type: text/plain; charset=iso-8859-1
organization: TU Berlin Fachbereich Informatik
mime-version: 1.0
newsgroups: bln.comp.lang.opal,bln.lv.tub.cs.informatik1