LINUX.ORG.RU

Раньше были процы, которые цеплялись параллельно (ножка в ножку) и выполняли все инструкции синхронно. Соответственно все результаты должны были совпадать.

Но это для всяких специальных применений. Так есть внутренние тесты кешей (ну и наверно регистров).

А ECC... Ну не совпал AX и чё? Что по-твоему должно происходить? Разве что ребут...

ziemin ★★
()
Ответ на: комментарий от ziemin

А если применить не просто контрольную сумму, а избыточное кодирование с возможностью коррекции ошибок? Есть же способы кодирования, при которых достаточно любых N бит из M, чтобы восстановить верный код (разумеется, информации приходится хранить больше, чем надо).

KivApple ★★★★★
()
Ответ на: комментарий от KivApple

Проще устранить причину появления ошибок.

Для пущей надёжности второй, контрольный процессор лепить. Или считать всё несколько раз.

ziemin ★★
()
Ответ на: комментарий от ziemin

А ECC... Ну не совпал AX и чё?

Error correcting code

ребут

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

MyTrooName ★★★★★
() автор топика
Последнее исправление: MyTrooName (всего исправлений: 1)

собственно, про кеш нашел, что там коррекция не нужна, достаточно бита четности. если не совпал, констатируем промах и загружаем из ram

MyTrooName ★★★★★
() автор топика

Да, бывает.

Deleted
()
Ответ на: комментарий от ziemin

Проще устранить причину появления ошибок.

только это невозможно в реальном мире никаким образом и ни в каком случае

anonymous
()

Кеши с ЕСС идут, как минимум у AMD.

NiTr0 ★★★★★
()
Ответ на: комментарий от ziemin

Второго мало. Надо ещё и третий. Чтобы выбирать по принципу большинства. А иначе возникнет проблема какому из двух процессоров верить.

KivApple ★★★★★
()
Ответ на: комментарий от KivApple

Делай как хочешь. А если тебе обоснование нужно и ты привлёк ЛОР, то я сразу скажу: на ЛОРе сплошные школьники, 50/50, необходимо дополнительное исследование!

ziemin ★★
()

Была версия or1200 с аппаратной коррекцией ошибок.

anonymous
()
Ответ на: комментарий от KivApple

А если применить не просто контрольную сумму, а избыточное кодирование с возможностью коррекции ошибок? Есть же способы кодирования, при которых достаточно любых N бит из M, чтобы восстановить верный код

упоролся? Там задолбаешься восстанавливать (да и проверять тоже очень долго). Тебе нужен для этого процессор с тактовой Over9000 GHz. А таких ещё не придумали.

emulek
()
Ответ на: комментарий от emulek

да, поправочка: на практике применяется код Хэмминга, но там шибко много не скорректируешь. Лично я этот код и за «избыточное кодирование» не считаю. Это ИМХО больше маркетинг. Но пипл хавает, и просит ещё.

emulek
()
Ответ на: комментарий от NiTr0

Там до 4 бит корректируется.

ой, аж четыре бита. Ну и что? Это конечно лучше, чем ничего, однако на практике этот метод не сильно лучше даже простой чётности. Как всегда — ИМХО. Я не смогу сейчас подкрепить свои выводы расчётами.

emulek
()
Ответ на: комментарий от NiTr0

Ну-ну, какова же вероятность что 4 бита из 64 глюкнут одновременно?

1. не нулевая.

2. правило умножения вероятностей, на которое ты намекаешь, работает только для _независимых_ событий. Кто тебе сказал, что эти 4 бита независимы? Это далеко не так. И деградация кремния, и изначальные дефекты всегда группируются на кристалле. Потому, ошибки тоже ходят группами, как грибы например.

emulek
()
Ответ на: комментарий от emulek

1. Примерно равна вероятности умереть от падения метеорита

2. Независимы, ибо «деградация кремния» в нормальных условиях незаметна (длится десятилетия), а изначальные дефекты отсеиваются на этапе выходного тестирования.

NiTr0 ★★★★★
()
Ответ на: комментарий от NiTr0

1. Примерно равна вероятности умереть от падения метеорита 2. Независимы, ибо «деградация кремния» в нормальных условиях незаметна (длится десятилетия)

если-бы я всякое говно не выкидывал, я-бы тебе отсыпал кучу модулей памяти, причём почти все они «почти рабочие», т.е. ошибки возникают очень редко, на некоторых модулях надо несколько часов гонять memtest. Но ты наверно догадываешься, что такое говно даже в десктопе юзать невозможно.

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

На самом деле, после фазы «приработки» и до фазы «старения» действительно наступает «спокойная» фаза, в которой вероятность отказа постоянная и очень малая. Беда в том, что ячеек десятки и сотни миллиардов, и даже очень малая вероятность становится вполне заметной. Особенно это заметно при высокой температуре(причём зависимость частоты отказов от температуры экспоненциальная, ЕМНИМ вдвое на ~10°). При этом вероятность _сбоя_ выше на два порядка, т.е. сбой — это вполне обычное дело, если мы про современную DRAM.

emulek
()
Ответ на: комментарий от emulek

я тебе могу отсыпать модули памяти, полностью рабочие, из времён твоей упущенной мододости

anonymous
()
Ответ на: комментарий от anonymous

я тебе могу отсыпать модули памяти, полностью рабочие, из времён твоей упущенной мододости

и что? У меня тоже вот тут валяются и 565РУ5Г(это из молодости), и более новые SIMMы из i80486.

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

emulek
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.