Thank You Posts

Show post that are related to the Thank-O-Matic. It will show the messages where you become a Thank You from an other users.


Сообщения - Holkin

: 26 Август 2016, 01:02:30 1 Общий раздел / Наши крепости / Re: Bridlemines

Есть еще скучный лог с убиванием огнедышащего ФБ.
Пока оставлю этот самый топор. Наконец-то он заслужил имя.
Позволил себе немножко сейв-лоада, потому что имя выбирается рандомно, а хотелось чего-нибудь поэтичного.
Everlasting Embraces

Топор обещает быть эпичным.

: 23 Август 2016, 01:22:02 2 Общий раздел / Наши крепости / Re: Bridlemines

Еще есть история про красильщика. Это часть гораздо большей истории о том как дварфы строили таверну в аду.
Историю берет свое начало с того дня когда мер решил, что нам нужно 2 надробных плиты. Тогда все покрутили у виска, потому что дварфов в гранитных гробах хоронят, но мастер свое дело сделал. И лежали эти таблички на складе.
Годы спустя, дварфы пошли искать магму. Она залегает очень глубоко. Нарыли кучу тоннелей и камня. Нашли адамантин.
Магма не очень то и нужна. Лес растет быстрее, чем крепость успевает его расходовать. А рубить один фиг надо, потому что всегда найдутся пара умников, которые залезут, а слезть не умеют.
Магма больше нужна для сжигания вещей, которые лениво продавать эльфам.
Короче, оставили один тайл канала в лавовое озеро. Таскали камни, всякую ерунду. Было как-то раз вылезали магма-крабы, но спецназ сработал быстро и их тут же унесли на склад при входе в крепость чтобы всякий проходящий караван видел с кем имеет дело.
Вот вылез еще один краб, но теперь не просто в пустое помещение, а потусоваться с пробегающим мимо красильщиком. Боец отряда альфа, элитный мастер топора, пошел устранять эту проблему. Пока он бежал, красильщик возомнил себя дофига крутым брюс-ли. Прыгает такой, порхает как бабочка и наваливает крабу. Альфовец какого-то хрена притащил с собой арбалет. Одному Армоку извесстно как внезапно элитная пехота начинает заниматься самодеятельностью. Вот стоит он смотрит на все это дело, постреливая деревяными болтами. Красильщик наконец-то допрыгался, свою пулю поймал. Побежал отступать, но изошел кровью. Альфовец смотрел на все это, а потом с двух ударов убил чертового именного краба. Но пойти выпить он не спешил, видно знал к чему дело идет. А дело шло к тому, что тело красильщика продолжало гореть и накрыло дымовой завесой все. И это был довольно длительный процесс. В результате от красильщика осталась только шапка, которую он выбросил когда убегал раненный от краба.
Вот и пригодилось плита.
Шапку отнесли на склад. Альфовец пошел пить.
Семьи у красильщика не было. Единственный небезразличный гражданин был портной. Он был не в восторге от того как обходятся с его мастерворками.
Через пару месяцев пришел иммигрант. Не бездарь, но и ничего полезного.

: 23 Август 2016, 00:41:24 3 Общий раздел / Наши крепости / Re: Bridlemines

А вот это из тех битв, которые мне хотелось сохранить. Тут без комментариев, картинки сами за себя говорят.

: 23 Август 2016, 00:33:22 4 Общий раздел / Наши крепости / Bridlemines

Собирал логи и скриншоты для себя. На эпичный рассказ как-то пока жалко времени, да и в общем вы сами таких крепостей наиграли.
Но если уже попросили меня лог одной минорной битвы, то можно подкинуть чего-нибудь интресного.
Может вдохновит кого-то из новичков как меня Boatmurdered!

Итак, с места в карьер:
Ого. Можешь скинуть сюда лог боя?

К сожалению, я не посчитал эту битву важной и о ней ничего не сохранилось кроме лога игры.
Я его распарсил ручками в нотпаде, вот что получилось.
Для эпичности еще:
Цитировать
Это правдивая история. Описываемые события произошли в Bridlemines в 94 году. По просьбе выживших мы изменили все имена. Из уважения к умершим всё остальное будет рассказано в точности, как и было


Спойлер
The Wereiguana Gust Edrikara has come!  A large iguana twisted into humanoid form.  It is crazed for blood and flesh.  Its eyes glow amber.  Its sandy taupe scales are round and overlapping.  Now you will know why you fear the night.
The wereiguana bites the stray draltha child in the upper body, tearing the fat!
ТУТ ПРИШЛОСЬ СОКРАТИТЬ, ПОТОМУ ЧТО ФОРУМ ПОЗВОЛЯЕТ НЕ БОЛЬШЕ 20000 ЗНАКОВ
The stray draltha child breaks the grip of The wereiguana's teeth on the stray draltha child's upper body.
The wereiguana scratches the stray draltha child in the head, tearing the fat and bruising the muscle!
The wereiguana scratches the stray draltha child in the mouth, tearing the muscle!
The wereiguana scratches the stray draltha child in the left front leg, tearing the fat!
The wereiguana bites the stray draltha child in the upper body, tearing the muscle and bruising the left lung!
The wereiguana latches on firmly!
The wrestler strikes the wereiguana in the left upper arm with her ðsteel shieldð, bruising the bone!
The stray draltha child breaks the grip of The wereiguana's teeth on the stray draltha child's upper body.
The wrestler strikes the wereiguana in the left eyelid with her ðsteel shieldð and the injured part explodes into gore!
The wereiguana misses the wrestler!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler strikes the wereiguana in the right upper arm with her ðsteel shieldð, bruising the bone!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the upper body with her ðsteel shieldð, bruising the muscle and bruising the right lung!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler strikes the wereiguana in the left hand with her ðsteel shieldð and the injured part explodes into gore!
An artery has been opened by the attack!
The wrestler charges at the wereiguana!
The wereiguana looks surprised by the ferocity of The wrestler's onslaught!
The wrestler collides with the wereiguana!
The wereiguana is knocked over!
The wereiguana stands up.
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the neck with her ðsteel shieldð, bruising the muscle!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler scratches the wereiguana in the right lower arm, tearing the muscle!
An artery has been opened by the attack!
The wereiguana misses the wrestler!
The wereiguana misses the wrestler!
The wrestler punches the wereiguana in the right foot with her right hand, bruising the muscle!
The wereiguana misses the wrestler!
Gust Edrikara, Wereiguana: I've been injured badly.  There is no hope!
The wrestler strikes the wereiguana in the tail with her ðsteel shieldð, bruising the muscle!
The wereiguana misses the wrestler!
The wrestler bites the wereiguana in the right upper leg, tearing the muscle!
The wrestler latches on firmly!
The wereiguana misses the wrestler!
The wereiguana charges at the wrestler!
The wereiguana collides with the wrestler!
They tangle together and fall over!
The wrestler stands up.
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the neck with her ðsteel shieldð, bruising the muscle and tearing the upper spine's nervous tissue!
The wereiguana misses the wrestler!
The wrestler kicks the wereiguana in the left upper arm with her right foot, fracturing the bone!
The wereiguana attacks the wrestler but She jumps away!
The wrestler strikes the wereiguana in the left foot with her ðsteel shieldð, bruising the muscle!
The wrestler scratches the wereiguana in the lower body, tearing the muscle and bruising the guts!
The wereiguana attacks the wrestler but She jumps away!
The wereiguana attacks the wrestler but She jumps away!
The wrestler strikes the wereiguana in the left upper leg with her ðsteel shieldð, bruising the muscle!
The wereiguana strikes at the wrestler but the shot is blocked!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the lower body with her ðsteel shieldð, bruising the muscle and bruising the guts!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the right upper arm with her ðsteel shieldð, bruising the bone!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the upper body with her ðsteel shieldð, bruising the muscle!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler strikes the wereiguana in the right upper arm with her ðsteel shieldð and the injured part explodes into gore!
An artery has been opened by the attack!
The wereiguana misses the wrestler!
The wrestler punches the wereiguana in the right lower leg with her right hand, bruising the bone!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the upper body with her ðsteel shieldð, bruising the muscle and shattering the left floating ribs!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the right upper leg with her ðsteel shieldð, bruising the bone!
The wereiguana misses the wrestler!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler scratches the wereiguana in the left upper arm, tearing the muscle and bruising the bone!
An artery has been opened by the attack!
The wereiguana misses the wrestler!
The wereiguana strikes at the wrestler but the shot is blocked!
Stray Draltha Child (Tame) is no longer enraged.
The wrestler punches the wereiguana in the left hand with her right hand, shattering the bone!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the right upper leg with her ðsteel shieldð, bruising the bone!
The wereiguana attacks the wrestler but She jumps away!
The wrestler bites the wereiguana in the left lower arm, tearing the muscle!
The wrestler latches on firmly!
The wereiguana misses the wrestler!
The wrestler shakes the wereiguana around by the left lower arm, tearing apart the left lower arm's muscle and bruising the bone!
An artery in the left lower arm has been opened by the attack, many nerves have been severed, a ligament has been torn and a tendon has been torn!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the right upper leg with her ðsteel shieldð, bruising the bone!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler strikes the wereiguana in the right upper arm with her ðsteel shieldð, fracturing the bone!
The wereiguana misses the wrestler!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler strikes the wereiguana in the right foot with her ðsteel shieldð, bruising the muscle!
The wereiguana misses the wrestler!
The wrestler bites the wereiguana in the upper body, tearing the muscle and bruising the right lung!
The wrestler latches on firmly!
The wereiguana misses the wrestler!
The wrestler shakes the wereiguana around by the upper body, tearing apart the upper body's fat!
The wrestler shakes the wereiguana around by the upper body, tearing apart the upper body's fat!
The wrestler shakes the wereiguana around by the upper body, tearing apart the upper body's fat!

The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler strikes the wereiguana in the right lower arm with her ðsteel shieldð, fracturing the bone!
The wereiguana misses the wrestler!
The wrestler punches the wereiguana in the head with her right hand, bruising the muscle, bruising the skull!
The wereiguana attacks the wrestler but She jumps away!
The wrestler strikes the wereiguana in the upper body with her ðsteel shieldð, bruising the muscle and bruising the left lung!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler punches the wereiguana in the left hand with her right hand, shattering the bone!
The wereiguana misses the wrestler!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the left lower arm with her ðsteel shieldð, bruising the bone!
The wrestler scratches the wereiguana in the lower body, tearing the muscle and bruising the guts!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the left hand with her ðsteel shieldð, bruising the bone!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the head with her ðsteel shieldð, bruising the muscle and bruising the skull!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the lower body with her ðsteel shieldð, bruising the muscle and bruising the guts!
The wereiguana attacks the wrestler but She jumps away!
The wereiguana bites the stray draltha child in the lower body, tearing the fat and bruising the muscle and bruising the guts!
The wereiguana latches on firmly!
The wrestler strikes the wereiguana in the right lower arm with her ðsteel shieldð, bruising the muscle!
The stray draltha child breaks the grip of The wereiguana's teeth on the stray draltha child's lower body.
The wereiguana attacks the wrestler but She jumps away!
The wrestler punches the wereiguana in the right upper leg with her right hand, bruising the muscle!
The wereiguana strikes at the wrestler but the shot is blocked with the ðsteel shieldð!
The wrestler strikes the wereiguana in the left lower leg with her ðsteel shieldð, bruising the bone!
The wereiguana attacks the wrestler but She jumps away!
The wrestler strikes the wereiguana in the right upper leg with her ðsteel shieldð, bruising the bone!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the left upper arm with her ðsteel shieldð and the injured part is crushed!
An artery has been opened by the attack!
The wereiguana bites the wrestler in the left upper arm, bruising the fat through the xðpig tail dressðx!
The wereiguana latches on firmly!
The wrestler breaks the grip of The wereiguana's teeth on the wrestler's left upper arm.
The wrestler strikes the wereiguana in the left upper leg with her ðsteel shieldð, bruising the bone!
The wereiguana attacks the wrestler but She jumps away!
The wrestler strikes the wereiguana in the right lower leg with her ðsteel shieldð, bruising the muscle!
The wereiguana attacks the wrestler but She jumps away!
The wrestler strikes the wereiguana in the upper body with her ðsteel shieldð, bruising the muscle!
The wereiguana bites the wrestler in the right lower arm, but the attack is deflected by the wrestler's steel right gauntlet!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler strikes the wereiguana in the left hand with her ðsteel shieldð, bruising the muscle!
The wereiguana misses the wrestler!
The wrestler kicks the wereiguana in the right upper leg with her left foot, bruising the muscle!
The wereiguana misses the wrestler!
The wereiguana attacks the wrestler but She jumps away!
The wereiguana bites the stray draltha child in the lower body, tearing the fat!
The wereiguana latches on firmly!
The stray draltha child breaks the grip of The wereiguana's teeth on the stray draltha child's lower body.
The wereiguana bites the stray draltha child in the left eye, tearing it!
The wereiguana latches on firmly!
The wrestler strikes the wereiguana in the right upper leg with her ðsteel shieldð and the injured part is smashed into the body, an unrecognizable mass!
An artery has been opened by the attack!
The stray draltha child breaks the grip of The wereiguana's teeth on the stray draltha child's left eye.
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the upper body with her ðsteel shieldð, bruising the muscle and bruising the right lung!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the left foot with her ðsteel shieldð, fracturing the bone!
The wereiguana attacks the wrestler but She jumps away!
The wrestler strikes the wereiguana in the lower body with her ðsteel shieldð, bruising the muscle and bruising the guts!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler scratches the wereiguana in the left upper arm, tearing the muscle!
The wereiguana misses the wrestler!
The wrestler strikes the wereiguana in the right foot with her ðsteel shieldð, bruising the muscle!
The wereiguana strikes at the wrestler but the shot is blocked!
The wrestler strikes the wereiguana in the lower body with her ðsteel shieldð, bruising the muscle and bruising the guts!
The wereiguana bites the wrestler in the fourth finger, right hand, but the attack glances away!
The wrestler strikes the wereiguana in the right hand with her ðsteel shieldð and the injured part is crushed!
An artery has been opened by the attack!
Tobul Itonmistem has become a Scribe.
[свернуть]
Да вроде все как и раньше делает. Только не берет работы по проф навыкам пока на службе.
Главная проблема в том, что сигнал во вселейнной не может распрастраняться быстрее скорости света. По крайней мере пока нет технологии, которая этот барьер перешагнет. А это значит, что если ваш компьютер имеет компоненты в разных точках пространства, то сигнал будет проходить какое-то время. Отсюда получается, что производительность не может быть бесконечно в принципе, чем меньше компьютер тем она теоретически может быть больше, но есть предел.
Транзисторы сейчас вроде уже делают слоями в три атома. Меньше уже вряд ли можно. Может какие-то графеновые технологии и дадут некоторый прорыв, но дно там уже близко.
Вторая проблема это прохождение сигнала по проводнику. Так получается, что чем больше частота и длина проводника, тем больше искажается сигнал и становится труднее понять где ноль, а где единица. Можно конечно поднять напряжение и немножко эту границу по частоте отодвинуть, но резко возрастает энергопотребление. А поскольку энергия никуда не девается, то излучается она в виде тепла, отводить которое часто бывает нелегко. Оверклокинг это больше частоты/напряжение и резко больше тепла, производители хотят чтобы оно отслужило гарантийный срок, потому могут занижать возможности.
Еще насколько мне известно есть сама проблема в физических транзисторах. В процессорах сейчас уже наверное используются полевые тразисторы, а там есть какая-то ненулевая емкость затвора (или хз что, я не эксперт в тразисторах), которая влияет на скорость переключения. Я пока не видел тразисторов, работающих на гигагерцах. 500 МГц это хорошие тразисторы.
Таким вот образом работает ваш процессор на 500 МГц на низком напряжении.
Процессор сам по себе это сумматор, хранение состояния  и коммутация. Сумматор это простая штука. Удивительно простая.
Вычитание делается просто добавлением отрицательного числа. Если у вас скажет 3 десятичных разряда, то 10-271 будет 1000-(10+1000-271) = 1000-(10 + 729) = 1000-739 = -261. Операция 1000-Х это инверсия цифр +1. В двоичном коде это тупо нули на единицы заменить и наоборот, в десятичном просто цифру от 9 отнять. Т.е. -271 это 728+1. Процессор будет работать с числом 729, а перед запись в память оно будет превращено обратно в отрицательное. Вот и вся магия. Умножение тоже можно на одних сумматорах собрать, с делением так красиво не выходит, поэтому эта операция занимает много времени. Если вам жалко сумматоров (т.е. тразисторов, коммутации и питания), то умножение тоже можно сделать более длинным по времени. 32-битный процессор это будет делать в 32 такта. 500 МГц это по-хорошему 500 млн тактов.
Люди достаточно давно поняли, что пока команда читается с памяти, процессор определяет какую именно операцию он будет делать и загрузит для нее данные, то отдельные части просто стоят без дела. Решили поставить это все на конвеер. Теперь сумматор не ждет пока устройство управления поймет какую команду делать, он уже берет готовую команду. И пока поток идет непрерывно все идет отлично. Но есть еще условное ветвление, так что 100% эффективность конвееров мы не получаем. Если команда проходила весь цикл за 100 тактов, то она и будет проходить, не важно если в среднем за 2 проходила.
Идеально было бы конечно иметь прямые проводки от процессора к каждой ячейке памяти. Но реально это вряд ли хорошая идея. Потому в вас платка памяти на миллиарды байт, а контактов там всего штук 300, среди которых питание и все прочее. Как вы можете догадаться там внутри стоит коммутатор, а это задержка. Да и память пишется не мгновенно.
В новой памяти там внутри вероятно тоже стоят конвееры. Вряд ли оно будет только по одной ячейке читать, оно вам целый блок выдаст. И теперь еще вишенка сверху: кеш. Память реально построена в яруса четыре, а может и больше. Процессор думает что в два: собственные регистры и оперативная память. Но реально процессор за данными бежит в кеш, который отдает данные если у него они уже есть, либо бежит на уровень ниже и так далее. Поскольку высока вероятность того что обрабатываемые данные и программный код будут находиться близко от прошлых, этот фокус прокатывает и очень даже хорошо. Но весь процесс похода в глубины памяти это тысячи процессорных тактов.
Но тут магия еще не кончается. Есть еще виртуальная память. Это по многим причинам хорошо, но тоже не бесплатно. Те данные, которые процессор ожидает видеть в оперативной памяти, реально могут лежать где-нибудь еще, например на диске (файл подкачки). Оперативная память дала неиспользованное пространство другому процессу и все работет просто отлично. Но как только процесс такую страницу просит, оперативная память посылает запрос на диск, контроллер диска читает в свой кеш блок с ФИЗИЧЕСКИ_ДВИЖУЩЕГОСЯ диска (вот почему ССД лучше, там просто микросхемы), блокирует доступ к памяти (и все, в т.ч. проссеро ждут пока этот блок кончится) и пишет данные в нужное место. Потом ОС эти данные (страницу памяти) берет и модифицирует. Потому что в коде написано "перемножить ячейку 50 с 52, перейти на ячейку 101", реально физически эта 52 ячейка будет лежать где-нибудь в 122143451 ячейке. Но теперь есть аппаратная поддержка виртуально памяти и эта вся магия уже должна вычисляться внутри процессора, точно так же конвеером.
Беда начинается когда у ОС много процессов и они постоянно замещают свои странцы. Потому рекомендуют перед тем как играть в игры повыключать все что только можно.
Это что касается однопроцессорных систем.
Есть конечно другие подходы, их достаточно много, но они специфические. Например, вычислять графику. Так работа с координатами по известных алгоритмам, так что целый массив координат может обрабатывать одновременно. Там тысячи ядер. Конечно не общего назначения, а более простых, но суть та же: сумматор, состояние и коммутация. Раньше суперкомпьютеры делали на обычных процессорах, а потом решили на видеокартах делать. И что, в астрономии тоже куча координат по известных агоритмам. Это как раз то место где Минский был неправ. Есть задачи, для которых еще можно много чего сделать.
Кстати, элементы этих специфических процессоров используются и в обычных. Современный интел это такая навороченная фигня, что я наверное и не смогу понять всей глубины инженерной мысли. Но все эти вещи достаточно просты сами по себе. Там никакого секрета мироздания не лежит.
С многопроцессорными системами главная проблема это взаимодействие. Две главных модели предполагают либо общую память либо посылку сообщений. Простая модель когда десять процессоров делят одну память достаточно ограничена. В промышленных целях так навереное никто не делает, у каждого есть своя собственная, а в общую он бежит при крайней необходимости. На обычном десктопе вероятно примерно тот же результат за счет кешей. Но кеши относительно маленькие. И при 10 процессорах вы только представьте, если всем сразу понадобятся данные из разных кусков. Это 9 раз нужно ждать полный поход в глубины памяти. Возможно, если бы эти процессы работали по два на одно ядро, то каждый бы из них выиграл за счет кеша памяти и это было бы быстрее. А одновременный доступ давать нельзя, потому что будут нехорошие баги. Потому я считаю, 8 ядер для домашнего использования более чем. Кстати, показать эти 8 ядер как 16 это навреное гипертрединг и есть, как раз для случая парой строчек выше.
Так вот эта самая маркетинговая пиковая проивзодительность считается по самому оптимистичному сценарию. Реальная будет отличаться и реально зависит от исполняемого кода и условий экплуатации. 8 ядер по 3 ГГц это может быть что-то типа 400 млн операций в секунду реально.
Перспективы конкретно такого подхода с разделяемой памятью я вижу в поиске таких всяких трюков, возможно каких-то графеновых технологий и/или оптимизации самого кода, выдаваемого компилятором. Но часто так вглубь ходить не нужно, того что есть уже достаточно. Хотеть больше могут всякие сервера, а это уже более другие задачи, чем симулятор вселенной.
Кстати, может еще одну хитрую штуку вам открою, не знаю имеет ли отношение. Все те прелести что в процессоре могут быть уже там вероятно есть. Вот прям все. А чтобы иметь разные ценовые категории, некоторые части просто выключаются. Реально дешевле в серию пустить хороший процессор, чем десяток разных.
P.S. Если бы "бороды" были абстрактными акторами, общающимися со внешним миром только посредством посылки сообщений - то они отлично бы распараллелились на все 24 ядра. А так - 24 ядра не означают увеличения производительности в 24 раза.

Хотите ликбез на тему производительности?
Все конечно есть в интернете, но кто будет специально искать.

Если вкратце, то 24 ядра это бред. Меня учили, что больше 16 не стоит, и моя интуиция с этим согласна. 16 это конечно не закон природы, а просто число, но это наверное ближайшое число степерь двойки к тому что уже математически можно посчитать. А причина в доступе к памяти. Даже если нет зависимости по данным память имеет ограниченно количество каналов доступа к ней. Одноканальной явно будет мало.
Так что маркетинг это все. У видеокарты там тысячи ядер внутри, но их видимо продают по количеству видеопамяти. А вот процы по ядрам и гигагерцам, как когда-то фотики по мегапикселям.
DIV и MUL должны много жрать на микроконтроллерах и старых процессорах. Умножение точно можно за два такта сделать и оно уже наверняка сделано, с делением так красиво не получается, но оптимизация тоже есть. По тактам эти операции можно считать быстрыми, т.к. кеш промах это на порядок или два больше, а страничный промах это еще на два-три порядка сверху.
Компиляторы неидеальны, это действительно так. Но все эти оптимизации, которые можно сделать просто посмотрев на код, в компилятор добавляются постоянно. Ну по крайней мере почему бы разработчикам компиляторов этого не делать.
Еще есть такая штука, что 90% кода выполняется 10% всего времени, так что нужно знать где оптимизировать. И если человек столько лет уже разрабатывает игру и она у него уперлась в производительность, то он наверняка над этим думал.
Анализировать исполняемый код на возможность распараллеливания это идея интересная. В прицнипе это то чем занимается вычислительная техника последние лет 40. Просто я тут на позициях скептика, который считает что все уже давно придумано, а реализовано только то, что экономически выгодно. Оно вероятно не так.
всё это говно
На минуточку одна из игр с самой глубокой механикой, которую пытались клонировать, но не смогли.
Увидел вот это : В процессорах Intel Skylake реализован «обратный Hyper-Threading»
Имея некоторый знания в области, нифига не могу понять чего нового и радикального они придумали и главное чем оно может помочь ДФ.
Что бы вы понимали, гипертрединг это штука, которая может быстро переключить контекст между потоками выполнения. Пока один поток ожидает выполнения длинной команды, процессор мог бы перемножить сотню (а то и тысячу пар чисел). Вот это время простоя можно заполнить если по-умному переключать потоки выполнения. Беда в том, что само переключение затратное. Ну им удалось это сделать менее затратным, да еще и уровнем пониже операционной системы (это всегда считалось круто, но часто экономически нецелесообразно).
Теперь они хотят сказать, что они собираются один поток раздробить как только можно? Так это вроде уже давно все сделано. Пока команда выполняется там рядом уже загружена и подготовлена следующая. Именно поэтому они пишут частоту 3 ГГц когда там реально на порядок меньше. А распределить 100 однообразных операций на два потока может и не получиться, если там имеется зависимость по данным. А если там зависимость или нет лучше всего определяется на этапе компиляции программы, в рантайме это не то чтобы нереально, но крайне маловероятно что кто-то когда-то этим будет заниматься (если покопаться, то можно найти чудесное направление развития вычислительной техники, которое зашло в тупик, можно даже фильм снять как мировые корпорации сговорились против dataflow).
Единственных их шанс это избыточность вычислений для ситуаций типа "если А то Б иначе В", когда А, Б и В выполняются параллельно, а потом А решает кто из Б или В прав. Но это в свою очередь гарантирует конфликты  для Б и В (а может и А) доступа к ресурсам.
Если у них получится, то ДФ можно будет повысить производительность. Но это фокусы высшего пилотажа.
Делаешь гроб, размещаешь его, даешь настройку хоронить дварфа. Любой дварф, имеющий включенную переноску останков (по умолчанию включена) берет останки и несет в назначенный гроб. Возможно, через j-меню можно посмотреть статус захорошения.
Если дварфы заняты чем-то более для них интересным, или труп по каким-то причинам заблокирован, то оно и будет простаивать. Если никаких левых стен не построено и через t-меню останки не отмечены как TSK, то проверьте вышеприведенные моменты и на основании вашего отчета можно будет решить что делать дальше.
Немножко оффтопа.
Если вы пишете что-то важное, что людям очень нужно будет прочитать, то можете хоть шифром записаться. Все равно раскопают и будут радоваться.
Если же пишете что-то такое, что вы желаете видеть прочитанным, то сделайте это удобным для чтения. И есть общепринятые нормы. Это будут не обязательно литературные нормы (т.к. те люди, которые все это утверждают на гос. уровне те еще бюрократы), но важно чтобы читатель их одобрял. В любой книжке "как стать писателем" вам напишут что читатель - ленивая скотина.
Так вот вы многое сделали. Такую тонну текста одним абзацем никто читать не будет. Но она структурирована.
Но тов. Свинец вам любезно подсказал над чем нужно поработать, чтобы в следующий раз это выглядело еще более привлекательно.
От себя я могу добавить, что запятая ставится после слова без какого-либо пробела, затем следует уже пробел и другое слово. Ошибки орфографии вам поправит любой спелчекер, который уже по умолчанию должен быть в браузере. Он иногда ошибается. Запятые и проч. используйте как хотите, для структурирования мыслей внутри предложений. Я не думаю, что много успешных блоггеров пройдет тест на правила пунктуации.
А людей, которые вешают ярылки лучше игнорить совсем. Жизнь слишком коротка, чтобы на них задерживаться.
Модераторы видно еще празднуют.
Вотевер реквестирую убрать мат и оффтоп.

: 02 Апрель 2015, 23:39:53 15 Разное / Музыка / Re: Музыка по-дварфийски

https://www.youtube.com/watch?v=IYbE2coMZPc

Лайкаем, если хотите увидеть еще. :)

PS. Качайте лосслесс, в ютубе звук ужасен.
Страницы: [1] 2