Page 1 of 4 123 ... LastLast
Results 1 to 30 of 116

Thread: RINGS Fast Bit Compressor.

  1. #1
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    RINGS V.01

    Copyright ® 2007 by Nania Francesco Antonio (Italy).
    All rights reserved
    Max 16 MB of memory.
    link:
    http://www.winturtle.netsons.org/

  2. #2
    Member
    Join Date
    Sep 2007
    Posts
    2
    Thanks
    0
    Thanked 0 Times in 0 Posts
    i tried create archive on vista but gave permissions denied error.
    My test data have subfolders

  3. #3
    Moderator

    Join Date
    May 2008
    Location
    Tristan da Cunha
    Posts
    2,034
    Thanks
    0
    Thanked 4 Times in 4 Posts
    Thanks Francesco!

  4. #4
    Member
    Join Date
    Sep 2007
    Posts
    2
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Oke i tried with single file

    e_sound.afs 370 MB (388,313,088 bytes)

    compressed size

    e_sound.afs 792 KB (812,009 bytes)



    new one

    compressing...
    Default
    0_sound.afs 569624576 to 0_sound.rings 7049339 in 13.92 s. Speed: 39959KB/s.

    very nice ratio

  5. #5
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    Intel Core 2 duo 6600 2GB/RAM
    My test:
    world95.txt 840567 in 0.30 s. Speed: 9859KB/s.
    fp.log 1111553 in 0.33 s. Speed: 61383KB/s.
    rafale.bmp 1333206 in 0.45 s. Speed: 8945KB/s.
    ohs.doc 887924 in 0.28 s. Speed: 14485KB/s.
    vcfiu.hlp 865938 in 0.31 s. Speed: 12900KB/s.
    a10.jpg 819169 in 0.13 s. Speed: 6581KB/s.
    flashmx.pdf 3863261 in 0.70 s. Speed: 6288KB/s.
    acrord32.exe 1686718 in 0.44 s. Speed: 8650KB/s.
    mso97.dll 2112343 in 0.53 s. Speed: 6956KB/s.
    english.dic 949556 in 0.31 s. Speed: 12731KB/s.

    total= 14.470.315

    DSCN3974.jpg 1075235 in 0.13 s. Speed: 8704KB/s.
    DSCN4465.JPG 671692 in 0.08 s. Speed: 8700KB/s.
    DSCN5081.JPG 495724 in 0.06 s. Speed: 8138KB/s.

    UCLC Lossless audio test 37.585.593 time 6.54 s.

  6. #6
    Moderator

    Join Date
    May 2008
    Location
    Tristan da Cunha
    Posts
    2,034
    Thanks
    0
    Thanked 4 Times in 4 Posts
    My quick test with ENWIK8...

    Test machine: AMD Sempron 2400+, Windows XP SP2

    RINGS 0.1

    enwik8 100000000 to enwik8.rings 35693969 in 55.41 s. Speed: 1762KB/s.


    THOR 0.96a e5

    FILES: 1
    SIZE: 100000000 bytes
    COMPRESSED: 35696032 bytes
    RATIO: 35.70% 2.856 bpB
    TIME: 19sec 719msec
    SPEED: 4.84 MB/sec


    THOR 0.96a e1

    FILES: 1
    SIZE: 100000000 bytes
    COMPRESSED: 54915456 bytes
    RATIO: 54.92% 4.393 bpB
    TIME: 2sec 234msec
    SPEED: 42.69 MB/sec

  7. #7
    Programmer toffer's Avatar
    Join Date
    May 2008
    Location
    Erfurt, Germany
    Posts
    587
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Hey! What algorithm do you use? I think a discussion like this would be interesting

    Greets
    M1, CMM and other resources - http://sites.google.com/site/toffer86/ or toffer.tk

  8. #8
    Moderator

    Join Date
    May 2008
    Location
    Tristan da Cunha
    Posts
    2,034
    Thanks
    0
    Thanked 4 Times in 4 Posts
    My guess would be LZ77?

  9. #9
    Programmer toffer's Avatar
    Join Date
    May 2008
    Location
    Erfurt, Germany
    Posts
    587
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Ok, viewed from the speed side, but why "bit compressor"?
    (hey, i won't accept an answer like a byte is a group of 8 bits )
    M1, CMM and other resources - http://sites.google.com/site/toffer86/ or toffer.tk

  10. #10
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    The algorithm from me used uses my usual filter lzp that can already see the Hook! Nevertheless to try to save memory in to compress the bit have created a based system on I use him/it of HASH that allows me to find an optimal context in which to compress the single bit! be an arithmetic compressor as Hook, Winturtle, Paq etc.! I think that can improve at least I hope!

  11. #11
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    For toffer!
    - Turtle is arithmetic compressor based to bytes context!
    - With Rings have wanted to move the context in the combination of the bit separating him/it in 8 channels!

  12. #12
    Programmer toffer's Avatar
    Join Date
    May 2008
    Location
    Erfurt, Germany
    Posts
    587
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Sorry, i didn't understand the second sentence.

    You mean that you select a context (which should provide a match) and encode a match as a single bit?
    M1, CMM and other resources - http://sites.google.com/site/toffer86/ or toffer.tk

  13. #13
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    I intend to say that the single Byte that don't succeed in compressing with the preprocessor LZP instead of for instance compressing him/it in a formed context from the two Byteses precenti I compress him/it in a base to 8 based separate contexts on the sequence of the bit!
    Example:
    00100100_10001101_0101000100010100101011010
    Normal context 2 bytes old
    00100100_10001101_................................ ...................
    Rings context 16 bits old in 8 channels:
    for bit 0 - 01....
    bit 1 - 00...
    but 2 - 10...
    ..
    ..
    for bit 7 -01
    etc...

  14. #14
    Programmer toffer's Avatar
    Join Date
    May 2008
    Location
    Erfurt, Germany
    Posts
    587
    Thanks
    0
    Thanked 0 Times in 0 Posts
    I still didn't understood properly.

    Bit k of the first uncompressed byte is coded in a context built from the k-th bits of the previous bytes?

    char* pos // current position

    the numbers below name the bit indices

    pos[-2]_____pos[-1]___pos[1] next byte
    76543210_76543210__76543210
    ^b________^a________^ code msb first -> bit = pos[1]&0x80

    code "bit" in a context built from "b" and "a": (pos[-2]&1)<<1|(pos[-1]&1) ...

    I can't see how this would improve compression, since it lacks the "natural" relationship of the coded data, which is byte oriented (and modelling makes sense on byte boundaries, this can however be "emulated" using binary contexts aligend at byte boundaries, like a lot of contextmixers do).

    Greets
    M1, CMM and other resources - http://sites.google.com/site/toffer86/ or toffer.tk

  15. #15
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    Rings preudo code:

    void Hash(int bit)
    {
    state[channel]=Hash -> y;
    }

    update probability ()
    {
    probability = context[position bit][state[channel]] [bit]
    Hash(y);
    }

  16. #16
    Expert
    Matt Mahoney's Avatar
    Join Date
    May 2008
    Location
    Melbourne, Florida, USA
    Posts
    3,255
    Thanks
    306
    Thanked 779 Times in 486 Posts
    You mean it uses LZP and codes literals using an order-2 model with arithmetic coding?

  17. #17
    Programmer toffer's Avatar
    Join Date
    May 2008
    Location
    Erfurt, Germany
    Posts
    587
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Ok, i think i got it now, context[<bit position:0..7>][<some hash>][<bit to be coded>]. channel ranges from 0 to 7, so you represent a byte as 8 (seperate?) bit channels?

    If I'm wrong, i'll give up
    M1, CMM and other resources - http://sites.google.com/site/toffer86/ or toffer.tk

  18. #18
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    For Matt and toffer:
    Yes! use LZP preprocessor whit hash (max order 5) !
    use order indefinited of bits stored to 16 bit (hash calculated)->state[channel] is short!
    code:
    unsigned short channel[8][65536][2];
    unsigned short state[16];
    guide:
    1 channel and 1 bit state for jpeg, mpeg ect;
    1 channel and 8 bits state for txt, bmp etc;
    x channel and 8 bits state for wave,aiff;

  19. #19
    Programmer toffer's Avatar
    Join Date
    May 2008
    Location
    Erfurt, Germany
    Posts
    587
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Ok, now i got it! Thanks
    M1, CMM and other resources - http://sites.google.com/site/toffer86/ or toffer.tk

  20. #20
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    RINGS V0.2
    Copyright ® 2007 by Nania Francesco Antonio (Italy).

    All rights reserved.

    file compressor only for testing
    Max 16 MB of Memory.

    INSTRUCTIONS :
    To compress rings c in out
    To decompress rings d in
    FILTER for:
    -EXE
    -BMP
    -TIFF
    -PGM
    -WAVE
    link:
    http://www.winturtle.netsons.org/

  21. #21
    Moderator

    Join Date
    May 2008
    Location
    Tristan da Cunha
    Posts
    2,034
    Thanks
    0
    Thanked 4 Times in 4 Posts
    Awesome! Thanks Francesco!

    Will you also be adding more filters to HOOK?

  22. #22
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    Yes in the next release! Hi!

  23. #23
    Moderator

    Join Date
    May 2008
    Location
    Tristan da Cunha
    Posts
    2,034
    Thanks
    0
    Thanked 4 Times in 4 Posts
    Quote Originally Posted by Nania Francesco Antonio
    Yes in the next release! Hi!
    I look forward to the next release!

  24. #24
    Moderator

    Join Date
    May 2008
    Location
    Tristan da Cunha
    Posts
    2,034
    Thanks
    0
    Thanked 4 Times in 4 Posts
    Quick test...

    RINGS v0.1:

    A10.jpg > 819,169
    AcroRd32.exe > 1,686,718
    english.dic > 949,556
    FlashMX.pdf > 3,863,261
    FP.LOG > 1,111,553
    MSO97.DLL > 2,112,343
    ohs.doc > 887,924
    rafale.bmp > 1,333,206
    vcfiu.hlp > 865,938
    world95.txt > 840,567

    Total = 14,470,235 bytes

    ENWIK8 > 35,693,969 bytes


    RINGS v0.2:

    A10.jpg > 819,169
    AcroRd32.exe > 1,686,718
    english.dic > 949,556
    FlashMX.pdf > 3,863,261
    FP.LOG > 1,111,553
    MSO97.DLL > 2,112,343
    ohs.doc > 887,924
    rafale.bmp > 1,169,927
    vcfiu.hlp > 865,938
    world95.txt > 840,567

    Total = 14,306,956 bytes

    ENWIK8 > 35,693,969 bytes

    Test results here also updated to include RINGS v0.2.

  25. #25
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    RINGS V0.2
    Copyright ® 2007 by Nania Francesco Antonio (Italy). All rights reserved.
    file compressor only for testing
    Max 16 MB of Memory.
    BETTER Compression!
    link
    http://www.winturtle.netsons.org/rings.zip

  26. #26
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    I naturally correct me RINGS version 0.3!
    Merry XMAS ! Hi!

  27. #27
    Moderator

    Join Date
    May 2008
    Location
    Tristan da Cunha
    Posts
    2,034
    Thanks
    0
    Thanked 4 Times in 4 Posts
    Thanks Francesco! Merry XMAS!

  28. #28
    Tester
    Nania Francesco's Avatar
    Join Date
    May 2008
    Location
    Italy
    Posts
    1,565
    Thanks
    220
    Thanked 146 Times in 83 Posts
    RINGS 1.0 released
    - Max 50 MB of memory!
    - Pure Power!
    - New FCM (Fast Context Mixing) engine!
    Warning: Only for testing
    Copyright ® 2007 by Nania Francesco Antonio (Italy). All rights reserved.
    link:
    http://www.winturtle.netsons.org/rings.zip

  29. #29
    Member
    Join Date
    Oct 2007
    Location
    Germany, Hamburg
    Posts
    408
    Thanks
    0
    Thanked 5 Times in 5 Posts
    Sounds good, test of maximumcompression set was ok (also only ok ). But I don?t know the speed of the others (ccm, lpaq...), this was very quick.
    I will wait for your own testset.

    maximumcompression testset: 12.621.494 bytes

  30. #30
    Programmer toffer's Avatar
    Join Date
    May 2008
    Location
    Erfurt, Germany
    Posts
    587
    Thanks
    0
    Thanked 0 Times in 0 Posts
    SFC 12.6 mb? 50 mb of RAM? Reminds me of CMM1...
    M1, CMM and other resources - http://sites.google.com/site/toffer86/ or toffer.tk

Page 1 of 4 123 ... LastLast

Similar Threads

  1. another (too) fast compressor
    By Cyan in forum Data Compression
    Replies: 139
    Last Post: 6th February 2016, 21:41
  2. PACKET v.0.01 new fast compressor !
    By Nania Francesco in forum Data Compression
    Replies: 45
    Last Post: 19th June 2008, 02:44
  3. CMM fast context mixing compressor
    By toffer in forum Forum Archive
    Replies: 171
    Last Post: 24th April 2008, 14:57
  4. Tornado - fast lzari compressor
    By Bulat Ziganshin in forum Forum Archive
    Replies: 23
    Last Post: 27th July 2007, 14:26
  5. Fast PPMII+VC Compressor
    By in forum Forum Archive
    Replies: 4
    Last Post: 2nd August 2006, 20:17

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •