Delphi-PRAXiS
Seite 4 von 6   « Erste     234 56      

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)

Marphy 3. Jun 2005 12:52

Re: Effiziente Kompressionsverfahren
 
Hallo zusammen,
danke für die rege Beteiligung... Hätte ich nicht erwartet :-D

Zitat:

Ü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.
Und es ist auch nicht fair, meinen "Daten-Erstellungs-Algorithmus" so "runterzumachen" :evil: :wink:
So zufällig sind die Daten ja eben gar nicht, was man auch an der Kompressionsrate sehen kann/konnte.

Zitat:

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.
Danke! Hmm, also habe ich nur die falsche Funktion aufgerufen (knapp daneben ist auch vorbei)...

Zitat:

Hab dann noch bzlib2 eingefügt.
Danke ebenfalls. Woher der Source?

Mal sehen, vielleicht werde ich bei Gelegenheit auch noch 7Zip "verbauen"... Werd mich mal im Inno Setup Source schlau machen... :mrgreen:

Grüße, Marco

Marphy 3. Jun 2005 12:56

Re: Effiziente Kompressionsverfahren
 
Ich bins nochmal...

Hat vielleicht jemand eine Idee, was bei JCALG1 schief läuft? Hat ja die beste Kompression, aber für einen hochoptimierten ASM-Algorithmus sieht das performancemäßig ja nicht gerade aus:
Über fünf Sekunden braucht das Ding für 51% Kompression bei mir :gruebel:

Gruß, Marco

Marphy 5. Jun 2005 18:07

Re: Effiziente Kompressionsverfahren
 
No ideas? :hi:

alzaimar 6. Jun 2005 08:17

Re: Effiziente Kompressionsverfahren
 
DEr JCALG1 Algorithmus implementiert den LZSS-Algorithmus. Das ist (soweit ich das korrekt überflogen habe) ein LZW mit zusätzlichem 'sliding window'. Entweder wird eine Zeichenkette als eintrag im Wörterbuch (LZW) kodiert, oder als "jetz kommen X Zeichen, die auch schon an Y Zeichen vorher vorkamen" kodiert wird. Je nachdem, was kürzer ist.

Ich habe mir die Implementierung von JCALG nicht angeschaut, aber könnte mir vorstellen, das das sliding Window nicht optimal umgesetzt wird. Im Übrigen bringt der JCALG1 bei mir nicht die besten Ergebnisse. Hier ist zlib vorne. Da es zudem schnell genug ist, würde ich das benutzen. Tu ich ja auch.

Marphy 7. Jun 2005 14:00

Re: Effiziente Kompressionsverfahren
 
Hallo zusammen,

Zitat:

Zitat von alzaimar
Hier ist zlib vorne. Da es zudem schnell genug ist, würde ich das benutzen. Tu ich ja auch.

Du meinst wohl ZLibEx?!

@neogen: Du bist jetzt besonders angesprochen :tongue: Schnell ist der JCALG1 eben nicht. Mach ich was falsch?!

Grüße, Marco

alzaimar 7. Jun 2005 14:03

Re: Effiziente Kompressionsverfahren
 
Latürnich ZlibEx... Ich meinte das eher als "die Z-Lib(rary)"

Marphy 7. Jun 2005 14:36

Re: Effiziente Kompressionsverfahren
 
Hallo alzaimar,

Zitat:

Zitat von alzaimar
die Z-Lib(rary)

will dich ja nicht nerven, aber die integrierte ZLib(rary) ist alles andere als schnell... :stupid:

Gruß, Marco

alzaimar 7. Jun 2005 15:16

Re: Effiziente Kompressionsverfahren
 
Mann, hast Du mich jetzt durcheinander gebracht. Ich wusste gar nicht, das zlib bei delphi mit dabei ist...
Natürlich die ZLibex.

Marphy 7. Jun 2005 15:20

Re: Effiziente Kompressionsverfahren
 
:-D Sowas auch :nerd: :wink:

Marphy 28. Jun 2005 14:18

ComCom
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo zusammen,
endlich habe ich mal wieder etwas länger Zeit gehabt und das Projekt ziemlich umfangreich überarbeitet. Neben einigen neuen nützlichen Features habe ich auch die neueste Version von ZLibEx, 1.2.2, hinzugefügt.

Ich freue mich über euer Feedback! :thumb:

Gruß, Marco

P.S.: Falls ihr etwas im Projekt ändert und hier hochladet, setzt doch bitte die Ausgabe-Versionsnummer um eins hoch. Danke! :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:27 Uhr.
Seite 4 von 6   « Erste     234 56      

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