Commit graph

  • 023dcae19a Speed up sort comparator function. Moinak Ghosh 2012-08-17 13:18:50 +0530
  • 2dadf411fa Reduce memory consumption and improve performance in dedupe Re-introduce crc64 for dedup blocks to avoid wasted memcpy-s Restructe block array to be an array of pointers allocated on demand Fix a corner case issue when splitting chunks at a dedup boundary Moinak Ghosh 2012-08-17 11:03:02 +0530
  • 55d0485d34 Improve Rabin computations using an irreducible polynomial Slight improvement to similarity computation A simple mechanism to include DEBUG mode stats Include stdint for common int types Moinak Ghosh 2012-08-15 20:13:40 +0530
  • 3150bdbed7 Implement secondary sketch based on character counts to refine similarity checksum. Proper checksum update for last block. Update comments. Moinak Ghosh 2012-08-12 13:06:49 +0530
  • 7b7007d6c5 Update version to 0.7 (0.6 was alpha). 0.7Beta Moinak Ghosh 2012-08-10 11:01:42 +0530
  • eb2ee30d0d Update Changelog for 0.6 beta. Moinak Ghosh 2012-08-10 10:57:40 +0530
  • bde917c8e9 Fix handling of compression flags in adaptive mode Fix error handling when chunk size is too small for dedupe Bump version to 0.6 Moinak Ghosh 2012-08-10 10:47:11 +0530
  • 6b6e564886 Fix initialization of adaptive modes. Moinak Ghosh 2012-08-10 10:15:20 +0530
  • f2ffcad2fd Compute and compare Mean sketch cksum to improve similarity comparison Fix optflags settings in Makefile Small optimization in zero RLE encoder to avoid scanning during lookahead Some minor fixes Moinak Ghosh 2012-08-09 23:57:24 +0530
  • 400d0bfa72 Bias fingerprint value with occurrence counts for a better sketch Fix latent bug when calling algo deinit in decompression code Reduce diff threshold for slightly greater delta encoding Limit similar buffer size difference for less wasted diffing Change zlib compression wrapper to use faster deflateReset mechanism Reduce optimization level for Dedupe code, it goes faster Moinak Ghosh 2012-08-08 22:40:58 +0530
  • a4311f2ede Fix handling of incompressible chunks. Fix handling of various dedup failures. Add NULL compression option for dedup only compression. Moinak Ghosh 2012-08-05 22:35:51 +0530
  • 927da81562 Remove unneeded checks in qsort comparator. Moinak Ghosh 2012-08-05 18:58:40 +0530
  • 2cbcb0c9e4 Fix buffer sizing for LZ4. Fix exit condition checks in LZ4 decompression wrapper. Moinak Ghosh 2012-08-04 17:55:20 +0530
  • f9215b53fb Fix buffer size calculation when decompressing LZ4, Zlib and Bzip2 compressed chunks. Slight SSE optimization in LZ4HC. Moinak Ghosh 2012-08-03 23:19:38 +0530
  • 636ab4a3d8 Update Changelog for 0.6. 0.6alpha Moinak Ghosh 2012-08-02 22:01:05 +0530
  • 2c516c009c Fix crash when algo init function returns error. Fix LZFX error handling. More updates to README. Moinak Ghosh 2012-07-31 21:07:35 +0530
  • 203008def9 Further improve LZMA compression parameters to utilize all the 14 levels. Tweak some Rabin parmeters for better reduction with zlib and Bzip2. Moinak Ghosh 2012-07-30 23:30:13 +0530
  • 7ff2cb74c4 Increase the small size slabs a bit. Move 64Bit integer hashing function to common file for use in other places. Moinak Ghosh 2012-07-29 15:02:51 +0530
  • a6f3756e68 Fix slab sizing. Moinak Ghosh 2012-07-29 00:36:20 +0530
  • 94563a7ecd Fix buffer size computation when allocating Rabin block array. Reduce memory usage of Rabin block array. Add an SSE optimization for bsdiff. Move integer hashing function to utils file. More updates to README. Moinak Ghosh 2012-07-28 23:55:24 +0530
  • f83652aa90 Update README. Moinak Ghosh 2012-07-27 22:25:44 +0530
  • bc71caffc3 Display release version in usage text. 0.5alpha Moinak Ghosh 2012-07-27 22:07:56 +0530
  • c7cc7b469c Update chunk size computation to reduce memory usage. Implement runtime bypass of custom allocator. Update README. Moinak Ghosh 2012-07-27 22:03:24 +0530
  • 9c3423530c Fix huge chunk handling in zlib compression routines. Fix Zlib error messages. Remove extra variable in Bzip2 decompress routine. Moinak Ghosh 2012-07-27 00:11:01 +0530
  • b586d30359 Fix huge buffer (>2GB) handling in Bzip2 compress routine. Moinak Ghosh 2012-07-26 21:47:33 +0530
  • 5ad944e368 Update usage text. Moinak Ghosh 2012-07-25 21:12:30 +0530
  • 296e2ab6b2 Add support for LZ4 compression including multi-pass LZ4. Add missing Read_Adjusted() declaration, was causing a crash with 2GB chunks. Fix minor cut-paste issues in comments. Moinak Ghosh 2012-07-25 21:07:36 +0530
  • 53d4311534 Make LZFX Hash size dynamic. Use smaller min rabin block when using fast compression algos. Add missing check for algo init function return value. Moinak Ghosh 2012-07-23 21:43:12 +0530
  • 8cfd54fe34 Add LZFX Compression support, a very fast lightweight compressor. Avoid a branch in the rabin loop. Moinak Ghosh 2012-07-23 00:15:08 +0530
  • 7e14909ad1 Separate initial rabin boundary detection and block splitting for performance. Also fix a rare corner case latent bug. Moinak Ghosh 2012-07-22 21:27:44 +0530
  • 962a2cae8a Compress Dedup index only if it is at least 90 bytes to avoid expansion. Some minor cleanup. Moinak Ghosh 2012-07-22 00:00:41 +0530
  • b69dcf4d55 Remove debug statements. Moinak Ghosh 2012-07-20 21:38:39 +0530
  • fd7c7e9a65 Use 4-byte ints for header values instead of 8-byte size_t. Use RLE on control data if it reduces the size. Update some comments. Use scratch space at end of data chunk, if available. Moinak Ghosh 2012-07-20 20:53:46 +0530
  • e788eb43b8 Implement Delta Encoding based on modified bsdiff. Change to more accurate Sketch value computation approach. Moinak Ghosh 2012-07-19 21:41:07 +0530
  • 1da2c40888 Use a rolling checksum based sketch value for a rabin chunk instead of a CRC64 checksum. Avoids additional table-lookup memory access. Reduce Rabin window size to avoid overflows in sketch value. No need to maintain rolling checksum in Rabin context. A few comment cleanups. Moinak Ghosh 2012-07-13 22:06:55 +0530
  • 0091a0da02 Remove debug messages. Fix last segment detection. Moinak Ghosh 2012-07-10 21:11:31 +0530
  • a873f92e41 Fix crash when decompressing deduped archive. Ensure correct level is passed to lzma. Avoid branch when wrapping rabin window position and check for rabin window size to be power of 2. Update rabin parameters check for adaptive modes. Add detection of 7-bit text/8-bit binary data for later use. Moinak Ghosh 2012-07-10 20:14:23 +0530
  • db0c9ea9ac Improve LZMA compression parameters at extreme levels. Fix incorrect thread calculation. Remove some cruft. Moinak Ghosh 2012-07-09 23:28:11 +0530
  • 00d74e86c5 Fix infinite loop when dedup is disabled. Moinak Ghosh 2012-07-08 22:31:09 +0530
  • 010f49f412 Implement ability to partition chunks at the last rabin boundary instead of fixed size. Moinak Ghosh 2012-07-08 21:44:08 +0530
  • d3f5287ee5 Update License info to LGPLv3. Moinak Ghosh 2012-07-07 22:18:29 +0530
  • 172432698e Adjust Rabin parameters for chunksize > LZMA window size. Moinak Ghosh 2012-07-07 00:01:13 +0530
  • ea923b84f0 Use different min block size and Rabin break pattern depending on compression algo. Cleanup some cruft. Moinak Ghosh 2012-07-06 23:24:12 +0530
  • f5ce45b16e Techniques to better reduce Rabin Metadata. Fix wrong chunk sizing with dedup enabled. Moinak Ghosh 2012-07-06 00:16:02 +0530
  • 774384c204 Remove debug statement. Moinak Ghosh 2012-07-04 23:39:03 +0530
  • 3f0e1952ef Fix compile warnings. Moinak Ghosh 2012-07-04 23:20:10 +0530
  • 1eee08040f Use diferent average Rabin block sizes depending on compression algorithm. Misc cleanups. Moinak Ghosh 2012-07-03 22:47:24 +0530
  • a13c61e926 Change rabin index encoding scheme for better metadata compression. Moinak Ghosh 2012-07-02 22:08:03 +0530
  • a1825a2305 Implement Parallel deduplication support. Restructure compression functions to take chunk flag as argument. Add missing error flag printing in LZMA. Only create enough threads as needed by chunk size and file size. Minor cleanups and variable name changes. Moinak Ghosh 2012-07-01 21:44:02 +0530
  • f9c3644459 Updates to Rabin based Dedup. Change command line option. Moinak Ghosh 2012-06-29 23:45:06 +0530
  • cbf9728278 Implement Deduplication based on Rabin Fingerprinting: work in progress. Fix bug that prevented pipe mode from being used. Allow building without specialized allocator. Use basic optimize flag in debuig build. Moinak Ghosh 2012-06-29 18:23:55 +0530
  • 8f5f531967 Add license and other minor fixes. Moinak Ghosh 2012-06-21 20:40:43 +0530
  • 733923cbf2 Add ability to adjust chunk boundary based on Rabin Fingerprinting to improve compression. Remove unnecessary checks in compression loop. Moinak Ghosh 2012-06-21 20:27:05 +0530
  • 7e9f636f8d Change adaptive modes. Moinak Ghosh 2012-06-01 22:04:08 +0530
  • e46d3d10b3 Add basic compression statistics and new option to display them. Moinak Ghosh 2012-05-31 21:36:33 +0530
  • b3fe43da1d Fix dynamic slab insertion. Moinak Ghosh 2012-05-31 18:12:32 +0530
  • 3cdfa86d65 Portability to Solaris and derivative platforms. Moinak Ghosh 2012-05-31 18:01:34 +0530
  • 2eaf151ca0 New capability in allocator to add slab caches with user-specified size. Use specific slab caches in main program and Lzma to slightly reduce memory footprint. Fix missing hashtable counter update in allocator. Slight cleanup of repeated computation with macro in Lzma. Moinak Ghosh 2012-05-31 13:06:40 +0530
  • 07dfed7769 Initial Commit. Moinak Ghosh 2012-05-28 20:19:29 +0530
  • 10e0a75b67 Initial commit moinakg 2012-05-19 08:54:47 -0700