Какие факторы влияют на производительность пк. Советы по модернизации (апгрейду) персонального компьютера. Что менять видеокарту или процессор

Не редкость, что проблемы в играх проявляются со временем и буквально возникают ниоткуда. Бывает и иначе - торможение компьютера проявляет с себя ещё в начале, сразу после установки какого-либо приложения. На все есть свои причины, но оба таких случая объединяет одно - они мешают получать удовольствие пользователю Windows 7. Для устранения этого можно попробовать увеличить производительность ПК.

Почему тормозят игры на Windows 7

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

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

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

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

Оптимизация работы компьютера: как увеличить производительность

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

Работа с системным реестром

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

  • После установки и запуска, вам следует открыть вкладку под названием «Реестр» и нажать на кнопку «Поиск проблем». Время выполнения этого процесса напрямую зависит от объёма информации, которая хранится на вашем компьютере, поэтому наберитесь терпения.

    Поиск проблем в реестре

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

    Исправление проблем в реестре

  • Последний шаг - нажмите кнопку «Исправить отмеченные» и дожидайтесь завершения процедуры.

    Удаление ненужных данных в реестре

  • Помните, что реестр этой операционной системы подвержен фрагментации, почему и происходит регулярное ухудшение работоспособности компьютеров на Windows 7. Системные утилиты, к сожалению, не могут эффективно работать с системным реестром, поэтому вам придётся установить дополнительную программу, например, Auslogics Registry Defrag.

    Дефрагментация и чистка жёсткого диска

    Для очистки жёсткого диска и его дефрагментации вам не потребуется никакого дополнительного ПО. Все можно сделать с помощью традиционных системных средств Windows 7. Для выполнения дефрагментации произведите следующие манипуляции:

  • Откройте меню «Пуск»;
  • Выберите «Мой компьютер»;

    «Компьютер» в меню «Пуск»

  • Выделяйте диск нажатием правой кнопки мыши, на котором хранится системная информация (по умолчанию - диск С) и заходите в «Свойства»;

    Выбираем «Свойства» диска

  • Переходите во вкладку «Сервис»;

    Дефрагментация диска во вкладке «Сервис»

  • В разделе «Дефрагментация диска» нажимайте на соответствующую кнопку.

    Выполняем дефрагментацию выбранного диска

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

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

    Чистка и освобождение оперативной памяти для ускорения процессов

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

    Сначала требуется закрыть те программы, которые вам в настоящий момент не нужны. Как правило, все активные приложения отображаются в диспетчере задач. Открыть его можно с помощью простой комбинации клавиш Ctrl + Alt + Del либо нажать на панель задач снизу и выбрать «Диспетчер задач».

    Запуск диспетчера задач

    Сразу же появится окно со списком всех запущенных приложений. Выделяете то, которое вам не нужно в настоящее время и нажимаете на кнопку «Снять задачу».

    Чистим ОЗУ, отключая не нужные приложения

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

    Отключение процессов для освобождения памяти

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

    Оптимизация визуальных эффектов

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

    Для того чтобы сократить потребление системных ресурсов, вовсе не обязательно полностью отключать Aero. Вы можете изменить некоторые настройки в специальном меню:

  • Открываете меню «Пуск» и «Панель управления»;

  • В списке всех утилит найдите и откройте «Систему»;

    Открываем параметр «Система»

  • Далее, необходимо выбрать «Дополнительные параметры системы» и перейти во вкладку «Дополнительно»;

    Нажимаем на вкладку «Дополнительные параметры системы»

  • Нажмите на кнопку «Параметры» и выберите «Быстродействие».

    Настройка Быстродействия

  • Итак, здесь будет представлен полный список особых визуальных эффектов. Если вы не хотите полностью отключать интерфейс Aero, то можете убрать галочку только со следующих пунктов: анимированные элементы управления, затухание, отбрасывание теней, их отображение, отображение прямоугольного выделения.

    Отключаем визуальные эффекты интерфейса

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

    Настройка BIOS

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

    Во-первых, обратите внимание на настройку системы охлаждения (в зависимости от версии БИОСа наименования пунктов могут меняться). Для этого:

  • Войдите в БИОС с помощью клавиши Del во время запуска компьютера;
  • Откройте меню Advanced;

    Входим в настройки БИОС

  • Здесь обратите своё внимание на опцию Fan Speed. Она может иметь три настройки: Enable (кулер будет работать всегда на высоких оборотах), Auto (кулер будет подстраиваться под нагрузку на систему), Disable (отключает кулер);

    Настраиваем работу кулера в БИОСЕ

  • Выбираете то, что вам нужно, сохраняете и выходите из «БИОСа».
  • Во-вторых, если на вашем устройстве установлено две видеокарты (интегрированная и дискретная), то в меню «БИОСа» Advanced вы можете изменить настройки переключаемой графики. Для этого выбираете пункт VGA Mode SELECT и в списке указываете то, что вам нужно: dGPU Mode - активируется встроенная видеокарта или Power Xpress Mode - активируется дискретная видеокарта.

    Параметры переключаемой графики в БИОС

    Настройка файла подкачки

    Файл подкачки - своеобразное дополнение к оперативной памяти. Можно сказать, что это виртуальная память, которую пользователь может настраивать самостоятельно. Файл подкачки берётся из жёсткого диска, указанного пользователем объёма. Как известно, скорость передачи работы винчестера намного ниже, чем ОЗУ, поэтому сказать о том, что файл подкачки может полностью заменить собой оперативную память - нельзя, но он благоприятно влияет на общую оптимизацию. Для изменения и настройки файла подкачки следует:

  • Открыть меню «Пуск» и выбрать «Панель управления»;

    Открываем «Панель управления»

  • Далее, переходим во вкладку «Система» и открываем «Дополнительные параметры»;

    Открываем параметр «Система»

  • Переходим в «Быстродействие» и нажимаем на кнопку «Параметры»;

    Настройка Быстродействия

  • Во вкладке «Дополнительно» есть раздел «Виртуальная память», которая нам и нужна;
  • Нажимаем кнопку «Изменить».

    Нажимаем «Изменить» в разделе «Виртуальная память»

  • Появится окно настроек, где вы выбираете раздел диска, файл подкачки которого нужно изменить, нажимаете на кнопку «Указать размер» и задаёте его. Помните о том, что файл подкачки по своей сути представляет определённую область, занятую на жёстком диске. Не рекомендуется устанавливать большое значение, ведь система автоматически будет размещать данные о программах в этом файле, а доступ к нему намного медленнее, чем к ОЗУ, соответственно, производительность может упасть. Оптимальный размер составляет примерно 30% от количества оперативной памяти. Последний шаг - нажимаете кнопку «Задать» и перезагружаете компьютер для того, чтобы изменения вступили в силу.

    Настройка видеокарты

    Снижению производительности на Windows 7 может способствовать неправильная настройка графического адаптера. Такая проблема наиболее актуальна для ноутбуков, так как они обладают интегрированной и дискретной видеокартами. Ни для кого не будет секретом то, что современные производители регулярно выпускают не только драйвера, но и системные настройки для своих продуктов. Например, для Nvidia - Geforce Experience, а для видеокарт ATI Radeon - Catalyst Control Center. С помощью этого программного обеспечения можно изменять множество настроек, в том числе добиться оптимизации устройства в целом.

    Итак, если у вас дискретная и встроенная видеокарта, то необходимо изменить опции в используемом программном обеспечении. Для видеокарт от Nvidia:

  • Щёлкнуть правой кнопкой мыши в свободном месте и выбрать «Панель управления Nvidia»:

    Открываем панель Nvidia

  • Появится окно настроек, в левом меню которого следует найти опцию «Управление параметрами 3D»;

    Настройка видеокарты Nvidia

  • Далее, выбрать вкладку «Программные настройки» и нажать кнопку «Добавить»;

    Программные настройки Nvidia

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

    Для видеокарт от ATI Radeon все немножко иначе:

  • Щёлкнуть правой кнопкой мыши на рабочем столе и выбрать «Catalyst Control Center»:

    Открываем Catalyst Control Center

  • Появится окно настроек, где сперва нужно изменить представление на «Расширенное» и выбрать параметр «Настройка 3D-приложений»;

    Изменяем представление Catalyst Control Center

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

    Настройка производительности в Catalyst Control Center

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

    Функция ReadyBoost

    Мало кто знает, но в операционной системе Windows 7 предусмотрена возможность использования флеш-накопителей в качестве дополнительного устройства кэширования данных. Так пользователи могут значительно увеличить скорость выполнения функций чтения-записи данных, соответственно, оптимизировать свой компьютер или ноутбук, улучшить производительность. Активировать ReadyBoost можно следующим способом:

  • Вставляйте USB-накопитель в соответствующий разъем системного блока;
  • После отображения окна автозапуска, выберите «Ускорить работу системы используя Windows ReadyBoost»;

    Запуск опции ReadyBoost

  • В окне активируйте параметр «Использовать это устройство» и укажите максимальный объем памяти;

    Настраиваем параметры ReadyBoost

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

    Использование дополнительного ПО

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

    Razer Game Booster

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

    Настройка выполняется в несколько кликов - достаточно указать «Игровой режим», после чего системные ресурсы будут направляться только на запущенную пользователем игру:

  • Выберите вкладку «Запуск»;
  • Нажмите кнопку «Добавить» и выберите игру;
  • Выделите игру и в меню снизу активируйте игровой режим.
  • Конечно, все бы ничего, но программа идеально работает только с мощными компьютерами. Поэтому на старых ПК лучше воспользоваться другими утилитами для оптимизации.

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

    GameGain

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

    System Care

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

    Driver Booster

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

    Что делать, чтобы игры снова не тормозили? Как поддерживать систему в порядке?

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

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

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

    Как правило, при тестировании производительности платформ акцент делается на процессорозависимые приложения. Но скорость системы зависит не только от центрального процессора. И сейчас мы даже не вспоминаем о графически насыщенных приложениях и использовании 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 заработал свои рекордные миллиарды, в том числе, благодаря тому, что в свое время разработал метод более плотного размещения кэшей на кристалле, то есть на единицу площади кристалла помещается больше ячеек кэша и больше байт кэш-памяти.) Однако всегда будут существовать приложения, которые либо невозможно оптимизировать таким образом, чтобы данные умещались в кэш-памяти, либо этим просто некому заниматься.

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

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

    Тактовая частота процессора

    При определении производительности компьютера в первую очередь смотрят на тактовую частоту процессора . Этот показатель оказывает влияние на скорость проведения операций ЦП. Частотой процессора называется тактовая частота ядра, который является его основным компонентом, в тот момент, когда система максимально загружена.

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

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

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

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

    Жесткий диск

    На производительность компьютера также оказывает существенное влияние объем жесткого диска и скорость его работы. Объем винчестера не так важен, главное, чтобы на системном диске оставалось до 10% свободного места. А вот скорость связи шины жесткого диска – это куда более значительный фактор.

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

    Дефрагментация файлов

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

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

    Чтобы выполнить дефрагментацию диска в операционной системе Windows 7, необходимо зайти в меню Пуск , выбрать Все программы – Стандартные – Служебные – Дефрагментация диска .

    Одновременно выполняемые задачи в ОС

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

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

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

    Показателем измерения результативности трудовых ресурсов компании является производительность.

    Общее представление

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

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

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

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

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

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

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

    Этапы анализа

    Оценка производительности труда состоит из следующих основных этапов:

    • анализ абсолютных показателей за несколько лет;
    • определение воздействия определенных факторных показателей на динамику производительности;
    • определение резервов прироста производительности.

    Основные показатели

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

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

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

    Способы расчета

    С целью измерения производительности работы используют три способа расчета производительности:

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

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

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

    Методика расчета

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

    Производительности труда по формуле расчета выглядит следующим образом:

    ВГ = КР * ПРД * ВСЧ

    где ВГ - выработка рабочего среднегодовая, т. р.;

    КР - количество рабочих дней, дн.;

    ВСЧ - среднечасовая выработка, т. р. на чел.;

    ПРД - продолжительность рабочей смены (дня), час.

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

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

    Основные факторы

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

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

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

    Факторный анализ

    Рассмотрим основные формулы производительности факторов производства.

    Для рассмотрения факторов влияния применяем общепризнанные в экономической науке методы и принципы расчетов.

    Формула производительность труда представлена ниже.

    где W - производительность труда, т. р. на чел.;

    Q - объем продукции, которая была выпущена в стоимостном выражении, т. р.;

    Т - численность персонала, чел.

    Выделим из этой формулы производительности значение Q:

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

    Динамика изменения объема продукции под воздействием изменения показателя производительности может быть рассчитана по формуле:

    ΔQ (W) = (W1-W0)*Т1

    Динамика изменения количества продукции под воздействием изменения численности сотрудников рассчитаем по формуле:

    ΔQ (Т) = (Т1-Т0)*W0

    Общее действие факторов:

    ΔQ (W) + Δ Q(Т) = ΔQ (общее)

    Изменение за счет влияния факторов можно рассчитать по факторной модели формулы производительности:

    ПТ = Уд * Д * Тсм*ЧВ

    где ПТ - производительность труда, т. р. на чел.

    Уд - удельный вес рабочих в общей численности персонала

    Д - отработано дней одним рабочим за год, дней

    Тсм - средняя продолжительность рабочего дня, час.

    ЧВ - среднечасовая производительность труда рабочего, т. р. на чел.

    Основные резервы

    Исследование производительности выполняется с целью установления резервов ее роста. Резервами увеличения могут являться следующие факторы, влияющие на производительность труда:

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

    Направления повышения

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

    Сущность роста производительности труда на предприятии проявляется в:

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

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

    Презентацию к лекции Вы можете скачать .

    Упрощенная модель процессора

    Дополнительная информация:

    Прототипом схемы служит отчасти описание архитектуры фон Неймана, которая имеет следующие принципы:

    1. Принцип двоичности
    2. Принцип программного управления
    3. Принцип однородности памяти
    4. Принцип адресуемости памяти
    5. Принцип последовательного программного управления
    6. Принцип условного перехода

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

    Упрощенная модель процессора

    • устройство управления ( Control Unit , CU)
    • арифметико-логическое устройство ( Arithmetic and Logic Unit , ALU )
    • системные регистры
    • системная шина (Front Side Bus, FSB )
    • память
    • периферийные устройства

    Устройство управления (CU):

    • выполняет дешифрацию инструкций, поступающих из памяти компьютера.
    • управляет ALU .
    • осуществляет пересылку данных между регистрами ЦП, памятью, периферийными устройствами.

    Арифметико-логическое устройство:

    • позволяет производить арифметические и логические операции над системными регистрами.

    Системные регистры:

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

    Системная шина:

    • используется для пересылки данных между ЦП и памятью, а также между ЦП и периферийными устройствами.

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

    Высокая производительность МП (микропроцессора)– один из ключевых факторов в конкурентной борьбе производителей процессоров.

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

    Очень условно:

    Производительность = Кол-во инструкций / Время

    Мы будем рассматривать производительность процессоров на базе архитектур IA32 и IA32e. (IA32 with EM64T ).

    Факторы влияющие на производительность процессора:

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

    Что такое производительность ? Сложно дать однозначное определение производительности. Можно формально привязать его к процессору – сколько, инструкций за единицу времени может выполнять тот или иной процессор . Но проще дать сравнительное определение – взять два процессора и тот, который выполняет некий набор инструкций быстрее, тот более производительный. То есть, очень условно, можно сказать, что производительность – это количество инструкций на время выполнения . Мы здесь в основном будем исследовать те микропроцессорные архитектуры, которые выпускает Intel, то есть архитектуры IA32, которые сейчас называются Intel 64. Это архитектуры, которые с одной стороны поддерживает старые инструкции из набора IA32, с другой стороны имеют EM64T – это некое расширение, которое позволяет использовать 64 битные адреса, т.е. адресовать большие размеры памяти, а также включает в себя какие-то полезные дополнения, типа увеличенного количества системных регистров, увеличенное количество векторных регистров.

    Какие факторы влияют на производительность ? Перечислим все, которые приходят в голову. Это:

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

    Тактовая частота

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

    Объем адресуемой памяти

    Тактовая частота.

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

    Объем адресуемой памяти и скорость доступа к памяти.

    Объем памяти - необходимо, чтобы памяти хватало для нашей программы и наших данных. То есть, технология EM64T позволяет адресовать огромное количество памяти и на данный момент вопрос с тем, что нам не хватает адресуемой памяти не стоит.

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

    Скорость выполнения и набор инструкций

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

    CISC,RISC (complex, reduced instruction set computing)

    Современные процессоры Intel® представляют собой гибрид CISC и RISC процессоров, перед исполнением преобразуют CISC инструкции в более простой набор RISC инструкций.

    Скорость выполнения инструкций и полнота базового набора инструкций.

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

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

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

    Вытеснение регистров ( register spilling ) – из-за недостаточного кол-ва регистров велик обмен между регистрами и стеком приложения.

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

    Существуют две характеристики для описания свойств памяти:

    • Время отклика ( latency ) – число циклов процессора необходимых для передачи единицы данных из памяти.
    • Пропускная способность ( bandwidth ) – количество элементов данных которые могут быть отправлены процессору из памяти за один цикл.

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

    Использование регистров и оперативной памяти.

    Регистры – самые быстрые элементы памяти, они находятся непосредственно на ядре, и доступ к ним практически мгновенный. Если ваша программа делает какие-то вычисления, хотелось бы, чтобы все промежуточные данные хранились на регистрах. Понятно, что это невозможно. Одна из возможных проблем производительности– это проблема вытеснения регистров. Когда вы под каким-нибудь анализатором производительности смотрите на ассемблерный код, вы видите, что у вас очень много движения со стека в регистры и обратно выгрузка регистров на стек . Стоит вопрос – как оптимизировать код так, чтобы самые горячие адреса, самые горячие промежуточные данные, лежали именно на системных регистрах.

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

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

    Кэширование

    Кэш-память служит для уменьшения времени доступа к данным.

    Для этого блоки оперативной памяти отображаются в более быструю кэш-память.

    Если адрес памяти находится в кэше – происходит "попадание" и скорость получения данных значительно увеличивается.

    В противном случае – "промах" (cache miss)

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

    Можно выделить следующие виды кэш-памяти:

    • полностью ассоциативная кэш-память (каждый блок может отображаться в любое место кэша)
    • память с прямым отображением (каждый блок может отображаться в одно место)
    • гибридные варианты (секторная память, память с множественно-ассоциативным доступом)

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

    Качество использования кэша – ключевое условие быстродействия.

    Дополнительная информация: в современных IA32 системах размер кэш-линии 64 байта.

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

    Существуют разные реализации кэш -памяти. Бывает полностью ассоциативная кэш - память , когда каждый блок может отображаться в любое место кэша. Существует память с прямым отображением, когда каждый блок может отображаться в одно место , также существуют различные гибридные варианты – например кэш с множественно-ассоциативным доступом. В чем разница? Разница во времени и сложности проверки на наличие нужного адреса в кэш -памяти. Предположим, что нам нужен определенный адрес . В случае с ассоциативной памятью нам нужно проверить весь кэш – убедиться, что этого адреса в кэше нет. В случае с прямым отображением нам нужно проверить только одну ячейку. В случае с гибридными вариантами, например, когда используется кэш с множественно-ассоциативным доступом, нам нужно проверить, к примеру, четыре или восемь ячеек. То есть, задача определить есть ли адрес кэша – тоже важна. Качество использования кэша – важное условие быстродействия. Если нам удастся написать программу так, чтобы как можно чаще те данные, с которыми мы собирались работать, находились в кэше, то такая программа будет работать гораздо быстрее.

    Характерные времена отклика при обращении к кэш памяти для Nehalem i7:

    • L1 - latency 4
    • L2 - latency 11
    • L3 - latency 38

    Время отклика для оперативной памяти > 100

    Упреждающий механизм доступа к памяти реализован при помощи механизма упреждающей выборки (hardware prefetching ).

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

    Для примера возьмем наш последний процессор Nehalem: i7.

    Здесь мы имеем не просто кэш , а некий иерархический кэш . Долгое время он был двухуровневый, в современной системе Nehalem он трехуровневый – совсем немного очень быстрого кэша, чуть побольше кэша второго уровня и достаточно большое количество кэша третьего уровня. При этом, эта система построена так, что если какой-то адрес находится в кэше первого уровня, он автоматически находится во втором и в третьем уровнях. Это и есть иерархическая система. Для кэша первого уровня задержка – 4 такта, для второго – 11, третьего – 38 и время отклика оперативной памяти – больше 100 тактов процессора.