Size: a a a

pro.graphon (and gamedev)

2020 March 29

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Или вот такой длиннющий свитч (это только половина)
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Со свитчем меньше регистров, наверно, будет использоваться, но там будет переиспользована куча регистров, которые использовались до этого куска
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Но со свитчем гораздо менее адово выглядит тот код, который это всё выдаёт
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
источник

k

koren in pro.graphon (and gamedev)
Как же всё-таки приятно... Приятно от того, что у тебя всё нормально работает после громадной переделки
источник

FM

Fr Mr in pro.graphon (and gamedev)
Ivan Stepanov
Потому что это невозможно нормально прогать, когда у тебя проект не на симейке, компилируется моно, содержит десятки тысяч инклудов, инспектится 1-10 минут на 8700k... Охххх
Так процессор гавно
источник

FM

Fr Mr in pro.graphon (and gamedev)
Смешно когда люди называеют UE4 гавном из-за того что на их машине долго компилится. Хотя сами не знают как работает transform
источник

FM

Fr Mr in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
Считай, что все функции выполняются так, как будто они заинлайнены, вне зависимости от того даже, заинлайнились они на самом деле (с большой вероятностью да) или нет
У GPU нет же стека. Разве не все функции инлайнятся?
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Fr Mr
У GPU нет же стека. Разве не все функции инлайнятся?
Хм, сейчас да, вообще, есть indexable temps, но это не очень оптимальная штука относительно
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
На VLIWовских AMD был стек адресов возврата, сейчас такое если делать, то вручную через indexable temps
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Но да, можно считать, что инлайнятся
источник

FM

Fr Mr in pro.graphon (and gamedev)
Vitaliy ◀️TriΔng3l▶️ Kuzmin
На VLIWовских AMD был стек адресов возврата, сейчас такое если делать, то вручную через indexable temps
То есть там теоретически могла быть рекурсия?
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Fr Mr
То есть там теоретически могла быть рекурсия?
Никто тебе и сейчас не запрещает сделать джамп назад) Циклы так и работают же
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
И стек в памяти свой устраивать
источник

FM

Fr Mr in pro.graphon (and gamedev)
При рекурсии на стек кладутся аргументы функции и адресса возвратов
источник

FM

Fr Mr in pro.graphon (and gamedev)
Я имею ввиду вызов рекурсивных функций сейчас и не возможен
источник

VK

Vitaliy ◀️TriΔng3l▶️ Kuzmin in pro.graphon (and gamedev)
Fr Mr
При рекурсии на стек кладутся аргументы функции и адресса возвратов
Относительная адресация регистров на AMD R600/R700 и на Xbox 360 была, сейчас тоже, я так понимаю, есть, ну и обычная память тоже есть для стека
источник

FM

Fr Mr in pro.graphon (and gamedev)
Например ты хочешь как на CPU обойти дерево
источник

MK

Matwey Kornilov in pro.graphon (and gamedev)
господа
источник

MK

Matwey Kornilov in pro.graphon (and gamedev)
подскажите где достать OpenCL рантайм для Linux для Intel CPU 3rd поколения?
источник