Institut für Zuverlässiges Rechnen (1987-2021)
Leiter: Prof. Dr. Siegfried M. Rump

PROFIL/BIAS - Runtime Optimized Fast Interval Library

Einleitung

ACHTUNG: Dies ist die alte Version. Die aktuelle Version ist hier beschrieben.

PROFIL (Programmer's Runtime Optimized Fast Interval Library) ist eine C++-Klassenbibliothek, die die gebräuchlichen reellen und Intervalloperationen anwenderfreundlich zur Verfügung stellt. Zur Zeit werden die folgenden Datentypen unterstützt:

INT, REAL, INTERVAL, Vektoren und Matrizen über diese Typen sowie komplexe Zahlen.

Alle Intervalloperationen in PROFIL basieren auf BIAS (Basic Interval Arithmetic Subroutines). Mit BIAS wird eine einheitliche Schnittstelle für die grundlegenden Intervalloperationen von skalaren bis hin zu Matrixoperationen definiert. Die Entwicklung von BIAS wurde dabei durch die folgenden Ziele gesteuert:

Zur Zeit existiert für die Serien IBM RS/6000, Sparc-Architekturen, HP9000/700 sowie für PCs mit Koprozessor unter Unix, Linux, DOS oder OS/2 eine allgemeine, aber dennoch sehr effiziente Version von BIAS. Diese Version verwendet eine Intervalldarstellung der Form untere/obere Grenze sowie gerichtete Rundungen und wurde bis auf die Rundungsumschaltung, die als kleine Assemblerprogramme implementiert wurden, komplett in C geschrieben. Eine Anpassung an andere Architekturen beschränkt sich auf die Routinen zur Rundungsumschaltung.
Auf Anfrage ist eine Fassung von BIAS für Architekturen ohne gerichtete Rundungsumschaltung erhältlich.
Vergleiche mit anderen Intervallbibliotheken oder Programmierumgebungen zeigen eine Geschwindigkeitssteigerung von bis zu einer Größenordnung. PROFIL wird ständig weiter entwickelt.

Quelltexte

Der Quelltext für PROFIL/BIAS ist für Unix-Systeme als komprimierte tar-Datei erhältlich. Die PC-Version, die sich hauptsächlich durch gekürzte Dateinamen unterscheidet, ist ebenfalls erhältlich. Ein Erweiterungspaket, welches lineare Listen, automatische Differentiation sowie diverse Testmatrizen zur Verfügung stellt, ist für Unix-Systeme und für PCs erhältlich. Eine einfache Implementierung eines globalen Optimierungsverfahrens ist ebenfalls für Unix-Systeme und für PCs verfügbar.

Patches

Zum Anwenden der Patches folgendes im Profil Verzeichnis ausführen

patch -p1 < patchfile

Hierbei ist patchfile durch den Dateinamen des Patches zu ersetzen.
Alle patches sind in den Quelltextpaketen bereits berücksichtigt.

Dokumentation

Die Dokumentation zu PROFIL/BIAS ist entweder auf diesem Server online oder in Form von komprimierten PostScript-Dateien erhältlich:



Christian Keil
c.keil@tu-harburg.de