我是 Python 新手。我有 2000 个文件,每个文件大约 100 MB。我必须阅读它们中的每一个并将它们合并到一个大矩阵(或表格)中。我可以为此使用并行处理以节省一些时间吗?如果是,如何?我试着搜索,事情看起来很复杂。目前,连续完成这项工作大约需要 8 个小时。我们有一个非常大的服务器,有一个 TB RAM 和几百个处理器。我怎样才能有效地利用它?
感谢您的帮助。
最佳答案
您可以使用 subprocess 在单独的进程中预处理文件 模块;但是,如果最终表保存在内存中,那么该过程最终将成为您的瓶颈。
还有另一种可能的方法,使用 的共享内存 mmap 对象。每个子进程都可以负责将文件加载到映射内存的一个子部分。
关于并行处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8157068/