我对优化一些大文件的哈希值(优化挂钟时间)很感兴趣。I/O已经得到了很好的优化,而且I/O设备(本地SSD)仅利用了约25%的容量,而其中一个CPU核心完全达到了最大值。
我有更多可用的核心,并且在未来可能会有更多的核心。到目前为止,如果我需要同一文件的多个哈希值,比如同时进行MD5和SHA256,我才能够利用更多的核心。我可以使用相同的I/O流来提供两个或多个哈希算法,并且我可以免费获得更快的算法(就挂钟时间而言)。据我了解,大多数哈希算法中,每个新位都会改变整个结果,因此在并行处理方面它是困难甚至不可能实现的。
是否有任何主流哈希算法可并行化?
是否存在可并行化的非主流哈希算法(并且至少有样例实现可用)?
随着未来的CPU趋向于更多的核心和时钟速度的平稳状态,有没有办法来提高文件哈希的性能?(除了氮冷却超频外?)或者它本质上是不可并行的?