; Что-то я разошёлся.... Однако родственный топик взбудоражил воспоминания
Утверждение.
Оптимизация под современные процессоры — настолько изощрённое занятие, что вручную её проводить её никакого толку. Это под Pentium или 68020 всё было просто. Конвейеры там, правила спаривания, помещающиеся на страницу.
А вот напишу я кусок кода и скажет мне кто-нибудь во сколько тактов он уложится на P4 ?
^________^
Re: Ассемблер теперь уже изучать никакого толку !!!!!
Господа, ну зачем разводить очередную демагогию? По этой теме аж 2 топика, неужели мало... Лично мне кажется, что там (почти?) все за/против сказано. Ну зачем зря разводить флейм, ведь в результате каждый останется при своем мнении.
Давайте лучше заниматься делом — спокойно программировать каждый на чем хочет/может.
Здравствуйте, Dmitry A. Sustretov, Вы писали:
DAS>; Что-то я разошёлся.... Однако родственный топик взбудоражил воспоминания
DAS>Утверждение. DAS>Оптимизация под современные процессоры — настолько изощрённое занятие, что вручную её проводить её никакого толку. Это под Pentium или 68020 всё было просто. Конвейеры там, правила спаривания, помещающиеся на страницу.
Знаешь, а раньше вообще все было проще. Это же не повод отказывать себе (себе!) в понимании основ работы процессора. Один мой хороший преподаватель утверждал, что программист не может называться программистом, если не знает ассемблер. Хотя бы на базовом уровне. А то сейчас развелось дельфистов, которые только и умеют рюшечки рисовать совершенно не понимая, что происходит за кадром.
Я не собираюсь обижать всех дельфистов (этот флейм уже надоел), я и сам сейчас больше всего на дельфи пишу, но все же такие есть. Все мои знакомые новоиспеченные программеры-дельфисты такие Правда называются они не программистами, а разработчиками, так что терминология соблюдена
Re[2]: Ассемблер теперь уже изучать никакого толку !!!!!
Здравствуйте, Andrew S, Вы писали:
AS>Господа, ну зачем разводить очередную демагогию? По этой теме аж 2 топика, неужели мало... Лично мне кажется, что там (почти?) все за/против сказано. Ну зачем зря разводить флейм, ведь в результате каждый останется при своем мнении. AS>Давайте лучше заниматься делом — спокойно программировать каждый на чем хочет/может. AS>Всем успехов.
Точно. Давайте
Re: Ассемблер теперь уже изучать никакого толку !!!!!
Здравствуйте, Dmitry A. Sustretov, Вы писали:
DAS>Утверждение. DAS>Оптимизация под современные процессоры — настолько изощрённое занятие, что вручную её проводить её никакого толку.
Панимаешь, разные алгоритмы выполняющие одну и ту же задачу оптимизируются по-разному. Один можно легко переписать на MMX-инструкции и все заработает в 8 раз быстрее (например), а другой можно запраграммировать только старенькими 386-ми командами и ничего тут не поделаешь. В первом случае умный компиллятор этими инструкциями воспользуется, а во втором — нет, т.к. каким бы ни был умным компайлер, алгоритм от не переделает (а чаще всего, еще и придется струкруры данных менять, что уж совсем не допустимо, дополнительные куски памяти юзать, что не всегда желательно и т.п.) Написать более оптимизированный под процессор алгоритм, не имея представления об архитектуре процессора невозможно.
Другое дело, что не всегда это нужно.
DAS>Ассемблер теперь уже изучать никакого толку !!!!!
Абсолютно! Особенно дворникам, секретаршам, продавцам, водителям... да практически никому этот ассемблер не нужен!!
Здравствуйте Atilla, Вы писали:
A>Абсолютно! Особенно дворникам, секретаршам, продавцам, водителям... да практически никому этот ассемблер не нужен!!
ну почему же!!!
рассмотрим рабочии обязанности дворника: что он делает? он перемещает мусор. притом итерационным методом! по-тактово! простор для оптимизации на уровне элементарных операций! ассемблер! ё-моё
рассмотрим рабочии обязанности секретарши: что она делает? бумажки готовит, перекладывает, несет на подпись и т.д. лоток с бумажками на подпись — чем не стэк? "to do list" — чем не очередь? положить бумажку в лоток, взять из лотка... чем не работа с регистрами? опять же голимый ассемблер
и т.д....
так что далеко насчет "да практически никому этот ассемблер не нужен!!" тут вы батенька погорячились!!! много кому было бы полезно освоить сей замечательный продукт человеческого гения!!!
... << RSDN@Home 1.0 alpha 12 >>
— сколько программистов надо чтобы заменить сгоревшую лампочку?
— сколько не бери, а лампочку не поменять — проблема аппаратная, программным путем не решается...
Re: ASM: Ассемблер теперь уже изучать никакого толку !!!!!
DAS>Утверждение. DAS>Оптимизация под современные процессоры — настолько изощрённое занятие, что вручную её проводить её никакого толку.
Скорее писать большие куски кода лешено смысла. DAS>А вот напишу я кусок кода и скажет мне кто-нибудь во сколько тактов он уложится на P4 ?
Не такктомы едиными жива оптимизация иногда просто достаточно убрать обращение к памяти, а вообще современные С++ компилиры оптимизируют код не хуже чем неплохой асм программер
... << RSDN@Home 1.0 beta 5 >>
Re: ASM: Ассемблер теперь уже изучать никакого толку !!!!!
DA>Оптимизация под современные процессоры — настолько изощрённое занятие, что вручную её проводить её >никакого толку. Это под Pentium или 68020 всё было просто. Конвейеры там, правила спаривания, >помещающиеся на страницу.
чуваки из Microsoft его в малых количествах юзают когда пишут всякие DirectXX штучки.
не все оптимизирующие компиляторы например "знают" о появлении новых команд в системе
команд какого нибудь очередного Pentium VIII и чтобы их заюзать пишут ассемблерные
вставки
Re: ASM: Ассемблер теперь уже изучать никакого толку !!!!!
Если ограничиваться только программированием для "больших компьютеров", то изучать асм нет необходимости, типа, есть жава, с-шарп и т.д.. Но в мире довольно много других процессоров (PIC16F84, к примеру), которые используются в холодильниках, стиральных машинах, микроволновках, и для них нет ничего кроме ассемблера. При этом потребность в программистах для таких процессоров постоянно увеличивается...так что вывод очевиден.
Re[2]: ASM: Ассемблер теперь уже изучать никакого толку !!!!
Здравствуйте, Gasy, Вы писали:
G>Если ограничиваться только программированием для "больших компьютеров", то изучать асм нет необходимости, типа, есть жава, с-шарп и т.д.. Но в мире довольно много других процессоров (PIC16F84, к примеру), которые используются в холодильниках, стиральных машинах, микроволновках, и для них нет ничего кроме ассемблера. При этом потребность в программистах для таких процессоров постоянно увеличивается...так что вывод очевиден.
А если подумать о том что в холодильниках, стиральных машинах, микроволновках процессоры ставятся все мощнее, а функционал все сложнее, то скоро весь софт для них будут писать на С, потом на С++, потом на джаве и дотнете
AVK>А если подумать о том что в холодильниках, стиральных машинах, микроволновках процессоры ставятся все мощнее, а функционал все сложнее, то скоро весь софт для них будут писать на С, потом на С++, потом на джаве и дотнете
Если более мощных проц стоит на 50центов дороже, чем слабый, а выпускать собираются 100000 стиралок, то, по моему, проще переплатить программеру тысяч 5 баксов и поставить слабый.
Я не говорю про сотовые телефоны, в которых функционал на столько сложен, что написать его на асме очень дорого...
Re[3]: ASM: Ассемблер теперь уже изучать никакого толку !!!!
Здравствуйте, AndrewVK, Вы писали:
AVK>Здравствуйте, Gasy, Вы писали:
G>>Если ограничиваться только программированием для "больших компьютеров", то изучать асм нет необходимости, типа, есть жава, с-шарп и т.д.. Но в мире довольно много других процессоров (PIC16F84, к примеру), которые используются в холодильниках, стиральных машинах, микроволновках, и для них нет ничего кроме ассемблера. При этом потребность в программистах для таких процессоров постоянно увеличивается...так что вывод очевиден.
AVK>А если подумать о том что в холодильниках, стиральных машинах, микроволновках процессоры ставятся все мощнее, а функционал все сложнее, то скоро весь софт для них будут писать на С, потом на С++, потом на джаве и дотнете
ИМХО, cкорее всего сразу на Java и C# (минуя C++), т.к. кроссплатформенная компиляция с последующей отладкой, то ещё удовольствие. А c Java и С# можно написать отладить программу на настольном ПК.
Вопрос только во времени. Когда?
В сотовых телефонах уже встречаются Java приложения, но как достоинство я бы это пока не рассматривал Здесь широкое использование Java сдерживают элементы питания сотовых.
Любая сложная технология неотличима от волшебства. (Артур Кларк)
Re[3]: ASM: Ассемблер теперь уже изучать никакого толку !!!!
AVK>А если подумать о том что в холодильниках, стиральных машинах, микроволновках процессоры ставятся >все мощнее, а функционал все сложнее, то скоро весь софт для них будут писать на С, потом на С++, >потом на джаве и дотнете
их чаще всего пишут на C потому что компилятор с С относительно просто и быстро реализовать
Re[4]: ASM: Ассемблер теперь уже изучать никакого толку !!!!
Здравствуйте, Awaken, Вы писали:
AVK>>А если подумать о том что в холодильниках, стиральных машинах, микроволновках процессоры ставятся >все мощнее, а функционал все сложнее, то скоро весь софт для них будут писать на С, потом на С++, >потом на джаве и дотнете
A>их чаще всего пишут на C потому что компилятор с С относительно просто и быстро реализовать
Здравствуйте, Vladimir Khatzkevich, Вы писали:
VK>ИМХО, cкорее всего сразу на Java и C# (минуя C++), т.к. кроссплатформенная компиляция с последующей отладкой, то ещё удовольствие. А c Java и С# можно написать отладить программу на настольном ПК.
Возможно. Плюс для последних нет нужды писать компилятор — вполне подойдут настольные. Нужно будет только реализовать VM, а это не так сложно.
VK>Вопрос только во времени. Когда?
ИМХО скоро. Т.е. железки уже почти готовы — вопрос больше в разработчиках.
Здравствуйте, Gasy, Вы писали:
G>Если более мощных проц стоит на 50центов дороже, чем слабый, а выпускать собираются 100000 стиралок, то, по моему, проще переплатить программеру тысяч 5 баксов и поставить слабый.
В современном микроконтроллере денег стоит не столько кристалл, сколько его корпус. Так что разница в цене будет куда меньше 50%.
Да и потом — не поставишь новый контроллер, а конкуренты поставят и реализуют, скажем в микроволновке ринг тоны на mp3. И потеряешь ты в итоге еще больше.
G>Я не говорю про сотовые телефоны, в которых функционал на столько сложен, что написать его на асме очень дорого...
Так о том и речь что со временем часть бытовой аппаратуры по функциональности станет сопоставима с мобилками. В современных тв тюнерах, к примеру, функционал не сильно проще.
Re: ASM: Ассемблер теперь уже изучать никакого толку !!!!!
От:
Аноним
Дата:
06.02.03 18:38
Оценка:
Здравствуйте, Dmitry A. Sustretov, Вы писали:
DA>; Что-то я разошёлся.... Однако родственный топик взбудоражил воспоминания
DA>Утверждение. DA>Оптимизация под современные процессоры — настолько изощрённое занятие, что вручную её проводить её никакого толку. Это под Pentium или 68020 всё было просто. Конвейеры там, правила спаривания, помещающиеся на страницу.
Ага, я вот пишу на делфи, начинал с асма ( еще во времена 86 — Pentium), глядя на количество сгенеренных асм инструкций в критических местах кода посокрушавшись и посмеявшись над тупостью компилятора несколко раз пробовал "пооптимизировать" процедурки переписав их на асме — старые знания не прокатили и достичь прироста скорости не получалось, зато получалось затормозить код .
Re[2]: ASM: Ассемблер теперь уже изучать никакого толку !!!!