我有一个很大的文件要使用cudf.read_csv()加载。有问题的文件太大,无法放入单个gpu的内存中,但仍然足够小,可以放入cpu内存。我可以通过pd.read_csv()加载这个文件,但它永远都要花时间!在较小(但仍然相当大)的文件中,cudf.read_csv()大约比pandas快6-10倍。
在使用cudf.read_csv()时,我注意到4个可用的TeslaV100-DGXS中只有1个实际加载数据。其余的都闲置着。我想象一下,如果所有4个文件都被使用了,文件将可以放入内存中。如何使用全部4个gpu加载文件?
注意:我知道我可以使用像cudf.read_csv('file.csv',usecols=FIRST_n_COLS)这样的hack,然后按顺序加载多个列。虽然这可以放在内存中,但如果可能的话,我更喜欢更优雅的解决方案。
发布于 2020-09-19 03:52:41
如果您有多个GPU,并且希望一次使用所有GPU,请使用dask_cudf。RAPIDS has a few guides for this,但@Nick Becker在这里做了一个很好的解释:https://stackoverflow.com/a/58123478/1309051。这样你就可以上路了
https://stackoverflow.com/questions/63960134
复制相似问题