BRT-Primzahlengenerator V1.5
============================

Neu in V1.5: 
- Verbessertes Zeitverhalten.
- Platzsparendere Speicherung

Arbeitsweise:
- erzeugt ein Feld im Hauptspeicher, das die bisher 
  ermittelten Primzahlen aufnimmt.
- Testet neue Zahl n auf Teilbarkeit durch alle Primzahlen p
  fr die gilt: p<Quadratwurzel(n)
- fgt die neue Primzahl dem Feld hinzu
- der aktuelle Stand wird jeweils in 'primzahlen.dat' gespeichert.
- Der Algorithmus ist leider noch etwas langsam,
  hier einige Vergleichszahlen:
  Gemessen auf einem AMD Athlon 800

	000002 - 100000  ~5sek
	100001 - 200000  ~6sek
	200001 - 300000  ~6sek
	300001 - 400000  ~7sek
	400001 - 500000  ~7sek

Systemanforderung:
- standardgem 15,26 MB Speicher im Heap fr 4 Mio Primzahlen
- kann durch manuelles ndern der 'config.dat' variiert werden.
  (siehe Abschnitt: 'config.dat')

Arbeitsbereich:
- Primzahl p < 2e32
- Anzahl der Primzahlen n<4.000.000
  (kann manuell gendert werden, siehe Abschnitt: 'config.dat')

 
Troubleshooting:
 Nach gewaltsamem Abbruch des Programms, enthlt die Datei
 'primzahlen.dat' mehr Primzahlen, als in der 'config.dat'
 ausgewiesen ist. In diesem Fall, korrigiere den Eintrag
 in der 'config.dat' bitte manuell.(siehe Abschnitt: 'config.dat')


Die Dateien:
============

brtprim.exe
- Binrdatei, erzeugt mit Borland C++ Compiler V.

primzahlen.dat (Wird beim ersten Start erzeugt)
- enthlt die bisher erzeugten Primzahlen fortlaufend,
  getrennt durch Zeilenumbruch.
- wird falls vorhanden beim Programmstart importiert
  (kann bei enormer Gre einige Sekunden dauern)
- wird bei fehlender 'config.dat' automatisch neu erzeugt

config.dat (Wird beim ersten Start erzeugt)
- enthlt die bisher ermittelten Primzahlen die 2e32 nicht
  berschreiten darf.
- enthlt die Anzahl erzeugbaren Primzahlen die 2e32 nicht
  berschreiten darf.

  >>>>Form<<<<
  [Bisher erzeugte Primzahlen]
  [Anzahlbegrenzung]
  >>>>Ende<<<<


Ein Ausblick:
=============

Speicherersparnis durch Speichern von Gaps statt Primzahlen 
(Dank der Anregung von Klaus)

Geplant fr die nchste Version ist die Aufhebung der
2e32-Beschrnkung durch einsetzen eines neuen Datentyps
(Bisher 'long'). 

Bedingt durch den hohen Bestand an Daten im Hauptspeicher, 
kann es bei x86 Prozessoren zu mehrdeutigkeiten in der 
Speicheradressierung kommen, was zu Fehlern in der Berechnung
fhren kann. Dies werde ich beheben, falls es die Laufzeit nicht
wesentlich beeintrchtigt.

Die Notwendigkeit, nach einem manuellem Abbruch, die 'config.dat'
zu ndern soll abgeschafft werden.

Eine Umwandlung der 'primzahl.dat' in mehrere untereinander ver-
linkte .html Files ist geplant.

Einige Details mssen verndert werden um das Programm fr andere
Betriebssysteme zu compilieren. Das plane ich zumindest fr Linux 
bzw. Solaris Workstations.

Natrlich suche ich auch weiterhin nach alternativen Algorithmen
die das Verfahren beschleunigen knnen. Besonders in diesem Punkt
wrde ich mich ber Anregungen/Vorschlge freuen.

***********************************************************************
* 								      *
*     Bei Fragen, Anregungen, Vorschlgen, Kritiken und Bug-Reports   * 
*     schickt mir bitte eine E-Mail (karsten.breit@web.de).           *
*								      *
***********************************************************************