这是一个基于移位异或操作的高性能存储编码实现。该编码器支持多种编码矩阵类型,并使用多线程优化来提高性能。
- 支持多种编码矩阵类型:
- TWO_TONE
- RID
- SYSTEMATIC_TWOTONE
- SYSTEMATIC_RID
- 多线程并行计算
- 优化的移位异或操作
- 性能基准测试功能
- 数据块大小:32KB (32768 bytes)
- 数据块数量 (k):8
- 冗余块数量:4
- 总块数 (n):12
- 编程语言:C++11
- 构建系统:CMake
在标准测试环境下(10000次迭代),各种矩阵类型的性能表现如下:
矩阵类型 | 平均编码时间 (ms) | 吞吐量 (MB/s) |
---|---|---|
RID | 1.057 | 236.625 |
TWO_TONE | 1.331 | 187.132 |
SYSTEMATIC_TWOTONE | 0.803 | 311.234 |
SYSTEMATIC_RID | 0.812 | 307.776 |
- C++11 或更高版本
- CMake 3.10 或更高版本
- 支持多线程的编译器
- 确保输入数据块大小一致
- 系统化编码会在输出中保留原始数据
- 性能可能因硬件配置而异
- 添加 SIMD 指令支持
- 实现解码功能
- 添加更多编码矩阵类型
- 优化内存使用
- 添加错误检测和恢复功能
LeyangXia