Боюсь, что вопрос будет риторическим, но все же создал такую ветку.
Кто-нибудь разбирался в тонкостях работы и отличиях Каргодиста от YACD?
Ну и вообще можем тут обсуждать все, что касается двух патчей.
Модераторы: eraserkry, Mihamster, Smoky555, Группа модераторов
Wowan писал(а):Интересно, какой вариант предпочтительнее с точки зрения экономии ресурсов процессора?
Использование ресурсов зависит от используемого алгоритма, читай от квалификации программиста. Но скорее всего разницы в использовании ресурсов нет вообще, либо она столь мизенрна, что ее можно считать погрешностью. Просто в одном случае мы рандомно выбираем точку назначения из тех где есть станции, а в другом из всех возможных.Wowan писал(а):Интересно, какой вариант предпочтительнее с точки зрения экономии ресурсов процессора?
Loko писал(а):Но это все теория. Предполагается что оба автора знают язык программирования на одинаковом уровне и используют одинаковые алгоритмы и компиляторы. А если есть исходники, то можно перекомпилировать код самому оптимизировав под свой конкретный процессор. Это может ускорить работу в разы.
Переписывать код не надо. ЯВУ разрабатывались как раз для того что бы программист описал, что он хочет не задумываясь, что процессор может. Т.к. исходник скорее всего не на чистом ассемблере, а на каком нибудь Си, то вполне достаточно перекомпилировать с указанием какие инструкции можно использовать при генерации кода. Компилятор сам все оптимизирует в меру своих талантов. Время выполнения уменьшится может и не в разы, но было бы заметно на глаз. Тормоза бы начинались не на 500 пассажирах, а на 700 Но делать это всего ровно никто не будет, так что это все из области "а если бы...".Ghost писал(а):На деле, сборка с оптимизацией даст, скорее всего, не более нескольких процентов ускорения, иначе бы все только такой оптимизацией и занимались бы. Для действительной оптимизации надо заниматься не перекомпиляцией, а полным переписыванием частей кода как раз с учетом конкретных моделей процессоров. Что является мартышкиным трудом, т.к. такое переписывание годится только для конкретной версии, с новой версией начинай заново.
Вернуться в Общие вопросы по OpenTTD
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4