![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| maxtech |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 25.11.2010 Репутация: нет Всего: нет |
Есть небольшое тестовое приложение. Делал чтобы сравнить скорость процессоров.
В нем есть большая функция. Очень большая, 5000 строк примерно. (Сделал копипастом) Есть кнопка, при нажатии которой запускается эта функция. Тестирую на двух компах: 1. AMD Athlon XP 3200+ (WinXP SP2) 2. Ноут на Intel P6100 (Win7 Ultimate) Странность заключается в сильных тормозах, которые возникают при запуске на ноуте в случае если приложение компилируется в режиме optimize code (пишу на C#, .NET2.0). Судя по всему, тормоза возникают при JIT-компиляции большой функции. При отключенной оптимизации или при запуске в debug-режиме из студии таких тормозов нет. Также нет тормозов при запуске с других компов. Тормоза только на ноуте. Код:
Результаты. На ноуте P6100 в debug-режиме: button1_Click: Button press. Current time: 13:39:33 Test: Function call. Current time: 13:39:34 Test: tickCount=5769369 Test: newTickCount=5771990 Test: Time=2621 x=146000000000 button1_Click: timediff=00:00:03.1356055 На том же ноуте при запуске .exe: button1_Click: Button press. Current time: 13:40:00 Test: Function call. Current time: 13:42:25 (время между вызовом функции и входом в неё - 02:25 мин!) Test: tickCount=5940362 Test: newTickCount=5942499 Test: Time=2137 x=150000000000 button1_Click: timediff=00:02:26.8742580 На Athlon XP 3200 (запуск .exe): button1_Click: Button press. Current time: 13:47:04 Test: Function call. Current time: 13:47:04 Test: tickCount=22233453 Test: newTickCount=22237078 Test: Time=3625 x=312500000000 button1_Click: timediff=00:00:03.7656250 С чем это может быть связано? Это сообщение отредактировал(а) maxtech - 25.11.2010, 15:25 |
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 22 Всего: 118 |
Ну собственно с JIT компиляцией... при дебаге оптимизация как я знаю не проводится jit компилером, в отличие от релиза.
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| maxtech |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 25.11.2010 Репутация: нет Всего: нет |
jonie, тормоза возникают только при соблюдении двух условий одновременно:
1. запуск exe 2. На ноуте Intel P6100. На Athlon 3200 таких тормозов нет. Я сейчас потестил экзешник на старом Duron 1100: button1_Click: Button press. Current time: 15:17:54 Test: Function call. Current time: 15:17:54 Test: tickCount=10005796 Test: newTickCount=10013187 Test: Time=7391 x=242000000000 button1_Click: timediff=00:00:07.3906250 Компиляция меньше секунды. На новом P6100 более двух минут. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |