Я когда-то писал почти компилятор, и знаю некоторые особенности этой процедуры. Так вот, можно смело сказать, что ни один компилятор никогда не сделает из кода на языке высокого уровня то, что хотел сделать программист. Да это и не для кого не секрет. Просто рассуждая на эти темы, стоит задуматься над вопросом а зачем нужна такая оптемизация кода? В пользовательских программах это совершенно не важно, вот и стимула особенного нет. Кроме того фирма AMD пошла навстречу программистам и реализовала в своих процессорах выполнение нескольких инструкций за такт, вот как раз для таких вещей как xor eax,eax. Не решается задача по научному, так рещим её в лоб!
Этот топик читают: Гость
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
карма: 27 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Как раз это - моя больная мозоль.
Я работаю с 8-битными контроллерами. Например, маленький "думатель" принимает сигналы дачика координатного стола и делает ШИМ-ом сигнал на двигатель (замыкает обратную связь). А программу движения получает с компа. И таких несколько (как и координат). Это не научная работа, а конкретное железо, предназначенное для выпуска. Цены имеют значение. Сегодня этот "думатель" стоит ~1.5$, и переходить на ~100$ (32-битный парень) особого желания нет. Тем более, что принципиально ресурсов быстродействия и памяти хватает и у 8-битного. И, вообще-то, скорость крутых не бесплатна - это энергопотребление, количество электроники вокруг, как следствие - надежность. Долго возился с C++ от IARsystems. Сделал вывод, что по оптимизации они покруче Borland-а будут. Но все равно - это лажа. Объяснить компилятору, что прибавить к int-у произведение двух байтов - это всего три команды, невозможно. Хотя, в принципе, в конструкции byte1*int(byte2)+Int1 информации достаточно для оптимизации до трех команд ассемблера. Просто с головой не все впорядке. Вы как-то уже упоминали что-то похожее: "...зачем писать круто и оптимально, если можно проще и тупее - все равно продаваться будет". Это я про разработчиков компиляторов. Думаю, дело не в ИИ, а в тех, кто его применяет. Я, например, шахматную программу обыграть не смогу. А промышленные применения ИИ (тоже самое про автоматизированную разводку п/плат) вряд ли дотягивают до 3-го шахматного разряда. Ну и совсем философская фраза. Всегда можно найти более лучшее применение ресурсов железа, чем прикрывать этими ресурсами недалекость разработчиков soft-а. |
|||
карма: 9 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Так то оно так. Да вот как я уже говорил, пользовательские программы(каких подавляющее большиснство) не критичны ни к размеру, ни к быстродействию. А значит и программисты могут писать плохо, и компиляторы халтурить и никто этого в общем - то на заметит.
И вы правильно сделали вывод относительно IARsystems - все компиляторы не ширпотребного характера всегда оптемизированны лучше. |
|||
карма: 27 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Да и еще одно
"Dilma" писал(а): ...В пользовательских программах это совершенно не важно, вот и стимула особенного нет. Пользователи бывают разные. Посчитать бюджет семьи для домохозяйки - это один тип пользователей. А если захочется рассчитать магнитную "змейку" для сброса излучения с пучка из ускорителя - это другой тип. Вот я, например, инженер. Мне интересно провести компьютерный эксперимент с моделью изделия, которое стоит у меня на работе. Да хотя бы поэкспериментировать с коэффициентами управления того же привода координатного стола. Позагонять его в полу-аварийные ситуации и т.п.. Берусь утверждать, что задачей моделирования можно заткнуть любой компьютер. Просто мой заткнется чуть раньше, а Ваш попозже (между прочим, не намного). У физиков это называется "проклятие размерностей". P.S. Кстати, авторы пакета моделирования - парни из Питера. Как и Вы, из графико-аналитической модели генерируют коды для Дельфи, которой также включают в свой пакет, и имеют те же проблемы на предмет продажи. В общем, у меня теперь два похожих пакета Дельфей для работы в консольном режиме. |
|||
карма: 9 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Немного не соглашусь. Да пользователи бывают разные, вы правы, но давайте оценим сколько тех, кому нужно посчитать стоимость овощей для обеда, и сколь тех, кому необходимо смоделировать координатный стол. Ответ очевиден, по-моему. Тут даже далеко ходить не надо - вот Windows XP - красивая удобная стабильная ОС. Но! Многих ли интересует, что стили XP, картинка на рабочем столе, полупрозрачные иконки, прозрачные окна и тени от меню, скользящие кнопки и все прочее кушает неимоверное количество ресурсов? Так же и код. Когда компьютеры только только появлялись программы писались на ASM с надеждой сэкономить каждый тик несколько мегагерцового процессора. Сейчас многим пользователем наплевать на оптимальность лиш бы красиво было, а многим программистов лень тратить время на оптемизацию - работает и хрен с ним. И от этого мы уже никуда не денемся! И чем дальше тем хуже..
<table><tr><td class=quote> Как и Вы, из графико-аналитической модели генерируют коды для Дельфи, которой также включают в свой пакет, и имеют те же проблемы на предмет продажи </td></tr></table> На самом деле можно продавать пакет отдельно и требовать наличия у пользователя Delphi. Вот и все. Кроме этого есть еще варианты, так что продать не большая проблема, главное нашлись бы покупатели... |
|||
карма: 27 |
|
Ответов: 9906
Рейтинг: 351
|
|||
А вот скажите мне, что сегодня есть у инженера из инструментов (компьютерных) мощнее калькулятора? Если учесть, что он не должен предъявлять претензий на качество ресурсов. Бог с ним с количеством - скажите только, что он тоже человек.
И получается, что домохозяйка - в привелегированном положении. В общем - культ серости, который и есть значительная часть западной культуры. И это понятно - серому человеку легче вклеить все, что угодно, и с меньшими затратами. Представьте себе на секунду, что что-то похожее сказано про железо. Например, сопроцессор в 70-м бите очень иногда ошибается. Эта фирма, после такого, и месяца бы не продержалась. |
|||
карма: 9 |
|
Ответов: 857
Рейтинг: 1
|
|||
нет ну со стороны енто как битва титанов смотрится. Извинити что так вот в топик влезла.
Знание таково рода для таких как я тяжелы. |
|||
карма: 1 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
Естественно! Хозяин, как говориться, барин. И барином в данном случае выступает домохозяйка. Кстате Windows вместе с Pentium или AMD для инженерных целей практически не применяют(по причини означенной выше нестабильности симбиоза их работы). Есть нормальные Риски(RISC) и нормальные компиляторы под них. Конечно для моделирования они не годны, но управлять координтным столом будут отменно(эта тема затрагивалась в вопросе о режиме реального времени в Windows)!
Все таки не все еще для нас потеренно! |
|||
карма: 27 |
|
Ответов: 9906
Рейтинг: 351
|
|||
Dilma:
Вот про эти "нормальные" я и говорил - лажа. А RISC-и - действительно достойные. Схема таже: качество железа абсолютно не соответствуют качеству soft-а. РИТА: Какая битва?! Скорее плачемся друг-другу на горькую жизнь умных людей в России |
|||
карма: 9 |
|
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
<table><tr><td class=quote>
Какая битва?! Скорее плачемся друг-другу на горькую жизнь умных людей в России D </td></tr></table> Это точно. Попирают тут и там. Ни железа нормально, ни программ. Хоть иди и устраивайся в Intel гл. инженером, их просчет исправлять. |
|||
карма: 27 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 4 раз(а), последний 2021-05-21 05:28:53 |
|||
карма: 0 |
|
26