Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Comp123
0 / 0 / 0
Регистрация: 31.10.2014
Сообщений: 17
#1

Release/Debug - C++

22.11.2014, 14:14. Просмотров 503. Ответов 5
Метки нет (Все метки)

Здравствуйте! Пишу сложную расчётную программу. И мне важна скорость выполнения программы. И хотел бы проконсультироваться. Делал с помощью clock(). На debug мне программа выдавала, что выполняется за 140 мс. а как переключил на realise, стала показывать 9 мс. Удивила такая большая разница. Знаю что тупой вопрос, но как это возможно? И действительно ли это реальная скорость? Или программа может как то кэшироваться?
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2014, 14:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Release/Debug (C++):

Debug и Release разница? - C++
объяснить пожалуйста разница между Debug И Release? и почему после компиляции Debug->Dll fail 460kb а Release->17кб.

difference between debug and release MVS2010 - C++
Ума не приложу в какую сторону копать:read: Следующий фрагмент кода, в Дебаге работает совершенно верно, а в Релизе какие то ошибки ...

Release работает, Debug - ошибка - C++
Подскажите, товарищи. Есть код (взял с форума) : #include <iostream> #include <fstream> #include <string> #include <conio.h> ...

Неопределенное поведение в Debug и Release - C++
Писал программу для сложения больших чисел (в файле содержатся числа с количеством цифр от 1 до 30). При запуске через компилятор всё...

В чем разница между Debug and Release? - C++
Какие действия выполняет debug в Visual studio и какие Release, в чем разница? Никогда не задавался этим фундаментальным вопросом, что...

Debug и Release сборки в Visual Studio - C++
Я начал писать проект на c++ с использованием sfml. При сборке тестовой программы в версс debug потребление памяти составляет примерно 22...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
nmcf
5319 / 4639 / 1551
Регистрация: 14.04.2014
Сообщений: 18,452
22.11.2014, 14:21 #2
Без дополнительной отладочной информации получается быстрее. Так и задумано, что финальная программа будет Release.
1
Comp123
0 / 0 / 0
Регистрация: 31.10.2014
Сообщений: 17
22.11.2014, 14:22  [ТС] #3
Да, но я просто не думал, что на столько быстрее. Получается в 15 раз быстрее!
0
R0man
Заблокирован
22.11.2014, 14:33 #4
Так и должно быть)
1
DrOffset
7142 / 4283 / 966
Регистрация: 30.01.2014
Сообщений: 7,086
22.11.2014, 14:40 #5
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Comp123 Посмотреть сообщение
Да, но я просто не думал, что на столько быстрее. Получается в 15 раз быстрее!
Это зависит очень сильно и от твоего исходного кода и от того какими инструментами ты пользуешься. В отладочном режиме нет оптимизации и добавлена куча отладочных проверок.

Современные компиляторы умные, сейчас они в состоянии не очень оптимальный код приводить к более оптимальному автоматически. Это может давать колоссально различающиеся результаты с включенной оптимизацией и без. Я не говорю, что именно у тебя код не оптимальный изначально, я говорю о том, что оптимизаторы действительно хороши в современных компиляторах, поэтому разница в производительности, объеме программы может быть и больше в иных случаях.

В общем, это нормально.
1
Comp123
0 / 0 / 0
Регистрация: 31.10.2014
Сообщений: 17
22.11.2014, 14:49  [ТС] #6
Спасибо всем за ответы!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2014, 14:49
Привет! Вот еще темы с ответами:

Кодировка в режиме сборки Debug / Release - C++
В проекте использую только Use Multi-Byte Character Set, то есть ASCII. В режиме сборки Debug все работает хорошо. Но, переключаясь на...

Разный результат работы функции в release и debug - C++
Такая проблема. Есть программа, в которой объявляется переменная типа std::string. Ниже вызывается функция, реализованная в dll,...

C++ Visual Studio 2017 режим Debug и Release - C++
C++ Visual Studio 2017 проблемы с режимом Debug и Release Почему в режиме дебага все нормальное, а в режиме релиза не хочет считать...

Как получить состояние (release/debug) проекта? - C++
Возможно ли получить состояние (release/debug) проекта препроцессором?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
22.11.2014, 14:49
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru