С помощью git-subtree есть еще более простой способ. Предполагая, что вы хотите, чтобы ваша папка «выводила» в качестве корня в Heroku, вы можете сделать:
git subtree push --prefix output heroku master
В настоящее время отображается, что git-поддерево включено в git-core, но я не узнайте, выпущена ли эта версия git-core еще.
Похоже, вы используете 32-битную версию Python (я также предполагаю, что вы работаете в Windows). Из numpy.memmap
документов:
Файлы с отображением в памяти не могут превышать 2 ГБ в 32-разрядных системах.
blockquote>Итак, простое решение вашей проблемы - просто обновить установку Python до 64-битной.
Если ваш процессор был изготовлен где-то за последнее десятилетие, то должна быть возможность перейти на 64-битный Python.
Альтернативы
Пока ваш Python 32-битный, работа с массивами размером более 2 ГБ никогда не будет легкой или прямой. Ваша единственная реальная возможность - разбить массив на части размером не более 2 ГБ в то время, когда вы изначально его создавали / записывали на диск. Затем вы будете работать с каждым произведением независимо.
Кроме того, вам все равно придется использовать
numpy.memmap
с каждым кусочком, так как в противном случае самому Python не хватит памяти.Сверхмощные альтернативы
Если вам приходится регулярно обрабатывать большие массивы такого типа, вам следует подумать о переключении своего кода / рабочего процесса на одну из сред больших данных. Сейчас для Python есть целая куча из них. Раньше я широко использовал Pyspark , и его довольно легко использовать (хотя и требует кучу настроек). В комментариях Б. М. упоминает Даск , еще один такой большой каркас данных.
Хотя, если это только одноразовая задача, вероятно, не стоит потрудиться раскрутить одну из этих платформ.