CBZ의 대안? BBF 파일 형식, 성능 논란에 휩싸이다.

by DD
4개월 전
조회수 6

CBZ 형식의 무작위 접근(Random Access) 문제, CPU 사용량 증가, 느린 무결성 검사(Integrity Checking) 등의 단점을 개선하고자 BBF가 제안됨

BBF는 제로 카피 아키텍처(Zero-Copy Architecture), 빠른 무결성 검사, 네이티브 메타데이터(Native Metadata) 지원을 특징으로 함

4KB 정렬(4KB Alignment) 및 DirectStorage 지원 주장에 대한 기술적 의문이 제기됨

XXH3 해시(Hash)를 사용한 무결성 검사 성능 향상에 대한 CRC32 및 SHA256과의 비교(Comparison)에서 논쟁 발생

4KB 정렬(4KB Alignment) 및 DirectStorage의 유효성 논쟁

제안된 BBF 형식은 4KB 정렬(4KB Alignment)을 통해 DirectStorage를 지원한다고 주장하지만, 댓글에서는 이미지 데이터가 인코딩되어 있어 GPU에서 직접 텍스처를 생성할 수 없다는 점을 지적한다. 또한, DirectStorage의 4KB 정렬 제한이 없다는 공식 문서를 인용하며, 4KB 정렬의 실질적인 이점(Practical Benefit)에 대한 의문을 제기한다. 기술적으로 보면, 이미지 디코더가 정렬된 버퍼를 요구하지 않으므로 4KB 정렬의 필요성이 불분명하다.

무결성 검사(Integrity Checking) 방식 비교

BBF는 XXH3 해시(Hash)를 사용하여 CRC32보다 빠른 무결성 검사를 제공한다고 주장하지만, 댓글에서는 CRC32가 메모리 대역폭에 의해 제한될 수 있다는 점을 지적한다. 또한, SHA256과 같은 해시 함수를 사용하여 전체 아카이브의 무결성을 검사하고, 이를 메타데이터로 저장하는 것이 더 일반적인 방법이라고 언급한다. 특히, 병렬 처리를 통해 CRC32 검사 속도를 향상시킬 수 있다는 점도 강조한다.

제로 카피 아키텍처(Zero-Copy Architecture)의 성능 검증

BBF는 제로 카피 아키텍처(Zero-Copy Architecture)를 통해 디스크에서 메모리/GPU로 직접 파일을 매핑한다고 주장한다. 하지만, 댓글에서는 4KB 정렬이 메모리 페이지 정렬과 관련이 없으며, 대용량 데이터의 경우 OS가 데이터를 페이징(Paging)할 수 있다는 점을 지적한다. 즉, 4KB 정렬이 성능 향상에 기여하는 바가 불분명(Unclear Contribution)하다는 것이다. 또한, SSD의 실제 작동 방식과 버스 전송 크기에 대한 추가적인 논의가 필요하다는 의견도 제시된다.

CBZ 형식의 무작위 접근(Random Access) 문제

일부 댓글에서는 CBZ 형식의 무작위 접근(Random Access)이 독자(Reader)의 문제일 뿐, 파일 형식 자체의 제한은 아니라고 지적한다. 또한, CBZ 내의 각 항목이 독립적으로 압축되어 있어, 한 항목의 손상이 다른 항목에 영향을 미치지 않는다는 점을 강조한다. 즉, BBF가 해결하려는 문제 중 일부는 파일 형식의 근본적인 문제(Fundamental Problem)가 아닐 수 있다는 것이다.

I got into an argument on Discord about how inefficient CBR/CBZ is, so I wrote a new file format