21.03.2005, 17:02 | #1 |
злыдень
|
Тормозит ли градусник???
Привет люди добрые!
Запустил тут очередную фигулину по исправлению фигни, сижу и гадаю во сколько я сегодня домой попаду??? Вроде в коде почти все соптимизировано, ан нет подождать 4 часа придется пишет... Решил проверить нельзя ли ещё где порыть... результатом изыскания является жоп ниже. При раскомментаривании строки setText, получается что я бы сегодня домой часов в 7 ушел... Почти в 2 раза, млин... Я как ни-ть не так прогрессом пользуюсь??? PHP код:
|
|
|
За это сообщение автора поблагодарили: vladz (1). |
21.03.2005, 17:30 | #2 |
NavAx
|
А ты фигулину протестируй, если нормально фурычит, то запусти ее и домой иди. К утру как раз фигню пофиксит.
__________________
Isn't it nice when things just work? |
|
22.03.2005, 09:57 | #3 |
Administrator
|
У SysOperationProgress есть параметр updateInterval. По умолчанию он равен 1. Это означает, что окошко с прогресс-баром перерисовывается каждую секунду. Попробуйте поменять этот параметр.
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
22.03.2005, 11:26 | #4 |
злыдень
|
Цитата:
Изначально опубликовано Maxim Gorbunov
У SysOperationProgress есть параметр updateInterval. По умолчанию он равен 1. Это означает, что окошко с прогресс-баром перерисовывается каждую секунду. Попробуйте поменять этот параметр. А вот если settext убрать - почти в два раза быстрей работает |
|
22.03.2005, 11:38 | #5 |
----------------
|
а может еще и incCount убрать и тогда вообще за 5 мин отработает?
|
|
22.03.2005, 12:59 | #6 |
злыдень
|
Цитата:
Изначально опубликовано Wamr
а может еще и incCount убрать и тогда вообще за 5 мин отработает? Итак дано: тестовый сервак. На нем кроме меня, аксапты, сиквела и какой-то матери никого нет. Запускаю в терминалке в 2-х звенке. 3.0 sp 2. Тех хар-ки думаю не принципиальны, скажем так "Неплохой сервак с 3 гигами, 2 процами и т.п." Записей в таблице 1740254 штук. В тиках мерять не умею, не выпендривайтесь Ниже - "жопы" и время их выполнения: PHP код:
|
|
22.03.2005, 13:22 | #7 |
NavAx
|
Секретное оружие разработчика, профайлер:
#Profilebegin("название сессии профайлера") // исследуемый код #ProfileEnd Результат можно посмотреть в Сервис\Средства разработки\Профайлер\Сессии профайлера. P.S. В вашем случае, на фоне обработки 1740254 записей, даже максимальные затраты на прогресс-бар, в 05:35 ничтожно.
__________________
Isn't it nice when things just work? |
|
22.03.2005, 13:37 | #8 |
злыдень
|
Цитата:
Изначально опубликовано macklakov
Секретное оружие разработчика, профайлер: #Profilebegin("название сессии профайлера") // исследуемый код #ProfileEnd Результат можно посмотреть в Сервис\Средства разработки\Профайлер\Сессии профайлера. P.S. В вашем случае, на фоне обработки 1740254 записей, даже максимальные затраты на прогресс-бар, в 05:35 ничтожно. ЗЫ: 2 программисты, палками не бить, я в этом не разбираюсь : - правильно я предполагаю, что градусник запускается в каком-ть отдельном процессе и куча времени уходит на общение между процессами??? |
|
22.03.2005, 13:45 | #9 |
NavAx
|
Цитата:
Изначально опубликовано Recoilme
Т.е. Вы хотите сказать что он у меня и на 10 миллионах те же 5 минут съест??? Ладно, сейчас натравлю на 10 миллионов... посмотрим так ли "ничтожны" эти затраты будут...
__________________
Isn't it nice when things just work? |
|
22.03.2005, 19:03 | #10 |
злыдень
|
Йоу!! Я то думал там всё так круто, что даже стеснялся заглянуть, а там....
Вобщем градусник пресчитывается на каждый inccount, хотя реально прогесс бар рефрешится ТОЛЬКО на каждый процент... Во вложении градусник (VKUL_SysOperationQuick), который, рефрешится на каждый процент, т.е. типа не тормозит Добавлены методы: - incCountQuick() аналог обычного incCount, только работает быстро - updateCount() - для любителей экстремального разгона задает КОЛИЧЕСТВО записей после которого вызывать рефреш. Если параметр не задан - рефрешится будет каждый 1% записей. - setText не переопределял, ибо некогда.. Погоняю класс, если всё ок - модифицирую базовый класс и там посмотрим. Другими словами settext тормозит по прежнему. По поводу мнения, что в общем объеме вычислений затраты на тормоза градусника потеряются - доложу завтра. Сильно сомневаюсь ибо не оптимист я по отношению к быстродействию Аксапты Как раз мне себестоимость за пол года пересчитать надо Ниже результаты тестов. 2 поледних жопа- с использованием быстрого градусника. PHP код:
ЗЫ: записей 10 миллионов |
|
23.03.2005, 09:35 | #11 |
Administrator
|
Цитата:
Изначально опубликовано Recoilme
Вобщем градусник пресчитывается на каждый inccount, хотя реально прогесс бар рефрешится ТОЛЬКО на каждый процент... PHP код:
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
23.03.2005, 15:12 | #12 |
злыдень
|
Надоело ковыряться...
Что там тормозит -
Модифицировал у себя базовый класс на тестовой версии.. На каких то операциях также.. на каких то 10 минут.. на каких-то часы набегают Правда хотелось чуда, его не произошло.. Главное что не медленней Вобщем я доволен, всем спасибо. На случай если кому охота поковыряться - во вложении модифицированный базовый класс. На свой страх и риск как говорится... Сам на боевую не накатываю пока.. После установки необходима инкрементная компиляция! |
|
09.08.2007, 18:07 | #13 |
злыдень
|
Цитата:
Сергей - твоя категоричность - убивает всякое желание спорить с тобой... Выполни, пожалуйста, эти 2 джоба на БД с десятком милионов записей: Джоб 1: PHP код:
PHP код:
Тормозит ли градусник??? Updateinterval - поставь на своё усмотрение Тогда эту будут утверждения подтвержденные практикой, а не абстрактные Цитата:
Recoilme, прочитайте ту ветку до конца.
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/ |
|
09.08.2007, 18:20 | #14 |
Участник
|
Перенес предыдущее сообщение recoilme обратно в эту ветку.
|
|
09.08.2007, 18:30 | #15 |
злыдень
|
__________________
Ибо зло есть лучшая сила человека. "Человек должен становиться все лучше и злее" -- так учу я. /Ф. Ницше/ |
|
09.08.2007, 18:34 | #16 |
Участник
|
это я тупой.
оказывается было другое обсуждение вот здесь AndyD хорошо объяснил Какие проблемы у SysOperationProgress? |
|