상세 컨텐츠

본문 제목

Snappy for Delphi

프로그래밍/Delphi

by ryujt 2014. 2. 27. 16:59

본문

성능 비교

  • Snappy (Build with Visual Studio 2012)
    • SizeOut: 8746 KB, QueryPerformanceCounter: 148012
  • ZLib (Build with Intel c compiler)
    • SizeOut: 6093 KB, QueryPerformanceCounter: 1572292
  • ZLib (Build with Delphi native code)
    • SizeOut: 6093 KB, QueryPerformanceCounter: 1986675

압축 원본은 18메가가 조금 넘는 Bitmap 파일 입니다.  SizeOut이 압축 후의 크기 입니다.


ZLib의 경우에는 가장 빠른 압축 옵션을 통해서 테스트 하였습니다.  여하튼 압축 속도에서 Snappy가 단연 선두입니다.



라이브러리 파일


Snappy.zip


델파이 유닛(Snappy.pas)과 Visual Studio 2012를 통해서 빌드 된 snappy.dll이 포함되어 있습니다.  사용법은 너무 간단하니, 패스합니다 ^^*;  (유닛 안에 코멘트로 간략한 사용법은 작성되어 있습니다)



기타


파일 크기를 작게하면 압축률 차이가 좀 더 심해지는 경향이 있습니다.  한편으로는 압축 속도 차이도 심해집니다.  즉, 압축하는 데이터의 크기가 작아지면, Snappy의 압축률 저하가 ZLib보다 심하지만, 압축 속도는 ZLib에 비해서 더욱 빨라집니다.  아래는 4KB 크기의 바이너리 데이터를 1024번 압축 한 결과 입니다.  역시 ZLib의 경우에는 가장 빠른 압축 옵션을 통해서 테스트 하였습니다.

  • Snappy --> SizeOut: 1905 B (46%), QueryPerformanceCounter: 1396
  • ZLib  --> SizeOut: 1516 B (37%), QueryPerformanceCounter: 281835



관련글 더보기