Python: периодическая запись при чтении большого объема данныхPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Python: периодическая запись при чтении большого объема данных

Сообщение Anonymous »

У меня большое количество файлов изображений (около 220 000), хранящихся на быстром локальном SSD. Используя Python и библиотеку tifffile, я считываю изображения в виде массивов numpy, которые затем объединяются в один массив и сохраняются на диск. Чтение этого объединенного массива происходит намного быстрее, чем чтение файлов по отдельности.
Я пытаюсь понять, почему во время чтения данных происходят записи (более 30 МБ/с) ( Ожидается: происходят все чтения, затем создается объединенный массив, затем происходит одна запись). Очевидно, что при этом доступной оперативной памяти более чем достаточно (весь набор данных умещается в оперативной памяти):
[img]https://i.sstatic. net/ZLR47OHm.png[/img]

Я предполагаю, что в памяти все еще есть данные (но не помечены как использующие память), чтобы объяснить, почему первые ~ 15 ГБ загружаются без какого-либо чтения с диска. (чтение начинается с левой стороны графика).
Простой пример кода выглядит примерно так:
import os
import numpy as np
from tifffile import imread
from functools import partial
from tqdm.contrib.concurrent import process_map

def get_image(dir, ID):
# Load as a numpy array
return imread(os.path.join(dir, ID + ".tif"))

def generate_numpy_file(IDs, folder, fname="train"):
_read = partial(get_image, folder)

print("Reading Data")
images = process_map(_read, IDs, max_workers=20, chunksize=1024)
images = np.array(images)

print("Writing Data")
np.save(os.path.join(SCRIPT_DIR, "Datasets", fname), images)


Подробнее здесь: https://stackoverflow.com/questions/788 ... nt-of-data
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Проблемы с загрузкой большого объема данных из базы данных SQL Server.
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • Как оптимизировать память при запросе и сохранении большого объема данных в S3
    Anonymous » » в форуме Python
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Python и Pandas для записи большого объема данных
    Anonymous » » в форуме Python
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Python и Pandas для записи большого объема данных
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Python и Pandas для записи большого объема данных
    Anonymous » » в форуме Python
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»