Форум пользователей Visio
http://visio.getbb.ru/

Скорость обработки документов Visio из Excel
http://visio.getbb.ru/viewtopic.php?f=6&t=1027
Страница 1 из 1

Автор:  Tumanov [ 26 сен 2016, 22:43 ]
Заголовок сообщения:  Скорость обработки документов Visio из Excel

По мотивам предыдущего топика (viewtopic.php?f=6&t=1024) сделал кое-какие измерения. Публикую результаты.
Описание эксперимента:
Создан файл Visio, содержащий 20 000 шейпов. Сделаны еще 2 копии этого файла.
Измерение 1. Макрос из Excel последовательно открывает три документа Visio и читает текст всех шейпов. Потом открывает те же три документа, но для обработки запускает макрос в документе Visio, который выполняет ту же операцию чтения текста шейпов. Application Visio создается и закрывается один раз
Измерение 2. Все точно так же, но Application Visio открывается и закрывается для обработки каждого документа.
В протокол выводится время от начала измерения.
Текст макроса в Excel приведен ниже.
Результаты
В Измерении 1 три документа из Excel обработаны за 126 сек. Три документа из Visio - за 127 сек. Почти одинаково, но следует учесть, что самый первый документ обрабатывается гораздо быстрее остальных - 13 сек вместо 30. То есть вторая половина выполняется на самом деле на 17 сек быстрее.
Обработка одного документа занимает 40 сек из Excel и 30 сек из Visio.
В Измерении 2 половинки составляют, соответственно, 73 и 48 сек. А все измерение занимает 121 сек (против 253 в измерении1). То есть если Application открывать каждый раз заново, получаем выигрыш в два раза.
Время обработки одного документа в среднем 13 сек через Excel и 5 сек через Visio. Ускорение от переноса макроса существенно больше, чем в первом случае.
Выводы
1. Приложение желательно открывать и закрывать на каждый документ. Очень неожиданно!
2. Нужно стремиться переносить обработчик в Visio (вместо того, чтобы работать удаленно из Excel).
------------------
Текст программы, цифры и графики - в вордовском файле.
https://yadi.sk/i/BbcUoySSvknPb

Автор:  Shishok [ 26 сен 2016, 23:06 ]
Заголовок сообщения:  Re: Скорость обработки документов Visio из Excel

Цитата:
Выводы
1. Приложение желательно открывать и закрывать на каждый документ. Очень неожиданно!
2. Нужно стремиться переносить обработчик в Visio (вместо того, чтобы работать удаленно из Excel).


То есть применительно к предыдущему топику надо пункт 1 использовать или пункт 2, или оба применять?

Автор:  Tumanov [ 26 сен 2016, 23:19 ]
Заголовок сообщения:  Re: Скорость обработки документов Visio из Excel

Пункт 1 точно надо. Тем более, что это легко.
А пункт 2 требует гораздо больше работы. В файлах ведь сейчас макроса нет.
Я думал, что можно попробовать засунуть его в трафарет и запускать оттуда. Вроде как уже в среде Visio. Но это было бы проще, если не выполнять пункт 1. А с учетом этого пункта будет посложнее. И отказываться от него нельзя, потому как не хочется терять двукратный выигрыш.
Короче, со вторым пунктом еще нужно экспериментировать, искать метод реализации.

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/