Ошибка "Memory is Full"

Простейшие вопросы в области инженерной разработки
Ответить
Елизавета
interested
interested
Сообщения: 9
Зарегистрирован: 28 июл 2017, 13:50
Версия LabVIEW: 2013
Контактная информация:

Ошибка "Memory is Full"

Сообщение Елизавета »

Всем привет! Написана программа для генерации и сбора данных. Разумеется имеет место несколько массивов, которые содержат большое количество данных (осциллограммы, оцифрованные конечные данные). Более того, на выходе программы записывается массив данных в файл, содержащий в себе зависимость сигнала одного канала АЦП от другого. Возникает ошибка "Memory is Full". И вот что странно: на более мощном компьютере при запуске .exe файла ошибки нет, но при запуске приложения со слабенького нетбука она возникает. В чем может быть подвох и в чем причина? Как узнать, какой тип переменных у меня формирует массив U8 или более громоздкий? Это ведь тоже может повлиять на возникновение ошибки? Или же дело не в моей программе, а в возможностях ПК? Помогите, пожалуйста, разобраться)))
Вложения
Mag.vi
ПРОГА
(200.14 КБ) 77 скачиваний
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5461
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 27 раз
Поблагодарили: 86 раз

Re: Ошибка "Memory is Full"

Сообщение IvanLis »

Елизавета писал(а):Как узнать, какой тип переменных у меня формирует массив U8 или более громоздкий?
Размер данных для каждого типа известен: Numeric Data Types Table.
В таблице данные для одного элемента, соответственно для массива, можно умножать (размером поля где прописан размер массива можно пренебречь).
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 126 раз
Контактная информация:

Re: Ошибка "Memory is Full"

Сообщение dadreamer »

Елизавета писал(а):Как узнать, какой тип переменных у меня формирует массив U8 или более громоздкий?
Выведите размеры каждого массива (Array Size). Посмотрите, где сколько элементов. Если где-то их слишком много (скажем, больше миллиона), то надо подумать, что с этим делать.
От компьютера зависит. Например, на моем домашнем компе с 8 ГБ ОЗУ :labview: 2017 64-bit даёт спокойно создать 1-мерный массив U8 из MaxInt (т.е., 2147483647) элементов. Но, если я захочу создать 2-мерный массив U8 размерности MaxInt x MaxInt, то :labview: мне это не позволит - "Not enough memory to complete this operation", и далее "Memory is full". На более слабой машине эта граница будет ещё ниже. Разрядность :labview: и разрядность системы также влияют.
Blackman

Activity
leader
leader
Сообщения: 932
Зарегистрирован: 17 янв 2016, 15:02
Награды: 1
Версия LabVIEW: 6.1,8.5,20

Re: Ошибка "Memory is Full"

Сообщение Blackman »

Выведите размеры каждого массива (Array Size). Посмотрите, где сколько элементов. Если где-то их слишком много (скажем, больше миллиона), то надо подумать, что с этим делать...
Беглый взгляд на BD дал следующие результаты:
-----------------------------------------------------------------------------------------------------
DAQmx Analog Output Task
Number of Channels = 2
Generate Mode = Finite (N Samples)
Number Samples to write = 10.000.000
Sample Rate = 100.000 Hz (100 kHz)
DAQmx Output Buffer Size = 10.000.000 x 8 x 2 = 160.000.000 bytes (~ 160 Mb)
---------------------------------------------------------------------------------------------------
DAQmx Analog Input Task
Number of Channels = 2
Generate Mode = Continuous Samples
Number Samples to read = 10.000.000
Sample Rate = 100.000 Hz (100 kHz)
DAQmx Input Buffer Size = 10.000.000 x 8 x 2 = 160.000.000 bytes (~ 160 Mb)
-----------------------------------------------------------------------------------------------------
= 360 Mb
Попытка создать Triangle Wave длинной 10^9 точек привела к полной блокировке системы WIN10 -x64 -4Г ОЗУ - 7Г Виртуальная - LV2016 (64) :cantbe:
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Для чайников»