Форум программистов, компьютерный форум, киберфорум
Lazarus
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.92/13: Рейтинг темы: голосов - 13, средняя оценка - 4.92
355 / 155 / 39
Регистрация: 11.07.2013
Сообщений: 851
1

Почему программа на Lazarus работает быстрее, чем на C++Builder?

30.01.2015, 09:04. Показов 2454. Ответов 23
Метки нет (Все метки)

Здравствуйте!
Вопрос выкладываю на два форума - C++Builder и Lazarus.
Это, пожалуй, не вопрос, а результат эксперемента.
И так, получил задание перевести программу, написанную на C++Builder XE6 в Lazarus. Переписал код с C++ на Pascal, запускаю - не работает. А программа, в принципе, простейшая - получает от внешнего устройства через COM-порт запрос, обрабатывает его и отвечает. Несколько дней искал причину, пока не подключил цифровой осциллограф. Оказалось, что программа, написанная на Lazarus, обрабатывает сообщение за 0,004 сек, а на C++ - за 0,053 сек. Поставил в Lazarus-е Sleep(50) - заработало. Оказалось, что внешнее устройство не успевает так быстро переключаться с передачи на приём (Южно-Карейский пульт управления газораздаточной колонкой). Вывод: "крутая" и, надо сказать, далеко не дешовая среда разработки - C++Builder XE6 уступает по быстродействию бесплатной более чем на порядок.
Больше ничего говорить не буду, хотелось бы услышать ваше мнение...
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.01.2015, 09:04
Ответы с готовыми решениями:

Обычный код чтения файла на VB6 работает намного быстрее, чем на VB2005 ! ПОЧЕМУ ?
Переделал прогу с VB6 на VB2005. Она стала работать намного медленнее. Нашел фрагмент кода -...

Почему код, написанный на С++, в разы быстрее работает с большим объемом памяти, чем с маленьким?
Привет! Понадобилось мне сравнить скорость работы идентичных алгоритмов на Fortran и C++. Алгоритм...

в чем ошибку,почему программа не работает
нужно создать массив,длинной n,n-задать с клавиатуры и сдвинуть его на k элементов в права ...

Почему FX-6300 быстрее чем FX-4300?
Выбираю недорогой процессор для игр, ориентируюсь на тактовую частоту. У FX-4300 частота выше. Цена...

__________________
23
355 / 155 / 39
Регистрация: 11.07.2013
Сообщений: 851
30.01.2015, 13:36  [ТС] 21
Цитата Сообщение от northener Посмотреть сообщение
Смысл есть.
Заделт за "живое", сейчас у меня нет света (г.Ташкент - веерные отключения). Общаюсь через ноутбук. Дадут свет - выложу.
0
Эксперт С++
8359 / 6097 / 610
Регистрация: 10.12.2010
Сообщений: 28,416
Записей в блоге: 30
30.01.2015, 15:25 22
Одинакого криво написанные приложение дают различный результат, чего сетовать?
0
74 / 54 / 17
Регистрация: 10.07.2014
Сообщений: 329
30.01.2015, 15:57 23
Магическая составляющая - "переписал код"
При этом есстественно получился другой код, который работает по другому....

А у меня был случай - код, написанный на TP 7.0 просто перекомпилировал под Делфи 7.0
Так как там не было работы с экраном - исходные данные брались из файла и ложились в файл - то переписывать ничего не пришлось.
Новоскомпилированный код работает на 30% быстрее, хоть сам exe файл вырос в разы
Вот такой эксперимент - он легитимен, и более того - объясним...
0
4197 / 1789 / 211
Регистрация: 24.11.2009
Сообщений: 27,563
30.01.2015, 16:23 24
Цитата Сообщение от shyub Посмотреть сообщение
Компоненты не использовались. Работа с портом на Win-API.
API одно и то же, вызывающий код может быть нафарширован любой пессимицией именно под возможности периферии и базовый протокол порта + хватает компонентов на форме, с которыми данный код делит процессор.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.01.2015, 16:23

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

C# работает быстрее чем С++
имеется файл типа 6 1.0 2.0 3.0 4 5 6 7 1.0 2.0 3.0 4 5 6 7 1.0 2.0 3.0 4 5 6 7 1.0 2.0 3.0 4...

C программа компилируется быстрее чем C++
Почему программа на C компилируется быстрее чем на С++?

Почему данный код работает в builder 6 а в builder 10 не работает?
SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) | WS_EX_LAYERED);...

Почему ракета не может разогнаться быстрее, чем её двигатель выбрасывает газ?
Или если по-другому - почему ракета не может разгоняться до почти скорости света? Допустим,...


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

Или воспользуйтесь поиском по форуму:
24
Ответ Создать тему
Опции темы

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