2016-04-01 110 views
0

我想優化讀取帶有浮點數組的文本文件。使用OpenMP讀取文本文件

這將是很好的並行化這個過程。一種可能的方式可能是使用mmap。但我不知道如何實現它,因爲它似乎不清楚如何分割文件,特別是如果浮動數字具有不同的格式,如:1.0 123.23 0.1145等。

如果還有其他建議如何優化閱讀速度,我會很高興聽到他們。

謝謝你的回覆!

+4

除非你有合適的硬件,不要浪費你的時間試圖平行讀取磁盤。想想當多個進程/線程競爭訪問磁盤上的單個驅動器磁頭時會發生什麼情況。 –

回答

1

找出第一個瓶頸在哪裏。根據我的經驗,從文本文件中讀取浮點數可能會很慢,不是因爲I/O速度緩慢,而是因爲解析文本數字。如果這是你的情況,將整個文件作爲文本讀入內存可能會有所幫助(通過一個進程;這裏可能沒有並行化的好處),然後通過多線程並行解析它。