Some random GrafanCon EU 2k18 Notes – Telegram
Some random GrafanCon EU 2k18 Notes
73 subscribers
312 photos
9 files
54 links
Заметки по докладам на которые я пошел (начинаются с #talk) и флуд фоточками.

Связаться с автором можно так: @Civiloid
Download Telegram
если процессор угадал - он работает быстрее
и если вдруг мы ошиблись и пошли не по той ветке - то происходит сброс данных
если не угадал - то данные удалятся и мы пойдем по другой ветке
и это не замедлит процессор по сравнению со случаем когда мы бы остановились
если мы выполним невилидные инструкции - то ничего не случится пока не поймем в какую втеку попали
Предполагается что из кода программы не узнать было ли предсказание успешным или нет
Предсказатель ветвлений так или иначе записывает историю
ер если мы встретили 10 раз условие true значит в 11ый вероятно будет true
в некоторых случаях даже может быть предсказатель закончится ли цикл
чтобы не хранить полный адрес каждого ветвлений - хранится только часть
минус - если есть 2 процесса у которых так получилось что кусок адреса совпал, предсказатель не сможет сказать какое приложение выполняется
И теперь мы поговорим про Meltdown и Spectre
Их нашли параллельно в нескольких проектах - в академических исследованиях и в google project zero
Кстати пример side-channel атаки не в цпу - можно было посмотреть свежозарегистрированные домены и найти домен для spectre/meltdown еще в декабре
В новых ядрах есть /sys/devices/system/cpu/vulnerabilities/*
где есть инфа о том что ядро думает о уязвимостях процессора и их mitigation'е (пофиксить их можно в ряде случаев только заменой железа, чего не случиться)
Meltdown
Вспомни что если speculative exectuion случился и произошел exception - то он не вернется если if не выполнится по факту
В упрощенном виде - можно замерять время выполнения попытки доступа к кэшу
и по этому делать выводы есть ли данные из какого-то адреса в кэше
сами данные прочитать впрочем пока еще нельзя