Система KANT
Кластерная структура ядер GONT VM
Изначально, в gVM заложена возможность иметь гибридную структуру, а значит, и возможность поддерживать множество различных БЧ (даже с разной структурой газа!).
Основным является понятие кластера.
Кластеры отображают входной JIT код на различные исполнительные наборы «кварков». Кварки — это реальные «железные» инструкции ядер.
Аналогом отображения газа на «кварки» является технология Trace cache и микрокода у Intel.
VM_STATE и TR_STATE
VM_STATE — состояние виртуальной машины.
TR_STATE — состояние транзакции.
Модель исполнения TR
Эволюция TR_STATE относительно VM_STATE внутри gVM.
VM_STATE определяется состоянием всех регистров. В зависимости от выбранной модели кварков, регистры могут быть разными (MultiReg вирт. машины). Например, регистры для кварков ARM, VLIW и т.д
Ввод идеи KANT
Через систему KANT GONT описывает сам себя.
KANT — это «Genesis» описания GONT.
GONT VM состоит из матрицы независимых gVM, между которыми существует роутинг пакета запроса. Т.е. один запрос (код с транзакциями) может частично выполняться в разных gVM. В конце происходит суммарная сборка результата запроса. В том случае, если все транзакции во всех ядрах достигли состояния COMMIT.
KANT для реализации маршрутизации между gVM ядрами
Логические уровни роутинга внутри GONT VM
Рассмотрим несколько логических уровней маршрутизации:
Концепция GONT Оракула ONTO отображается на L1 и L2.
GPS протокол
GPS = GONT Processors States (что значит «состояние процессоров GONT» в переводе).
Логически эволюция транзакции состоит из двух частей: TREVAL внутри gVM + routing между gVM.
Эволюция транзакции совместно с роутингом реализуют GPS протокол. При этом, откат транзакций может произойти в любой момент до достижения TOTAL COMMIT состояния.
Спасибо за внимание! Продуктивного дня!
GONT