Results 1 to 13 of 13

Thread: CSC3 FINAL

  1. #1
    Member Fu Siyuan's Avatar
    Join Date
    Apr 2009
    Location
    Mountain View, CA, US
    Posts
    176
    Thanks
    10
    Thanked 17 Times in 2 Posts

    Smile CSC3 FINAL

    After so much little improvements done. I finally decided to finish this version. Now more or less I am satisfied with its performance, compared to my former works.


    About the program:

    - LZ77 (1M -- 128M dictionary) + range coder
    - Hash3+HC4 match finder + flexible parsing, some tricks added.
    - E89transform by Shelwien. A simple 3-channel Delta on RGB or 4-channel Delta on WAV, not so good, but better than nothing. They are turned on automaticly by file extension or manually.

    - Three mode: -m1..-m3 from fast to high compression.
    - typical speed: 2-5 M/s compression 15-40 M/s decompression (Single Core on 2.+ GHZ CPU)

    Usage: csc3 [options] file1 file2
    Options:
    -m1 Fast -m2 Efficient -m3 Strong
    -d0 .. -d7 Dictionary Size:1M..128M (2^n)
    -fe Exe filter, -fd# delta with #channels, -fo Turn Off the filter.
    This parameter is recommended when compressing unknown extensions.
    -t DO NOT OUTPUT ( Maybe for test ).
    file2 isn't necessary in such situation.
    Default: -m2 -d4 (16M) Auto filter by extension.

    example: csc3 -m2 -d5 -fe e:\d\t\tar2 r:\out.csc


    Special thanks:
    Osman , Shelwien who are very patient to me and give me many experiences
    which can not be obtained on books. 8 months ago I knew nothing about DC.
    And Bulat who is the most experienced LZ-developer on the forum also gave me some practical advices.
    nanoflooder helped me made some tests.

    The code:
    Though the code was completely done by myself (except e89). Little idea was original invented. I think it's better to post the source. It's programmed under visucal c++ 2008 express edition.
    The code may looks very ugly .


    I still have so much to improve. Filters&detection BinaryTreeMF OptimalParsing are the main for me. The programming have began, however there is still long distance to become practical.

    This version is hoped to be final, but I can't guarantee no bug even many tests done on my own computer. So If you found bugs, tell me as soon as possible please. Hope it will work on squeezechart's wikipedia.

    Replys and advices always be welcome!
    Attached Files Attached Files
    Last edited by Fu Siyuan; 11th August 2009 at 19:34.

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

    Help please !

    Intel COre duo 2 E6600
    Am trying him/it for MOC but doesn't work in all settings! The program cannot be launched!
    My test results
    C:\>CSC3
    Impossibile eseguire il programma specificato.

    C:\>CSC3 -m1 c:\test\fp.log
    Impossibile eseguire il programma specificato.

    C:\>CSC3 -m1 c:\test\fp.log t.a
    Impossibile eseguire il programma specificato.

    C:\>CSC3 -m1 c:\test\fp.log c:\t.a
    Impossibile eseguire il programma specificato.

    C:\>CSC3 -m1 -fe c:\test\fp.log c:\t.a
    Impossibile eseguire il programma specificato.

    C:\>CSC3 -m1 -d1 -fe c:\test\fp.log c:\t.a
    Impossibile eseguire il programma specificato.

  3. #3
    Member Fu Siyuan's Avatar
    Join Date
    Apr 2009
    Location
    Mountain View, CA, US
    Posts
    176
    Thanks
    10
    Thanked 17 Times in 2 Posts

    Wink

    Quote Originally Posted by Nania Francesco View Post
    Intel COre duo 2 E6600
    Am trying him/it for MOC but doesn't work in all settings! The program cannot be launched!
    My test results
    C:\>CSC3
    Impossibile eseguire il programma specificato.
    ...
    .
    Sry. Though I don't know what does "Impossibile eseguire il programma specificato." mean. I guess it is the compile problem. May be you lack of some runtime library. I uploaded a new compiled file. This should be works!

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

    CSC3 work good !

    CSC3 tested and added in the next release of MOC single File compressor ! No errors !

  5. #5
    Member Fu Siyuan's Avatar
    Join Date
    Apr 2009
    Location
    Mountain View, CA, US
    Posts
    176
    Thanks
    10
    Thanked 17 Times in 2 Posts

    Smile

    Thanks Nania! I'm looking forward to the results.

  6. #6
    Expert
    Matt Mahoney's Avatar
    Join Date
    May 2008
    Location
    Melbourne, Florida, USA
    Posts
    3,255
    Thanks
    306
    Thanked 778 Times in 485 Posts

  7. #7
    Member Fu Siyuan's Avatar
    Join Date
    Apr 2009
    Location
    Mountain View, CA, US
    Posts
    176
    Thanks
    10
    Thanked 17 Times in 2 Posts

    Wink

    Thanks Matt! But CSC is the real program name. 2 or 3 are the versions. So if csc4 comes out, it should be merged with csc3 csc2.

  8. #8
    Expert
    Matt Mahoney's Avatar
    Join Date
    May 2008
    Location
    Melbourne, Florida, USA
    Posts
    3,255
    Thanks
    306
    Thanked 778 Times in 485 Posts
    Thanks for the explanation. I combined csc2 and csc3 results into one entry in LTCB. Also, both versions are listed in the generic test. http://mattmahoney.net/dc/uiq/

  9. #9
    Moderator

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

    Thumbs up

    Quote Originally Posted by Fu Siyuan View Post
    After so much little improvements done. I finally decided to finish this version. Now more or less I am satisfied with its performance, compared to my former works.


    About the program:

    - LZ77 (1M -- 128M dictionary) + range coder
    - Hash3+HC4 match finder + flexible parsing, some tricks added.
    - E89transform by Shelwien. A simple 3-channel Delta on RGB or 4-channel Delta on WAV, not so good, but better than nothing. They are turned on automaticly by file extension or manually.

    - Three mode: -m1..-m3 from fast to high compression.
    - typical speed: 2-5 M/s compression 15-40 M/s decompression (Single Core on 2.+ GHZ CPU)

    Usage: csc3 [options] file1 file2
    Options:
    -m1 Fast -m2 Efficient -m3 Strong
    -d0 .. -d7 Dictionary Size:1M..128M (2^n)
    -fe Exe filter, -fd# delta with #channels, -fo Turn Off the filter.
    This parameter is recommended when compressing unknown extensions.
    -t DO NOT OUTPUT ( Maybe for test ).
    file2 isn't necessary in such situation.
    Default: -m2 -d4 (16M) Auto filter by extension.

    example: csc3 -m2 -d5 -fe e:\d\t\tar2 r:\out.csc


    Special thanks:
    Osman , Shelwien who are very patient to me and give me many experiences
    which can not be obtained on books. 8 months ago I knew nothing about DC.
    And Bulat who is the most experienced LZ-developer on the forum also gave me some practical advices.
    nanoflooder helped me made some tests.

    The code:
    Though the code was completely done by myself (except e89). Little idea was original invented. I think it's better to post the source. It's programmed under visucal c++ 2008 express edition.
    The code may looks very ugly .


    I still have so much to improve. Filters&detection BinaryTreeMF OptimalParsing are the main for me. The programming have began, however there is still long distance to become practical.

    This version is hoped to be final, but I can't guarantee no bug even many tests done on my own computer. So If you found bugs, tell me as soon as possible please. Hope it will work on squeezechart's wikipedia.

    Replys and advices always be welcome!
    Thanks! Both compiles work perfectly on my PC's.

  10. #10
    Moderator

    Join Date
    May 2008
    Location
    Tristan da Cunha
    Posts
    2,034
    Thanks
    0
    Thanked 4 Times in 4 Posts
    I have no idea why, but compiling with GCC seems to have resulted in a slower executable with better compression. I have altered the source code slightly to stop compiler warnings, and to remove the message about using -h to view the help text.
    Attached Files Attached Files

  11. #11
    Member Fu Siyuan's Avatar
    Join Date
    Apr 2009
    Location
    Mountain View, CA, US
    Posts
    176
    Thanks
    10
    Thanked 17 Times in 2 Posts

    Question

    Quote Originally Posted by LovePimple View Post
    I have no idea why, but compiling with GCC seems to have resulted in a slower executable with better compression. I have altered the source code slightly to stop compiler warnings, and to remove the message about using -h to view the help text.
    Thanks, LP

    however

    31825244 vs 31824715 on enwik8 with same parameters...

    Why the same code occur different result? So strange for me!

  12. #12
    Programmer Bulat Ziganshin's Avatar
    Join Date
    Mar 2007
    Location
    Uzbekistan
    Posts
    4,497
    Thanks
    733
    Thanked 659 Times in 354 Posts
    Quote Originally Posted by Fu Siyuan View Post
    Why the same code occur different result? So strange for me!
    unitialized vars?

  13. #13
    Member Fu Siyuan's Avatar
    Join Date
    Apr 2009
    Location
    Mountain View, CA, US
    Posts
    176
    Thanks
    10
    Thanked 17 Times in 2 Posts
    Quote Originally Posted by Bulat Ziganshin View Post
    unitialized vars?
    Maybe. Shelwien said so too.

Similar Threads

  1. CSC3.2 is on developing
    By Fu Siyuan in forum Data Compression
    Replies: 19
    Last Post: 25th May 2013, 21:52
  2. PIM v2.90 (Final) is here!
    By encode in forum Data Compression
    Replies: 4
    Last Post: 2nd January 2009, 21:42
  3. PIM v2.50 - FINAL
    By encode in forum Data Compression
    Replies: 7
    Last Post: 14th July 2008, 20:14
  4. BALZ v1.13 [FINAL] is here!
    By encode in forum Data Compression
    Replies: 15
    Last Post: 30th June 2008, 22:00
  5. WinRar v3.70 final released!
    By LovePimple in forum Forum Archive
    Replies: 2
    Last Post: 1st June 2007, 18:44

Tags for this Thread

Posting Permissions

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