У меня есть огромная матрица 100,000x100,000
(txt-файл), которую я использую для вычисления пригодности хромосомы в Генетическом алгоритме. Размер моего населения - 100, а размер поколения - 1000. Поэтому я читаю этот файл 100 000 раз.Прочитайте огромный файл матрицы в C
GA написано на C
, и я не знаком с C
. Каков эффективный способ чтения этого файла матрицы в C
. Есть ли другой способ, которым я могу это оптимизировать.
спасибо.
Edit:
Я сожалею, Св 100000 X 100000 матрица файлы. Я не могу сохранить это в памяти, поскольку ему нужно около 37 ГБ. Я хочу читать каждый раз, когда мне это нужно.
Надеюсь, у вас много оперативной памяти, если вы используете 32-битные целые числа, 100 копий вашей матрицы занимают 40 ГБ памяти. – GWW
Зачем вы его читаете 100 000 раз? Изменен ли файл между чтениями? – DarkDust
Мне это не показалось, как будто он планировал провести кучу копий матрицы - сама матрица не меняется, не так ли? - но он явно планирует читать его несколько раз. Также непонятно - почему вы не можете просто сохранить его в памяти? –