В продукте, над которым я работаю, существует итерационный цикл, который может иметь от нескольких сотен до нескольких миллионов итераций. Каждая итерация вычисляет набор статистических переменных (двойная точность), а число переменных может быть до 1000 (обычно 15-50).Графирование больших объемов данных
В рамках цикла мы график изменения переменных более итераций, так что ось Х представляет собой итерации, а ось Y являются переменными (кодированные по цвету):
http://sawtoothsoftware.com/download/temp/walt/graph.jpg
В настоящее время данные хранятся в файле, содержащем:
4-байтовое целое число, для которого переменная,
a 4-байтовое целое, для которого итерация,
и 8-байтовый двойной для значения.
Общая шкала оси y изменяется с течением времени, и желательно, чтобы размер графика изменялся для размещения текущего масштаба (это видно на рисунке).
При примерно 5-секундных интервалах данные считываются и строятся на растровом изображении, которое затем отображается пользователю. Мы пытаемся сделать несколько оптимизаций, чтобы не перекрасить все это, но если число итераций или число переменных становится большим, мы получаем огромный файл, который занимает больше 5 секунд.
Я ищу идеи о том, как обрабатывать эти данные намного эффективнее и быстрее, если это возможно.
какая библиотека, какой язык? Недостаточно информации – WolfmanDragon 2008-11-04 22:17:58
Язык C++ с использованием Visual Studio 2008. Конкретный код находится в COM-модуле. – 2008-11-04 22:43:58