lzma和lz4的速度比较

lzma和lz4速度比较

Compressed file size in bytes

 

gzip

bzip2

lzma

lzma -e

xz

xz -e

lz4

lzop

1

124875819 (120M)

93997047 (90M)

85618192 (82M)

72042179 (69M)

85630688 (82M)

72069084 (69M)

165844264 (159M)

168012430 (161M)

2

119040249 (114M)

87741348 (84M)

81480824 (78M)

70264395 (68M)

81492504 (78M)

70282944 (68M)

165844264 (159M)

166987891 (160M)

3

114931686 (110M)

84816957 (81MB)

79575087 (76MB)

69015118 (66MB)

79586568 (76MB)

69029204 (66MB)

165844264 (159M)

166987891 (160M)

5

102328357 (98M)

81837328 (79M)

69557610 (67M)

67879362 (65M)

69583428 (67M)

67875988 (65M)

-

166987891 (160M)

7

100128597 (96M)

80197758 (77M)

67276420 (65M)

66868212 (64M)

67294092 (65M)

66852780 (64M)

-

116205578 (111M)

9

99740486 (96M)

78963640 (76M)

65841213 (63M)

65362226 (63M)

65859432 (63M)

65372696 (63M)

-

114824102 (110M)

 

gzip

bzip2

lzma

lzma -e

xz

xz -e

lz4

lzop

可以看出lzma的压缩大小比lz4小。所以加载lzma的速度会快,lz4的速度会慢

Compression ratio

 

gzip

bzip2

lzma

lzma -e

xz

xz -e

lz4

lzop

1

26.8%

20.2%

18.4%

15.5%

18.4%

15.5%

35.6%

36.0%

2

25.5%

18.8%

17.5%

15.1%

17.5%

15.1%

35.6%

35.8%

3

24.7%

18.2%

17.1%

14.8%

17.1%

14.8%

35.6%

35.8%

5

22.0%

17.6%

14.9%

14.6%

14.9%

14.6%

-

35.8%

7

21.5%

17.2%

14.4%

14.3%

14.4%

14.3%

-

24.9%

9

21.4%

16.9%

14.1%

14.0%

14.1%

14.0%

-

24.6%

 

gzip

bzip2

lzma

lzma -e

xz

xz -e

lz4

lzop

压缩比这里lzma大概再17%左右,lz4再35%左右,所以压缩率lz4会高

Compression time

 

gzip

bzip2

lzma

lzma -e

xz

xz -e

lz4

lzop

1

8.1s

58.3s

31.7s

4m37s

32.2s

4m40s

1.3s

1.6s

2

8.5s

58.4s

40.7s

4m49s

41.9s

4m53s

1.4s

1.6s

3

9.6s

59.1s

1m2s

4m36s

1m1s

4m39s

1.3s

1.5s

5

14s

1m1s

3m5s

5m

3m6s

4m53s

-

1.5s

7

21s

1m2s

4m14s

5m52s

4m13s

5m57s

-

35s

9

33s

1m3s

4m48s

6m40s

4m51s

6m40s

-

1m5s

 

gzip

bzip2

lzma

lzma -e

xz

xz -e

lz4

lzop

压缩时间lzma会远远高于lz4.

Decompression time

 

gzip

bzip2

lzma

lzma -e

xz

xz -e

lz4

lzop

1

3.5s

3.4s

6.7s

5.9s

7.2s

6.5s

0.4s

1.5s

2

3s

15.7

6.3s

5.6s

6.8s

6.3s

0.3s

1.4s

3

3.2s

15.9s

6s

5.6s

6.7s

6.2s

0.4s

1.4s

5

3.2s

16s

5.5s

5.4s

6.2s

6s

-

1.5s

7

3s

15s

5.3s

5.3s

5.9s

5.8s

-

1.3s

9

3s

15s

5s

5.1s

5.6s

5.6s

-

1.2s

 

gzip

bzip2

lzma

lzma -e

xz

xz -e

lz4

lzop

解压缩时间也是。所以可以得知lzma的解压缩时间比lz4慢。lz4的解压缩时间比较快。

 

 

所以总结是lzma的解加载速度比较快,lz4的解压缩时间比较快。但是从压缩比和速度来看lz4会更优

 

参考:https://blog.csdn.net/leilonghao/article/details/73200859

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: LZMA(Lempel-Ziv-Markov chain Algorithm)是一种用于数据压缩的算法。在Verilog压缩中,可以使用LZMA算法来对Verilog代码进行压缩,以减小其存储空间和传输带宽。 LZMA算法通过基于字典的方法将输入数据进行压缩和解压缩。在Verilog中,可以将LZMA算法应用于代码文件,以减小其大小,提高存储效率。 首先,需要将Verilog代码转换为适合LZMA算法压缩的格式。这可以通过将代码文件转换为纯文本格式或其他适当的格式来实现。 然后,使用LZMA库或工具将Verilog代码进行压缩。LZMA库通常提供了一系列函数和接口,用于压缩和解压缩数据。通过调用相应的函数,可以将代码文件压缩为LZMA格式,这将减小其存储空间。 在需要使用压缩的代码时,可以使用相同的LZMA库或工具将其解压缩。解压缩操作将还原原始的Verilog代码文件,以便进行进一步的操作和分析。 LZMA压缩算法具有高压缩比和较快的解压缩速度,因此在Verilog压缩中使用它可以有效地减小代码文件的大小,提高存储效率,并节省传输带宽。 需要注意的是,虽然LZMA可以减小代码文件的大小,但在使用压缩的代码时,可能需要进行额外的解压缩操作,这可能会对性能产生一定的影响。因此,在决定是否使用LZMA压缩Verilog代码时,需要综合考虑压缩比、解压缩速度和性能需求等因素。 ### 回答2: LZMA是一种常用的无损数据压缩算法,它采用了Lempel-Ziv-Markov链(LZ77)和Huffman编码的组合,以实现高效的压缩和解压缩。 在Verilog中实现LZMA压缩算法需要进行以下几个步骤: 1. 输入数据分块:将输入数据分成若干个固定大小的块,以便逐块进行压缩处理。 2. LZ77压缩:在每个数据块中,使用LZ77算法进行压缩。LZ77算法将输入数据分为滑动窗口和查找缓冲区两部分。通过滑动窗口找到与当前位置最长匹配的子串,并用回溯和长度表示匹配的位置和长度。具体实现时,可以使用FIFO队列实现滑动窗口和查找缓冲区。 3. Huffman编码:将LZ77压缩后的数据使用Huffman编码进行进一步的无损压缩。Huffman编码根据字符出现的频率构建一个最优前缀编码树,并将每个字符映射到对应的二进制编码。在压缩过程中,将原始数据替换为相应的编码,并在头部保存编码信息以便解压缩时重建编码树。 4. 输出压缩结果:将Huffman编码后的压缩数据按照规定格式输出,可以存储到文件或者传输给解压缩模块进行解压缩。 总结而言,LZMA的Verilog实现主要包括输入数据分块、LZ77压缩、Huffman编码和输出压缩结果这几个步骤。通过合理的模块设计和算法实现,可以在硬件级别上实现高效的LZMA压缩功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值