Sự khác biệt giữa tùy chọn pixz và xz với -T


3

Tôi đang cố gắng nén 100GB với tỷ lệ tốt, vì vậy tôi quyết định sử dụng xz. Tôi không cần nó rất nhanh, nhưng vì tôi có CPU 8 luồng, tôi đã tự hỏi làm thế nào để tận dụng lợi thế của chúng.

Tôi thấy có một triển khai song song của xz: pixz. Tôi cũng thấy rằng xz có một tùy chọn đa luồng -T. Tôi đang thử nghiệm với cả hai nhưng tôi không thể thấy bất kỳ sự khác biệt nào trong hành vi của họ.

Sự khác biệt giữa chúng là gì? Tại sao có 2 triển khai song song cho xz?

Chỉnh sửa: Tôi tìm thấy có một cái khác: pxz.


1
Những loại khác biệt bạn đã kiểm tra? Kích thước tập tin nén hoặc thời gian nén? Tôi nghĩ rằng, pixz đã được bắt đầu trước khi xz thực hiện biến thể song song. PS: thử lrzip bởi kolivas , nó có thể tìm thấy các phần trùng lặp của tập tin và nén tốt hơn.
osgx

Tôi đã tự hỏi về cả kích thước và thời gian. Có lẽ mỗi cái được tối ưu hóa cho các trường hợp khác nhau như bộ nhớ còn trống, số lượng bộ xử lý và vì vậy ... Cảm ơn về gợi ý lrzip, tôi không biết cái đó.
Dertalai

Câu trả lời:


16

Tôi là tác giả của pixz. Như đã suy đoán ở trên, tôi đã viết pixz trước khi hỗ trợ luồng được thêm vào xz. Tôi muốn nghĩ rằng pixz đã kích hoạt Lasse Collin để thêm hỗ trợ đa luồng cho xz sớm hơn.

Tất nhiên vẫn còn một số khác biệt giữa pixz và xz. Có lợi cho xz:

  • Nó có nhiều lựa chọn hơn
  • Nó đã được thử nghiệm bởi nhiều người hơn
  • Nó có thể có chất lượng mã tốt hơn pix pixz là một nguyên mẫu tràn lan;)

Nhưng vẫn còn một số lý do tôi thích sử dụng pixz:

  • Nó nhỏ hơn nhiều và dễ hiểu hơn
  • Nó hỗ trợ đa luồng de nén, mà xz không
  • Nó có hành vi đặc biệt trên tarball: Trong khi thực hiện nén, nó cũng tạo ra một chỉ mục của tất cả các tệp trong tarball. Điều này cho phép một tệp duy nhất được trích xuất nhanh chóng, ngay cả khi tarball rất lớn.

2
Chưa bao giờ nghe đến pixz trước đây, nhưng dự định sử dụng nó bây giờ chỉ cho điểm cuối cùng đó thôi
Mark K Cowan

pixz định dạng với chỉ số kích hoạt tương thích với công cụ xz cổ điển? Làm thế nào tập tin đầu vào được phân vùng khi nén song song?
osgx

1
Định dạng pixz tương thích với xz. Nếu pixz thêm một chỉ mục, nó sẽ thay đổi một chút đầu ra sau khi giải nén với xz, nhưng thay đổi duy nhất sẽ là sau dấu hiệu End-Of-Archive của tar, và do đó bị bỏ qua bởi tar. Nếu bạn không muốn có một chỉ mục, bạn có thể vô hiệu hóa nó với tùy chọn '-t'.
vasi

2
Phân vùng tệp đầu vào thành các khối dựa trên: * Kích thước từ điển xz, phụ thuộc vào mức độ nén. Đối với mức mặc định là '-6', đó là 8 MiB. Xem trang chủ xz để biết thêm chi tiết. * Một số nhân, được cung cấp với tùy chọn '-f'. Mặc định là 2.0. Do đó, kích thước khối mặc định sẽ là 16 MiB. Nếu bạn muốn biết thêm chi tiết về pixz, vui lòng kiểm tra các tài liệu
vasi
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.