moby

Трёхмерные запоминающие устройства как область применения четырёхмерного МКЭ

feldgendler: Надо начать акцЫю: бесполезные научные работы. То есть, теоретические (и практические) исследования, обладающие всеми признаками научной работы, кроме полезности. Первая идея у нас уже есть: четырёхмерный МКЭ. А я сейчас придумал ещё одно (музыкой навеяло): двумерные формальные грамматики. Типа, у двумерных текстовых строк есть не только длина, но и высота, и для таких строк можно задавать грамматики, ввести свой аналог БНФ, регулярных выражений, разработать технологию парсинга.
datacompboy: ]]]]]]]]]]]]]]
datacompboy: 5+!
feldgendler: Давай, а? Четырёхмерный МКЭ Рояку сдадим, а двумерные грамматики -- Шапошниковой!
feldgendler: Ещё идеи по бесполнезным научным работам?
datacompboy: м... ООП-Фортран лисицину?
feldgendler: Кажись, мелкомягкие уже ООП туда правда ввели.
datacompboy: оппаньки.
feldgendler: А вот компилятор с фортрана в машину Тьюринга... Впрочем, могут усмотреть практическую пользу.
datacompboy: ] спортировать GCC на машину тьюринга!
datacompboy: или компилятор с пролога ?
feldgendler: Как там? // когда линуксоиды...
feldgendler: Не, можно просто придумать двумерный комп (у которого адресация памяти двумерная), и на основе тех двумерных грамматик разработать двумерный язык программирования и компилятор с него.
datacompboy: да. и написать его эмулятор на машине тьюринга
feldgendler: Кстати, у такого компа проблема фрагментации памяти остро встаёт. Вот нету блока необходимой ширины, а есть только высокие, но узкие. Но тут, конечно, операционка может виртуальную память отображать квадратными страницами на физическую.
datacompboy: ))))))))))))))
datacompboy: ]]]]]]]]]]]]]]]]]]
datacompboy: пипл.
datacompboy: ты верные идеи в массу гонишь!
feldgendler: Системные требования: 100 квадратных мегабайт RAM.
feldgendler: Мб^2 в смысле.
datacompboy: )
datacompboy: слушай
datacompboy: а ты представляешь себе 3D ?
feldgendler: Да хоть nD.
datacompboy: пока 2D память -- можно минимизировать габариты за счет сворачивания плёнок как в кондёре
datacompboy: А вот 3D -- это ж уже придётся закручивать через 4е измерение.
datacompboy: Вот тут-то 4D МКЭ и понадобится!
feldgendler: Да она не обязана же физически располагаться в соответсвии с логической структурой.
feldgendler: Или обязана?
datacompboy: а как иначе?
datacompboy: вот 1D память располагают в 2D.
datacompboy: 2D память закручивается в 3D.
feldgendler: Кстати, а вот если для простоты считать, что там одна команда проца сидит в одной ячейке. Тогда куда переходит проц к следующей команде -- вправо или вниз?
datacompboy: 3D память -- только в 4D. как иначе?
datacompboy: влево--верх
feldgendler: А циклы могут правда по замкнутому кругу выполняться.
datacompboy: по диагонали.
datacompboy: дык это самая главная схема оптимизации!
datacompboy: переходы только вверх/вниз
datacompboy: а сам он только направо/налево ходит
feldgendler: А влево-вправо как же
datacompboy: в зависимости от CLD
feldgendler: А, поннятно.
datacompboy: поэтому ставят банки разной ширины
datacompboy: от 1 байт (чтоб только NOP поместился
feldgendler: Для работы с графикой офигенные преимущества.
feldgendler: А зачем? Пускай команда занимает блок высотой 1 и переменной шириной.
datacompboy: нет.
datacompboy: туда не команда
feldgendler: Там же всё равно разное число операндов бывает.
datacompboy: а целый алгоритм всунуть можно!
datacompboy: и нужно
feldgendler: Да, верно.
feldgendler: Не, на самом деле начать нужно с реорганизации байта. Он должен быть не линейным восьмибитным, а квадратным, и содержать, скажем, 4*4 бита. Но тогда придётся пересмотреть понятие числа...
datacompboy: разумеется.
datacompboy: А число так же записывается:
AF23
5426
1375
FFE0

feldgendler:
shl
shr
shu
shd

datacompboy: да. а ror/rol переходят в roc rocc
feldgendler:
x << y

x >> y

x
^
^
y

x
v
v
y

datacompboy:
   <
x  |  y


   |
x  >  y

feldgendler: А это как?
datacompboy: roc и rocc
rotate clockwise & rotate coounter-clockwise
feldgendler: Подвыражение в языке программирования, кстати, занимает прямоугольную площадь. Его можно взять в рамку (аналог скобок).
feldgendler: Не, я про вот это спрашиваю.

   <
x  |  y


   |
x  >  y

datacompboy: причем рамки бывают квадратные, фигурные, и кружочек.
feldgendler: Ага.
datacompboy: ну я про это и сказал. это операции roc / rocc
feldgendler: В фигурных рамках заключается тело функции или цикла. Цикл, естественно, итерируется по обоим направлениям.
datacompboy: в круглых -- выражения
datacompboy: в квадратиках -- индексы
feldgendler: Единственное, что выбивается из двумерной концепции -- это время. Оно ведь одномерно, а, значит, переходы управления должны быть одномерными (в одном направлении за один раз), циклы могут повторяться либо по вертикали, а внутри по горизонтали, либо наоборот.

Проблему можно разрешить путём введения парадигмы двумерного времени (t, u). Тогда оно течёт как бы сразу в двух направлениях. Если в обычном времени ПОСЛЕ одного события идёт другое, то в двумерном для данного события есть события, произошедшие ПРАВЕЕ ПО ВРЕМЕНИ, есть произошедшие НИЖЕ ПО ВРЕМЕНИ, а есть и правее, и ниже.
feldgendler: Тактовый генератор работает на частоте около 1 Ггц^2.
datacompboy: верно.
datacompboy: оба верно.
datacompboy: я только хотел про время сказать :)
datacompboy: кстати, это решение проблемы исполнения
feldgendler: Значит, за одну квадратную секунду...
datacompboy: Процессор исполняет не ячейку.
feldgendler: Вот именно.
datacompboy: А площадь!
datacompboy: И сдвигается УВЕЛИЧИВАЯ ПЛОЩАДЬ
datacompboy: причем не обязательно с равной скоростью вправо и в низ.
feldgendler: Не, он за один такт правда ячейку исполняет. Но сдвигается от неё и вправо (этим он будет заниматься в моменты ПРАВЕЕ ПО ВРЕМЕНИ), и вниз (НИЖЕ ПО ВРЕМЕНИ), и вправо-вниз (ПРАВЕЕ И НИЖЕ ПО ВРЕМЕНИ).
datacompboy: Да. Для каждой ячейки.
datacompboy: Поэтому и получается что переживая следующую квадратную секунду -- он исполняет следующий квадратный миллиметр.
datacompboy: Но так как он сам по себе двумерно-исполняющий -- получается подобие гипертрединга -- ультратрединг
feldgendler: Да.
datacompboy: когда он можне одновременно исполнять две площади
feldgendler: Нет. Понятие "одновременно" однозначно только для одномерного времени. В двумерном времени есть "полностью одновременно", есть "одновременно по вертикали", есть "одновременно по горизонтали". Так что если поставить, например, четыре проца, они и так, и эдак одновременно смогут.
datacompboy: не, погоди. в том и фишка.
datacompboy: обычный может только одновременно в одном направлении.
datacompboy: а ультратрединг -- одновременно по всем.
feldgendler: Ага.
feldgendler: И, что главное, вот такая теория ТОЧНО будет бесполезна, потому что двумерного времени не существует, это ведь чистая абстракция.
datacompboy: и не факт, не факт. что может быть проще времени?
feldgendler: Проще одномерного времени может быть нульмерное время (не текущее никуда).
datacompboy: оно течёт.
datacompboy: стационарно.

UPDATE: Ах да, забыл. Ссылка по теме.
  • Current Mood: mischievous озорство
(Anonymous)
Народ, а 4D-МКЭ есть!
Это когда для какой-нибудь плазмы пишут (и потом решают ) уравнения в пространстве x-p (координаты-импульс). Если изначально задачка была 2D, то тут она становится как раз 4D. А сетки в таком пространстве строить - это вообще отдельное удовольствие:)
Извиняюсь, если уже не в тему:)
Очень даже в тему!

Эх, чёрт, четырёхмерный используется. Придётся городить пятимерный, чтобы точно оказалось бесполезно.