И вновь данайцы
Jan. 24th, 2009 16:06![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Забавно рассказывать о map и fold/reduce - и говорить о MapReduce.
Примерно так же забавно, как говорить о map и fold/reduce, объясняя fold/refold/unfold.
Википедия однозначно приносит плоды.
Зато ликбез был успешно проведён аж на трёх фронтах. И это радует.
Примерно так же забавно, как говорить о map и fold/reduce, объясняя fold/refold/unfold.
Википедия однозначно приносит плоды.
Зато ликбез был успешно проведён аж на трёх фронтах. И это радует.
no subject
Date: Jan. 25th, 2009 02:05 (UTC)no subject
Date: Jan. 25th, 2009 02:14 (UTC)я просто рассказывал как в ассет пайплайне работает анализ и трансформации identity/sharing, времен жизни и cold-hot/AoS-SoA.
no subject
Date: Jan. 25th, 2009 20:27 (UTC)no subject
Date: Jan. 26th, 2009 10:13 (UTC)Грубо - делаем все плоским (убираем делегирование, анфолд) и заново фолдим базируясь на PGO-информации.
Я напишу подробнее как время будет.
no subject
Date: Jan. 26th, 2009 10:18 (UTC)no subject
Date: Jan. 26th, 2009 06:02 (UTC)no subject
Date: Jan. 26th, 2009 10:18 (UTC)no subject
Date: Jan. 26th, 2009 07:00 (UTC)no subject
Date: Jan. 26th, 2009 10:03 (UTC)АоС - массив структур.
СоА - структура массивов.
В мире эльфов это неважно, а у нас - PGO потому что разные view.
no subject
Date: Jan. 26th, 2009 10:53 (UTC)no subject
Date: Jan. 26th, 2009 10:56 (UTC)no subject
Date: Jan. 26th, 2009 20:45 (UTC)Ну и для железа, очевидно.
no subject
Date: Jan. 27th, 2009 21:11 (UTC)То есть объекты одинаковых типов группируются в SoA и если необходимо вызывать виртуальную функцию, то она вызывается однажды для всей группы?
А внутри у неё много-много циклов по этим самым A ?
При AoS, цикл по А с вызовом виртуальной функции для каждой S, так ?
вместо O(n) витуальных вызовов, делаем O(1*С) С- количество групп однотипных обьектов ?
тут же профит в кэшмиссах, ага.
no subject
Date: Jan. 27th, 2009 21:15 (UTC)>>Примерно так же забавно, как говорить о map и fold/reduce, объясняя fold/refold/unfold.
реквестирую конспект лекции! (куда-нибудь на blog.gamedeff) :)
no subject
Date: Jan. 28th, 2009 02:58 (UTC)Про мозг - в authoring данных есть тенденция объединять мягкое и тёплое.
Например - звуки, графику, игровые свойства и т.п.
Получаются такие развесистые "графы всего".
На выходе обычно имеет смысл хранить звуки отдельно, рендерные отдельно, игровые данные рефолднутыми и т.п.
Ну и перешить объекты между собой где надо (где важно иметь отличный lifetime или принципиально надо дрочить на identity).
Получается "набор" "массивов", формирующих собою "гиперграф".
Про железо - префетчи и DMA-трансферы получаются влёт.
Плюс сильно проще управлять графами зависимостей тасков/джобов.
no subject
Date: Jan. 26th, 2009 08:59 (UTC)no subject
Date: Jan. 26th, 2009 09:59 (UTC)no subject
Date: Jan. 26th, 2009 10:09 (UTC)no subject
Date: Jan. 26th, 2009 10:15 (UTC)За ссылку спасибо :)
no subject
Date: Feb. 3rd, 2009 21:01 (UTC)Нихера не понял, оказалось про код )))),
я то думал про 2Dmapping -> 3Dmodel . . .
Кстати, вот мы с Серегой много аналогий находим между графой и звуком..
А тут есть что-то общее? Ну так, для праздного интереса. Термины ведь не зря одни и те же, скорее всего, абстракции-то общие и мозги одинаковые у всех исходно.