Домой / Norton / Влияют ли темы на производительность. Архитектура микропроцессора Intel и основные факторы, влияющие на его производительность. Отключение ненужных служб и программ из автозапуска

Влияют ли темы на производительность. Архитектура микропроцессора Intel и основные факторы, влияющие на его производительность. Отключение ненужных служб и программ из автозапуска

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

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

Зависимость общей производительности системы от памяти имеет сложный характер, что затрудняет прямую оценку скорости памяти, то есть сравнения различных модулей. Например, память с частотой 1600 МГц имеет вдвое большую пропускную способность, чем 800-мегагерцовая. И синтетические тесты памяти прилежно выведут столбик в два раза выше. Но если вы протестируете целую систему с этими двумя видами памяти с помощью популярных тестовых приложений, на которых обычно тестируют процессоры, то и близко не получите двухкратной разницы в производительности. Интегральный индекс быстродействия может отличаться максимум на несколько десятков процентов.

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

Краткая теория

Чтобы понять специфику проблемы, рассмотрим принципиальную схему взаимодействия приложения, ЦП и подсистемы памяти. Уже давно для описания работы центрального процесса считается удачной аналогия с заводским конвейером. И движутся по этому конвейеру инструкции из программного кода, а функциональные модули процессора обрабатывают их словно станки. Тогда современные многоядерные ЦП будут подобны заводам с несколькими цехами. Например, работу технологии Hyper-Threading можно сравнить с конвейером, по которому едут вперемешку детали сразу нескольких автомобилей, и умные станки обрабатывают их одновременно, по метке на деталях определяя, к какой модели машины они относятся. Например, собирается красная и синяя машины, тогда красящий станок использует красную краску для деталей красной машины и синюю краску для синей. И поток деталей сразу для двух моделей позволяет лучше загрузить станки. А если аппарат для покраски будет иметь два распылителя, и сможет красить одновременно две детали в разные цвета, конвейер сможет работать на полную мощность вне зависимости от того, в каком порядке будут поступать детали. Наконец, последний писк моды, реализуемый в будущих процессорах AMD, в которых различные ядра ЦП будут иметь некоторые общие функциональные блоки, можно сравнить с идеей сделать часть особо громоздких и дорогих станков общей для двух цехов, чтобы сэкономить заводскую площадь и сократить капитальные затраты.

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

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

Произведение объема кузова на скорость движения, то есть количество грузов, которые можно перевезти в единицу времени, будет соответствовать пропускной способности памяти (ПСП). Но очевидно, что системы с одинаковой ПСП не обязательно равноценны. Важно значение каждого компонента. Скоростной маневренный грузовичок может оказаться лучше, чем большой, но медленный транспорт, так как необходимые данные могут лежать в различных участках памяти, расположенных далеко друг от друга, а вместимость грузовика (или объем транзакции) много меньше общего объема (памяти), и тогда даже большому грузовику придется совершить два рейса, и его вместимость не будет востребована.

Другие же программы имеют так называемый локальный доступ к памяти, то есть они читают или пишут в близко расположенные ячейки памяти - им относительно безразлична скорость случайного доступа. Это свойство программ объясняет эффект от наращивания объемов кэш-памяти в процессорах, которая, благодаря близкому расположению к ядру, в десятки раз быстрее. Даже если программа требует, например, 512 МБ общей памяти, в каждый отдельный небольшой промежуток времени (например, миллион тактов, то есть одна миллисекунда), программа может работать только с несколькими мегабайтами данных, которые успешно помещаются в кэше. И потребуется только обновлять время от времени содержимое кэша, что, в общем, происходит быстро. Но может быть и обратная ситуация: программа занимает всего 50 МБ памяти, но постоянно работает со всем этим объемом. А 50 МБ значительно превышают типичный размер кэша существующих настольных процессоров, и, условно говоря, 90% обращений к памяти (при размере кэша в 5 МБ) не кэшируются, то есть 9 из 10 обращений идут непосредственно в память, так как необходимых данных нет в кэше. И общая производительность будет почти полностью лимитирована скоростью памяти, так как процессор практически всегда будет находиться в ожидании данных.

Время доступа к памяти в случае, когда данных нет в кэше, составляет сотни тактов. И одна инструкция обращения к памяти по времени равноценна десяткам арифметических.

«Памятенезависимые» приложения

Позволим себе один раз использовать такой корявый термин для приложений, производительность в которых на практике не зависит от смены модулей на более высокочастотные и низколатентные. Откуда вообще такие приложения берутся? Как мы уже отметили, все программы имеют различные требования к памяти, в зависимости от используемого объема и характера доступа. Каким-то программам важна только общая ПСП, другие, наоборот, критичны к скорости доступа к случайным участкам памяти, которая иначе называется латентностью памяти. Но очень важно также, что степень зависимости программы от параметров памяти во многом определяется характеристиками центрального процессора - прежде всего, размером его кэша, так как при увеличении объема кэш-памяти рабочая область программы (наиболее часто используемые данные) может поместиться целиком в кэш процессора, что качественно ускорит программу и сделает её малочувствительной к характеристикам памяти.

Кроме того, важно, как часто в коде программы встречаются сами инструкции обращения к памяти. Если значительная часть вычислений происходит с регистрами, велик процент арифметических операций, то влияние скорости памяти снижается. Тем более что современные ЦП умеют изменять порядок выполнения инструкций и начинают загружать данные из памяти задолго до того, как те реально понадобятся для вычислений. Такая технология называется предвыборкой данных (prefetch). Качество реализации данной технологии также влияет на памятезависимость приложения. Теоретически, ЦП с идеальным prefetch не потребуется быстрая память, так как он не будет простаивать в ожидании данных.

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

Однако разработчики программ также в курсе характеристик современного поколения процессоров, и зачастую в их силах (при желании) оптимизировать объем данных таким образом, чтобы он помещался в кэш-памяти даже бюджетных процессоров. Если мы работаем с хорошо оптимизированным приложением - для примера можно вспомнить некоторые программы кодирования видео, графические или трехмерные редакторы, - у памяти, с практической точки зрения, не будет такого параметра, как производительность, будет только объем.

Еще одна причина, по которой пользователь может не обнаружить разницы при смене памяти, состоит в том, что она и так слишком быстрая для используемого процессора. Если бы сейчас все процессоры вдруг замедлились в 10 раз, то для производительности системы в большинстве программ стало бы абсолютно все равно, какой тип памяти в ней установлен - хоть DDR-400, хоть DDR3-1600. А если бы ЦП радикально ускорились, то производительность значительной части программ наоборот стала бы гораздо существеннее зависеть от характеристик памяти.

Таким образом, реальная производительность памяти есть величина относительная, и определяется в том числе и используемым процессором, а также особенностями ПО.

«Памятезависимые» приложения

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

Тут сразу вспоминаются игрушки-стратегии со сложным и «медленным» искусственным интеллектом (ИИ). Ими никто не любит тестировать ЦП, так как инструменты для оценки либо отсутствуют, либо характеризуются большими погрешностями. На скорость выработки решения алгоритмом ИИ влияют множество факторов - например, иногда закладываемая в ИИ вариативность решений, чтобы сами решения выглядели более «человеческими». Соответственно, и реализация различных вариантов поведения занимает разное время.

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

Достаточно сильно от производительности памяти могут зависеть и игры других жанров, пусть не со столь умным искусственным интеллектом, зато с собственными алгоритмами имитации виртуального мира, включая физическую модель. Впрочем, они на практике чаще всего упираются в производительность видеокарты, поэтому тестировать на них память также бывает не очень удобно. Кроме того, важным параметром комфортного игрового процесса в трехмерных играх от «первого лица» является минимальное значение fps: его возможное проседание в пылу жестокой битвы может иметь самые плачевные для виртуального героя последствия. А минимальный fps тоже, можно сказать, невозможно измерить. Опять же - из-за вариативного поведения ИИ, особенностей расчета «физики» и случайных системных событий, которые тоже могут приводить к проседанию. Как прикажете в таком случае анализировать полученные данные?

Тестирование скорости игр в демо-роликах имеет ограниченное применение еще и потому, что не все части игрового движка бывают задействованы для воспроизведения демки, и в реальной игре на скорость могут влиять иные факторы. Причем даже в таких наполовину искусственных условиях минимальный fps непостоянен, и его редко приводят в отчетах о тестировании. Хотя, повторимся, это наиболее важный параметр, и в тех случаях, когда идет обращение к данным, проседание fps весьма вероятно. Ведь современные игры, в силу своей сложности, разнообразия кода, включающего помимо поддержки физического движка и искусственного интеллекта также подготовку графической модели, обработку звука, передачу данных через сеть и пр., очень зависят как от объема, так и от производительности памяти. Кстати, будет заблуждением считать, что графический процессор обрабатывает сам всю графику: он только рисует треугольники, текстуры и тени, а формированием команд все равно занимается ЦП, и для сложной сцены это вычислительно емкая задача. К примеру, когда вышел Athlon 64 с интегрированным контроллером памяти, наибольший прирост в скорости по сравнению со старым Athlon был именно в играх, хотя там не использовались 64-битность, SSE2 и другие новые «фишки» Athlon 64. Именно существенное повышение эффективности работы с памятью благодаря интегрированному контроллеру сделало тогдашний новый процессор AMD чемпионом и лидером по производительности в первую очередь в играх.

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

Ещё одним принципиальным случаем усиленной зависимости от памяти является режим многозадачности, то есть запуск нескольких ресурсоемких приложений одновременно. Вспомним снова все тот же AMD Athlon 64 с интегрированным контроллером памяти, который к моменту анонса Intel Core выпускался уже в двухъядерном варианте. Когда вышел Intel Core на новом ядре, процессоры AMD стали проигрывать везде, кроме SPEC rate - многопоточном варианте SPEC CPU, когда запускается столько копий тестовой задачи, сколько ядер в системе. Новое интеловское ядро, обладая большей вычислительной мощностью, тупо затыкалось в этом тесте в производительность памяти, и даже большой кэш и широкая шина памяти не помогали.

Но почему это не проявлялось в отдельных пользовательских задачах, в том числе многопоточных? Главной причиной было то, что большинство пользовательских приложений, которые в принципе хорошо поддерживают многоядерность, всячески оптимизированы. Вспомним в очередной раз пакеты для работы с видео и графикой, которые больше всех получают прирост от многопоточности - всё это оптимизированные приложения. К тому же объем используемой памяти меньше, когда код параллелится внутри программы - по сравнению с вариантом, когда запускаются несколько копий одной задачи, а тем более - разные приложения.

А вот если запустить на ПК сразу несколько различных приложений, нагрузка на память возрастет многократно. Это произойдет по двум причинам: во-первых, кэш-память будет поделена между несколькими задачами, то есть каждой достанется только часть. В современных ЦП кэш L2 или L3 - общий для всех ядер, и если одна программа использует много потоков, то они все могут выполняться на своем ядре и работать с общим массивом данных в L3-кэше, а если программа однопоточна, то ей достается весь объем L3 целиком. Но если потоки принадлежат различным задачам, объем кэша будет вынужденно делиться между ними.

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

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

Типичным примером такой ситуации на ПК будет одновременный запуск игры, «скайпа», антивируса и программы кодирования видеофайла. Пусть не типичная, но совсем не фантастическая ситуация, в которой очень сложно корректно измерить скорость работы, так как на результат влияют действия планировщика в составе ОС, который при каждом замере может по-иному распределять задачи и потоки по разным ядрам и давать им различные приоритеты, временны́е интервалы и делать это в разной последовательности. И опять-таки, наиболее важным параметром будет пресловутая плавность работы - характеристика, по аналогии с минимальным fps в играх, которую в данном случае измерить еще сложнее. Что толку от запуска игры или какой-то другой программы одновременно с кодированием видеофайла, если поиграть нормально не удастся из-за рывков изображения? Пусть даже видеофайл быстро сконвертируется, поскольку многоядерный процессор в данном случае может быть и недогружен. Здесь нагрузка на систему памяти будет гораздо больше, чем при исполнении каждой из перечисленных задач по отдельности.

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

Проблемы тестирования

Сразу целая группа факторов снижает чувствительность ЦП-ориентированных тестов к скорости памяти. Очень чувствительные к памяти программы представляют собой плохие тесты ЦП - в том смысле, что они слабо реагируют на модель ЦП. Такие программы могут различать процессоры с контроллером памяти, снижающим латентность доступа к памяти, и без оного, но при этом в пределах одного семейства почти не реагировать на частоту процессора, показывая сходные результаты при работе на частоте 2500 и 3000 МГц. Часто такие приложения отбраковываются как тесты ЦП, ибо тестеру просто непонятно, что лимитирует их производительность, и кажется, что дело в «чудачествах» самой программы. Будет удивительно, если все процессоры (и AMD, и Intel) покажут в тесте одинаковый результат, но такое вполне возможно для приложения, очень сильно зависимого от памяти.

Чтобы избежать упреков в необъективности и вопросов, почему выбрана та или иная программа, в тесты стараются включать только наиболее популярные приложения, которыми все пользуются. Но такая выборка не совсем репрезентативна: наиболее популярные приложения из-за своей массовости часто очень хорошо оптимизированы, а оптимизация программы начинается с оптимизации её работы с памятью - она важнее, например, чем оптимизация под SSE1-2-3-4. Но совсем не все на свете программы так хорошо оптимизируются; попросту на все программы не хватит программистов, которые умеют писать быстрый код. Опять возвращаясь к популярным программам кодирования, многие из них были написаны при непосредственном активном участии инженеров фирм-изготовителей ЦП. Как и некоторые другие популярные ресурсоемкие программы, в частности медленные фильтры двухмерных графических редакторов и движки рендеринга студий трехмерного моделирования.

В свое время было популярно сравнивать компьютерные программы с дорогами. Эта аналогия потребовалась, чтобы объяснить, почему на некоторых программах быстрее работает Pentium 4, а на некоторых Athlon. Интеловский процессор не любил ветвления и быстрее «ехал» по прямым дорогам. Это очень упрощенная аналогия, но она удивительно хорошо передает суть. Особенно интересно, когда две точки на карте соединяют две дороги - «оптимизированная» прямая качественная дорога и «неоптимизированная» кривая ухабистая. В зависимости от выбора одной из дорог, ведущих к цели, выигрывает тот или иной процессор, хотя в каждом случае они делают одно и тоже. То есть на неоптимизированном коде выигрывает Athlon, а при простой оптимизации приложения выигрывает Pentium 4 - и сейчас мы даже не говорим о специальной оптимизации под архитектуру Netburst: в таком случае Pentium 4 мог бы посоревноваться даже с Сore. Другое дело, что хорошие «оптимизированные» дороги строить дорого и долго, и это обстоятельство во многом предопределило печальную участь Netburst.

Но если мы отойдем от популярных наезженных трасс, то окажемся в лесу - там вообще нет никаких дорог. И немало приложений написаны безо всякой оптимизации, что почти неминуемо влечет сильную зависимость от скорости памяти в случае, если объем рабочих данных превышает размер кэша ЦП. К тому же множество программ пишутся на языках программирования, которые в принципе не поддерживают оптимизацию.

Специальный тест памяти

Для того чтобы корректно оценить влияние скорости памяти на производительность системы в случае, когда память имеет значение (для упомянутых «памятезависимых» приложений, мультизадачности и т. п.), исходя из всех вышеперечисленных обстоятельств и решено было создать специальный тест памяти, который по структуре кода представляет собой некое обобщенное сложное, зависимое от памяти приложение и имеет режим запуска нескольких программ.

Какие плюсы есть у такого подхода? Их очень много. В отличие от «натуральных» программ, возможен контроль над объемом используемой памяти, контроль над её распределением, контроль над количеством потоков. Специальное контролируемое выделение памяти позволяет нивелировать влияние особенностей менеджера памяти программы и операционной системы на производительность, чтобы результаты были не зашумлены, и можно было корректно и быстро тестировать. Точность измерения позволяет производить тест за относительно небольшое время и оценить большее количество конфигураций.

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

В качестве модельной задачи была взята модификация теста Astar из SPEC CPU 2006 Int (кстати, предложенный для включения в этот пакет автором статьи; для теста памяти использован адаптированный для графов алгоритм) и задача сортировки данных с помощью различных алгоритмов. Программа Astar имеет сложный алгоритм с комплексным доступом к памяти, а алгоритмы сортировки числового массива - базовая задача программирования, использующаяся во множестве приложений; она включена, в том числе, для дополнительного подтверждения результатов сложного теста данными производительности простой, но распространенной и классической задачи.

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

Согласно исследованиям набора тестов SPEC CPU 2006, тест Astar - один из нескольких, в наибольшей мере коррелирующих с общим результатом пакета на x86-совместимых процессорах. Но в нашем тесте памяти объем используемых программой данных был увеличен, так как со времени выпуска теста SPEC CPU 2006 типичный объем памяти возрос. Также программа приобрела внутреннюю многопоточность.

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

Программа осуществляет операции с графом, соединяющим пункты карты. То есть каждый элемент содержит ссылки на соседние, они как бы соединены дорогами. Есть два подтеста: в одном граф строится на основе двухмерной матрицы, то есть плоской карты, а во втором - на основе трехмерной матрицы, которая представляет собой некий сложный массив данных. Структура данных аналогична так называемым спискам - популярному способу организации данных в программах с динамическим созданием объектов. Такой тип адресации в целом характерен для объектно-ориентированного ПО. В частности, это практически все финансовые, бухгалтерские, экспертные приложения. И характер их обращений к памяти разительно контрастирует с типом доступа у оптимизированных на низком уровне вычислительных программ, вроде программ видеокодирования.

Каждый из подтестов имеет два варианта реализации многопоточности. В каждом из вариантов запускается N потоков, но в одном каждая из нитей осуществляет поиск пути на собственной карте, а в другом все нити ищут пути одновременно на одной карте. Так получаются несколько различных шаблонов доступа, что делает тест более показательным. Объем используемой памяти по умолчанию в обоих вариантах одинаков.

Таким образом, в первой версии теста получается 6 подтестов:

  • Поиск пути на 2D-матрице, общая карта
  • Поиск пути на 2D-матрице, отдельная карта для каждого потока
  • Поиск пути на 3D-матрице, общая карта
  • Поиск пути на 3D-матрице, отдельная карта для каждого потока
  • Сортировка массива с использованием алгоритма quicksort (локальный доступ к памяти)
  • Сортировка массива с использованием алгоритма heapsort (сложный доступ к памяти)

Результаты теста

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

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

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

Также тест может быть использован для оценки масштабируемости процессоров по частоте при разгоне или внутри модельного ряда. Он позволяет понять, с какой частоты процессор начинает «затыкаться» в память. Часто процессор формально разгоняется сильно, и синтетические тесты, основанные на выполнении простых арифметических операций, показывают соответствующий изменению частоты прирост, но в памятезависимом приложении прироста может и не быть вообще из-за отсутствия соответствующего прироста в скорости памяти. Другая причина заключается в том, что ядро ЦП теоретически может потреблять больше энергии в случае сложного приложения и начнет либо сбоить, либо само снижать частоту, что не всегда возможно выявить в простых арифметических тестах.

Заключение

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

На самом деле, проблема ускорения доступа к данным - краеугольный камень современного процессоростроения. Узкое место здесь будет всегда, если только, конечно, сам процессор не будет состоять полностью из кэш-памяти, что, кстати, недалеко от истины - львиную долю площади кристаллов современных ЦП занимает как раз кэш-память разных уровней. (В частности, Intel заработал свои рекордные миллиарды, в том числе, благодаря тому, что в свое время разработал метод более плотного размещения кэшей на кристалле, то есть на единицу площади кристалла помещается больше ячеек кэша и больше байт кэш-памяти.) Однако всегда будут существовать приложения, которые либо невозможно оптимизировать таким образом, чтобы данные умещались в кэш-памяти, либо этим просто некому заниматься.

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

Производительность видеопамяти. Как свидетельствует практика, видеопамять очень часто является слабым местом графических плат. И дело в первую очередь не в ее объеме, а в пропускной способности, определяющей скорость доступа к данным, которые в ней хранятся. Пропускная способность зависит от двух показателей – частоты (скорость тактовых колебаний) и ширины (битности) шины памяти - количества данных, передаваемых за один такт. Например, некая видеопамять, имея ширину шины 256 бит, работает на частоте 1000 МГц. Это значит, что за 1 секунду она совершает 1000 тактов, передавая за каждый такт 256 бит информации (1000Х256=256 000 бит/с). Другая память, работает на частоте 1800 МГц, но при этом имеет шину 128 бит (128Х1800=230400 бит/с). Как видно в примере, память со значительно большей частотой является менее продуктивной в связи с узкой шиной. Это, конечно, чисто теоретический пример, но он демонстрирует реальное положение вещей.

Тип видеопамяти (GDDR2, GDDR3, GDDR4, GDDR5 и др.) указывает на то, к какому поколению принадлежит память графической карты. Каждое следующее поколение является совершеннее предыдущего и обеспечивает более высокую частоту работы. Но как видно из предыдущего примера, память нового поколения с узкой шиной по своей реальной пропускной способности может оказаться хуже памяти предыдущего поколения с широкой шиной.

Объем видеопамяти также влияет на производительность графической платы, но только до определенного предела (когда он является слабым местом). Гораздо выгоднее приобрести карту с памятью GDDR3 - 256 бит и объемом 512 MБ чем с памятью GDDR3 - 128 бит и объемом 1 ГБ. На самом деле графической плате с низкой пропускной способностью объем памяти в 1 ГБ вряд ли когда-нибудь понадобится. Такие карты ориентированы не на достижение максимальной производительности. Они являются больше продуктом маркетинговых хитростей производителей, рассчитанных на неопытных покупателей, оценивающих графические ускорители исключительно по размеру памяти. Поэтому, выбирая видеокарту, нужно оценивать сбалансированность соотношения частоты, битности и объема видеопамяти. Эти показатели обычно указываются в каталогах и ценниках магазинов.

Характеристики графического ядра. Тактовая частота графического процессора является важной, но не самой главной его характеристикой. Графическое ядро со сравнительно невысокой частотой нередко оказывается очень производительным. Все зависит от архитектуры графического ядра, количества и качества входимых в его состав унифицированных шейдерных блоков (чем больше, тем лучше) и других элементов, которыми определяется пиксельная и текстурная скорости заполнения (филрейт, fill rate) видеокарты (чем они выше, тем лучше). Эти показатели редко указываются на ценниках и в каталогах. Поэтому перед выбором видеокарты из нескольких возможных вариантов, желательно на официальном сайте их производителей (или на других специализированных сайтах) поинтересоваться реальным положением вещей и выбрать вариант с самыми высокими показателями. На практике, чем новее линейка видеокарт, к которой принадлежит графический ускоритель, тем, как правило, он мощнее. Исключение составляют «младшие» модели линейки. Не редко они оказываются менее производительными, нежели «старшие» представители предыдущей линейки. Например, GeForce GTS450 будет существенно уступать GeForce GTX280. Модели новой линейки часто поддерживают новые версии DirectX и OpenAL, что обеспечивает более «продвинутую» графику в компьютерных играх и других приложениях, их использующих. Но если мощности карты окажется недостаточно, практической выгоды от этого не будет. На самом деле, GeForce GTX280 (с поддержкой DirectX10) – вариант гораздо предпочтительнее GeForce GTS450 (DirectX11). Один из косвенных признаков невысокой производительности видеокарты – отсутствие разъема для подключения дополнительного питания непосредственно от блока питания. Шина PCIE материнской платы, к которой подсоединяется графическая плата, не может обеспечить достаточное питание. Современные технологии не позволяют создавать игровые видеокарты с настолько низким уровнем потребления электроэнергии.

Система охлаждения – элемент, от которого во многом зависит комфорт использования графического ускорителя. При выборе лучше отдать предпочтение изделиям, выполненным с применением вакуумных термотрубок (видны при визуальном осмотре). Такие системы на деле оказываются более эффективными и создают намного меньше шума. Кроме того, эффективное охлаждение предоставляет возможность лучше «разогнать» видеокарту, добившись при необходимости более высоких показателей ее производительности. Высокоэффективную систему охлаждения для графической платы можно приобрести отдельно, заменив штатную. Но стоит такая система как правило не менее 40 дол. США (а то и гораздо дороже). Поэтому выгоднее покупать видеокарты с эффективной штатной системой охлаждения (пусть они и стоят на 10-20 дол. США дороже аналогов без оной).

Взаимодействие нескольких графических плат при обработке одного изображения можно построить по следующим алгоритмам:

  • когда изображение виртуально разбивается на несколько частей, каждая из которых обрабатывается отдельной картой;
  • покадровая разбивка изображение (когда, например, одна карта обрабатывает только четные кадры, другая - нечетные);
  • когда одна и та же картинка генерируется на всех графических платах, но с разными шаблонами сглаживания. Полученные результаты смешиваются, накладываясь друг на друга, чем достигается более высокая четкость, детализированность и сглаживание конечного изображения.

Главный недостаток систем на базе двух (или более) видеокарт – их высокое энергопотребление и дороговизна. При этом, производительность видеоподсистемы на практике увеличивается не в два или более раз. В лучшем случае удается добиться прироста в 50-60% от фактической мощности дополнительных графических карт.

Многие пользователи задаются вопросом, что в наибольшей степени влияет на производительность компьютера?

Оказывается, однозначного ответа на этот вопрос дать нельзя. Компьютер – это набор подсистем (памяти, вычислительная, графическая, хранения), взаимодействующих друг с другом через материнскую плату и драйверы устройств. При неправильной настройке подсистем они не обеспечивают максимальную производительность, которую могли бы выдать.

Комплексная производительность складывается из программных и аппаратных настроек и особенностей.
Перечислим их.

Аппаратные факторы производительности:

  1. Количество ядер процессора – 1, 2, 3 или 4
  2. Частота процессора и частота системной шины (FSB) процессора – 533, 667, 800, 1066, 1333 или 1600 МГц
  3. Объем и количество кэш-памяти процессора (CPU) – 256, 512 Кбайт; 1, 2, 3, 4, 6, 12 Мбайт.
  4. Совпадение частоты системной шины CPU и материнской платы
  5. Частота оперативной памяти (RAM) и частота шины памяти материнской платы – DDR2-667, 800, 1066
  6. Объем оперативной памяти – 512 и более Мбайт
  7. Используемый на материнской плате чипсет (Intel, VIA, SIS, nVidia, ATI/AMD)
  8. Используемая графическая подсистема – встроенная в материнскую плату или дискретная (внешняя видеокарта со своей видеопамятью и графическим процессором)
  9. Тип интерфейса винчестера (HDD) – параллельный IDE или последовательные SATA и SATA-2
  10. Кэш винчестера – 8, 16 или 32 МБ.

Увеличение перечисленных технических характеристик всегда увеличивает производительность.

Ядра

На данный момент большинство выпускаемые процессоров имеют как минимум 2 ядра (кроме AMD Sempron, Athlon 64 и Intel Celeron D, Celeron 4xx). Количество ядер актуально в задачах 3D-рендеринга или кодирования видео, а также в программах, код которых оптимизирован под многопоточность нескольких ядер. В остальных случаях (например, в офисных и интернет-задачах) они бесполезны.

Четыре ядра имеют процессоры Intel Core 2 Extreme и Core 2 Quad со следующими маркировками: QX9xxx, Q9xxx, Q8xxx, QX6xxx;
AMD Phenom X3 – 3 ядра;
AMD Phenom X4 – 4 ядра.

Надо помнить, что количество ядер значительно увеличивает энергопотребление CPU и повышает требования по питанию к материнской плате и блоку питания!

А вот поколение и архитектура ядра сильно влияют на производительность любого процессора.
К примеру, если взять двухядерные Intel Pentium D и Core 2 Duo с одинаковой частой, системной шиной и кэш-памятью, то Core 2 Duo несомненно выиграет.

Частоты процессора, памяти и шин материнской платы

Также очень важно, чтобы совпадение частот различных комплектующих.
Скажем, если ваша материнская плата поддерживает частоту шины памяти 800 МГц, а установлен модуль памяти DDR2-677, то частота модуля памяти будет снижать производительность.

В то же время, если материнская плата не поддерживает частоту 800 МГц, а в то время как установлен модуль DDR2-800, то он работать будет, но на меньшей частоте.

Кэши

Кэш памяти процессора в первую очередь сказывается при работе с CAD-системами, большими базами данных и графикой. Кэш - это память с большей скоростью доступа, предназначенная для ускорения обращения к данным, содержащимся постоянно в памяти с меньшей скоростью доступа (далее «основная память»). Кэширование применяется ЦПУ, жёсткими дисками, браузерами и веб-серверами.

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

Все CPU отличаются количеством кэшей (до 3) и их объемом. Самый быстрый кэш – первого уровня (L1), самый медленный – третьего (L3). Кэш L3 имеют только процессоры AMD Phenom Так что очень важно, чтобы именно кэш L1 имел большой объем.

Мы протестировали зависимость производительности от объема кэш-памяти. Если вы сравните результаты 3D-шутеров Prey и Quake 4, являющих типичными игровыми приложениями, разница в производительности между 1 и 4 Мбайт примерно такова, как между процессорами с разницей по частоте 200 МГц. То же самое касается тестов кодирования видео для кодеков DivX 6.6 и XviD 1.1.2, а также архиватора WinRAR 3.7. Однако, такие интенсивно нагружающие CPU приложения, как 3DStudio Max 8, Lame MP3 Encoder или H.264 Encoder V2 от MainConcept не слишком сильно выигрывают от увеличения размера кэша.
Напомним, что кэш L2 гораздо больше влияет на производительность CPU Intel Core 2, чем AMD Athlon 64 X2 или Phenom, так как у Intel кэш L2 общий для всех ядер, а у AMD отдельный для каждого ядра! В этом плане, Phenom оптимальнее работают с кэшем.

Оперативная память

Как уже было сказано, оперативная память характеризуется частотой и объемом. В то же время сейчас выпускается 2 типа памяти DDR2 и DDR3, которые различаются архитектурной, производительностью, частотой и напряжением питания – то есть всем!
Частота модуля памяти должна совпадать с частотой самого модуля.

Объем оперативной памяти также влияет на производительность операционной системы и на ресурсоемкие приложения.
Расчеты просты – ОС Windows XP занимает в оперативной памяти после загрузки 300-350 МБ. Если в автозагрузке находятся дополнительные программы, то они также загружают RAM. То есть свободных остается 150-200 МБ. Туда могут поместиться только легкие офисные приложения.
Для комфортной работы с AutoCAD, графическими приложениями, 3DMax, кодированием и графикой требуется не менее 1 ГБ оперативной памяти. Если же используется Windows Vista – то не менее 2 ГБ.

Графическая подсистема

Часто в офисных компьютерах используются матерински платы, имеющие встроенную графику. Материнские платы на таких чипсетах (G31, G45, AMD 770G и т.д.) имеют букву G в маркировке.
Такие встроенные видеокарты используются часть RAM для видеопамяти, тем самым уменьшая объем доступного для пользователя пространства RAM.

Соответственно, для увеличения производительности встроенную видеокарту надо отключать в BIOS материнской платы, а в слот PCI-Express устанавливать внешнюю (дискретную) видеокарту.
Все видеокарты различаются графическим чипсетом, частотой работы его конвейеров, количеством конвейеров, частотой видеопамяти, разрядностью шины видеопамяти.

Подсистема накопителей

Производительность накопителей очень сильно сказывается при обращении к большим объемам данных – видео, аудио, а также при открытии большого количества маленьких файлов.

Из технических характеристик, влияющих на скорость доступа к файлам надо отметить Тип интерфейса винчестера (HDD) – параллельный IDE или последовательные SATA и SATA-2 и кэш винчестера – 8, 16 или 32 МБ.
На данный момент рекомендуется устанавливать винчестеры только с интерфейсом SATA-2, имеющим наибольшую пропускную способность и с наибольшим кэшем.

Программные факторы производительности:

  1. Количество установленных программ
  2. Фрагментация файловой системы
  3. Ошибки файловой системы, bad-секторы
  4. Фрагментация реестра ОС
  5. Ошибки реестра ОС
  6. Размер файла подкачки (объем виртуальной памяти)
  7. Включенные элементы визуализации графического интерфейса ОС
  8. Программы и службы Windows, загружающие в автозагрузке

Это далеко не полный список, но именно эти особенности ОС Windows могут сильно тормозить её работу.
Но об этих характеристиках, настройках и параметрах мы поговорим в следующей статье.

* всегда актуальные вопросы, на что стоит обращать внимание при выборе процессора, чтобы не ошибиться.

Наша цель в данной статье — описать все факторы влияющие на производительность процессора и другие эксплуатационные характеристики.

Наверняка ни для кого не секрет, что процессор – является главной вычислительной единицей компьютера. Можно даже сказать – самая главная часть компьютера.

Именно он занимается обработкой практически всех процессов и задач, которые происходят в компьютере.

Будь то — просмотр видео, музыка, интернет сёрфинг, запись и чтение в памяти, обработка 3D и видео, игр. И многого другого.

Поэтому к выбору Ц ентрального П роцессора, стоит отнестись очень тщательно. Может получиться ситуация, что вы решили поставить мощную видеокарту и не соответствующий её уровню процессор. В этом случае процессор, не будет раскрывать потенциал видеокарты, что будет тормозить её работу. Процессор будет полностью загружен и буквально кипеть, а видеокарта будет ожидать своей очереди, работая на 60-70% от своих возможностей.

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

Intel vs. AMD

*догонялки навсегда

Корпорация Intel , располагает огромными человеческими ресурсами, и почти неисчерпаемыми финансами. Многие инновации в полупроводниковой индустрии и новые технологии идут именно из этой компании. Процессоры и разработки Intel , в среднем на 1-1,5 года опережают наработки инженеров AMD . Но как известно, за возможность обладать самыми современными технологиями – приходится платить.

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

Компания AMD , в отличии от компании Intel , стремится к доступности своих процессоров для конечного потребителя и к грамотной ценовой политике.

Можно даже сказать, что AMD – «Народная марка ». В её ценниках вы найдёте то, что вам нужно по очень привлекательной цене. Обычно через год, после появления новой технологии у компании Intel , появляется аналог технологии от AMD . Если вы не гонитесь за самой высокой производительностью и больше обращаете внимание на ценник, чем на наличие передовых технологий, то продукция компании AMD – именно для вас.

Ценовая политика AMD , больше основывается на количестве ядер и совсем немного — на количестве кэш памяти, наличии архитектурных улучшений. В некоторых случаях, за возможность обладать кэш памятью третьего уровня, придётся немного доплатить (Phenom имеет кэш память 3 уровня, Athlon довольствуется только ограниченной, 2 уровня). Но иногда AMD «балует» своих фанатов возможность разблокировать более дешёвые процессоры, до более дорогих. Разблокировать можно ядра или кэш-память. Улучшить Athlon до Phenom . Такое возможно благодаря модульной архитектуре и при недостатке некоторых более дешёвых моделей, AMD просто отключает некоторые блоки на кристалле более дорогих (программно).

Ядра – остаются практически неизменными, отличается только их количество (справедливо для процессоров 2006-2011 годов). За счёт модульности своих процессоров, компания отлично справляется со сбытом отбракованных чипов, которые при отключении некоторых блоков, становятся процессором из менее производительной линейки.

Компания много лет работала над совершенно новой архитектурой под кодовым именем Bulldozer , но на момент выхода в 2011 году, новые процессоры показали не самую лучшую производительность. AMD грешила на операционные системы, что они не понимают архитектурных особенностей сдвоенных ядер и «другой многопоточности».

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

Частота процессора, количество ядер, многопоточность.

Во времена Pentium 4 и до него – частота процессора , была главным фактором производительности процессора при выборе процессора.

Это не удивительно, ведь архитектуры процессоров — специально разрабатывались для достижения высокой частоты, особенно сильно это отразилось как раз в процессоре Pentium 4 на архитектуре NetBurst . Высокая частота, была не эффективна при том длинном конвейере, что был использован в архитектуре. Даже Athlon XP частотой 2Ггц , по уровню производительности был выше чем Pentium 4 c 2,4Ггц . Так что, это был чистой воды маркетинг. После этой ошибки, компания Intel осознала свои ошибки и вернулась на сторону добра начала работать не над частотной составляющей, а над производительностью на такт. От архитектуры NetBurst пришлось отказаться.

Что же нам даёт многоядерность ?

Четырёх-ядерный процессор с частотой 2,4 Ггц , в много-поточных приложениях, теоретически будет примерным эквивалентом, одноядерного процессора с частотой 9,6Ггц или 2-х ядерному процессору с частотой 4,8 Ггц . Но это только теоретически . Практически же, два двухъядерных процессора в двух сокетной материнской плате, будут быстрее одного 4-ядерного, на той же частоте функционирования. Ограничения по скорости шины и задержки памяти дают о себе знать.

* при условии одинаковых архитектур и количества кэш памяти

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

Приложения, которые «любят» и используют многопоточность: архиваторы , плееры и кодировщики видео , антивирусы , программы дефрагментаторы , графические редакторы , браузеры , Flash .

Так же, к «любителям» многопоточности, можно отнести такие операционные системы как Windows 7 и Windows Vista , а так же многие ОС , основанные на ядре Linux , которые работают заметно быстрее при наличии многоядерного процессора.

Большинству игр , бывает вполне достаточно 2-х ядерного процессора на высокой частоте. Сейчас однако, выходит всё больше игр «заточенных» под многопоточность. Взять хотя бы такие SandBox игры, как GTA 4 или Prototype , в которые на 2-х ядерном процессоре с частотой ниже 2,6 Ггц – комфортно себя не чувствуешь, фреймрейт проваливается ниже 30 кадров в секунду. Хотя в данном случае, скорее всего причиной таких казусов является «слабая» оптимизация игр, недостаток времени или «не прямые» руки тех, кто переносил игры с консолей на PC .

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

Кэш память процессора.

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

Она работает на очень высокой тактовой частоте (обычно на частоте самого процессора), имеет очень высокую пропускную способность и процессорные ядра работают с ней напрямую (L1 ).

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

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

Такой приём, сейчас используется для кэш памяти 3-го уровня . У процессоров Intel существовали процессоры с объединённой кэш памятью 2-го уровня (C2D E 7*** , E 8*** ), благодаря которым и появился данный способ увеличить многопоточную производительность.

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

В общем, чем больше кэш памяти, тем быстрее процессор. В каких именно приложениях?

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

Благоприятно к большому количеству кэш-памяти относятся игры . Особенно стратегии, авто-симуляторы, RPG, SandBox и все игры, где есть много мелких деталей, частиц, элементов геометрии, потоков информации и физических эффектов.

Кэш память играет очень немалую роль в раскрытии потенциала систем с 2-мя и более видеокартами. Ведь какая то доля нагрузки, ложится на взаимодействие ядер процессора как между собой, так и для работы с потоками нескольких видео-чипов. Именно в этом случае важна организация кэш — памяти, и очень полезна кэш память 3-го уровня большого объёма.

Кэш память, всегда оснащается защитой от возможных ошибок (ECC ), при обнаружении которых, ведётся их исправление. Это очень важно, ведь маленькая ошибочка в кэш памяти, при обработке может превратиться в гигантскую, сплошную ошибку, от которой «ляжет» вся система.

Фирменные технологии.

(гипер-поточность, HT )–

впервые технология была применена в процессорах Pentium 4 , но работала не всегда корректно и зачастую больше тормозила процессор, чем ускоряла. Причиной был слишком длинный конвейер и не доведённая до ума система предсказания ветвлений. Применяется компанией Intel , аналогов технологии пока нет, если не считать аналогом то? что реализовали инженеры компании AMD в архитектуре Bulldozer .

Принцип системы таков, что на каждое физическое ядро, создаётся по два вычислительных потока , вместо одного. То есть, если у вас 4-х ядерный процессор с HT (Core i 7 ), то виртуальных потоков у вас 8 .

Прирост производительности достигается за счёт того, что в конвейер могут поступать данные уже в его середине, а не обязательно сначала. Если какие то блоки процессора, способные выполнить это действие простаивают, они получают задачу к выполнению. Прирост производительности не такой как у настоящих физических ядер, но сопоставимый(~50-75%, в зависимости от рода приложения). Довольно редко бывает, что в некоторых приложениях, HT отрицательно влияет на производительность. Связано это с плохой оптимизацией приложений под данную технологию, невозможность понять, что присутствуют потоки «виртуальные» и отсутствие ограничителей для нагрузки потоков равномерно.

Turbo Boost – очень полезная технология, которая увеличивает частоту функционирования наиболее используемых ядер процессора, в зависимости от уровня их загруженности. Очень полезна тогда, когда приложение не умеет использовать все 4 ядра, и загружает только одно или два, при этом их частота работы повышается, что частично компенсирует производительность. Аналогом данной технологии у компании AMD , является технология Turbo Core .

, 3 dnow ! инструкции . Предназначены для ускорения работы процессора в мультимедиа вычислениях (видео, музыка, 2D/3D графика и т.д.), а так же ускоряют работу таких программ как архиваторы, программы для работы с изображениями и видео (при поддержке инструкций данными программами).

3dnow ! – довольно старая технология AMD , которая содержит дополнительные инструкции по обработке мультимедиа контента, помимо SSE первой версии .

*А именно возможность потоковой обработки вещественных чисел одинарной точности.

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

* Пример — SSE 4.1(Intel) — SSE 4A(AMD).

К тому же, данные наборы инструкций не идентичны. Это аналоги, в которых есть небольшие отличия.

Cool’n’Quiet, SpeedStep, CoolCore, Enchanced Half State(C1E) и т . д .

Данные технологии, при низкой нагрузке уменьшают частоту процессора, посредством уменьшения множителя и напряжения на ядре, отключения части КЭШа и т.д. Это позволяет процессору гораздо меньше греться и потреблять меньше энергии, меньше шуметь. Если понадобится мощность, то процессор вернётся в обычное состояние за доли секунды. На стандартных настройках Bios практически всегда включены, при желании их можно отключить, для уменьшения возможных «фризов» при переключении в 3D играх.

Некоторые из этих технологий, управляют скоростью вращения вентиляторов в системе. К примеру, если процессор не нуждается в усиленном отводе тепла и не нагружен, скорость вентилятора процессора уменьшается (AMD Cool’n’Quiet, Intel Speed Step ).

Intel Virtualization Technology и AMD Virtualization .

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

Execute Disable Bit и No eXecute Bit технология, призванная защитить компьютер от вирусных атак и программных ошибок, которые могут вызвать крах системы посредством переполнения буфера .

Intel 64 , AMD 64 , EM 64 T – данная технология позволяет процессору работать как в ОС с 32-х битной архитектурой, так и в ОС с 64-х битной. Система 64 bit – с точки зрения выгоды, для рядового пользователя отличается тем, что в данной системе можно использовать более 3.25Гб оперативной памяти. В 32-х битных системах, использовать бо льший объём оперативной памяти не представляется возможным, из-за ограниченного объёма адресуемой памяти* .

Большинство приложений с 32-х bit архитектурой, можно запустить на системе с 64-х битной ОС.

* Что же поделать, если в далёком 1985 году, никто и подумать не мог о таких гигантских, по меркам того времени, объёмах оперативной памяти.

Дополнительно.

Пара слов о .

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

Чем более тонкий техпроцесс, тем больше можно «завернуть» в чип (и не только) и увеличить возможности процессора. Тепловыделение и энергопотребление при этом тоже уменьшается пропорционально, благодаря меньшим потерям по току и уменьшению площади ядра. Можно заметить тенденцию, что с каждым новым поколением той же архитектуры на новом техпроцессе, растёт и энергопотребление, но это не так. Просто производители идут в сторону ещё большей производительности и перешагивают за черту тепловыделения прошлого поколения процессоров из-за увеличения числа транзисторов, которое не пропорционально уменьшению техпроцесса.

Встроенное в процессор .

Если вам не нужно встроенное видео ядро, то не стоит покупать процессор с ним. Вы получите только худший отвод тепла, лишний нагрев (не всегда), худший разгонный потенциал (не всегда), и переплаченные деньги.

К тому же те ядра, что встроены в процессор, годятся только для загрузки ОС, интернет сёрфинга и просмотра видео (и то не любого качества).

Тенденции на рынке все же меняются и возможность купить производительный процессор от Intel без видео ядра выпадает всё реже. Политика принудительного навязывание встроенного видео ядра, появилась с процессоров Intel под кодовым названием Sandy Bridge , основное новшество которых и было встроенное ядро на том же техпроцессе. Видео-ядро, находится совместно с процессором на одном кристалле , и не такое простое как в предыдущих поколениях процессоров Intel . Для тех кто его не использует, есть минусы в виде некоторой переплаты за процессор, смещённость источника нагрева относительно центра тепло — распределительной крышки. Однако есть и плюсы. Отключенное видео ядро, можно использовать для очень быстрой кодировки видео с помощью технологии Quick Sync вкупе со специальным, поддерживающим данную технологию ПО. В будущем, Intel обещает расширить горизонты использования встроенного видео ядра для параллельных вычислений.

Сокеты для процессоров. Сроки жизни платформ .


Intel ведёт грубую политику для своих платформ. Срок жизни каждой (срок начала и конца продаж процессоров для неё), обычно не превышает 1.5 — 2 года. К тому же, у компании есть несколько параллельно развивающихся платформ.

Компания AMD , ведёт противоположную политику совместимости. На её платформу на AM 3 , будут подходить все процессоры будущих поколений, поддерживающие DDR3 . Даже при выходе платформы на AM 3+ и более поздних, отдельно будут выпускаться либо новые процессоры под AM 3 , либо новые процессоры будут совместимы со старыми материнскими платами, и можно будет сделать безболезненный для кошелька апгрейд, поменяв только процессор (без смены мат.платы, ОЗУ и т.д.) и прошив материнской платы. Единственные нюансы несовместимости могут быть при смене типа , так как будет требоваться другой контроллёр памяти, встроенный в процессор. Так что совместимость ограниченная и поддерживается далеко не всеми материнскими платами. Но в целом, экономному пользователю или тем, кто не привык менять платформу полностью каждые 2 года — выбор производителя процессора понятен — это AMD .

Охлаждение процессора.

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

Заключение.

Все важные аспекты, влияющие на производительность и эксплуатационные характеристики процессора, были рассмотрены. Повторим, на что следует обращать внимание:

  • Выбрать производителя
  • Архитектура процессора
  • Техпроцесс
  • Частота процессора
  • Количество ядер процессора
  • Размер и тип кэш-памяти процессора
  • Поддержка технологий и инструкций
  • Качественное охлаждение

Надеемся, данный материал поможет вам разобраться и определиться в выборе соответствующего вашим ожиданиям процессора.

Интересная тема и всегда актуальная — как увеличить быстродействие компьютера. В современном мире гонка за временем становится всё более интересной, каждый выкручивается как может. И компьютер здесь играет далеко не последнюю роль. Как он может взбесить нелепыми тормозами в ответственный момент! Меня в этот момент посещают такие мысли: «пипец, ну я же ничего такого не делаю! откуда тормоза?»

В этой статье я разберу 10 самых действенных способов как увеличить производительность компьютера.

Замена комплектующих

Самый очевидный способ – это заменить компьютер на что-нибудь помощней, его мы рассматривать не будем 🙂 А вот заменить какую-нибудь запчасть (комплектующую) вполне возможно. Надо только разобраться что можно заменить потратив меньше денег, и получив максимум увеличения быстродействия компьютера.

А. Процессор заменять стоит в случае если новый будет как минимум на 30% быстрее установленного. Иначе заметного прироста в производительности не будет, а средств потребуется немало.

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

B. Оперативная память . Однозначно надо добавить, если во время работы вся память загружена. Смотрим через «Диспетчер задач», если в пик работы (когда открыто всё что может быть открыто) загружено до 80% оперативной памяти, то лучше её увеличить на 50-100%. Благо она сейчас копейки стоит.

C. Жёсткий диск . Дело не в размере диска, а в его скорости. Если у вас медленный жёсткий диск из экономной серии со скоростью вращения шпинделя 5400 оборотов в минуту, то его замена на более дорогой со скоростью 7200 оборотов и более высокой плотностью записи добавит производительности. Во всех случаях замена на SSD-накопитель очень улыбает пользователей 🙂 Быстродействие до и после совсем другая.

Примерно можно определить узкое место в конфигурации компьютера с помощью стандартного средства оценки производительности Windows 7. Для этого заходим в «Панель управления -> Система» и жмём «Оценить производительность» или «Обновить». Общая производительность определяется наименьшим показателем, таким образом можно определить слабое звено. Например, если оценка жёсткого диска намного меньше чем оценка процессора и оперативной памяти, то надо задуматься о его замене на более производительный.

Ремонт, чистка компьютера

Компьютер может тормозить из-за какой-то неисправности, и простой ремонт поможет увеличить быстродействие. Например, при неисправностях системы охлаждения процессора его тактовая частота сильно занижается, и как следствие – падает производительность. Тормозить ещё может банально из-за компонентов материнской платы в следствии сильной запыленности! Так что для начала попробуйте хорошенько почистить системный блок.

Дефрагментация и свободное место на диске

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

Отстутствие хотя бы 1 Гб свободного места на системной диске (там где установлена операционная система) также может послужить причиной снижения общей производительности. Следите за свободным местом на своих дисках. Кстати, для процесса дефрагментации желательно иметь хотя бы 30% свободного места.

Переустановка операционной системы Windows XP/7/10

Переустановка 90% позволяет увеличить быстродействие компьютера в 1,5-3 раза в зависимости от её «загаженности». Так уж устроена эта операционка, что со временем её надо переустанавливать 🙁 Я знаю людей, которые «перебивают винду» по несколько раз за неделю. Я не сторонник такого метода, стараюсь оптимизировать систему, докопаться до истинного источника тормозов, но всё равно, где-то раз в год переустанавливаю систему, и то из-за того что меняются некоторые комплектующие.

В принципе, если бы у меня не было такой текучки программ, то можно прожить и 5-10 лет без переустановки. Но такое встречается редко, например в некоторых офисах, где установлены только 1С:Бухгалтерия и Microsoft Office, и годами ничего не меняется. Я знаю такую фирму, там Windows 2000 стоит уже больше 10 лет и нормально работает… Но в общем случае переустановка это хороший способ если вы не знаете как увеличить быстродействие компьютера.

Использование программ оптимизаторов настроек операционной системы

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

Можете ещё попробовать неплохую утилиту PCMedic. Она платная, но это не проблема 🙂 Изюминка программы в полностью автоматизированном процессе. Вся программа состоит из одного окошка, в котором надо выбрать свою операционную систему, производителя процессора (Intel, AMD или другой) и тип оптимизации – Heal (только чистка) или Heal & Boost (чистка плюс ускорение). Нажимаем кнопку «GO» и всё.

А одной из самых мощных программ является Auslogics BoostSpeed, правда тоже платная, но есть ознакомительная версия. Это настоящий монстр, который включает в себя несколько утилит для увеличения быстродействия компьютера по всем фронтам. Там и оптимизатор, и дефрагментатор, и чистка компьютера от ненужных файлов, и чистка реестра, и ускоритель интернета и ещё некоторые утилиты.

Интересно, что в программе есть советник, который подскажет что нужно сделать. Но всегда проверяйте что там насоветовано, не применяйте всё подряд без разбору. Например, советник очень хочет чтобы работало автоматическое обновление Windows. Те, кто не покупал лицензионную Windows знают что это может плохо закончиться…

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

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

ВАЖНО! Перед любыми изменениями обязательно надо !

ОБЯЗАТЕЛЬНО просматривайте всё что хотят удалить программы чистильщики! Я просканировал свой компьютер Auslogics Disk Cleaner и поначалу обрадовался, что у меня в корзине нашлось 25Гб мусора. Но вспомнив, что недавно чистил корзину, я открыл файлы подготовленные для удаления в этой программе и просто офигел! Там были ВСЕ мои самые важные файлы, вся моя жизнь за последние несколько месяцев. Причём лежали они не в корзине, а в отдельной папке на диске D. Вот так бы и удалил, если бы не посмотрел.

В Windows 7 можно несколько увеличить производительность упростив графический интерфейс. Для этого идём в «Панель управления -> Система -> Дополнительно -> Параметры» и отключаем часть галочек либо выбираем «Обеспечить наилучшее быстродействие».

Параметры BIOS материнской платы

BIOS хранит в себе самые основные настройки компьютера. В него можно войти во время включения компьютера с помощью клавиш Delete, F2, F10 или какой-нибудь другой (написано на экране во время включения компьютера). Сильное снижение производительности может быть только из-за критических косяков в настройках. Обычно он настроен нормально и вмешиваться туда не нужно и даже вредно.

Самый простой путь исправить настройки на оптимальные это зайти в BIOS и выбрать опцию типа «Load Optimal Settings» (написание может отличаться в зависимости от BIOS’а), сохранить настройки и перезагрузиться.

Отключение ненужных служб и программ из автозапуска

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

Это легко сделать с помощью встроенной в Windows утилиты «Конфигурация системы». Чтобы её запустить нажмите комбинацию «Win + R» и в окошке введите «msconfig». В программе перейдите на вкладку «Автозагрузка» и поснимайте лишние галочки. Если после перезагрузки чего-то будет не хватать, то галочки можно вернуть обратно. Вы должны иметь представление какие программы у вас установлены и .

Один сильный способ увеличить быстродействие – это… отключение антивируса 🙂 Плохо конечно, но на время выполнения ресурсоёмких задач я иногда отключаю антивирус.

Не нужно этого делать во время веб-серфинга или установки неизвестного софта!

Установка последних версий драйверов

Это и правда может помочь, особенно если установлены совсем старые или дефолтные драйвера (по умолчанию от Microsoft). Наибольшее влияние играют драйвера чипсета материнской платы, но и другие могут снижать быстродействие. Обновлять драйвера нужно для каждого устройства, а найти их можно на сайтах производителей.

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

Подойти разумно к выбору операционной системы

Если вы до сих пор сидите на Windows XP, имея 2 гигабайта оперативной памяти, то советую побыстрее переходить на Windows 7, производительность увеличится. А если у вас 4 Гб или больше, то смело ставьте Windows 10 64-битную версию. Скорость работы возрастёт ещё сильнее, но только в 64-х битных программах. Обработка видео, аудио и другие ресурсоёмкие задачи смогут обрабатываться в 1,5-2 раза быстрее! Windows Vista также пора сменить на семёрку.

Не используйте различные сборки Windows для установки, типа Windows Zver и ей подобные. Они уже напичканы нужным и ненужным софтом, к тому же частенько глючат.

Вирусы

Хоть и стоят у меня на десятом месте это совсем не значит что на них не надо обращать внимание. Вирусы могут значительно замедлить работу компьютера или даже «заморозить» его. Если наблюдается странное снижение быстродействия, то стоит просканировать систему одним из сканеров, например . Но лучше иметь установленный надёжный антивирус, например DrWeb или Антивирус Касперского.

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

Интересное видео на сегодня — невероятный пинг-понг!