OTCA Metapixel
Jun. 30th, 2016 01:40 amНашлось внезапно. Клеточный автомат с правилами Жизни Конвея, который эмулирует сам себя в крупном масштабе.
То-есть это вот так:
Называется OTCA Metapixel
Нашлось внезапно. Клеточный автомат с правилами Жизни Конвея, который эмулирует сам себя в крупном масштабе.
То-есть это вот так:
Называется OTCA Metapixel
no subject
Date: 2016-06-30 12:26 am (UTC)https://www.youtube.com/watch?v=xP5-iIeKXE8
no subject
Date: 2016-06-30 04:54 am (UTC)no subject
Date: 2016-06-30 05:23 am (UTC)Предположим мы это всё делаем на GPU с пропускной способностью памяти, скажем, терабит/с, и, допустим у нас её хватает (ну да, всего 2 Тб видеопамяти) и хватает шейдерных процессоров (примерно 10К), чтобы её нагрузить.
Получается чуть больше 600 лет на кадр. В принципе, это всё эффективно сравнительно паралеллится, так что вложив несколько миллионов бачей, можно довести срок до единиц суток, я думаю )
no subject
Date: 2016-06-30 07:02 am (UTC)no subject
Date: 2016-06-30 08:00 am (UTC)no subject
Date: 2016-06-30 04:38 pm (UTC)На самом деле, хэшфункция в 1 бит может быть всё равно эффективнее, чем высчитывать педантично всё (но, конечно, надо больше).
С хэшированием тут идея такая: если взять какой-то произвольного размера кусок карты, скажем, 64x64 (ну или даже 2048x2048), и посмотреть, сколько у него может быть разных вариантов, то там обнаружится, что вариантов намного меньше, чем 64^2. Можно создать хэштаблицу по этим вариантам, а значения таблицы - массив 64x64 результатов, по размеру равный длине периода. Соответственно, берёшь кусок 64x64, look-up'ишь его в таблице, берёшь кол-во поколений по модулю размер массива (период) и look-up'ишь конечный переход.
Это приблизительная идея, реально всё сложнее, потому что оно отягощается тем, что куски не полностью изолированны друг от друга, а через края может что-то заползать, и надо это тоже как-то учесть.
no subject
Date: 2016-06-30 06:56 am (UTC)no subject
Date: 2016-06-30 02:59 pm (UTC)no subject
Date: 2016-06-30 04:28 pm (UTC)