![]() |
Используете ли Вы Ассемблерную оптимизацию своих программ?
По мере роста производительности компьютеров все меньше и меньше программистов используют инструменты тонкой настойки своих программ и Ассемблерное кодирование особо критичных участков кода. А как с этим обстоит дело у Вас?
|
Асм оптимизация оправдывавет себя лишь в приложениях риал-тайм на слабых процах. Поэтому на ПК сегодня практически не делают оптимизацию. Остались в основном встроенные решения (embedded). А учитывая, что компиляторы выдают довольно неплохой код, то переписывать в асм становиться не особо эффективно.
|
Собственно, я уже говорил где-то: главное - знать и использовать быстрые алгоритмы, а вот например, ассемблерной оптимизацией пузырькой сортировки ничего путного добиться нельзя.
Вообще, есть замечательная книга Криса Касперски "Техника оптимизации программ" - там описаны тонкости оптимизации (путем изменения "горячих" точек - мест, наиболее тормозящих вычислительный процесс) |
Цитата:
Цитата:
|
лично я - за ненужность. Ибо уже давно пишу на Java, где такого понятия просто нет. Т.к. такого рода оптимизации могут понадобиться только для разработчиков виртуальных (или хардварных) машин джава, которые будут работать с моим байткодом...
|
На ассемблере можно оптимизировать только при хорошей оплате или для души при наличии свободного времени.
|
Все зависит от задач решаемых софтом. На кой черт оптимизировать, то где это не будет заметно, например бизнес-приложения (или какие-то сетевые вещи), где все упирается , как правило, далеко не в скорость расчетов и т.п., а в скорость канала и т.п. Тут хоть заоптимизируйся.
Что же касается таких вещей как обработка сигналов в реальном времени или еще чего-то подобного, то тут оптимизация дает дополнительные преимущества в скорости. |
v_mirgorodsky
Хорошо, если этот самый алгоритм менять не надо- отдебагировали один раз и работает. А если в него надо вносить изменения (а время от времени просто переписывать заного), то ни одна фирма не может позволить себе таких временных затрат. |
есть смысл юзать как подказали при обработке видео, и др. "крупных" потоков, используя оптимизацию с использованием индивидуальных комманд определенного процессора (MMX, SSE, SSE2 и т.д.), т.е. имменно в тех случаях когда компилятор заведомо даст не самый оптимальный код, благо такие ситуации встречаются не часто
|
Цитата:
Но зачастую это очень нужно для оптимизации вычислений. |
Цитата:
Цитата:
|
Так по-любому будет медленнее, чем на том же С.
|
Оптимизацыя нужна всегда и везде но она должна быть разной по "глубине", иногда один код лутше и с компилить как минимум под 2 Пень (ммх,еммх) и хватит, а иногда и розмищения большой части ф-й в место визова (inline function) не спасает дело...
|
Использую асм только для SSE/MMX оптимизации, просто переписыванием части кода на асме не занимаюсь.
|
В принципе придерживаюсь мнения , что для бизнес приложений главное правильно выбрать алгоритм и ассемблер скорее всего не понадобиться.
Но на собственном опыте говорю, иногда лучше чето критическое соптимизировать на асме, чем за неделю до сдачи, переделывать неоптимальный алгоритм. Хотя это из области кривых заплаток :eek: . |
| Часовой пояс GMT +4, время: 05:56. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.