powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / ASM нужен ли он сейчас?
18 сообщений из 68, страница 3 из 3
ASM нужен ли он сейчас?
    #35017635
Фотография cap83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так кто все-таки не ламер ? Есть такие вообще ?
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017661
ренегат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LordMADБез обид.
Кстати да. Рассматривая torry.ru - невозможно не убедиться в этом.
Компонентописание оно тоже, разное бывает.

--

Кстате, а какие там такие компОненты с асмом? Я вот свои приеменяемые прошерстил, так только в FastMM/FastCode нашёл осмысленные варианты асма.

А вот в ODAC нашёл массу неосмысленных вариантов (применения асма). А ну да, ещё в JCL (хоть я с него только окошко для трейса пользую).

А так - нет нигде...

---

Опять-же, смотрим DB.pas и видим function BuffersEqual(Buf1, Buf2: Pointer; Size: Integer): Boolean; assembler;


А потом смотрим на FastcodeCompareMemUnit и думаем... о чём это они?
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017667
ренегат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cap83Так кто все-таки не ламер ? Есть такие вообще ?
96% от общего числа. Возможно, и мы с тобой в их числе (даже скорее всего).
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017702
LordMAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cap83 LordMAD ........
LOL
Да, это следующая ступень развития... после ламеров. Без обид!
..............


--->

LordMAD
Я хочу сказать, что люди (?), которые не в состоянии разрабатывать компоненты - ламеры. Т.е. эти две стуненьки развития - соседние.


Где логика ?Логика прозрачная. Что не понятно?
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017721
ренегат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LordMADЛогика прозрачная . Что не понятно?

Это как? Поясни.
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017757
LordMAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ренегатКомпонентописание оно тоже, разное бывает.Это да.
ренегатКстате, а какие там такие компОненты с асмом? Я вот свои приеменяемые прошерстил, так только в FastMM/FastCode нашёл осмысленные варианты асма.Ну раз уж разговор пошел про Delphi, то 100% установленных у меня компонент используют вставки на asm'е: FastMM, EhLib, JCL, TB2k, TBX, VTV.

Целесообразность использования вставок на asm'е определяется не тем, сумел ли кто-нибудь релизовать нечто почти так же хорошо, только на чистом ЯВУ (возможно это и "красиво", но с практической точки зрения - достоинство сомнительное), а результатами замеров на целевых системах (та же старая-добрая команда asm'а RDTSC).
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017771
LordMAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LordMADЛогика прозрачная. Что не понятно?Какое слово не понятно?
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017777
LordMAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ренегатЭто как? Поясни.Какое слово не понятно?
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017801
Фотография cap83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прозрачная ?
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017805
Фотография cap83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Она настолько у тебя прозрачна что ее вообще не видно )
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017817
ренегат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LordMADЦелесообразность использования вставок на asm'е определяется не тем, сумел ли кто-нибудь релизовать нечто почти так же хорошо, только на чистом ЯВУ (возможно это и "красиво", но с практической точки зрения - достоинство сомнительное), а результатами замеров на целевых системах (та же старая-добрая команда asm'а RDTSC).
Я уже писал выше. Что не всякое ассмеблерное творчество имеет смысл и оптимально в целом.
Типовой пример - функция сравнения буферов и строк.

Опять же, лицезрея очередной велосипед (не самый оптимальный) во всех этих компОнентах, приходим
к вполне закономерному выводу. Что компонентописатели (даже именитые) - таки чего-то не догоняют
(не ламеры, но тем не менее).

Опять же, ЯВУ, не ЯВУ, всё упирается в те самые примитивы (которые может и были не сильно
оптимальны в каком Delphi3, и может быть даже не сильно оптимальны и сейчас (в Delphi10), но
суть велосипеда от этого - не меняется, что особенно актуально в силу особенностей отдельных
платформ/процессоров).

Так что приходим к выводу выше. Ассемблер - это удел разработчиков компиляторов (и приравненных
к ним низкоуровневых библиотечных средств).

Опять же - посмотри внимательно лишний на характер ассемблерных вставок даже в озвученных
выше компонентах (том-же JVCL).
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017879
Фотография cap83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Оптимизация по размеру кода )))
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35017901
Фотография cap83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
От начальства наверно поступило указание что-нить оптимизировать .. Прогеры вставили этот кусок и сказали ВОТ ОНО .... НА АСМЕ БУГАГА !!! Начальство сказало УУ Ну и хрен с вами ...
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35018022
LordMAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ренегатЯ уже писал выше. Что не всякое ассмеблерное творчество имеет смысл и оптимально в целом.
Типовой пример - функция сравнения буферов и строк.

Опять же, лицезрея очередной велосипед (не самый оптимальный) во всех этих компОнентах, приходим
к вполне закономерному выводу. Что компонентописатели (даже именитые) - таки чего-то не догоняют
(не ламеры, но тем не менее).

Опять же, ЯВУ, не ЯВУ, всё упирается в те самые примитивы (которые может и были не сильно
оптимальны в каком Delphi3, и может быть даже не сильно оптимальны и сейчас (в Delphi10), но
суть велосипеда от этого - не меняется, что особенно актуально в силу особенностей отдельных
платформ/процессоров).

Так что приходим к выводу выше. Ассемблер - это удел разработчиков компиляторов (и приравненных
к ним низкоуровневых библиотечных средств).

Опять же - посмотри внимательно лишний на характер ассемблерных вставок даже в озвученных
выше компонентах (том-же JVCL).
Ты пытаешься доказать прописные истины о том, что целые системы писать на одном только asm'е не стоит, а нужно оптимизировать только часто используемые фрагменты кода ("компоненты", "примитивы" - называй как хочешь). Да, это так просто потому, что писать _все_ на asm'е обычно слишком дорого. С этим никто не спорит! Но если какой-то кусок кода используется достаточно часто (например, во многих программах или в цикле одной программы) - то "игра стоит свеч". Именно поэтому в библиотеках asm используется очень часто. В приведенном тобой примере с FastCode хорошо видно, что использование asm'а для оптимизации под разные процессоры дает хороший результат по сравнению с оптимизацией компилятором. Код из DB.pas простой и его просто сопровождать (не сложнее, чем аналогичный код на паскале), при этом он существенно лучше, чем аналогичный код на ЯВУ.
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35018040
Фотография cap83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код из DB.pas не оптимальный ......
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35018104
LordMAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
cap83Код из DB.pas не оптимальный ......Правда? Может ты имел в виду, что он не самый быстрый из всех возможных вариантов? Оптимальность подразумевает критерий. В данном случае критерий - соотношение "цена-качество". Писать на asm'е и писать самый быстрый код из всех возможных - это не одно и то же. Кстати, код из fastcode - не самый быстрый.
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35018127
Фотография cap83
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LordMAD cap83Код из DB.pas не оптимальный ......Правда? Может ты имел в виду, что он не самый быстрый из всех возможных вариантов? Оптимальность подразумевает критерий. В данном случае критерий - соотношение "цена-качество". Писать на asm'е и писать самый быстрый код из всех возможных - это не одно и то же. Кстати, код из fastcode - не самый быстрый.

Да это и имел ввиду ..... Тут надо не асмовую вставку а пользовать функцию из либы которая в зависимости от процессора выберет оптимальный вариант ... Тоже дешево ибо поддержывать этот код ты не должен )
...
Рейтинг: 0 / 0
ASM нужен ли он сейчас?
    #35018141
ренегат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LordMADТы пытаешься доказать прописные истины о том, что целые системы писать на одном только asm'е не стоит, а нужно оптимизировать только часто используемые фрагменты кода ("компоненты", "примитивы" - называй как хочешь).
Увы нет, ты невнимательно читаешь.

LordMADДа, это так просто потому, что писать _все_ на asm'е обычно слишком дорого. С этим никто не спорит! Но если какой-то кусок кода используется достаточно часто (например, во многих программах или в цикле одной программы) - то "игра стоит свеч". Именно поэтому в библиотеках asm используется очень часто. В приведенном тобой примере с FastCode хорошо видно, что использование asm'а для оптимизации под разные процессоры дает хороший результат по сравнению с оптимизацией компилятором. Код из DB.pas простой и его просто сопровождать (не сложнее, чем аналогичный код на паскале), при этом он существенно лучше, чем аналогичный код на ЯВУ.

Ты не понял. Я тебе показал то, что в DB.pas наличествует НЕ САМЫЙ ОПТИМАЛЬНЫЙ код, более
производительный вариант которого - присутсвует как раз в FastCode модулях. Не более того.

И пытался сказать то, что применение ассемблера "вразброс" в компонентах - плохая идея. Потому
что этот код - реально не сопровождается. Будучи написанным "как есть" в незапамятные времена -
он не будет переписан (аккурат до тех пор, пока КАРДИНАЛЬНО не сменится платформа, к примеру
переход с x86-32 на x64).

А то, что существует более оптимальный код сравнения буферов, разработчики DB.pas уже давно
и забыли (хотя это, по сути, исключительно библиотечная функция, которой не место в секции
implementation).

Т.е., по хорошему, весь ассемблерный код должен быть вообще вынесен в отдельный модуль,
и поддерживаться отдельно (как минимум, на предмет новых платформ/ревизий CPU).

Вот и всё.
...
Рейтинг: 0 / 0
18 сообщений из 68, страница 3 из 3
Форумы / Программирование [игнор отключен] [закрыт для гостей] / ASM нужен ли он сейчас?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]