我的 Java 应用程序读取数千个文本文件,遍历这些行并将文本解析为浮点数并用它们进行一些计算,然后将结果保存到一些文件中,现在我正在使用多个线程同时执行它们,仍然需要大约小时运行整个应用程序。
这是我的应用程序的简化伪版本:
String Lines[]=ReadFile("abc.txt"),Items[];
float its[];
for (int i=0;i<Lines.length;i++)
{
Items=Lines[i].split(",");
its=new float[Items.length];
for (int j=0;j<its.length;j++) its[j]=Float.parseFloat(Items[j]);
do some calculation with : its[]
}
Do more calculation, save results to a StringBuffer.
Save StringBuffer to ("abc_result.txt");
我读过 Rootbeer 能够将一些工作负载转移到 GPU 上并加快进程,所以我的问题是:
[1] Rootbeer 可以在 GPU 上处理文本解析和文件 I/O 吗?还是我需要在 CPU 上完成这部分并且只在 GPU 上进行计算?
[2] 我的应用会从 Rootbeer 中受益吗?