/ / Възможно ли е MMap да пресъздаде в питона 2.7? - Python, numpy, mmap, recarray

Възможно ли е да mmap rearray в Python 2.7? - питън, мръсотия, mmap, recarray

Имам голям глобален преглед на обща стойност 30GBsданни в програма, изпълнявана чрез qsub на клъстер с 256 GB RAM. В момента съм единственият потребител в този клъстер, така че няма конфликти с разпределението на RAM. Когато се прекъсва тази пренастройка, системата изглежда като шунтира обекта към диска, не я държи в RAM, като по този начин забавя цикъла над 5 пъти. Аз бях гледам в използването на mmap на обекта по следните начини и получих следните грешки.

m = mmap.mmap(myrecarray, 0)
MMAP TypeError: only length-1 arrays can be converted to Python scalars

m = mmap.mmap(myrecarray.fileno(), 0)
AttributeError: record array has no attribute fileno

възможно ли е да се използва mmap да задържи a recarray обект в RAM, или това е пълна злоупотреба с метода mmap или това може да се направи само за други видове обекти, като низове или файлове?

много благодаря

Отговори:

2 за отговор № 1

Вместо mmap може да искате да използвате numpy.memmap или numpy.load да отворите файла с данни.

Или проверете отговори на „използване на numpy.memmap за картографиране на файл с устройство“ за алтернативен подход.


0 за отговор № 2

На този въпрос е отговорено тук ...

http://www.biostars.org/p/92704/#92764

по същество това е пълна злоупотреба с метода mmap. Тя изглежда полезна само за файлове или низове, а не за всяка сложна структура от данни.