Pull to refresh
35
0
Valentin Nechayev @netch80

Программист (backend/сети)

Send message

IA64 (Itanium, etc.) был обречён на смерть именно из-за EPIC при непредсказуемой задержке доступа к памяти. Учитывая предшествующий опыт с Rambus, которая, в одном из вариантов, предполагала сократить эти задержки — связь, думаю, очень вероятна. Вот подробности истории с Rambus от инсайдера были бы интересны.


Сверхдлинный конвейер на сотни микрокоманд — свойство всех последних моделей и Intel, и AMD, и Apple, но частоты при этом не обязательно растут. Наверно, кто-то сможет прокомментировать, почему так получилось сейчас и не получилось 20 лет назад.


В остальном спасибо за интереснейшие рассказы...

https://news.ycombinator.com/item?id=35941183 вот обсуждают
(пардоньте за некрокоммент, только добрался до этого цикла. но статья ещё раньше)

Про Present Perfect лучшее определение, которое я знаю, это: «Состояние в настоящем, являющееся результатом действия в прошлом и выраженное через это действие». Отсюда вытекают все его особенности:
1. Состояние должно быть актуальным. «I have painted the fence» — не просто «я покрасил забор», но он сейчас такой покрашенный. Если его кто-то другой перекрасил, забор украли и т.п., это уже Past Perfect.
И с другой стороны, незаконченное действие («красил, но надоело») не даёт состояние, и поэтому не может быть описано через Present Perfect.
2. Связь с каузативной формой («I have the fence painted») и собственно происхождение перфекта в современном виде (почему тут to have).
3. Невозможность связи с конкретным моментом в прошлом, когда действие закончилось — это ведь состояние в настоящем. Все временные пометки относятся или к настоящему, или (через его отрицание) ко всему прошлому (как в ever). Если нужно уточнить момент в прошлом — использовать что-то типа «I finished painting».
4. Отличие, например, «I’ve worked here for 6 years» (6 лет до сейчас) c «I am working here for 6 years» (когда эти 6 лет начались, когда закончатся — неизвестно; известно только то, что сейчас мы где-то внутри этого периода.
Также «естественность» первой конструкции.
5. Почему Past Perfect может использоваться как предпрошедшее.

Исходно это определение относилось к общеиндоевропейскому синтетическому перфекту и найдено в книге по древней диахронии, но очень хорошо подходит и сейчас. Уточнить отклонения от этой общей схемы можно уже вслед, после понимания идеи.
English/ЙЦУКЕН — вводится буква Й

Это в какой системе работает именно так? Ни разу не видел, чтобы допускалась такая комбинация.

Где именно вы виртуальную клавиатуру собрались искать?

На экране в исходной статье.


А lock screen у автора и без виртуальной клавиатуры позволял пароль ввести, просто не пускал дальше.

Ну да, потому что пароль был неправильный из-за не той раскладки. Вы о чём собственно?

А вы думаете, тот, кто вводит такую команду, понимает последствия того, что конкретные пакеты будут удалены?


Он только видит "вот это удалено", ну хм… "а вот ставим взамен"… ну тогда всё отлично, целостность же не нарушена?


И я его отлично понимаю.

русская раскладка для английского языка — эта та, в которой при нажатии клавиш вводятся русские буквы, просто язык ввода английский.

Эээ… можете дать конкретный пример, что нажимается и что происходит? А то при попытке представить себе это — получил короткое замыкание.

А виртуальной клавиатуры там не было? Или на ней тоже нет английской раскладки?
На Kubuntu lock screen, например, есть (и в 20.04 там есть английская, испанская и греческая, но нет русской, даже если активна у юзера)

Для меня проблема PGP не в распространении — круг участвующих не сильно меняется со временем, сделать подписку всех на обновления (да-да, подписывая старым) — достаточно легко. Проблема в том, что доверие в нём двоично — 0 или 1. Реально полезная система бы:

1. Позволяла снабжать ключи и механизмы их получения уровнем доверия. Например: за год доверие неподтверждённого ключа умножается на 0.8; ключу конкретного Пупкина верить, но его рекомендации остальных — умножать на 0.5. Также ставить свои произвольные комментарии к ключам, показываемые в п.3.

2. Показывала уровень доверия результату оценки достоверности ключа по цепочке доверия (вычисленный по любому из вариантов так называемой «нечёткой логики»);

3. Показывала бы цепочки получения результата оценки достоверности (все возможные), с весами — источниками чисел, и пометками на ключах.

Вот тогда я мог бы посмотреть и оценить, что если письмо от Розенблюма, ключ которого подтверждён Трюмпфли, ключ которого подтверждён Ивановым-Петровым, ключ которого подтвердил Коваль, с которым меня познакомил Петренко на пьянке — я ставлю по умолчанию 0.8 на все промежуточные этапы и даю 0.7 Ковалю, потому что глаза двоились — я получаю 0.448 и думаю, что этого достаточно, чтобы обменяться номером мобильного, но недостаточно, чтобы выслать денег до получки — вот тогда эта схема могла бы получить сильно больше шансов на рабочесть. Ну и интерфейс к этому всему с окошками и менюшками по вкусу.
то почему в ней всё скопировано из MIPS?

Не всё и не конкретно из MIPS. Основные ошибки MIPS (или изначальные, или по текущему состоянию) убраны.


Пока что у вас аргументация на уровне "чем хуже? чем армяне!" при армяне == ARM. Извините за невольный каламбур, но тут именно так сложилось, я заметил уже пока писал:)))


Достаточно сравнить с любой другой распространённой ISA.

С x86, например?


университетским преподавателям нельзя доверять ничего разрабатывать

Это вы, наверно, по exUSSR судите.

Отсутствие флагов

Или же, наоборот, преимущество. Меньше завязка на один регистр для всех. Общность подхода с векторным. Более прямой перевод из GIMPLE или LLVM IR.


отсутствие автоинкрементов

Докажите их незаменимость (или хотя бы повышенную эффективность).


отсутствие офсета в обращениях к памяти (адрес + офсет, то есть сумма двух регистров, у всех приличных архитектур это есть).

Вы в терминологии путаетесь. Offset в этом контексте это константное значение, и оно как раз есть во всех версиях. Второй регистр, из которого берётся ещё одно значение — это индекс.


Так вот — адресации что одновременно база, индекс и смещение — нет, например, в ARM, который вы хвалите. Есть или база+смещение, или база+индекс.
На практике же сделать один add в регистр для этого и/или корректировать его одновременно с другим в случае операций типа работы с матрицами — достаточно.


"в процессорах можно реализовать склеивание определённых последовательностей команд", чем в реальности никто заниматься не будет.

Процессоры от SiFive это уже делают.


Те кто может себе это позволить — берут за основу ARM.

В котором точно так же надо клеить последовательности, например, для MULH+MUL.


И зачем чинить прямо в процессоре во время выполнения кривой ISA, почему нельзя сразу сделать нормальный ISA? Потому что это упрощённый недо-ISA для самых дешевых микроконтроллеров? Зачем тогда делать CPU на такой ISA?

Потому что это универсальный ISA от самых мелких до самых крупных.


И практика реализаторов вроде того же SiFive показывает, что это реально работает.

при этом оставили характерные черты (недостатки) MIPS в системе команд

А что вы считаете недостатками MIPS в данном случае?

они остались совместимы с MIPS на уровне ассемблера

Точно нет. Достаточно глянуть в открытые спеки.
Части команд MIPS просто нет. Часть реализована иначе.


Но если код переписывает человек в теме, то преобразование MIPS -> LoongArch делается легко для большинства случаев, потому что регистров столько же, флагов тоже нет (значит, управление выполнением сходное), и таки много команд, которые можно переписать 1:1.


Компилятор, думаю, переведёт (работает же qemu с предкомиляцией и достаточно неплохо), хотя замена 1 команды на 5-10 может быть нередкой (как было с 8080 -> 8086).

У меня к этому несколько абстрактный вопрос.
Какие законы ограничивают право создать собственную реализацию совместимой 1:1 системы команд?
Известно, как это делали для x86, пусть и с отставанием на несколько лет.
Под авторское право не очень вписывается.
Только патенты на какие-то отдельные решения?

Longsoon изначально был MIPS процессором (нелицензированным), к которому стали прикручивать всякие расширения.

  1. Вот Панчул пишет (в этом ему веры на 300%) что таки была лицензионная покупка MIPS.
  2. Пусть у Loongson есть архитектурная лицензия на MIPS (которая сама по себе не содержит реализации), какое отношение это имеет к полностью (в смысле, без совместимости снизу-вверх ни двоично, ни в ассемблере) своей системе команд?

Вы ещё скажите, что Эльбрус это SPARC, потому что под этой маркой делали расширенные клоны SPARC.


Это известный факт (по крайней мере историкам IT)

Сарказм оценён, но неуместен: факты ещё надо адекватно сопоставлять. См. выше.


Вообще ни разу.

"Универсальная" не в смысле "всеобщая" (англ. universal), а в смысле "широко распространённая и уместная". По следующему предложению можно было легко понять, что всеобщность не предполагается.

В целом, этот Loongson не дотягивает даже до Эльбруса

В каком именно аспекте "не дотягивает"? Самобытность?

  1. Честное приобретение предполагает, насколько я понимаю, лицензионную чистоту.
  2. А откуда вообще взялось ваше "в одинокого"? При китайских мощностях, и в людях и в технике и в ресурсах, опыте (неплохом), и поставленной задаче — реализовать такое лет за 5 от замысла до реальных кристаллов не должно составлять проблемы.

Вопрос был риторический.

Для меня он таким как-то не звучит.

Это уже не ко мне. Можете поискать эксперта, который по свойствам этих контроллеров определит, было ли заимствование, и у кого.

Они начинали с MIPS, и части MIPS еще заметны,

Они не покупали готовые Verilog/etc. файлы исполнителя, тестовые комплекты к ним и тому подобное. Они всё это написали сами с нуля. Во всяком случае, я думаю, что сделано так — ради лицензионной чистоты. Вероятно, даже методом "чистой комнаты".


Они не применили путь "берём стандартный MIPS/ARM/etc. и допиливаем свой набор команд под свои спецнужды". Они взяли общие идеи, рассчитали оптимальное решение под свои цели и реализовали его.


"Частей MIPS" я там не вижу, кроме общих решений, которые действительно совпадают с MIPS, но также ещё с полдесятком известных архитектур.


так зачем тогда утверждать что сделано с нуля?

Наверно, потому, что в данной сфере "сделано с нуля" ровно такое и означает?

Information

Rating
5,040-th
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity