1
3
我想这是一个过早优化的例子。比特篡改是相当昂贵的,而且可能会使额外的内存访问成本相形见绌,除非纯粹是巧合,否则您的缓存性能在这两个大小之间的某个地方遇到了瓶颈。 归根结底,没有什么可以替代仅仅是尝试一下。 |
2
4
我会坚持使用16位值而不是13位值。由于您正在进行蛮力分析和数十亿次比较,额外的50MB似乎是一个很小的代价。还要记住,管理13位大小写的代码将非常复杂,因为您通常需要读取多个16位(或32位,或其他)值,并进行移位和组合以获得所需的实际值。换句话说,提取价值# n 将比简单地“从表中检索”复杂得多。 然而,唯一真正能确定的方法是尝试两者并看到…但是,除非您有时间实现13位值检索代码,而您最终可能不会使用这些代码,否则我可能不会费心。 |
3
3
我想说试两种方法,看看哪一种更快。此外,我认为这是一个很好的候选人进入C++。你可以把它封装在一个托管C++项目中,你可以直接从C++中引用它。这将允许你做所有你想要的低级优化,同时仍然可以直接访问你的应用程序的其余部分。 |
4
2
假设您的意思是在这样的数组中存储数据:
|
kesape · Firebase存储。下载图像阵列 2 年前 |
Rajesh K · 如何查找设备中存在的广告垃圾? 6 年前 |
Wouter A · 如何在Java中高效地存储滚动播放项属性? 6 年前 |
Nik Rubblers · 页面间离子/角度共享数据 6 年前 |
Dibyaranjan Mishra · 从SD卡删除音频 6 年前 |
4xy · 如何使日志增加日志存储容量? 6 年前 |
Shyanide · 无法访问Android外部存储中的文件 6 年前 |
Javed · laravel:如何在数据库中存储文件上载路径 6 年前 |