Переключение на Главную Страницу Страницы: 1 ... 22 23 [24] 25 26 ... 79 ОтправитьПечать
Очень популярная тема (более 25 ответов) 1sqlite (число прочтений - 513844 )
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1sqlite
Ответ #345 - 26. Августа 2008 :: 16:40
Печать  
А в чем именно Вы узрели путаницу?
По-моему, там все предельно понятно.

Более того, я даже Вам четко указал точку, в которой нужно искать проблему в вашей разработке.
Эта точка - CValue::Format().
И ее потомки в дереве выполнения.

Информации для анализа - более, чем достаточно.
Было бы желание, а уж профайлер, я надеюсь, найдется.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1sqlite
Ответ #346 - 26. Августа 2008 :: 18:06
Печать  
hogik

Вот, Володя, тебе тест.
Все, забываем ИТ, 1cpp, такие непонятные слова как CValue и Format().

Берем эти 9 кб и запускаем с родной dbeng32 и твоей dbeng32 с инфостарта.

Мои результаты:
Элементов в базе (тест): 100000
База данных - локально.
Все замеры - на инициализированной базе.


Родной dbeng32, 7.70.014, монопольный

Время выполнения запроса: 3846
Итерация 1: 1330
Итерация 2: 1329
Итерация 3: 1329



Родной dbeng32, 7.70.014, разделенный

Время выполнения запроса: 5803
Итерация 1: 1869
Итерация 2: 1869
Итерация 3: 1870



dbeng32 8.0.0.2, dbeng33 7.70.014, монопольный

Время выполнения запроса: 7822
Элементов в базе (тест): 100000
Итерация 1: 2473
Итерация 2: 2478
Итерация 3: 2481



dbeng32 8.0.0.2, dbeng33 7.70.014, разделенный

Время выполнения запроса: 7566
Элементов в базе (тест): 100000
Итерация 1: 2457
Итерация 2: 2451
Итерация 3: 2445


Выводы сам делай.
Особенно насчет "путаница", "методика не имеет смысла", "прыжки в ширину" и т.п.
Мда...

P.S.
И еще, Володь.
Я же на эту тему пару слов здесь сказал не для того, чтобы ты мне мозг выносил.
То, что проблема есть, было понятно после первого поста Djelf.

В таких случаях, я считаю, надо брать и разбираться.
Несмотря на неточности указания версий, непонимание работы каких-либо компонент, несогласованные реальности в диалоге и отсутствие личного знакомства с авторами комментариев.

Мне лично более понятен мат и коньяк в рабочее время, чем общение на "Вы", но без желания добраться до истины.
Удачи. Улыбка

P.P.S.
Только еще давайте промолчим о том, что тесты надо повторить в сетевом режиме.
Надеюсь, кому надо, сможет повторить в нужном контексте.
  

dbeng1.rar ( 10 KB | Загрузки )

De quelle planète es-tu?
Наверх
 
IP записан
 
hogik
Экс-Участник
*



Пол: Мужской
Re: 1sqlite
Ответ #347 - 26. Августа 2008 :: 20:24
Печать  
(kms)
1) “Более того, я даже Вам четко указал точку, в которой нужно искать проблему в вашей разработке”
Перед тем как “указывать точку” почитали бы о самой разработке. “DBEng32 Share” всегда работает в разделенном режиме. Вас даже не смутил тот факт, что при использовании моей разработки скорость работы в монопольном режиме ниже, чем в разделенном режиме.
2) “То, что проблема есть, было понятно после первого поста Djelf”
Напомню, что он написал: “стала работать раз в 50 медленнее”. Ваши замечательные тесты это подтверждают?
3) “ В таких случаях, я считаю, надо брать и разбираться. Несмотря на неточности указания версий, непонимание работы каких-либо компонент, несогласованные реальности в диалоге… ”
Похоже, у нас разное понимание “разбираться”. Особенно в части “ мата и коньяка в рабочее время”. В трезвом состоянии написать такой тест невозможно.

И Вам, удачи.

P.S. По моему мнению, если нет желание читать и напрягать свои мозги – лучше об этом сразу сказать. А не писать тестирование скорости выполнения машинных команд в системах, где основное время затрачивается на операции ввода/вывода.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1sqlite
Ответ #348 - 26. Августа 2008 :: 22:24
Печать  
hogik писал(а) 26. Августа 2008 :: 20:24:
Перед тем как “указывать точку” почитали бы о самой разработке. “DBEng32 Share” всегда работает в разделенном режиме. Вас даже не смутил тот факт, что при использовании моей разработки скорость работы в монопольном режиме ниже, чем в разделенном режиме.

Почитал бы где?
На той странице, где опубликована dll, очевидно, есть детальное описание?

Предложение обернуть получение данных в транзакцию, впрочем, вижу.
В комментариях.
Замечательное предложение, прямо скажем.

Цитата:
2) “То, что проблема есть, было понятно после первого поста Djelf”
Напомню, что он написал: “стала работать раз в 50 медленнее”. Ваши замечательные тесты это подтверждают?

Если присмотреться, Djelf привел и абсолютные цифры изменения времени.
При этом стоит заметить, что и тестовые стенды, и сами тесты у нас различны.

Факт в том, что использование данной Вашей разработки замедляет штатную работу 1С.
Характер замедления зависит от набора данных и типа активности.
При желании можно и на порядок замедлиться, как показывает опыт построения индексов ИТ.

Цитата:
Похоже, у нас разное понимание “разбираться”. Особенно в части “ мата и коньяка в рабочее время”. В трезвом состоянии написать такой тест невозможно.

Смешно.
Я бы сказал "в трезвом состоянии" понять этот тест невозможно.

Цитата:
P.S. По моему мнению, если нет желание читать и напрягать свои мозги – лучше об этом сразу сказать.

Верно; и самое главное - сделать это вовремя.

Цитата:
А не писать тестирование скорости выполнения машинных команд в системах, где основное время затрачивается на операции ввода/вывода.

Замечательное изречение.
Главное - по существу.

--
Владимир, у Вас может сложиться впечатление, что мне почему-то не нравится Ваша разработка.
Это не так, хотя я не являюсь ее пользователем, ни сейчас, ни в перспективе.

Мне, конечно, жаль, что понимания достичь не удается.
Но в целом, это не та проблема, о которой стоит сильно переживать.

P.S.
Жаль, что Вы не любите коньяк Подмигивание
  

De quelle planète es-tu?
Наверх
 
IP записан
 
hogik
Экс-Участник
*



Пол: Мужской
Re: 1sqlite
Ответ #349 - 27. Августа 2008 :: 00:24
Печать  
(kms)
1) “Почитал бы где?”
Вы прочтите хотя бы, то, что написано в данном форуме. Например, вот это:
““DBEng32 Share” и “DBEng32 SEQ”. Это разные разработки. Они решают разные задачи.”
А если хотите разобраться в сути проблемы по 1SQLite, то прочтите вот это:
http://infostart.ru/profile/2905/projects/2308/
Если хотите понять мои сообщения в форуме, то прочтите еще вот это:
http://infostart.ru/profile/2905/projects/2418/
Возможно у Вас, тогда появится другая приписка к предложению “обернуть запрос в транзакцию”.
2) “Факт в том, что использование данной Вашей разработки замедляет штатную работу 1С.”
А что если Вам попробовать задать вопрос типа – “а что, вообще, делает твоя разработка?”
3) “Замечательное изречение. Главное - по существу. ”
Ну что ж ещё говорить, если Вы не в состоянии написать нормальный тест, поняв, что тестируется.
4) “Мне, конечно, жаль, что понимания достичь не удается. ”
Если Вы говорите о понимании в нашем с Вами общении – думаю, это, действительно, не удастся. Похоже, мы преследуем разные цели в обсуждении данной темы.
5) “я не являюсь ее пользователем, ни сейчас, ни в перспективе. ”
Возможно, прозвучит странно, но я тоже не являюсь пользователем этих разработок. И не буду им являться в перспективе.
6) “у Вас может сложиться впечатление, что мне почему-то не нравится Ваша разработка.”
Мне Ваше мнение в этом вопросе безразлично.

P.S. На данное сообщение можете мне не отвечать. Меня больше в этом форуме Улыбка

  
Наверх
 
IP записан
 
kiruha
1c++ power user
Отсутствует



Сообщений: 1249
Зарегистрирован: 11. Апреля 2007
Re: 1sqlite
Ответ #350 - 27. Августа 2008 :: 08:10
Печать  
hogik писал(а) 27. Августа 2008 :: 00:24:
(kms)
1) “Почитал бы где?”
Вы прочтите хотя бы, то, что написано в данном форуме. Например, вот это:
““DBEng32 Share” и “DBEng32 SEQ”. Это разные разработки. Они решают разные задачи.”
А если хотите разобраться в сути проблемы по 1SQLite, то прочтите вот это:
http://infostart.ru/profile/2905/projects/2308/
Если хотите понять мои сообщения в форуме, то прочтите еще вот это:
http://infostart.ru/profile/2905/projects/2418/
Возможно у Вас, тогда появится другая приписка к предложению “обернуть запрос в транзакцию”.
2) “Факт в том, что использование данной Вашей разработки замедляет штатную работу 1С.”
А что если Вам попробовать задать вопрос типа – “а что, вообще, делает твоя разработка?”
3) “Замечательное изречение. Главное - по существу. ”
Ну что ж ещё говорить, если Вы не в состоянии написать нормальный тест, поняв, что тестируется.
4) “Мне, конечно, жаль, что понимания достичь не удается. ”
Если Вы говорите о понимании в нашем с Вами общении – думаю, это, действительно, не удастся. Похоже, мы преследуем разные цели в обсуждении данной темы.
5) “я не являюсь ее пользователем, ни сейчас, ни в перспективе. ”
Возможно, прозвучит странно, но я тоже не являюсь пользователем этих разработок. И не буду им являться в перспективе.
6) “у Вас может сложиться впечатление, что мне почему-то не нравится Ваша разработка.”
Мне Ваше мнение в этом вопросе безразлично.

P.S. На данное сообщение можете мне не отвечать. Меня больше в этом форуме Улыбка



Очень похоже, что с автор модификации dbeng не готов поддерживать свою разработку на необходимом
уровне.И как на зло она затрагивает недокуметированную правку основной библиотеки доступа 1С, а не написана на технологии внешних компонент.

Проклятый человеческий фактор  Улыбка
  
Наверх
 
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 635
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: 1sqlite
Ответ #351 - 27. Августа 2008 :: 08:41
Печать  
Собственно еще один тест, должен работать в любой конфигурации где есть документ "Реализация".
Подтверждать тест "в 50 раз" не стал, хотя если напрячься...

Если говорить о штатном режиме 1С, без ВК то ""+ТЗ.Реализация с dbeng32 стало работать в 5 раз медленнее, причем транзакции положение не исправляют.

Разделенный режим, оригинальный dbeng32, 20000 документов
Запрос.Выполнить(ТекстЗапроса): 7.66с
ТЗ.СтрРеализация=""+ТЗ.Реализация (в цикле): 0.477с
ТЗ.СтрРеализация=""+ТЗ.Реализация (в цикле в транзакции): 0.352с
ИТЗ.СтрРеализация=""+ИТЗ.Реализация (в цикле): 0.485с
ИТЗ.СтрРеализация=""+ИТЗ.Реализация (в цикле в транзакции): 0.366с
ИТЗ.ДобавитьИндекс("Инд","*Реализация"): 0.02с
ИТЗ.ДобавитьИндекс("Инд","Реализация"): 12.357с
ИТЗ.ДобавитьИндекс("Инд","СтрРеализация"): 0.06с
ИТЗ.ДобавитьИндекс("Инд","Реализация") (в транзакции): 8.37с

Разделенный режим, dbeng32 8.0.0.2, 20000 документов
Запрос.Выполнить(ТекстЗапроса): 11.864с
ТЗ.СтрРеализация=""+ТЗ.Реализация (в цикле): 1.621с
ТЗ.СтрРеализация=""+ТЗ.Реализация (в цикле в транзакции): 1.557с
ИТЗ.СтрРеализация=""+ИТЗ.Реализация (в цикле): 1.589с
ИТЗ.СтрРеализация=""+ИТЗ.Реализация (в цикле в транзакции): 1.456с
ИТЗ.ДобавитьИндекс("Инд","*Реализация"): 0.021с
ИТЗ.ДобавитьИндекс("Инд","Реализация"): 63.354с
ИТЗ.ДобавитьИндекс("Инд","СтрРеализация"): 0.06с
ИТЗ.ДобавитьИндекс("Инд","Реализация") (в транзакции): 60.427с
  

DBEng32test.ert ( 58 KB | Загрузки )
Наверх
www  
IP записан
 
PVR
God Member
*****
Отсутствует



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: 1sqlite
Ответ #352 - 27. Августа 2008 :: 09:32
Печать  
Странно на тесте Михаила, у меня в разд. режиме между
родным без транзакции:
Время выполнения запроса: 29542
Элементов в базе (тест): 100000
Итерация 1: 2676
Итерация 2: 2659
Итерация 3: 2672

и с dbeng32 8.0.0.2 с транзакцией:
Время выполнения запроса: 28680
Элементов в базе (тест): 100000
Итерация 1: 2684
Итерация 2: 2684
Итерация 3: 2669

время практически совпадает  Озадачен

dbeng32 8.0.0.2 без транзакции:
Время выполнения запроса: 28868
Элементов в базе (тест): 100000
Итерация 1: 3537
Итерация 2: 3550
Итерация 3: 3553

Что интересно на 1С Запрос никоим боком не влияет, значит есть надежда  Улыбка
  
Наверх
 
IP записан
 
orefkov
1c++ developer
1c++ moderator
Отсутствует


I Love YaBB 2!

Сообщений: 896
Зарегистрирован: 20. Мая 2006
Re: 1sqlite
Ответ #353 - 27. Августа 2008 :: 12:30
Печать  
Ну господа, ну не бывает чудес - нельзя 1С заставить работать по настоящему монопольно, и в то же время разрешить фоксу тоже читать файлы.
Можно только "обхитрить" 1С - чтобы она думала, что работает монопольно, но файлы открывать в разделенном режиме. То есть по определению в таком "псевдо-монопольном" режиме невозможна скорость выше чем в разделенном режиме.
И в чем тогда изюм? В том что 1С запустится в разделенном режиме, просто другой экземпляр 1С нельзя будет запустить?
Монопольный режим обычно применяется для ускорения группового перепроведения - а ускорения не будет.
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1sqlite
Ответ #354 - 27. Августа 2008 :: 15:40
Печать  
Позволю себе еще немного прокомментировать вот это: http://infostart.ru/profile/2905/projects/2418/

Цитата:
20. hogik 27.08.2008

3) На тестирование этих разработок для маленьких БД в локальном режиме оказывает сильное влияние системный и аппаратный кэш. Например, в тесте от Михаила чтение информации из БД (обращение к методам DBEng32) осуществляется только в первой итерации. А скорость выполнения итераций одинаково в рамках одного запуска теста.

К сожалению, автор так и не достиг понимания, что же на самом деле мы тестируем и как следует трактовать результаты.

"Аппаратный и системный кэш" никакого отношения к данным тестам не имеют.
Они вносят некую дельту (или коэффициент) в финальную оценку времени, не более того.

Единственно, что необходимо рассматривать - это внутренний кэш объектов 1С.
Который в силу определенных ограничений не работает в тесте, который был предложен к рассмотрению.

Если бы автор задался целью и проверил бы собственные высказывания
Цитата:
Например, в тесте от Михаила чтение информации из БД (обращение к методам DBEng32) осуществляется только в первой итерации.

он с удивлением бы обнаружил, что заблуждается.

Однако для этого нужно некоторое понимание организации внутреннего кэша объектов 1С и - главное - желание докопаться до истины.
И к не меньшему сожалению, данные заблуждения приводят к отсутствию информации либо к дезинформации пользователей.
  

De quelle planète es-tu?
Наверх
 
IP записан
 
PVR
God Member
*****
Отсутствует



Сообщений: 622
Зарегистрирован: 19. Ноября 2007
Пол: Мужской
Re: 1sqlite
Ответ #355 - 28. Августа 2008 :: 05:32
Печать  
PVR писал(а) 27. Августа 2008 :: 09:32:
Странно на тесте Михаила, у меня в разд. режиме между
родным без транзакции:
Время выполнения запроса: 29542
Элементов в базе (тест): 100000
Итерация 1: 2676
Итерация 2: 2659
Итерация 3: 2672

и с dbeng32 8.0.0.2 с транзакцией:
Время выполнения запроса: 28680
Элементов в базе (тест): 100000
Итерация 1: 2684
Итерация 2: 2684
Итерация 3: 2669

время практически совпадает  Озадачен

dbeng32 8.0.0.2 без транзакции:
Время выполнения запроса: 28868
Элементов в базе (тест): 100000
Итерация 1: 3537
Итерация 2: 3550
Итерация 3: 3553

Что интересно на 1С Запрос никоим боком не влияет, значит есть надежда  Улыбка


dbeng32 8.0.0.3 без транзакции:
Время выполнения запроса: 28518
Элементов в базе (тест): 100000
Итерация 1: 2671
Итерация 2: 2685
Итерация 3: 2668

dbeng32 8.0.0.3 с транзакцией:
Время выполнения запроса: 27637
Элементов в базе (тест): 100000
Итерация 1: 1856
Итерация 2: 1856
Итерация 3: 1853

Улыбка
  
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1sqlite
Ответ #356 - 28. Августа 2008 :: 09:03
Печать  
Ну вот, теперь надо полагать, что не зря мы здесь топтались. Улыбка
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1sqlite
Ответ #357 - 28. Августа 2008 :: 09:14
Печать  
Кстати, из этого:

Цитата:
8.0.0.3 (бета-версия)
1) Убраны отладочные операторы. Это снижает загрузку процессора примерно на 30%. При этом повышение общей производительности сильно зависит от условий запуска сессии 1С. Наибольший эффект достигается при использовании системы в локальном режиме одним пользователем. Т.к. доля времени, затрачиваемая на операции ввода/вывода, уменьшается в общем времени, за счет системного и аппаратного кэширования.
2) Добавлена возможность вывода подробной отладочной информации: “SET DBEng32_Debug=2”.
P.S. В разработке “DBEng32 SEQ” отладочные операторы убираться не будут.


Из этого я заключаю, что разработка с "отладочными операторами", которая загружала cpu на 30%, - вообще не годилась для локальной работы.
Когда время доступа к базе мало, и такие падения наиболее заметны.

orefkov

Саня, фиг ты угадал в своем разъяснении причин http://www.1cpp.ru/forum/YaBB.pl?num=1214205575/353#353
Это "отладочные операторы" оказались.

Надо, видимо, и нам "отладочных операторов" на 30% добавить  Смех
И при этом городо, с расстановкой произнести: "надежность превыше всего".
  

De quelle planète es-tu?
Наверх
 
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: 1sqlite
Ответ #358 - 28. Августа 2008 :: 09:26
Печать  
Кстати, я реально под впечатлением.
hogik наконец-то понял, что же я тестировал. Подмигивание

Володя, если ты случайно это увидишь, то знай, я еще надеюсь на то, что ты поймешь свое заблуждение:
Цитата:
Например, в тесте от Михаила чтение информации из БД (обращение к методам DBEng32) осуществляется только в первой итерации.


И, может быть, полюбишь коньяк.
Если на трезвую голову понять мой тест было нереально, а сейчас вот как-то удалось, то у меня появляется такая надежда. Смех
  

De quelle planète es-tu?
Наверх
 
IP записан
 
hogik
Экс-Участник
*



Пол: Мужской
Re: 1sqlite
Ответ #359 - 28. Августа 2008 :: 12:19
Печать  
Тов. kms, я увидел Ваше сообщения. И даже повторно зарегистрировался в данном форуме. И отвечу Вам здесь, дабы не загружать ерундой комментарии под моей разработкой на “Инфостарт”.
1) “hogik наконец-то понял” - Если Вы хотите настроить против себя собеседника, то такие фразы этому очень способствуют.
2) “что же я тестировал” - Я Вам и сказал, выше, что ЭТО тестировать не надо.
3) “ты поймешь свое заблуждение” – Нет, не пойму. Но могу Вам пояснить Ваше заблуждение. Но только после того, как Вы начнете читать мои сообщения и задавать мне вопросы, если мне не удалось точно сформулировать свою мысль. Т.е. беседовать, а не поучать.
P.S.
Еще раз повторю свою фразу (не только для kms): “Если потребуется мои ответы на вопросы, задавайте их, пожалуйста, на http://infostart.ru”. А для kms поясню – я не призывал и не призываю перенести обсуждения на “Инфостарт”. Просто в силу моего преклонного возраста и связанными с этими болячками (склероз, зрение и т.д.) – мне трудновато скакать по сайтам. А разработка, то опубликована на “Инфостарт”. И я - там…
P.P.S.
Про коньяк. Я и так плохо соображаю, чтобы еще и коньком себя отуплять.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 22 23 [24] 25 26 ... 79
ОтправитьПечать