Процессорное время: различия между версиями

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
м автоматическая отмена правки участника 46.53.242.48 (0.917/0.054)
Метка: откат
 
(не показаны 22 промежуточные версии 20 участников)
Строка 1: Строка 1:
[[Изображение:Top program.jpg|thumb|Вывод программы [[top]]. Процессорное время каждого процесса указано в колонке «TIME+»]]
[[Файл:Top program.jpg|thumb|Вывод программы [[top]]. Процессорное время каждого процесса указано в колонке «TIME+»]]


'''Процессорное время''' ({{lang-en|process time}} или {{lang-en2|CPU time}}) — время, затраченное [[Центральный процессор|процессором]] [[компьютер]]а на обработку [[Процесс (информатика)|задачи]] ([[Компьютерная программа|программы]]). Распределяется между потоками, которые могут принадлежать одному или разным [[Вычислительный процесс|процессам]] в соответствии с используемым режимом [[Операционная система|операционной системы]].
<!-- '''Процессорное время''' — это время, которое потратил [[Центральный процессор|процессор]] [[Сервер (аппаратное обеспечение)|сервера]] на обработку задачи.


Процессорное время измеряется в [[Часы реального времени|тиках]] или [[секунда]]х. Часто бывает полезно измерение процессорного времени в процентах от мощности процессора, который называется загрузкой процессора.
За базовое время можно взять общее время решения задачи (генерации страницы и т. д.), однако, в него не входит время, которое было затрачено на выполнение других параллельных задач или ожидание внешних событий.


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


Первое заключается в количественном измерении общей занятости системы. Когда загрузка процессора выше 70%, пользователь может почувствовать задержку. Такая высокая загрузка ЦП указывает на недостаточную вычислительную мощность. Либо вычислительная мощность процессора (процессоров) должна быть повышена или объём пользовательских задач должен быть уменьшен, например, путём перехода на более низкое графическое разрешение и отключение анимации.
== Примеры ==
Лучше всего пояснить этот термин примерами.


Второе применение, возникшее с появлением многозадачности, заключается в количестве того как процессор разделяется между компьютерными программами.
* На вашей домашней машине вы архивировали большой файл. Это заняло 40 секунд. Общее время — 40 секунд, процессорное время — 40 секунд.
* Аналогично, но два файла одновременно. Общее время завершения процессов — 80 секунд, процессорное время каждого — 40 секунд.
* На пустом сервере выполняется скрипт, время генерации страницы — 2 секунды. Процессорное время — 2 секунды.
* На сервере выполняется одновременно 10 таких скриптов. Время генерации страницы будет 20 секунд, однако, процессорное время по прежнему 2 секунды.
* На соседнем сервере произошла перегрузка MySQL-сервера, в результате чего ваш скрипт работал не 2 секунды, а 45 секунд. Время генерации страницы — 45 секунд, процессорное время по прежнему 2 секунды.

== Учет процессорного времени ==
Именно процессорное время — тот [[Вычислительные ресурсы|ресурс]], который может закончиться на сервере. Необходим его учет. При этом, как видно из примеров, не важно, сколько именно работал ваш скрипт — важно, какую именно работу он при этом сделал, то есть процессорное время, необходимое для работы скрипта.

Нормальным количеством времени на одну страницу является 10—100 мс (то есть в 10—100 раз меньше, чем одна секунда). Поскольку сервер одновременно обрабатывает десятки запросов, время генерации страницы составляет обычно в пределах одной секунды. Это нормально.

== Как производится учет ==
Веб-сервер ведет лог-файл процессорного времени, которое было затрачено на каждый запрос. Его сообщает операционная система. Затем данные суммируется для каждого сайта в пределах одного часа. Если суммарное процессорное время вашего для вашего сайта составило 1 минуту в 1 час, это обозначает, что в этот час вы потратили <math>\frac{1}{60} = 1,7 %</math> ресурсов одного процессора сервера.

== Полная мощность сервера ==
Сервера обладают разным количеством процессоров. На сервере, где 8 процессоров (точнее, более реалистично, 2 процессора по [[Многоядерный процессор|4 ядра]] в каждом), общее процессорное время может достигать 800 %, это обозначает, что вы на 100 % загрузили все 8 логических процессоров.

Учет ведется именно по ядрам процессоров, так как в одном сервере может быть от 1 до 8 независимых ядер, при этом цифра «3,5 % от ресурсов сервера» может означать мощность, которая фактически отличается в 8 раз в зависимости от конфигурации сервера, что было бы некорректно. -->


== См. также ==
== См. также ==
* [[Центральный процессор]]
* [[Процесс (информатика)]]
* [[Процесс (информатика)]]
* [[Поток выполнения]]
* [[top]]
* [[Многозадачность]]
* [[Многопоточность]]
* [[Hyper-threading]]
* [[Load Average]]
* [[Диспетчер задач]]
* [[Диспетчер задач Windows]]


== Ссылки ==
* [https://www.gnu.org/software/libc/manual/html_node/Processor-And-CPU-Time.html#Processor-And-CPU-Time Processor-And-CPU-Time]

{{Технологии CPU}}
{{Аспекты операционных систем}}
{{comp-stub}}
{{comp-stub}}
{{нет источников|дата=2012-06-24}}


[[Категория:Операционные системы]]
[[Категория:Технологии процессоров]]
[[Категория:Компьютер]]
[[Категория:Операционная система]]

[[de:Prozessorzeit]]
[[en:CPU time]]
[[ko:CPU 타임]]

Текущая версия от 15:40, 28 декабря 2022

Вывод программы top. Процессорное время каждого процесса указано в колонке «TIME+»

Процессорное время (англ. process time или CPU time) — время, затраченное процессором компьютера на обработку задачи (программы). Распределяется между потоками, которые могут принадлежать одному или разным процессам в соответствии с используемым режимом операционной системы.

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

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

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

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