У меня есть модель, состоящая из нескольких компонентов. Я создал решатель, в котором он принимает «состояние» каждого компонента (который описывается как словарь {компонент: состояние}) и предоставляет мне значение для каждого компонента в деталях как словарь, а также ({Component1: {key1: value1, key2: value2}, component2: {keyx: valuex, key3: valuey}) Кроме того, решающая функция тратит впустую много времени, поскольку это может повторить каждое «состояние», я создал кэш, в котором ключ - это состояние, а значение - вывод решения. Следовательно, я не буду пересматривать, если одно и то же состояние дважды. < /P>
Используя это, я также создал файл кэша, где в следующий раз я могу повторно использовать тот же кэш и не нужно пересказывать. Поток: < /p>
Запуск программы < /li>
Преобразование «состояние» в хэш с использованием функции хешлиба < /li>
Сохранение hash -> Результаты ({componnet1: {ключ: val}, ...}) в data_cache dict < /li>
В Хэш проверьте, есть ли он в data_cache dict
4.1. /> Проблемы: < /p>
Кэш становится большим в процессе ~ 10 ГБ (моя модель может быть тысячами компонентов, и каждый компонент может иметь тысячи в ресторане) < /li>
Время, платя при загрузке и кэшировании (один раз, я могу жить больше, что я могу жить большим, что я могу жить большим количеством) < /li>
< /ol>
Как справиться с такой ситуацией, когда я все еще пользуюсь повышением производительности, но не создавайте проблему с памятью в программе < /p>
Создание проблемы с памятью < /li>
< /ol>
Подробнее здесь: https://stackoverflow.com/questions/796 ... -in-python
Как справиться с кэшированием с большими данными в Python ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение