Jak bardzo procesor, pamięć są niedeterministyczne?

0

Słyszałem kiedyś, że w tradycyjnych częściach komputerowych - dyskach, pamięciach z pewnym bardzo małym prawdopodobieństwem mogą pojawić się przekłamania. Między innymi na wskutek różnych szumów, pola magnetycznego, promieniowania kosmicznego itd.

Jak często tego rodzaju błędy mogą pojawiać się w głównej jednostce PC - czyli procesorze?
O ile np w dyskach może się przed tymi zakłamaniami CZĘŚCIOWO uchronić (stosując sumy kontrolne - co wykładniczo zmniejsza prawdopodobieństwo pomyłki), to już po stronie CPU ciężej sprawdzić czy procesor dobrze wykonał działanie... Mam tu na myśli najbardziej niskopoziomowe operacje (odejmowanie, mnożenie)...

Często na klastrach obliczeniowych liczy się jakieś złożone rzeczy przez wiele miesięcy. Jakie jest prawd, że któraś z operacji wykonywanych w tym czasie przez CPU zwróci zły wynik albo wystąpi przekłamanie w cachu?
Pół biedy jeśli problem należy do klasy NP/co-NP, wówczas możemy szybko sprawdzić czy wynik jest poprawny, aczkolwiek co jeśli problem jest poza tymi klasami?

0

W procesorach także eliminuje się błędy powstałe przez zakłócenia chociażby przez Redundant Design. W artykule masz nawet wzór na prawdopodobieństwo wystąpienia takich zakłóceń http://en.wikipedia.org/wiki/Redundancy_(engineering)

0

Na stacji kosmicznej, z uwagi na silniejsze promieniowanie kosmiczne powodujące błędy, stosowany jest "system Bizantyjski" (nie jestem pewien czy tak się to nazywa po polsku), związany z tzw. "problemem Bizantyjskich generałów": http://en.wikipedia.org/wiki/Byzantine_fault_tolerance / http://pl.wikipedia.org/wiki/Problem_bizantyjskich_genera%C5%82%C3%B3w.

O ile dobrze pamiętam na ISS stosowane jest chyba 5 komputerów jednocześnie robiących to samo. Jeżeli powstaną błędy w jednym czy dwóch to "większość" decyduje, że prawidłowe jest ich rozwiązanie, a nie to spowodowane przez różne błędy. Plus do tego oczywiście na ISS stosuje się także jednostki centralne o mniejszych stopniach złożoności, większych ścieżkach, mniejszych częstotliwościach taktowania itd.

0

Dodam, że w serwerach stosuje się pamięci operacyjne ECC, czyli z wykrywaniem i korekcją błędów, a niekorygowalne błędy sa zgłaszane kontrolerowi pamięci

1 użytkowników online, w tym zalogowanych: 0, gości: 1