我有大量的 128 位无符号整数需要排序以供分析(大约一万亿!)。
我对 128 位整数所做的研究让我走入了一条死胡同,numpy 似乎并不完全支持它们,而且内部排序功能是内存密集型的(使用列表)。
例如,我想做的是将十亿个 128 位无符号整数加载到内存中(如果只是二进制数据,则为 16GB)并对它们进行排序。有问题的机器有 48GB 的 RAM,所以应该可以使用 32GB 进行操作。如果必须在较小的块中完成,那没关系,但是尽可能大的块会更好。Python 是否有一种排序算法可以在不需要大量开销的情况下获取此类数据?
我可以使用列表的 .sort 方法对 128 位整数进行排序,它可以工作,但它无法扩展到我需要的级别。我确实有一个 C++ 版本,它是定制编写的,并且运行速度非常快,但我想在 Python 中复制它以加快开发时间(而且我没有编写 C++,而且我不习惯那种语言) .
抱歉,如果需要更多信息来描述问题,请提出任何问题。