Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Компилировать код в .ЕХЕшник
CKA3KA
сообщение 12.12.2018, 13:13
Сообщение #1


**

Neophyte
Сообщений: 28
Регистрация: 17.11.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.119
Возраст: 33



Добрый день.
Не планируется ли в новых версиях сделать такую возможность? (IMG:style_emoticons/default/huh.gif)
Написал код и скомпилировал его в ехе,
при компиляции прописывать скорость выполнения скрипта и все настройки,
и он затем будет уже самостоятельным файлом, запускающемуся без UOPilota/
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
WKnight
сообщение 12.12.2018, 20:12
Сообщение #2


********

Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006
Группа: Пользователи
Наличность: 0
Пользователь №: 4.688



Планируется. Правда уже лет 15. Наверно скоро будет готово (IMG:style_emoticons/default/smile.gif)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 13.12.2018, 0:46
Сообщение #3


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
Добрый день.
Не планируется ли в новых версиях сделать такую возможность? huh.gif
Написал код и скомпилировал его в ехе,
при компиляции прописывать скорость выполнения скрипта и все настройки,
и он затем будет уже самостоятельным файлом, запускающемуся без UOPilota/

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


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sutra
сообщение 13.12.2018, 5:25
Сообщение #4


*******

Adept
Сообщений: 923
Регистрация: 10.8.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.007



Цитата
Планируется. Правда уже лет 15. Наверно скоро будет готово

ВАУ! А я даже не решался про это спрашивать. Вот и буду думать, налево или направо идти (ждать или на lua).
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 13.12.2018, 7:04
Сообщение #5


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
Вот и буду думать, налево или направо идти (ждать или на lua).

Так вы уже пишете с компиляцией на луа. Скрипт на луа перед выполнением компилируется. Его можно еще предварительно скомпилировать, но так обычно никто не делает. Компиляция достаточно шустрая и при запуске не возникает существенных задержек.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sutra
сообщение 13.12.2018, 13:55
Сообщение #6


*******

Adept
Сообщений: 923
Регистрация: 10.8.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.007



Цитата
Так вы уже пишете с компиляцией на луа

Пишу, но ты же сам говорил, что на СИ работает быстрее. Я не спец по этим вопросам, но подозреваю, что откомпилированный Пилотом код будет выполняться ощутимо быстрее луашного. Ну по логике однозначно должен быть быстрее.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 13.12.2018, 14:34
Сообщение #7


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
Пишу, но ты же сам говорил, что на СИ работает быстрее. Я не спец по этим вопросам, но подозреваю, что откомпилированный Пилотом код будет выполняться ощутимо быстрее луашного. Ну по логике однозначно должен быть быстрее.

Начнем с того, что пилот написан да делфи =)
Почему код откомпилированный из синтаксиса пилота будет быстрее, чем откомпилированный из луа синтаксиса? Все зависит целиком от компилятора.
На си работает быстрее потому, что там нет оберток для работы с целочисленными переменными, нет хранения всего и вся в double, си быстрее потому что там не используется зачастую безопасный код. Например есть в с++ класс vector, который считается очень хоршо вылизанным. Суть вектора в том, что он берет на себя риски выхода за пределы массива, выделяет память и т.д. Цена за это - скорость. Причем существенно. Если память не изменяет, то раза в 2-3 падает. Lua безопасен, в нем все красиво подведено для того чтобы человек не заморачивался с типами данными, выделением памяти, выходами за пределы массивов, указателями, свой garbage collector, и т.д. Чтобы все это работало нужны доп вычисления. Делаем выводы. И это не проблема lua, и luajit в частности. У них очень хорошая скорость работы, вылизанный код. Просто если хочется скорости то программист сам должен контролировать многие вещи. Хочется автоматики - автоматика кушает ресурс. Ну и не в обиду кнайту будет сказано, но луа развивался годами, вылизывался годами командой программистов, которые все, что делали - развивали луа, потом пришел luajit с его динамической компиляцией над которым работает еще толпа народа. Чисто объективно, если хочется получить нереальную скрость, то одного кнайта мало =)
Вообще плотно не касался, но урывками читал, что народ при компиляции luajit отключает дополнительно какие-то проверки безопасности кода и получает прирост (в luajit часть из них уже отключена изначально). По большому счету в идеальных условиях lua мог бы заработать примерно в 3 раза быстрее - это получится скорость чистого СИ. А накладные расходы за удобства куда и как?
Кстати наткнулся буквально вчера на тест lua-api стандартый vs ffi. Разница почти в 10 раз в пользу ffi. Команда luajit творит чудеса. Я уже молчу про то, что lua-api костыль страшной силы и для использования либ они должны быть частично переписаны/обернуты на, например, СИ, в то время, как через ffi можно использовать любые стандартные сишные либы, в т.ч. доступ к виндовым.
https://luapower.com/winapi
Заметь, никаких оберток. Только чистый ffi с банальным указанием типов данных которые жрет либа.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sutra
сообщение 13.12.2018, 15:09
Сообщение #8


*******

Adept
Сообщений: 923
Регистрация: 10.8.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.007



Цитата
Lua безопасен, в нем все красиво подведено для того чтобы человек не заморачивался с типами данными

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


Я имел ввиду про заморочки с использованием СИ массивов. В таком варианте вся безопасность летит к чертям, да ещё и гемор с разным индексированием массивов.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 13.12.2018, 15:13
Сообщение #9


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
Делфи ... я не думаю, что он медленнее, я сам дальше Делфи не ушёл и у меня никогда никаких тормозов не было.

Я не говорил, что он медленне (IMG:style_emoticons/default/wink.gif) Я просто заметил, что пилот не на СИ.
Цитата
Но скорость для меня важнее безопасности. Программировать надо правильно, вот и всё.

Тогда асм. Почему на нем не пишут, ведь он действительно хорош и шустр. Тут те же самые причины, только еще чуть более обленившиеся.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sutra
сообщение 13.12.2018, 15:18
Сообщение #10


*******

Adept
Сообщений: 923
Регистрация: 10.8.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.007



При жёстком структурировании кода никаких ошибок быть не должно в принципе. Их анализ должен выполняться в самой структуре, от низшего уровня к высшим. По крайней мере логических ошибок. У меня проблемы иногда возникали на уровне архитектуры железа. Помню был случай ... Была у меня функция теста скорости системы. Так когда я перешёл в своё время на Duron, он гадина шибко умный, посчитал, что выполнять одно и то же 1000 раз нет смысла и просто игнорировал цикл - итог была ошибка деления на нуль. С тех самых пор я привык контролировать всё и всегда.

Цитата
Тогда асм

А вот там проблем с железом может быть мама не горюй, хотя в своё время многие вещи были именно на нём, потому что альтернативы не было жутким тормозам в некоторых случаях. Я рисовал на Паскале, а там где были тормоза вставки на асме.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 13.12.2018, 15:21
Сообщение #11


***********

Модератор UOPilot
Сообщений: 9.460
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27708
Пользователь №: 11.279



Цитата
Я имел ввиду про заморочки с использованием СИ массивов. В таком варианте вся безопасность летит к чертям

Результат - скокрость. Программисту пришлось подумать, чтобы среда не думала за него во время выполнения. Вот и пример причины и следствия и почему не очень хочется в низкоуровневом писать некоторые вещи.
Я вообще всегда считал, что у луа 2 проблемы основных:
1) Дикая катастрофа с подключением длл и не особым желанием людей переписывать длл под луа. По сути это полностью решилось через ffi, потеря скорости там смешная. Лично я недоумевал почему не сделали подргузку либ просто через описание типов данных. Оказалось сделали - ffi.
2) Невозможность целочисленной математики. Здесь все несколько сложнее. Частично оно решилось через ffi, но это математика и количество вызовов существенно больше, чем вызовов функций и тут же сказывается на скорости прокладка. Тем не менее луа в первую очередь позиционируется не как среда для вычислений, а как вставиваемый язык для склейки пользовательский функций с возможностью быстро писать скрипты из этих функций.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sutra
сообщение 13.12.2018, 16:42
Сообщение #12


*******

Adept
Сообщений: 923
Регистрация: 10.8.2018
Группа: Пользователи
Наличность: 0
Пользователь №: 19.007



Это понятно про lua. Это гемор программеров. Мы в большинстве своём (я не про таких как ты Дарк) - юзеры, слегка программирующие. Нам важен конечный результат, одним из которых является скорость. Ошибки? - забота Кнайта. Вот компильнёт он код и мы получим конечный результат.

По большому счёту, делать конечный продукт (что и делает Кнайт) процесс трудоёмкий. Борьба с тупостью юзеров, которые умудряются накрошить ошибок, там, где вроде их и быть то недолжно - работа неблагодарная, но нужная. Так что наберёмся терпения и будем ждать и "крошить" ошибки.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 28.3.2024, 11:11
Designed by Nickostyle