S
makkor schrieb:
Oje, um die Bibliothek steht es schlimmer als befürchtet. iostream.h ist veraltet. So veraltet, dass der "neue" GCC es nicht mehr kennt. <iostream.h> heisst heute nur <iostream>, entferne also die Endung und es sollte gehen. nan.h gibt es nicht, das liegt (wenn überhaupt) in cmath. math.h heisst heute übrigens cmath. bool.h ist Teil der Sprache und kann ersatzlos entfernt werden.
Ich hab' zwischenzeitlich mal Keith Briggs' Homepage durchwühlt...
Keith Briggs schrieb:
doubledouble
About 1996 I developed software under this name for quad-precision floating-point arithmetic, which has been used by many people and referred to frequently in publications. I no longer support or recommend this software. Instead, I recommend QD or SCSlib.
QD sind die Quad-Double-Algorithmen von Hida, Li, Bailey...
SCSlib enthält wohl ebenfalls solche Algorithmen...
Auf Seite 10 dieser Publikation findet man ein kleines Benchmark aus dem Jahre 2002 zwischen SCSlib, GMPlib, QD und noch einer vierten Bibliothek.
QD schneidet hier recht schlecht ab... Letztendlich will ich aber noch eigene Tests durchführen, da Laufzeiten wohl mitunter auch von der Prozessorarchitektur abhängen können.
makkor schrieb:
Bei so veraltetem Code stellt sich die Frage, wie schnell der denn sein kann. Aber ich will dir die GMP nicht aufzwingen (die ist übrigens in Assembler programmiert, hat aber eine moderne Schnittstelle in C++). Stimmt schon, deine Lib dürfte schneller sein.
Wäre Assembler nicht ein Argument pro Geschwindigkeit, weil maschinennaher Code?
Das Paket oben wollte ich aber eh lediglich für ein paar Einstiegstests nutzen... Eigentlich wollte ich auf die QD-Algorithmen hinaus. Aber an und für sich würde ich natürlich ungern andere Alternativen unberücksichtigt lassen.
Neben GMP bin ich aber wie gesagt auch noch auf SCS und auf MPFR gestoßen... Da muss ich mir jetzt selbst erst einmal einen Überblick verschaffen.
Tuxi schrieb:
nur mal so als Tipp würde mich nicht unbedingt mit Makefiles herumschlagen Cmake ist sogar einfacher zu bedienen und flexiber. Besonders wenn du system Abhängigkeiten hast wie unterschiedliche gcc versionen ... etc ...
http://www.linux-magazin.de/Heft-Abo/Ausgaben/2007/02/Mal-ausspannen
Uff... die Bedienung lernt man hier aber ebenfalls nicht gerade mal eben in 10 Minuten...
Hatte mich mittlerweile noch einmal durch eure Antworten motiviert an dem ursprünglichen QD-Paket zu schaffen gemacht. Dort wird Makefile hübsch automatisch durch ./configure erzeugt - so wie es sich gehört.
Allerdings gab' es dort noch einen kleinen Bug, da nun make stets automake-1.10 ausführen wollte, während aber nur automake-1.11 installiert war...
Außerdem hatte ich laut Konsole irgendwann einmal
gcc -o runme qd_test.cpp
eingetippt, während aber
g++ -o runme qd_test.cpp -lqd
richtig gewesen wäre...
Demos, Beispiele funktionieren jetzt, und ich kann mich den wirklich wichtigen Aufgaben widmen: Tutorials, Coden, Testen. :xmas1:
Antworten waren (teilweise indirekt) sehr hilfreich, danke nochmal.