Pull to refresh
129
0
Григорий Демченко @gridem

Software Engineer

Send message

График "Бенчмарк для 80-ядерного ARM процессора Ampere Altra" вызывает много вопросов:


  1. Почему подписи под графиками отличаются? У ARM написано "cores", у x86 — "threads". Они могут увеличивать cores на ARM динамически?
  2. Если число потоков превышает число ядер — то дальнейший рост должен прекратиться. Более того, должно начаться падение и деградация, т.к. потоки будут лишь мешать друг другу. На графиках мы видим продолжающийся рост, хоть и более замедленный.
  3. Почему для ARM не продолжили кривую? Надо было по аналогии с AMD — продолжить до 250, ну или хотя бы до 1000. Ведь там больше ядер, чем у AMD, не так ли?

Выглядит, как неумелые маркетинговые картиночки.

Если блок будет подписан публичным ключом — то невозможно будет прикинуться шлангом. Например, каждый валидатор может подписывать свои сообщения и свои подтверждения своими ключами, и эти подписи включить в блокчейн. Тогда подпись будет означать, что реальный валидатор принимал участие в формировании блока, а значит нельзя будет "прикинуться шлангом".

В статье допущен ряд серьезных технических неточностей. Разберем их.


Exonium — разновидность блокчейна

Правильно Exonum.


Уязвимость 51%. Эта уязвимость давно и хорошо известна всем, кто даже не очень хорошо знаком с блокчейн-системами. Она заключается в том, что когда в одних руках сосредоточено управление более чем 50% узлов формирования блоков, система становится зависимой от честности владельца этих узлов.

Видимо, всем, да не всем. Сразу видно поверхностное владение материалом. Давайте рассмотрим подробнее, что же там внутри.


В файле https://github.com/moscow-technologies/blockchain-voting/blob/voting2020/elec2020/dit-blockchain/services/votings-service/Cargo.toml можно обнаружить следующую информацию:


exonum = "0.12.1"
exonum-derive = "0.12.0"
exonum-merkledb = "0.12.0"
exonum_sodiumoxide = "0.0.22"

Стоит отметить, что Exonum написан на языке rust. Согласно документации по консенсусу https://exonum.com/doc/version/latest/architecture/consensus/ этот блокчейн использует BFT. И то и другое — это плюсы данной системе.


Есть серьезное отличие BFT от PoW. Второй тип подвержен атакам >50%. Коммит в этой системе не означает окончательного принятия блока, т.к. в последующей момент он может перетереться более длинной цепочкой.


BFT работает совершенно иначе: если число “плохих” < ⅓ от общего набора нод, то консенсус проходит. В противном случае он блокируется при условии, что “плохих” нод < ⅔. Если же число превосходит ⅔, то можно закомитить любую информацию.


Как правило BFT используют приватные ноды, а значит можно не переживать по поводу атак. Для приватных нод вообще можно использовать обычный консенсус. Но для голосования и межбанковских транзакций использовать BFT консенсус — то, что доктор прописал: быстро, эффективно, надежно. Rust дает преимущества в безопасности работы с памятью, а также преимущества в эффективном выполнении.


Чем хорош Exonum? Во-первых, есть спецификация: https://exonum.com/doc/version/latest/advanced/consensus/specification/


Помимо этого, есть формальное доказательство https://bitfury.com/content/downloads/wp_consensus_181227.pdf


Я не вдавался в детали, но выглядит все крайне серьезно и скрупулезно. Тот факт, что ДИТ стал использовать уже проверенные алгоритмы, а не делал свой лисапед — похвальный факт. Здесь я их полностью поддерживаю.


Выше уже указывали на проблемы приватного блокчейна. Если не будет возможность читать блоки — то тогда сам по себе блокчейн не нужен, т.к. всегда можно подделать цепочку, начиная с нуля. Поэтому если будет доступен блокчейн в реальном времени в режиме read-only — то можно будет легко доказать, а были ли изменения, или нет. При этом сама информация может быть зашифрована вплоть до самого последнего момента. А затем в самом конце предоставляется ключ и можно будет проверять сам контент.


Однако сама процедура валидации блокчейна — это хороший вопрос, но по исходникам вряд ли что-то можно узнать, т.к. это вопрос дейплоймента и доступа к данным.

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

Да, я признаю авторитеты и думаю, что раз Хоофт, убивший почти всю жизнь на поля и струны, считает, что будет полезен новый подход, то я только обеими руками за.

Проблема не в Хоофте, не в его подходе, а к способе подачи материала, из которого мало что понятно. Плюс допущено множество неточностей. А про сам подход сказано даже меньше, что про неравенства.


Проблема именно в подаче материала.

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


Пример был про квантовую запутанность и квантовую телепортацию.

Сделал это утверждение менее категоричным. Спасибо!

Под этим подразумевается квантование координат и времени.

Пример с двумя шарами про квантовую телепортацию, а не про неравенства Белла.

Как такое можно было написать?! Это ещё ладно, но дальше:

Готов рассматривать конструктивную критику. Из этого предложения непонятно, что конкретно не так.


Важно не то, что у вас один вектор, а то в каком гильбертовом пространстве он находится, а оно вполне себе по мощности обычно сильно превосходит R.

Если вектор состоит из нулей и лишь одна цифра — единица, то этот вектор равномощен множеству натуральных чисел. Если вектор из действительных величин, то вопросов нет.

Задача философии (имеется в виду философия как наука о мышлении, а не популярная сегодня эклектичная «филосооооофия») не сводится к рассмотрению материи как физической категории. Структура материи это как раз чисто физический вопрос.

Структура материи — это физический вопрос. Вопрос существования — философский. Не вижу противоречий.


А чем же оперирует физика по-вашему? Чем она вообще может оперировать если не реальностью данной нам в ощущениях в широком смысле?

Физика работает с моделями, теориями и математическим аппаратом этих теорий.

Пример был не про скрытые параметры, а про дальнодействие и влияние результатов измерений на далекие объекты.

Добавил ряд соображений, т.к. посчитал, что они стоят того.

Она не простая, а более простая. Т.е. она проще, чем модель клеточного автомата, т.к. основана на классической механике и электромагнитной теории.

Разработчик может отвечать за уборку и делать уборку в помещении. Это все прекрасно. Вопрос в другом: стоит ли в этом развиваться и какая от этого польза?

Статья про взаимоотношения между разработчиком и бизнесом. Уровни носят вторичный характер, но немаловажный. Первичное в статье — кто такой разработчик и за что он может отвечать.

В криптографии легко ошибиться, даже если ты профессионал в этом деле. Всегда рекомендуется использовать существующие решения, как обкатанные и проверенные технологии.

Если бы это была капитанская статья, то не было бы двух других.

Не увидел, где в статье описываются категории программистов. В статье описываются уровни разработчиков, придуманные не мной. Я лишь описываю то, что есть в крупных компаниях.

Крутая статья! Обычно, парсинг — это дело крайне неблагородное и неприятное. Немногие желают этим заниматься. И все дело в том, что часто находятся редкие баги то тут, то там.


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


Одно только смущает: приходится серьезно упарываться шаблонами, чтобы написать всего-лишь нормальный парсер.

Information

Rating
Does not participate
Date of birth
Registered
Activity