|
1284 / 1250 / 186
Регистрация: 21.01.2024
Сообщений: 5,752
|
|
Трансляция с оптимизацией28.12.2024, 10:03. Показов 3850. Ответов 11
Метки нет (Все метки)
Проблема такая.
Есть очень старый говнокод (мой). Это cgi программа, которая долгие годы успешно работала на сервере под 32 разрядным линухом. Тут появилась необходимость перекомпилить ее под 64-х разрядный линух. Вроде справился (Линух - убунта, транслирую стандартным gcc) - все работает. Но когда я, ради интереса, попробовал откомпилить ее с ключом -Ofast, она работать перестала. Некоторые запросы проходят успешно, но некоторые нет (программа просто слетает). Я пока не пробовал ее отлаживать (CGI программы не так просто - только выдачей в лог), но просто хотелось бы понять, куда смотреть в первую очередь. Какие засады могут быть при оптимизации? В винде, при использовании транслятора MinGW gcc точно такая же проблема.
0
|
|
| 28.12.2024, 10:03 | |
|
Ответы с готовыми решениями:
11
Проблемы с оптимизацией Помогите с оптимизацией Помогите с оптимизацией |
|
754 / 351 / 90
Регистрация: 07.01.2023
Сообщений: 1,451
|
|
| 28.12.2024, 11:20 | |
|
0
|
|
|
1284 / 1250 / 186
Регистрация: 21.01.2024
Сообщений: 5,752
|
||
| 28.12.2024, 11:53 [ТС] | ||
|
Если я обращаюсь к неинициализированной переменной, то и без оптимизации я получу какое то случайное значение и неверный результат (даже без падения программы)
0
|
||
|
754 / 351 / 90
Регистрация: 07.01.2023
Сообщений: 1,451
|
|||||||
| 28.12.2024, 11:56 | |||||||
|
т.е.
0
|
|||||||
|
1284 / 1250 / 186
Регистрация: 21.01.2024
Сообщений: 5,752
|
||
| 28.12.2024, 12:02 [ТС] | ||
|
Добавлено через 1 минуту Да и в стеке вроде только отводится память, но ничем не заполняется.
0
|
||
|
754 / 351 / 90
Регистрация: 07.01.2023
Сообщений: 1,451
|
||
| 28.12.2024, 12:05 | ||
|
А вот без отладки и с оптимизацией, да, тут очень могут быть "сюрпризы".
0
|
||
|
2319 / 1561 / 721
Регистрация: 17.03.2022
Сообщений: 5,031
|
||
| 28.12.2024, 12:52 | ||
|
-O3 почему-то не хватает?
0
|
||
|
1284 / 1250 / 186
Регистрация: 21.01.2024
Сообщений: 5,752
|
|||||||
| 28.12.2024, 14:46 [ТС] | |||||||
|
Ошибка была типа
Вопрос только, как оно без оптимизации работало?
0
|
|||||||
|
754 / 351 / 90
Регистрация: 07.01.2023
Сообщений: 1,451
|
|
| 28.12.2024, 20:06 | |
|
0
|
|
|
1284 / 1250 / 186
Регистрация: 21.01.2024
Сообщений: 5,752
|
||
| 28.12.2024, 20:16 [ТС] | ||
|
Там дальше некий цикл, который завершался по другим нормальным условиям до достижения k. А с оптимизацией k оказывалось маленьким и цикл завершался ненормально раньше времени. Самое удивительное, что существующая CGI программа, где это не исправлено совершенно корректно работает на сервере.
0
|
||
|
1284 / 1250 / 186
Регистрация: 21.01.2024
Сообщений: 5,752
|
|||
| 28.12.2024, 21:21 [ТС] | |||
|
Я код этой программы последний раз смотрел (и даже правил что то) в 2014г. А написано это было изначально в 2006. И с тех пор работает. И на виндусовом сервере стояла и на линуксовых. Потом кто то еще что то там еще добавлял. Но долго не могли найти исходники тех правок. Добавлено через 28 минут На самом деле и без оптимизации все работает нормально. 0.8 с на запрос с большим количеством найденных данных, 0.1с на небольшое количество. Пересылка ответа по сети занимает больше времени.
1
|
|||
| 28.12.2024, 21:21 | |
|
Помогаю со студенческими работами здесь
12
Помогите с оптимизацией! Помогите с оптимизацией Помогите с оптимизацией Посоветуйте с оптимизацией Помогите с оптимизацией Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|