Delphi-PRAXiS
Seite 3 von 6     123 45     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Effiziente Kompressionsverfahren (https://www.delphipraxis.net/46674-effiziente-kompressionsverfahren.html)

Dax 30. Mai 2005 16:25

Re: Effiziente Kompressionsverfahren
 
Danke, ich sehs mir mal an :)

BtW: Ich habe den Huffman nicht implementiert, das war ein anderes fähiges angemeldetes Wesen ;)

read you,
Dax

neogen 30. Mai 2005 16:45

Re: Effiziente Kompressionsverfahren
 
Ich sehe grad, dass es um schnelle compression geht :) Also ich koennte hier noch

http://www.bitsum.com/jcalg1.htm

empfehlen, der macht sich gut und ist open source. und auch noch klein.

Folgendes wird erfuellt
  • möglichst schnell - er ist schnell!
  • hohe Abwärtskompatiblität (das Verfahren sollte auch noch unter einem 486-Prozessor, 16 MB RAM und Windows 95 laufen können) - weiss ich aber nicht genau, aber ist open source und in assembler
  • möglichst geringer Ressourcenbedarf - das macht er!
  • im Code möglichst kompakt - das ist er wirklich!
die kompressionsrate geht so, aber wenns schnell sein muss ist der hier gut :D

ich nutze den oefter fuer kleinere datenbanken und aehnliches, die in einen eigen format gespeichert werden.

cheers, neogen :)

PS: download http://www.bitsum.com/files/jcalg1_r534.zip

Marphy 2. Jun 2005 14:55

Re: Effiziente Kompressionsverfahren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen!
Ich habe ein kleines Testprojekt zum Vergleichen der vielen vorgeschlagenen Kompressionsverfahren geschrieben (siehe Anhang).

Zwei Probleme:
  • von alzirmar vorgeschlagenes, "sauschnelles" Verfahren funktioniert mit größeren Datenmengen nicht... Hab ich die Funktion falsch aufgerufen?
  • JCALG1 (vorgeschlagen von neogen) läuft nur äußerst langsam.... Da ich Jordan Russells Interface-Unit aufgrund von der fehlenden OBJ-Datei nicht zum Laufen bringen konnte, habe ich diese einfach selbst geschrieben. Was hier schiefgelaufen ist, weiß ich jedoch nicht.
Hoffentlich wisst ihr weiter... :gruebel:

Gruß, Marco

alzaimar 2. Jun 2005 17:10

Re: Effiziente Kompressionsverfahren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Das von mir vorgeschlagene Verfahren funktioniert nur in Chunks à 32k (oder 64?). Schau einfach in den Code, dann siehst Du die Words. Wenn Du deine Daten so aufteilst, dann klappt das. Dann ist der Output eben immer ein Tupel (Länge, DATA) und nicht ein einziger Stream.

Übrigens ist es nicht 'fair' ein Kompressionsverfahren auf Zufallsdaten anzuwenden. Ein perfekter Zufallszahlengenerator zeichnet sich ja gerade dadurch aus, das er keine Redundanz erzeugt. Es wird sogar gemunkelt, das das Ergebnis einer Kompression (also der bytestrom) als sehr perfekter Randomgenerator taugt.

Viele Kompressionsverfahren, die in der freien Wildbahn recht schnell sind, beissen sich performancemässig an Zufallszahlen die Zähne aus. Nimm doch lieber Sourcecode oder irgendwelche EXE-files.

Ich habe dein testprogramm ein wenig modifiziert, damit 'mein' Kompressor auch zum Zug kommen kann und siehe da: Er versagt bei random-dateien und liegt ansonsten zwischen Huffman und zlib.

Ich habe einfach die EXE als Input genommen.

Dust Signs 2. Jun 2005 17:32

Re: Effiziente Kompressionsverfahren
 
@alzaimar: Könntest du uU eine EXE hochladen? Hab grade kein Delphi da und würde mir das gerne mal ansehen

Vielen Dank
Dust Signs

Vjay 2. Jun 2005 20:33

Re: Effiziente Kompressionsverfahren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Es wäre zuckersüß einen Beitrag einzugeben, nur um auf den Attachment hinzufügen-Button drücken zu dürfen?... seltsam

alzaimar 2. Jun 2005 20:48

Re: Effiziente Kompressionsverfahren
 
Liste der Anhänge anzeigen (Anzahl: 1)
@Vjay: PrecTimer war im vorherigen Attachment drin und bei mir aus Gründen, die meinem Nick zu entnehmen sind, nicht. Unabhängig davon verstehe ich deine Zeilen nicht, aber der Sinn wird über die PNG klar.

@Dust Signs & Rest: Exe im Anhang

Dust Signs 2. Jun 2005 21:01

Re: Effiziente Kompressionsverfahren
 
Zitat:

Zitat von alzaimar
@Dust Signs & Rest: Exe im Anhang

Da fehlt eine DLL...

Dust Signs

alzaimar 2. Jun 2005 21:05

Re: Effiziente Kompressionsverfahren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Du wolltest nur die EXE, von DLL war keine Rede. Gibts nur gegen Aufpreis. Und überhaupt, sei nich so pingelig, is ja furchbar :mrgreen:

Vjay 3. Jun 2005 10:03

Re: Effiziente Kompressionsverfahren
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hab dann noch bzlib2 eingefügt.

Zitat:

davon verstehe ich deine Zeilen nicht
Diese Fehlermeldung kommt vom Board wenn du versuchst ein Attachment hochzuladen ohne vorher Text eingegeben zu haben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:30 Uhr.
Seite 3 von 6     123 45     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz