Linux完全対応、PDeflate Huffman圧縮率向上、GPU堅牢性強化#14
Open
soichi11208 wants to merge 1 commit into
Open
Conversation
## Linux対応 - Unix非UTF8パス名(Shift-JIS等)をZIP作成時にUTF-8へ正規化し、Windows相互運用を双方向で成立させた - GNOME(Nautilus)/Cinnamon(Nemo)/MATE(Caja) 向けの右クリック Scripts 連携を追加(KDE Dolphinサービスメニューと同等) - install.sh / uninstall.sh を上記3デスクトップ環境対応に拡張 ## GPU堅牢性 - COZIP_DISABLE_GPU キルスイッチをcozip_deflate/cozip_pdeflateの両GPU初期化経路に追加(ヘッドレス/ドライバ不良/CIで確実にCPUへフォールバック) ## PDeflate 圧縮率向上(後方互換) - identity LUT(実質無圧縮)だったHuffman経路を本物の正準Huffmanに配線 - チャンク毎にHuffman版と素版を比較し小さい方を採用(フラグはチャンク単位=後方互換) - 推定利得≥5%のチャンクだけ実エンコードするゲートで圧縮速度の劣化を回避 - huffman_encode_enabledを既定ON化 - 効果: 偏ったリテラルデータで約8〜17%圧縮率向上、benchデータは速度・比率ともベースライン同等
Owner
|
ありがとうございます。 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
COZIP_DISABLE_GPUキルスイッチをcozip_deflate/cozip_pdeflate双方の GPU 初期化経路に追加(ヘッドレス/ドライバ不良/CI で透過的に CPU フォールバック)。min(huffman, plain)を採用(フラグはチャンク単位=後方互換)。推定利得 ≥5% のチャンクだけ実エンコードするゲートで圧縮速度の劣化を回避しhuffman_encode_enabledを既定 ON 化。効果: 偏ったリテラルデータで約8〜17%圧縮率向上、bench データは速度・比率ともベースライン同等。Changes
packaging/linux/filemanager-scripts/— 新規: GNOME/Nemo/Caja 向け Scripts(5アクション+共通ヘルパー)packaging/linux/install.sh/uninstall.sh— 3デスクトップ環境対応に拡張src/cozip/src/lib.rs—zip_name_part_from_os_str/decode_unix_filename_bytesを追加しUnix非UTF8パス名を正規化src/cozip_deflate/src/gpu.rs—gpu_disabled_by_env()とCOZIP_DISABLE_GPUチェックを追加src/cozip_pdeflate/src/pdeflate/gpu.rs—COZIP_DISABLE_GPUチェックを追加src/cozip_pdeflate/src/pdeflate/mod.rs— 正準 Huffman 配線、limit_code_lengths、セクション ceil(bits/8) デコード、デフォルト ON 化、関連テスト追加README.md/README.ja.md/docs/context-log.md— ドキュメント更新ひとまずの動作テストはしてある