Жүйе жүктемесі: UNIX жүйесіндегі есептеу жұмылының өлшемі. Орташа жүктеме – соңғы 1, 5, 15 минуттағы жүйе тиімділігін көрсетеді. CPU санына қарай түзетіледі.
Ағылшыншамен салыстырыңыз: абзацты басыңыз — түпнұсқа терезеде ашылады. Абзац астындағы EN түймесі оны мәтін ішінде көрсетеді.
Мазмұны
Кіріспе
Компьютерлік жүйе атқаратын есептеу жұмысының көлемі.
Amount of computational work that a computer system performs
UNIX жүйесінде жүйелік жүктеме – компьютерлік жүйе атқаратын есептеу жұмысының көлемін өлшейтін шама. Жүктеме орташасы белгілі бір уақыт аралығындағы жүйедегі орташа жүктемені көрсетеді. Ол әдетте соңғы бір, бес және он бес минуттық кезеңдердегі жүйелік жүктемені көрсететін үш сан түрінде ұсынылады.
In UNIX computing, the system load is a measure of the amount of computational work that a computer system performs. The load average represents the average system load over a period of time. It conventionally appears in the form of three numbers which represent the system load during the last one , five , and fifteen minute periods.
Интерпретация
CPU-мен байланысты бір процессорлы жүйелер үшін жүктеме орташасын тиісті уақыт кезеңіндегі жүйе пайдалану деңгейінің өлшемі ретінде қарастыруға болады. Егер жүйеде бірнеше процессор болса, салыстырмалы өлшем алу үшін жүктемені процессорлар санына бөлу қажет. Мысалы, бір процессорлы жүйеде "1.73 0.60 7.98" жүктеме орташасын былай түсіндіруге болады:
For single CPU systems that are CPU bound, one can think of load average as a measure of system utilization during the respective time period. For systems with multiple CPUs, one must divide the load by the number of processors in order to get a comparable measure. For example, one can interpret a load average of "1.73 0.60 7.98" on a single CPU system as:
Соңғы минутта жүйе орташа есеппен 73%-ға жүктелген (1.73 іске қосылатын процесс, сондықтан 0.73 процесс бір процессорлы жүйеде кезекті күтуге мәжбүр болған). Соңғы 5 минутта процессор орташа есеппен 40% уақытын бос өткізген. Соңғы 15 минутта жүйе орташа есеппен 698%-ға жүктелген (7.98 іске қосылатын процесс, сондықтан 6.98 процесс бір процессорлы жүйеде кезекті күтуге мәжбүр болған). Бұл дегеніміз, егер бұл жүйе (процессор, диск, жад және т.б.) 1.73 есе жылдам болса, соңғы минутта жоспарланған барлық жұмысты орындай алатын еді. Төрт процессорлы жүйеде жүктеме орташасы 3.73 болса, онда орташа есеппен 3.73 процесс іске қосылуға дайын екенін көрсетеді, және әрқайсысы процессорға жоспарлануы мүмкін. Қазіргі заманғы UNIX жүйелерінде жүктеме орташасына қатысты жіптерді өңдеу әртүрлі. Кейбір жүйелер жіптерді жүктеме орташасын есептеу мақсатында процестер ретінде қарастырады: жүкті күтіп тұрған әрбір жіп жүктемеге 1-ді қосады. Дегенмен, басқа жүйелер, әсіресе M:N жіптеуін іске асыратын жүйелер, жүктеме мақсатында процесті дәл бір рет санау (жіптер санына қарамастан) немесе тек пайдаланушы жіптік жоспарлаушы ядроға қазіргі уақытта ашық жіптерді санау сияқты әртүрлі стратегияларды қолданады, бұл процеске орнатылған параллелизм деңгейіне байланысты болуы мүмкін. Linux әрбір жіпті жеке санап, жүктемеге 1-ді қосады.
During the last minute, the system was overloaded by 73% on average (1.73 runnable processes, so that 0.73 processes had to wait for a turn for a single CPU system on average). During the last 5 minutes, the CPU was idling 40% of the time, on average. During the last 15 minutes, the system was overloaded 698% on average (7.98 runnable processes, so that 6.98 processes had to wait for a turn for a single CPU system on average). This means that this system (CPU, disk, memory, etc.) could have handled all the work scheduled for the last minute if it were 1.73 times as fast. In a system with four CPUs, a load average of 3.73 would indicate that there were, on average, 3.73 processes ready to run, and each one could be scheduled into a CPU. On modern UNIX systems, the treatment of threading with respect to load averages varies. Some systems treat threads as processes for the purposes of load average calculation: each thread waiting to run will add 1 to the load. However, other systems, especially systems implementing so called M:N threading, use different strategies such as counting the process exactly once for the purpose of load (regardless of the number of threads), or counting only threads currently exposed by the user thread scheduler to the kernel, which may depend on the level of concurrency set on the process. Linux appears to count each thread separately as adding 1 to the load.
CPU жүктемесі мен CPU пайдалануы
Ferrari және басқалар жүргізген әртүрлі жүктеме көрсеткіштерінің салыстырмалы зерттеуі, CPU кезек ұзындығына негізделген CPU жүктемесі туралы ақпарат, CPU пайдалану деңгейімен салыстырғанда жүктемені теңестіруде тиімдірек екенін көрсетті. CPU кезек ұзындығының артықшылығының себебі, хосттың жүктемесі ауыр болған кезде, оның CPU пайдалануы 100%-ға жақын болуы мүмкін, сондықтан пайдалану деңгейі нақты жүктемені көрсете алмайды. Ал CPU кезек ұзындығы CPU-ға түскен жүктеменің көлемін тікелей көрсетеді. Мысалы, кезекте 3 процесі бар бір жүйе мен 6 процесі бар екінші жүйе екеуі де шамамен 100% пайдалану деңгейіне ие болуы мүмкін, бірақ олардың арасында айқын айырмашылық бар.
The comparative study of different load indices carried out by Ferrari et al. reported that CPU load information based upon the CPU queue length does much better in load balancing compared to CPU utilization. The reason CPU queue length did better is probably because when a host is heavily loaded, its CPU utilization is likely to be close to 100%, and it is unable to reflect the exact load level of the utilization. In contrast, CPU queue lengths can directly reflect the amount of load on a CPU. As an example, two systems, one with 3 and the other with 6 processes in the queue, are both very likely to have utilizations close to 100%, although they obviously differ.