Рубрика «cpu»

Современный мир ПО содержит настолько много слоёв, что оптимизации могут быть в самых неожиданных местах. Знакомьтесь - год 2000, проект HP Dynamo. Это эмулятор процессора PA-8000, работающий на этом же процессоре PA-8000, но с технологией JIT. И реальные программы, запускающиеся в эмуляторе - в итоге работают быстрее, чем на голом процессоре.

td;dr - всё сказано в заголовке

Программистам из HP Labs стало интересно, а что будет, если написать оптимизирующий JIT компилятор под ту же платформу, на которой он работает. Работа заняла несколько лет. Под эмулятором можно было запускать немодифицированные родные бинари. И результаты оказались несколько неожиданными.

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

Какой предел у предсказателя ветвлений? Проверили на x86 и M1 - 1

Некоторое время назад я смотрел на высоконагруженную часть кода и обратил внимание на это:

if (debug) {
    log("...");
}

И тут я задумался. Это — часть цикла, от которого требуется высокая производительность, но этот фрагмент выглядит как пустая трата времени, ведь мы никогда не устанавливаем флаг отладки. Нормально ли иметь в коде условные операторы, которые никогда не выполняются? Уверен, это влияет на производительность программы…
Читать полностью »

image

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

Но думали ли вы об использовании мощи GPU для повышения производительности веб-приложений?

В этой статье я расскажу о библиотеке ускорения JavaScript под названием GPU.js, а также покажу вам, как повысить скорость сложных вычислений.

Что такое GPU.js и почему его стоит использовать?

Если вкратце, GPU.js — это библиотека ускорения JavaScript, которую можно использовать для любых стандартных вычислений на GPU при работе с JavaScript. Она поддерживает браузеры, Node.js и TypeScript.

Кроме повышения производительности если и множество других причин, по которым я рекомендую использовать GPU.js:

  • В основе GPU.js лежит JavaScript, что позволяет использовать синтаксис JavaScript.
  • Библиотека берёт на себя задачу автоматической транспиляции JavaScript на язык шейдеров и их компиляции.
  • Если в устройстве отсутствует GPU, она может «откатиться» к обычному движку JavaScript. То есть вы ничего не потеряете, работая с GPU.js.
  • GPU.js можно использовать и для параллельных вычислений. Кроме того, можно асинхронно выполнять множественные вычисления одновременно и на CPU, и на GPU.

Учитывая всё вышесказанное, я не вижу никаких причин не пользоваться GPU.js. Давайте узнаем, как его освоить.
Читать полностью »

Как делают микропроцессоры. Польский химик, голландские монополисты и закон Мура - 1

Современные микропроцессоры поражают своей сложностью. Наверное, это высочайшие технологические достижения человеческой цивилизации на сегодняшний день, наряду с программированием ДНК и автомобилями Tesla, которые после заказа через интернет сами приезжают к вашему дому.

Удивляясь красоте какой-нибудь микросхемы, невольно думаешь: как же это сделано? Давайте посмотрим на каждый шаг в производственном процессе.
Читать полностью »

На самом деле 2020 год был первоклассным временем для технологических инноваций, но тем не менее, в историю, скорее всего, он также войдёт как год крайнего раздражения разочарованных покупателей из-за того, что целевая аудитория долгое не могла купить желанные ей товары: графические карты, процессоры, источники питания и, наконец, готовые решения — современные консоли PlayStation 5 и Xbox Series X. Почему вообще возник такой дефицит? Все связанные с данными проблемами крупные бренды (Sony, Microsoft, NVIDIA, AMD) говорят, что «спрос превысил предложение». Да неужели?

Почему CPU, GPU, чипы для консолей и другие компоненты становятся дефицитом - 1

Это довольно уклончивое объяснение, никак не связанное с истинным состоянием предложения и производственных линий брендов. Каждая компания, вне зависимости от размера, имеет в штате опытных специалистов, выполняющих долговременное планирование производства и снабжения; они создают так называемый прогноз, который является просто сложным предсказанием, учитывающим все факторы. Разумеется, компания вполне может что-то упустить, и примером тому была AMD с её Vega: оказалось, что специалисты забыли заранее запланировать выделение достаточного количества ресурсов на упаковку. Но очень маловероятно, что одинаково ошибиться могли одновременно все.
Читать полностью »

Уязвимость Crosstalk - 1

В последние годы стало появляться большое количество сообщений о всякого рода уязвимостях в процессорах компании Intel. Самыми известными из них являются Spectre и Meltdown, основанные на ошибках в реализации спекулятивного исполнения команд. В июне 2020 года появилось сообщение о новой уязвимости, носящей название Crosstalk.

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

Самые разгоняемые процессоры, которые запомнились надолго - 1

Фанаты стремились максимально использовать ресурсы кремния с момента появления микропроцессоров. В самом начале для разгона использовали пайку и замену кварцевых генераторов тактовой частоты, однако эта практика быстро эволюционировала в изменение скоростей системных шин с помощью DIP-переключателей и перемычек материнских плат.

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

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

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

Что нам стоит Resource Governor настроить - 1

Наверное, каждый, кто работает с SQL Server оказывался, или ещё окажется, в такой ситуации: вечер пятницы, ты уже мысленно готов отдыхать и тут начинают прилетать уведомления о высокой нагрузке на CPU твоего SQL Server, телефон начинает звонить и в системе мониторинга ты видишь картинку как на КДПВ.

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

Полку ARM прибыло: представлен первый 64-битный процессор ARM Cortex-R82 - 1

ARM-процессоры занимают новые для себя ниши. Это уже давно не только маломощные чипы с минимальным энергопотреблением. Недавно анонсировано третье поколение ARM-процессоров Thunder-X, о чем мы уже рассказывали. Теперь представлен процессор, который превосходит все предыдущие решения в серии R.

Он предназначен для работы в real-time системах, которые должны быть крайне надежными. Т.е. речь идет про оборудование, которое эксплуатируется в экстремальных условиях. Это промышленность, медицина, службы спасения и т.п.
Читать полностью »

Сложно поверить, но последний серьезный успех AMD на рынке серверных микропроцессоров датирован далеким 2004 годом. Более 15 лет назад компания представила 64-битные Opteron, которые удачно конкурировали с интеловскими Xeon на ядрах Gallatin, обеспечивая требуемую производительность при умеренном на то время тепловом пакете. Дальнейшие годы прошли в полной доминации «синих», а отсутствие прямого конкурента позволило им занять лидирующие места в большинстве сегментов рынка. Но с выходом линеек Ryzen (для настольных ПК) и EPYC (для серверных станций) AMD не просто наверстывает упущенное, а всерьёз претендует на звание единоличного короля. Какие сильные стороны «красных» камней и что взять для создания недорогой и производительной серверной станции? Об этом и не только расскажем далее.

Пора переходить в красный лагерь: выбираем лучший AMD EPYC для сервера - 1
Читать полностью »


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