Важная информация

User Tag List

Страница 5 из 13 ПерваяПервая 123456789 ... ПоследняяПоследняя
Показано с 41 по 50 из 126

Тема: ASAM Compiler By Rob F. / Entire Group ...

  1. #41
    Junior Аватар для Proteus
    Регистрация
    21.02.2005
    Адрес
    Москва
    Сообщений
    24
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от lvd
    Если конкретный алго переписать на асм руками, то быстрее он в 100 раз не станет, максимум в 2-3 раза, а далее см. про 5 и 3 секунды. Более того, в особых случаях может стать только медленнее - если например ты под вин32 начнёшь юзать ax-bx-etc и loop - пренепременнейше.
    Ты видать проги с Энлайхта не дезасемблировал. У меня в инсте преподы которые асма не разу не видели или плохо на нём писали так же говорили. Могу тебя заверить что если как надо всё написать то ещё как станет быстрее и не в 2-3 раза, а раз в 500 если захотеть. Алгоритм конешно дело хорошее, только ассемблер это мир с другой логикой.. на Си ты его никогда не обгонишь (и не надо заливать про оптимизатор и прочее... ни один опитимзатор по сравнению с мозгами гроша ломанного не стоит)....

  2. #42
    Junior Аватар для Proteus
    Регистрация
    21.02.2005
    Адрес
    Москва
    Сообщений
    24
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от random
    Rob!!!

    Лично я с пакерами знаком только в плане реализации документированых алгоритмов. Своих не изобретал. Если нужен хороший пакер, посмотри http://upx.sourceforge.net/

    Там и сорцы и все что хочешь.
    Если что-то упаковать надо то пожалста. А если функцию или алгоритм выдрать, то к UPX лучше близко не подходить. Для начала я промолчу про форматы исполняемых файлов ELF,PE про их потроха и т.д. Его упаковка основна на двух библиотеках, притом одна из них испоьзует дикую смесь LZ метода и генетического алгоритма, а другая тоже не лучше....

  3. #43
    Veteran Аватар для SMT
    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Proteus
    Ты видать проги с Энлайхта не дезасемблировал. У меня в инсте преподы которые асма не разу не видели или плохо на нём писали так же говорили. Могу тебя заверить что если как надо всё написать то ещё как станет быстрее и не в 2-3 раза, а раз в 500 если захотеть. Алгоритм конешно дело хорошее, только ассемблер это мир с другой логикой.. на Си ты его никогда не обгонишь (и не надо заливать про оптимизатор и прочее... ни один опитимзатор по сравнению с мозгами гроша ломанного не стоит)....
    конечно, на спектруме нет оптимизирующих компиляторов. но в общем случае утверждение ошибочно

  4. #44
    Veteran Аватар для lvd
    Регистрация
    23.01.2005
    Сообщений
    1,113
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Proteus
    Ты видать проги с Энлайхта не дезасемблировал. У меня в инсте преподы которые асма не разу не видели или плохо на нём писали так же говорили. Могу тебя заверить что если как надо всё написать то ещё как станет быстрее и не в 2-3 раза, а раз в 500 если захотеть. Алгоритм конешно дело хорошее, только ассемблер это мир с другой логикой..
    Ну уж не надо мне заливать про асм - я таки и на Z80 програмлю, и на 68k, и на других доводилось... Только вот если ты взял прогу на сях типа for(i=0;i<100;i++) funktsiya(i);, то в не то что в 500, даже в 5 раз ты её не ускоришь (не касаясь вызываемой функции). А если таки ускорил в 500 раз - это значит, что поменял (оптимизнул) алгоритм - причём даже очень круто (изменил запись в файл по 1 байту на запись в буфер и его отписку за раз, например =).

    на Си ты его никогда не обгонишь (и не надо заливать про оптимизатор и прочее... ни один опитимзатор по сравнению с мозгами гроша ломанного не стоит)....
    Так это смотря какой компилятор и какой проц. Ты например видимо в курсе, что всякие там гигагерцовые процы имеют конвейер на десяток-другой тактов, а также всякие хитрости типа кеширования условных переходов. Так вот простой пример - eвидев, как компайлер раскрыл if(a>0) b=b*c+d; на 20 линейных команд без переходов, а ты пришёл и радостно оптимизнул до 3 команд с условным переходом. И что же - после этого условный переход перестал угадываться в половине случаев и началась чистка конвейера на 20-30 тактов - и где тут оптимизация?

    Далее, у процов таких секретов может быть много, и хороший компилятор о них может быть в курсе. А ты?

  5. #45
    Veteran Аватар для lvd
    Регистрация
    23.01.2005
    Сообщений
    1,113
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от SMT
    конечно, на спектруме нет оптимизирующих компиляторов. но в общем случае утверждение ошибочно
    Почему же, есть. AlCo, например. =)

  6. #46
    Junior Аватар для Proteus
    Регистрация
    21.02.2005
    Адрес
    Москва
    Сообщений
    24
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от lvd
    Так это смотря какой компилятор и какой проц. Ты например видимо в курсе, что всякие там гигагерцовые процы имеют конвейер на десяток-другой тактов, а также всякие хитрости типа кеширования условных переходов. Так вот простой пример - eвидев, как компайлер раскрыл if(a>0) b=b*c+d; на 20 линейных команд без переходов, а ты пришёл и радостно оптимизнул до 3 команд с условным переходом. И что же - после этого условный переход перестал угадываться в половине случаев и началась чистка конвейера на 20-30 тактов - и где тут оптимизация?

    Далее, у процов таких секретов может быть много, и хороший компилятор о них может быть в курсе. А ты?
    Не надо меня со школьной детворой равнять. Я давно уже не спектрумист. Просто нравится он мне и люди которые на нём сидят. Вот и зависаю иногда на форуме. И поверь отлично знаю как надо и под конвеерный процессор и под суперскалярный и под какой угодно писать. Если уж на то пошло то реальные коды после этих оптимизаторов меня совсем не впечатляют. Даже если самые крутые из них и знают что-то лучше меня одних фактов для оптимизаци не достаточно.

  7. #46
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #47
    Master
    Регистрация
    04.03.2005
    Адрес
    Ukraine, Kiev
    Сообщений
    792
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Talking

    Цитата Сообщение от Shadow Maker
    Роб... Чего-то думаю я, что скорость такая тормозная из-за запуска под Виндами дос-экстендера... Что мешает перекомпилить все это в Виндовс-вариант? Скорость думаю сразу вырастет раз в 100

    Не, совсем не из-за этого ... Хотя, возможно, что ХР так и делает ... Но на сколько я работал с ХР, еже ли хорошо настроить, то тормозить выделение памяти не будет ... В остальных случаях дос-экстендер выделяется ну оооочень быстро, так что вся галимая скорость лишь из-за меня !!! Я это обязательно исправлю !!! А если перекомпилировать под винду, то скорость будет или такая же или медленнее ... Темболее, что винда блочит выделение процессорных сегментов в GDT, а на этом построин моя эмулятор. Вообщем, пока я не достану полный TMT,под винду врядли перекомпилирую !!!
    AAA когда меня режут, я терплю, но когда дополняют, становится нестерпимо.

  9. #48
    Veteran Аватар для SMT
    Регистрация
    16.01.2005
    Адрес
    Бобруйск
    Сообщений
    1,267
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Proteus
    Не надо меня со школьной детворой равнять. Я давно уже не спектрумист. Просто нравится он мне и люди которые на нём сидят. Вот и зависаю иногда на форуме. И поверь отлично знаю как надо и под конвеерный процессор и под суперскалярный и под какой угодно писать. Если уж на то пошло то реальные коды после этих оптимизаторов меня совсем не впечатляют. Даже если самые крутые из них и знают что-то лучше меня одних фактов для оптимизаци не достаточно.
    такие выпады наблюдаю не в первый раз... один раз мне пытались доказать, что ООП тормоз, спорщик выбрал задачу сортировки строк файла, но так и не смог обогнать сортировку абстрактного контейнера vector из STL (фишка там в том, что в рекурсии, когда длина вектора находится в определенных пределах, применяется лучше подходящий для этой длины алгоритм. на определение порогов/алгоритмов потрачен imho не один десяток часов)

    если Вы настаиваете, что можете обогнать компилятор в 2-3, а то и "раз в 500 если захотеть" и если "оптимизаторы меня совсем не впечатляют", то можете выбрать ЛЮБУЮ задачу на Ваше усмотрение (лучше выполняющуюся не менее нескольких секунд для удобства подсчёта времени) и попробуйте обогнать компилятор ХОТЯ БЫ в 1.5 раза. я со своей стороны обещаю не использовать ассемблерных вставок в программе. если отказываетесь - прекращаем флейм

  10. #49
    Master
    Регистрация
    04.03.2005
    Адрес
    Ukraine, Kiev
    Сообщений
    792
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Talking

    Цитата Сообщение от lvd
    Ну уж пардон, если в файл писать по 1 байту используя ф-ции fread/fwrite (или как их там), то это к оптимизации не относится. Это скорее к здравому смыслу...
    Ну как сказать, я же переписал эти модули. У меня по-прежнему пишется по байту, но не тормозит же, а процедура осталась та же. Если бы у меня была полная версия TMT, то я бы этим не занимался, поскольку это уже сделали, но аторы специально не распространяют полные модули, от чего я не мгу по-человечески писать, вот и приходится некоторые модули переписывать. Можно, конечно, со старыми, но тогда будет уровень стандартных виндошно-микрософто-борландовсих продуктов ... Мало того, если вы заметили, то в компилятор запакованы ещё семь файлов. Пакер мой собственный, хотя галимый, но я сделал эмуляцию диска, и можно на прямую загружать файлы из ЕХЕ-шника. Очень удобно, когда нет никаких лишних файлов, засирающих винт.

    Цитата Сообщение от lvd
    Если конкретный алго переписать на асм руками, то быстрее он в 100 раз не станет, максимум в 2-3 раза, а далее см. про 5 и 3 секунды. Более того, в особых случаях может стать только медленнее - если например ты под вин32 начнёшь юзать ax-bx-etc и loop - пренепременнейше.
    Поверь, медленнее не станет ... Уже сотню раз через это проходил, и если бы не некоторые проблемы, то я сразу писал бы всё в асме, но теперь это не важно ...

    Цитата Сообщение от lvd
    Так что оптимизация алгоритмов имеет место быть как весьма действенная, а тупое переписывание на асм - фигня, не стоящая затрат ДЛЯ ТАКОГО ПРОДУКТА, как этот асм. Для него гораздо важнее безглючность и фичность. Чем кончается переписывание такого на асм - могу сказать. Есть такой PhxAss. Вроде бы старый продукт, все им юзаются, но - его беру я и - о ужас! - нахожу нелепый глюк с bra *+n .Пишу автору - а он отвечает - да мне типа влом править, оно на асме написано.
    Да, я когда-то свой пакер написал полностью на СИ, потом нашёл TMT, и перевёл его туда, да скорость поднялась примерно в 10-ть раз, и я был раз как никогда. Но, когда я решил полностью переписать на асм, то заметил, что скорость загрузки с автоматическим распаковыванием происходит примерно в 10-ть раз быстрее, нежели это сделать просто загружая файл ... Понятно, что, если он плохо запаковался, то ничего не получится, и скорость будет чуточку дольше, но результат АСМ-а всё равно неповторим !!! Жизнь в АСМ-е как иной мир, мысли по-другому, и выполнение одного и тогоже кажется гениальным, что в итоге чаще всего и подтверждается ... АСМ - СИЛА !!!

    Цитата Сообщение от lvd
    Если какая-нить демка лезет в память и не коматозит (50фпс онли) - кому какое дело, как она написана? Тем более, раз это правило хорошего тона, то почему бы действительно не перекомпилять под вин32, как говорит SM? Скоро в виндах вообще дос отменят, а под вин32 и консольные приложения пишутся отлично - см. тот же фар. Не нравится вин32 - пиши под minGW/cygnus - заодно портабельность под линух будет.
    Но у нас не демка. А другие системы ... Это не совсем то что должно быть ... Под линух я перекомпилю, когда достану полный TMT, иначе я этого не сделаю !!!
    AAA когда меня режут, я терплю, но когда дополняют, становится нестерпимо.

  11. #50
    Master
    Регистрация
    04.03.2005
    Адрес
    Ukraine, Kiev
    Сообщений
    792
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Talking

    Цитата Сообщение от Proteus
    Ты видать проги с Энлайхта не дезасемблировал. У меня в инсте преподы которые асма не разу не видели или плохо на нём писали так же говорили. Могу тебя заверить что если как надо всё написать то ещё как станет быстрее и не в 2-3 раза, а раз в 500 если захотеть. Алгоритм конешно дело хорошее, только ассемблер это мир с другой логикой.. на Си ты его никогда не обгонишь (и не надо заливать про оптимизатор и прочее... ни один опитимзатор по сравнению с мозгами гроша ломанного не стоит)....
    Точно в точку ... Хотя и на АСМ-е могут написать тормоза, но и вправду, если программер нормальный, то асме он покорит любые высоты. Конечно, я не предлагаю переписывать загрузки с винта, это хоть и влияет на скорость, но не так мешает, как нудное ожмдание окончание компиляции ... Особенно меня шокируют ПиЦишные языки. Как-то мне довелось писать серьёзный проект, и я себя ощущал реально-тормозящим человеком ... Пока откомпилируктся прога, напрочь забываешь о том что делал !!!

    Кстати, я этот АСМ написал не просто так ... Для него должна быть оболочка, то есть текстовый редактор. И пока человек шурует новую строку своей программы, остальные компилируются на заднем плане. Но за текстовый редактор я так и не сел. Всё думаю, стоит-ли это делать ...
    AAA когда меня режут, я терплю, но когда дополняют, становится нестерпимо.

Страница 5 из 13 ПерваяПервая 123456789 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Colorbok^Phantom Family Group
    от rajdee в разделе Графика
    Ответов: 12
    Последнее: 20.01.2011, 23:32
  2. C compiler
    от vitasam в разделе Программирование
    Ответов: 17
    Последнее: 25.08.2005, 16:42

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •