Linux 在从文件中读取数据并放入矢量时比 Windows 快得多.txt.我将如何加速Windows以做同样的事情



我有.txt个文件用于数据(100MB - 700MB(。当读取这些文件并将它们放入矢量中时,Linux 的速度提高了 20-30 倍。这是系统问题,还是我可以做些什么来加速 Windows?

我已经在每个系统上运行了数百次相同的代码。两个系统都有一个 64 位编译器(没有它,我会得到一个糟糕的 Alloc 抛出(。

我减少了结构中的变量数量以简化执行

   struct Data //Create all possible data that would be created or imported from data.
{
    double month, day, year, hour, min, seconds, open, high, low, close, volume;
};
  vector<Data> matrix;
  void createData (ifstream &dataFile, double tick, double tickA, string name) //Imports data into program.
{
    double month, day, year, hour, min, seconds, open, high, low, close, volume;
    char delim;
    if (dataFile.is_open())
    {
        while (dataFile >> month >> delim >> day >> delim >> year >> hour >> delim >> min >> delim >> seconds >> delim >> delim >> delim >> open >> delim >> high >>
               delim >> low >> delim >> close >> delim >> volume)
        {
            matrix.push_back({month, day, year, hour, min, seconds, open, high, low, close, volume});
        }
    }
}

正如你在这里看到的,ext文件系统在读/写操作中比NTFS快得多,所以它在Linux上要快得多。 所以我认为没有办法让它在 Windows 上更快。

最新更新