Воспроизведение опыта: доступ к диску замедляется по мере роста базы данных - PullRequest
0 голосов
/ 22 января 2019

Я реализую и основываюсь на воспроизведении опыта на жестких дисках (Reinforcement Learning) в Python, сохраняя массивы в numpy и используя потоки для выборки пакетов с жесткого диска, чтобы избежать замедления основного потока (алгоритмов обучения).

Использование простых функций numpy.save () и numpy.load (), кажется, работает достаточно быстро для меня, как в течение первого часа или около того, сохраняя до 30000 событий (из ожидаемого общего количества 1000000), основные потоки не показывает никакого замедления, которое я профилировал со временем настенных часов (время на получение мьютекса не тратится).

Однако через некоторое время время выборки событий с жесткого диска значительно увеличивается, и основной поток ожидает до 500 миллисекунд в ожидании следующей партии.

Это поведение совершенно чуждо мне, но я проверял его несколько раз и на нескольких компьютерах, и результаты были согласованы.

Я понимаю, что описание проблемы расплывчато, но мне трудно описать проблему, которую невозможно понять. Любые указатели на причины этого замедления с течением времени будут высоко оценены.

Спасибо!

...