![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
Master01 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 22.8.2007 Репутация: 2 Всего: 2 |
Всем доброго времени суток
![]() Кто-нибудь может подсказать почему одно и то же приложение, будучи откомпилированным с использованием Visual Studio 2003 работает быстрее чем то же самое приложение, откомпилированное под VS2005? Причём замедление более чем существенно, вот результаты замера времени работы: VS2003 - среднее по 20 прогонам 179 ms 142 мс VS2005 - среднее по 20 прогонам 142 ms 179 мс т.е. порядка 20%! Программа триангулирует заданные сложный полигон (полигон, содержащий дырки) и потом сливает триугольники в выпуклые полигоны, т.е. не использует каких-то ресурсов системы, API и пр. т.е. восновном одна выч. геометрия. Каких-то мега сторонних библиотек тоже не использует. очень хотелось бы понять это глюки у меня? у компиллера 2005 студии? или у нас обоих? я слыхал про что-то вроде managed кода, но вот неужели возможно такое замедление? Заранее спасибо всем. ПС. время замерял при помощи timeGetTime что в winmm.dll храниться. Это сообщение отредактировал(а) Master01 - 29.3.2009, 11:49 |
|||
|
||||
Alca |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 7 Всего: 50 |
179 > 142 ? |
|||
|
||||
Master01 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 22.8.2007 Репутация: 2 Всего: 2 |
Пардон. моя ошибка. Уже поправил
|
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
Master01, сравни асм листинги
|
|||
|
||||
Master01 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 22.8.2007 Репутация: 2 Всего: 2 |
GoldFinch, боюсь это нереально. Откомпиленная dll весит почти 500кб. т.е. просматривать её в асм коде весьма сложно.
хотя не знаю может профайлером как-то... на самом деле не ожидал услышать конкретную причину именно для моего кода. Прсто может в 2005 заложенно что-то такое о чём я не знаю и что и является причиной этого замедления... какая-нибудь очередная мега идея Microsoft. |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
Master01, экспортируй функции которые проверяешь на быстродействие и смотри их листинг
а вообще скорей всего у тебя опции компиляции разные Это сообщение отредактировал(а) GoldFinch - 29.3.2009, 12:21 |
|||
|
||||
Master01 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 22.8.2007 Репутация: 2 Всего: 2 |
GoldFinch, здесь вся dll - один здоровый механизм (COM-компонент) - при выполнении основного метода Normilize задействуется вся система, т.е. отдельные методы по отдельности нет смысла рассматривать.
я, конечно, понимаю, что исследование асм кода пролило бы свет на происходящие, но там, правда, кода будет море, плюс весьма сложная архитектура (не запутанная, а сложная ![]() ![]() а что за опции компиляции? Я ничего не изменял - ни в 2003 ни в 2005. Вообще, писал на 2003 более года потом решил 2005 поставить, поставил, всё замечательно конвертнулось, откомпиллилось с 1го раза! но вот замер скорости работы меня расстроил... вообщем, если копание в асм коде - единственное средство, то наверно я это дело оставлю... всё рано уже 2003 назад вернул ![]() |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
Master01, опции компиляции - это опции компиляции, может у тебя в 2005 настройки для дебага, а в 2003 настройки для релиза
или в 2005 включены все возможные рантайм проверки, а в 2003 нет, или в 2003 выбрана оптимизация по скорости |
|||
|
||||
Master01 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 22.8.2007 Репутация: 2 Всего: 2 |
GoldFinch, я, если честно, больше ожидал услышать, какие это именно ключи и где это смотреть...
а ответ вроде - "опции компилляции - это опции компиляции" doesn't help much. хотя, в любом случае, спасибо. |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
||||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 15 Всего: 118 |
CRT "безопасная" ?) http://msdn.microsoft.com/en-us/library/8ef0s5kh(VS.80).aspx
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
chaos |
|
|||
![]() Серийный программист ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2979 Регистрация: 7.7.2004 Где: Екатеринбург Репутация: 6 Всего: 44 |
вот люди а
![]() ![]() ИМХО скорость компиляции упала - это не говорит о том что стало хуже, мне кажется что на оборот стало лучше - оптимизаторы там всякие и тп. |
|||
|
||||
Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
#define _SECURE_SCL 0
а лучше в опции проекта добавить |
|||
|
||||
GoldFinch |
|
|||
![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2141 Регистрация: 30.11.2008 Репутация: 15 Всего: 26 |
chaos, не скорость компиляции, а скорость работы программы
|
|||
|
||||
Master01 |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 22.8.2007 Репутация: 2 Всего: 2 |
Сhaos, GoldFinch прав - речь не о времени компиляции, а о времени выполнения программы.
всем спасибо за ответы! Сейчас просто нет времени с этим разбираться, но, думаю на недели проверю и отпишу о результатах. спасибо. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |