Рубрика «cpu» - 5

Отсутствие уязвимости в CPU лучшее что может быть, но как проверить есть ли они, эти уязвимости? Как выясняется в современных процессорах они буквально "пачками". И счастливому обладателю «уязвимостей» в лучшем случае предлагается ползать по таблицам и искать каким из них подвержен его процессор. А с течением времени количество найденных дыр только растет.

Простейшим решением предлагается обновление БИОСа/UEFI с установкой новой версии микрокода. Но решает ли оно все проблемы, или собственно хотябы их часть?
Читать полностью »

Привет! Представляю вашему вниманию перевод статьи «Scheduling In Go: Part I — OS Scheduler» автора Билла Кеннеди, о том, как работает внутренний планировщик Go.

Это первый пост в серии из трех частей, который даст представление о механике и семантике, лежащей в основе планировщика в Go. Этот пост посвящен планировщику операционной системы. Начнем!

Внутренняя архитектура планировщика Go позволяет вашим многопоточным программам быть более эффективными и производительными. Важно иметь общее понимание того, как работают планировщики ОС и Go для правильного проектирования многопоточного программного обеспечения. Я опишу достаточно деталей, чтобы вы могли наглядно представить, как все работает, чтобы на практике принимать лучшие решения.
Читать полностью »

Томными зимними вечерами, когда солнце лениво пробегало сквозь пелену дней — я нашел в себе силы заняться реализацией давней мечты: разобраться как же устроены процессоры. Эта мечта привела меня к написанию формально спецификации RISC-V процессора. Проект на Github

imageЧитать полностью »

И всё же C — низкоуровневый язык - 1

За прошедшие с момента появления языка C десятилетия было создано множество интереснейших языков программирования. Какие-то из них используются до сих пор, другие — повлияли на следующие поколения языков, популярность третьих тихо сошла на нет. Между тем архаичный, противоречивый, примитивный, сделанный в худших традициях своего поколения языков C (и его наследники) живее всех живых.

Критика C — классический для нашей индустрии эпистолярный жанр. Она звучит то громче, то тише, но в последнее время буквально оглушает. Пример — перевод статьи Дэвида Чизнэлла «C — не низкоуровневый язык», опубликованный в нашем блоге некоторое время назад. Про C можно говорить разное, в дизайне языка действительно много неприятных ошибок, но отказывать C в «низкоуровневости» — это уже слишком!

Чтобы не терпеть такую несправедливость, я собрался с духом и постарался определиться с тем, что есть язык программирования низкого уровня и чего хотят от него практики, после чего перебрал аргументы критиков C. Так получилась эта статья.

Читать полностью »

Мир знаком с криптовалютами всего 10 лет. При этом в истории майнинга за эти 10 лет уже можно проследить несколько технологических эпох. Подход к майнингу, а если точнее, к устройствам для него, многократно менялся с приходом очередного поколения чипов, годных для создания криптоактивов.

Лонгрид об истории российского майнинга и отношения к нему регуляторов - 1

Аналогичная ситуация с численностью майнеров. На заре появления Биткоина в процесс было вовлечено лишь считанное количество энтузиастов. Через несколько месяцев количество старателей новой золотой лихорадки стало увеличиваться с поистине космической скоростью. А потом часть из них с такой же скоростью покидало комьюнити при очередном падении курса.

Несмотря на то, что этому явлению всего 10 лет, сегодня уже можно говорить об истории явления, часть из которой, без сомнения, превратилась в красивую финансовую легенду. Не менее интересна история майнинга в России, которая, равно как и в некоторых других странах тесно связана с юридическим статусом крипты, ухищрениями майнеров, стоимостью электроэнергии. Под катом ностальгический лонгрид о майнинге в России.
Читать полностью »

Я не знал, как работают процессоры, поэтому написал программный симулятор - 1

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

Я прочитал книгу «Но откуда он знает?» Кларка Скотта с детальным описанием простого 8-битного компьютера: начиная с логических вентилей, ОЗУ, транзисторов процессора, заканчивая арифметико-логическим устройством и операциями ввода-вывода. И мне захотелось реализовать всё это в коде.

Хотя я не настолько интересуюсь физикой микросхем, но книга просто скользит по волнам и красиво объясняет электросхемы и как биты перемещаются по системе — от читателя не требуется знание электротехники. Но мне недостаточно текстового описания. Я должен видеть вещи в действии и учиться на своих неизбежных ошибках. Так я начал реализацию схем в коде. Путь оказался тернист, но поучителен.
Читать полностью »

Who is stealing virtual CPU time? - 1

Hi! In this article, I want to explain, in layman’s terms, how steal appears in VMs and tell you about some of the less-than-obvious artifacts that we found during research on the topic that I was involved in as CTO of the Mail.ru Cloud Solutions platform. The platform runs KVM.
Читать полностью »

1 мая 2019 года компания AMD отпраздновала свой юбилей — 50 лет, за которые она успела стать одним из крупнейших производителей центральных и графических процессоров, а в последние годы демонстрирует активный рост. В честь юбилея AMD я решил детально рассказать об истории компании и провести тестирование одного из старых процессоров.

История компании AMD: 50 лет стремительного развития - 1
Читать полностью »

Встречаем новые процессоры Intel - 1

Вчера, 02.04.2019, корпорация Intel объявила о долгожданном обновлении процессоров семейства Intel® Xeon® Scalable Processors, представленного в середине 2017 года. Новые процессоры базируются на микроархитектуре, получившей кодовое имя Cascade Lake и построены по улучшенному 14-nm технологическому процессу.
Читать полностью »

В прошлых статьях уже писали о том, как у нас устроены технологии распознавания текста:

Примерно так же до 2018 года было устроено распознавание японских и китайских символов: в первую очередь с использованием растровых и признаковых классификаторов. Но с распознаванием иероглифов есть свои трудности:

1). Огромное количество классов, которое нужно различать.
2). Более сложное устройство символа в целом.

image

Сказать однозначно, сколько символов насчитывает китайская письменность, так же сложно, как точно посчитать, сколько слов в русском языке. Но наиболее часто в китайской письменности используются ~10 000 символов. Ими мы и ограничили число классов, используемых при распознавании.

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

Чтобы эти проблемы не приводили к сильнейшим замедлениям во всей системе распознавания, приходилось использовать множество эвристик, в первую очередь направленных на то, чтобы быстро отсечь значительное количество иероглифов, на которые эта картинка точно не похожа. Это всё равно не до конца помогало, а нам хотелось вывести наши технологии на качественно новый уровень.

Мы стали исследовать применимость свёрточных нейронных сетей, чтобы поднять как качество, так и скорость распознавания иероглифов. Хотелось заменить весь блок распознавания отдельного символа для этих языков с помощью нейронных сетей. В этой статье мы расскажем, как нам в итоге это удалось.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js