ES2312527T3 - Procedimiento y aparato para repartir la carga en un sistema informatico. - Google Patents

Procedimiento y aparato para repartir la carga en un sistema informatico. Download PDF

Info

Publication number
ES2312527T3
ES2312527T3 ES02258408T ES02258408T ES2312527T3 ES 2312527 T3 ES2312527 T3 ES 2312527T3 ES 02258408 T ES02258408 T ES 02258408T ES 02258408 T ES02258408 T ES 02258408T ES 2312527 T3 ES2312527 T3 ES 2312527T3
Authority
ES
Spain
Prior art keywords
cpu
utilization
activity
reducing
load
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES02258408T
Other languages
English (en)
Inventor
Mark Austin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AppSense Ltd
Original Assignee
AppSense Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by AppSense Ltd filed Critical AppSense Ltd
Application granted granted Critical
Publication of ES2312527T3 publication Critical patent/ES2312527T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • G06F11/3423Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3433Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment for load management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Telephonic Communication Services (AREA)
  • Multi Processors (AREA)
  • Hardware Redundancy (AREA)
  • Computer And Data Communications (AREA)
  • Selective Calling Equipment (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Aparato informático (6, 8, 10, 12) que comprende una unidad central de procesamiento (CPU) (32), unos medios para realizar el seguimiento de la carga de la CPU, y unos medios para reducir la utilización de la CPU de por lo menos una fuente de demanda de la CPU (26), reduciendo de este modo la carga de la CPU, si los medios de seguimiento de la CPU determinan que se ha alcanzado por lo menos un nivel de utilización umbral predeterminado de la CPU, en el que los medios de reducción de la utilización de la CPU comprenden unos medios de bloqueo de actividades (30); caracterizado porque los medios de reducción de las actividades se configuran para suspender temporalmente una actividad seleccionada por lo que las actividades se bloquean en un porcentaje predeterminado de la capacidad de la CPU, pudiéndose ajustar dicho porcentaje predeterminado, para reducir de este modo la carga de la CPU.

Description

Procedimiento y aparato para repartir la carga en un sistema informático.
Campo de la invención
La presente invención se refiere a un aparato informático, a un aparato de servidor de terminales y a procedimientos de gestión del rendimiento para programas informáticos para dichos procedimientos y a soportes de datos que comprenden dichos programas.
Antecedentes de la invención
Un entorno de servidor de terminales comprende uno o más servidores de terminales a los que se conecta mediante red (con cualquier tipo de conexión apta) una pluralidad de nodos de ordenadores de clientes ligeros. La ejecución de la aplicación, el procesamiento de los datos y, habitualmente, el almacenamiento de los datos se produce en los servidores de terminales. El nodo de ordenadores de clientes ligeros del usuario actúa principalmente como interfaz gráfica del usuario y no realiza procesamientos sustanciales de la aplicación. Actualmente las aplicaciones de dicho entorno comprenden Windows 2000 Terminal Services, Windows NT 4.0 Terminal Server (WTS) y MetaFrame (marca comercial), trabajando este último con WTS. La aplicación de MetaFrame permite almacenar los ficheros localmente en el nodo del ordenador de un usuario, mientras que WTS no lo permite.
Cuando se encuentra en funcionamiento, cada usuario inicia una sesión independiente con los servidores de terminales: cada nodo del usuario utiliza una cantidad variable del tiempo, o ciclo, de la unidad central de procesamiento (CPU) del servidor de terminales. La cantidad de tiempo de la CPU utilizado, por ejemplo, por parte de una aplicación de procesamiento de textos durante la escritura normal tiende a ser bastante pequeña. Sin embargo, si el usuario indica al procesador de textos que ejecute un trabajo exhaustivo, tal como una macro compleja, la aplicación puede utilizar toda la capacidad disponible de la CPU para realizar el trabajo tan rápidamente como le resulte posible. Una aplicación determinada utilizada por el nodo del ordenador de un usuario habitualmente utilizará una pluralidad de actividades para conectarse con la CPU en cualquier proceso determinado.
Cuando un ordenador se dedica a un único usuario, éste constituye el comportamiento habitualmente aceptable. Sin embargo, en el caso del entorno de un servidor de terminales, al que accede simultáneamente una pluralidad de usuarios, dicho comportamiento se puede volver problemático, especialmente cuando diversos procesos están realizando trabajos que consumen mucha CPU. Posteriormente, todos los usuarios conectados a los servidores de terminal experimentarán problemas de rendimiento y de sesiones bloqueadas. Durante los largos periodos sin que se produzca respuesta el servidor se puede volver inestable, lo que resulta particularmente problemático ya que el administrador del sistema no podrá determinar la causa y resolver la situación debida a falta de respuesta por parte
del servidor.
El documento WO 01/48584 da a conocer un mecanismo digital para ajustar el consumo energético de un procesador. El procesador comprende una o más unidades funcionales y un regulador digital que realiza el seguimiento de los estados de actividad de las unidades funcionales del procesador para estimar el consumo energético del procesador. Una forma de realización del regulador digital comprende una o más puertas, un circuito para el monitor y un circuito regulador. Cada puerta controla la entrega de energía a una unidad funcional del procesador y proporciona una señal que indica el estado de actividad de su unidad funcional asociada. El circuito para el monitor determina un nivel de consumo energético estimado a partir de las señales y compara el consumo energético estimado con un nivel energético umbral. El circuito regulador ajusta el flujo de instrucciones del procesador si el consumo energético estimado supera el nivel energético umbral.
BELLOSA F.: EndurlX OS-Directed Throttling of Processor Activity for Dynamic Power Management, de junio de 1999, describe un un regulador mediante actividad con la CPU que reduce la velocidad del reloj de la CPU o el suministro de voltaje si se alcanza el umbral de consumo energético de la CPU.
El documento US-A-5.752.031 da a conocer un procedimiento y un sistema para programar la ejecución de una pluralidad de actividades en un sistema informático para controlar el nivel de concurrencia.
Un objetivo de las formas de realización preferidas de la presente invención es evitar o superar las desventajas de la técnica anterior, tanto si se hace referencia a las mismas en la presente memoria o de otro modo.
Sumario de la invención
Según la presente invención, en un primer aspecto, se proporciona un aparato informático que comprende una unidad central de procesamiento (CPU), unos medios para realizar el seguimiento de la carga de la CPU, y unos medios para reducir la utilización de la CPU de por lo menos una fuente de demanda de la CPU, reduciendo de este modo la carga de la CPU, si los medios de seguimiento de la CPU determinan que se ha alcanzado por lo menos un nivel de utilización umbral predeterminado de la CPU, en el que los medios de reducción de la utilización de la CPU comprenden unos medios de reducción de las actividades, caracterizado porque los medios de reducción de las actividades se configuran para suspender temporalmente una actividad seleccionada por lo que la actividad se bloquea en un porcentaje predeterminado de la capacidad de la CPU, pudiéndose ajustar dicho porcentaje predeterminado, reduciendo de este modo la carga de la CPU.
Según la presente invención, en un segundo aspecto, se proporciona un procedimiento de gestión del rendimiento para un aparato informático que comprende una unidad central de procesamiento (CPU), comprendiendo además el procedimiento las etapas de realizar el seguimiento de la utilización de la CPU y de reducir la utilización de la CPU de por lo menos una fuente de demanda de la CPU si la utilización de la CPU alcanza por lo menos un nivel umbral predeterminado, en el que la utilización de la CPU se reduce mediante el bloqueo de actividades; caracterizado porque el bloqueo de actividades suspende temporalmente una actividad seleccionada por lo que la actividad se conecta con un porcentaje predeterminado de la capacidad de la CPU, pudiéndose ajustar dicho porcentaje predeterminado, reduciendo de este modo la carga de la CPU.
Según la presente invención, en un tercer aspecto, se proporciona un aparato servidor de terminales que comprende un servidor de terminales para conectarse a una pluralidad de nodos de ordenadores de usuario, comprendiendo el servidor de terminales una unidad central de procesamiento (CPU), unos medios para realizar el seguimiento de la carga de la CPU, y unos medios para reducir la utilización de la CPU de por lo menos un usuario, reduciendo de este modo la carga de la CPU, si los medios de seguimiento de la CPU determinan que se ha alcanzado por lo menos un nivel de utilización umbral predeterminado de la CPU, en el que los medios de reducción de la utilización de la CPU comprenden unos medios de reducción de las actividades, caracterizado porque los medios de reducción de las actividades se configuran para suspender temporalmente una actividad seleccionada por lo que la actividad se conecta con un porcentaje predeterminado de la capacidad de la CPU, pudiéndose ajustar dicho porcentaje predeterminado, reduciendo de este modo la carga de la CPU.
Según la presente invención, en un cuarto aspecto, se proporciona un procedimiento de gestión del rendimiento para un aparato servidor de terminales que comprende un servidor de terminales para conectarse a una pluralidad de nodos de ordenadores de usuario, comprendiendo el servidor de terminales una unidad central de procesamiento (CPU), comprendiendo además el procedimiento las etapas de realizar el seguimiento de la utilización de la CPU y de reducir la utilización de la CPU de por lo menos un usuario si la utilización de la CPU alcanza por lo menos un nivel umbral predeterminado, en el que la utilización de la CPU se reduce mediante el bloqueo de actividades; caracterizado porque el bloqueo de actividades suspende temporalmente una actividad seleccionada por lo que la actividad se conecta con un porcentaje predeterminado de la capacidad de la CPU, pudiéndose ajustar dicho porcentaje predeterminado, reduciendo de este modo la carga de la CPU.
La presente invención se extiende a programas informáticos para realizar dichos procedimientos y a soportes de datos que comprenden dichos programas.
Las características adicionales de la presente invención se describen en las reivindicaciones adjuntas.
Breve descripción de los dibujos
La presente invención se describirá a continuación, únicamente a título de ejemplo, haciendo referencia a los dibujos adjuntos, en los que:
La figura 1 es una vista esquemática de un servidor de terminales según la presente invención.
La figura 2 es una vista esquemática de un gestor de rendimiento de la figura 1.
La figura 3 es un organigrama funcional que representa el funcionamiento de la presente invención.
La figura 4 es una representación esquemática de un aparato informático según la presente invención.
Descripción de las formas de realización preferidas
Haciendo referencia a la figura 1 de los dibujos adjuntos, se representa un aparato servidor de terminales 2 que comprende una torre de servidores indicada esquemáticamente con la referencia numérica 4, que comprende una pluralidad de servidores de terminales 6, 8, 10, 12.
Los servidores de terminales 6 a 12 de la torre de servidores 4 se conectan con una pluralidad de nodos de ordenadores de usuario tales como los nodos de ordenadores de usuario 14, 16, 18, 20. Los nodos de ordenadores de usuarios 14 a 20 son habitualmente terminales de ordenador, pero pueden ser otras interfaces gráficas de usuario que se pueden conectar por red. Los nodos de ordenadores de usuarios 14 a 18 se conectan por red a un servidor de terminales 6, 8, 10 ó 12 mediante Internet, indicado esquemáticamente con la referencia numérica 22 mientras que el nodo de usuario 20 presenta una conexión directa con la red de área local 24 a un servidor de terminales 6 a 12. Otros usuarios se conectan mediante red a otros servidores de terminales en la torre de servidores 4.
El software de gestión del rendimiento, indicado esquemáticamente con la referencia numérica 26 está presente y se ejecuta por separado en cada servidor de terminales 6 a 12, tal como se describe a continuación.
Cuando se utiliza, los usuarios se conectan mediante los nodos de usuario 14 a 20 a un servidor de terminales 6 a 12, en el que se ejecutan las aplicaciones y los datos almacenados para la utilización de los nodos de usuario 14 a 20. Cada nodo de usuario 14 a 20 se considera como una fuente de demanda de CPU para las aplicaciones y procesamientos para los que solicita tiempo de la CPU a partir del servidor de terminales pertinente 6 a 12.
Haciendo referencia a la figura 2 de los dibujos adjuntos, se representa, como parte del software de gestión del rendimiento 26, un dispositivo de muestreo 28 y una actividad con la CPU. La CPU se indica esquemáticamente con la referencia numérica 32.
Haciendo referencia a la figura 3 de los dibujos adjuntos, se describirá a continuación el funcionamiento de dicha forma de realización de la presente invención.
Inicialmente, se definen las siguientes variables de los parámetros:
1
Dichos parámetros los puede ajustar el administrador del sistema.
En la etapa 300, el dispositivo de muestreo 28 de la CPU captura "sample_period" muestras por segundo. En la etapa 302 se determina si se requiere el bloqueo. Se determina que se requiere el bloqueo si para "samples_before_ clamping" muestras la carga de la CPU permanece en el 100% del valor predeterminado. Se puede ajustar otra utilización de la CPU, para evitar una utilización que alcance el 100%, si se pretende de este modo. A título de ejemplo, un valor de "sample_before_clamping" de 3, con un "sample_period" de 1 dará la orden al gestor del rendimiento 26 de iniciar el bloqueo de actividades si la carga de la CPU del sistema permanece al 100% durante tres segundos.
Si no se requiere el bloqueo, el procedimiento vuelve a obtener muestras de la carga de la CPU (etapa 300). Si, no obstante, se requiere el bloqueo, en la etapa 304 se determina cuáles de las actividades que utilizan la capacidad de la CPU se van a bloquear.
Cualquier procesamiento determinado puede comprender una pluralidad de actividades en el mismo. Para permitir que tanto los procesamientos como las actividades se analicen con respecto el bloqueo, en primer lugar el dispositivo capturador de muestras determina si la carga de la CPU para un procesamiento determinado supera el valor "minimum_thread_CPU". Si no se supera el valor "minimum_thread_CPU" el gestor del rendimiento 26 no bloqueará las actividades del procesamiento independientemente de la cantidad de carga de la CPU que las actividades individuales están utilizando.
El gestor del rendimiento bloqueará únicamente las actividades que ocupan un porcentaje significativo de la carga de la CPU. El gestor del rendimiento compara la carga de la CPU de la que se han obtenido muestras para una actividad determinada con la variable "minimum_process_CPU" y bloqueará únicamente la actividad correspondiente si la carga de la CPU supera dicho porcentaje.
Los valores habituales para "minimum_process_cpu" y "minimum_thread_cpu " son el 5%.
Una vez se han determinado una o más actividades para bloquear, el gestor de rendimiento bloqueará (Etapa 306) la actividad o actividades mediante el porcentaje "clamp_quantity" de la capacidad de la CPU durante un período predeterminado, siendo "samples_to_clamp" el número de muestras antes de desbloquear las mismas, por ejemplo 10 muestras.
Los medios de bloqueo 30 de las actividades de la CPU del gestor del rendimiento bloquean las actividades suspendiendo y reactivando las actividades en unos intervalos muy pequeños (habitualmente, unos valores de milisegundos). Por ejemplo, para bloquear un conjunto de actividades en el 95%, el gestor de rendimiento suspenderá y reactivará el conjunto de actividades durante un breve período de tiempo (una fracción de segundo) y garantizará que todas las actividades se suspendan durante el 5% de dicho período, haciendo que resulte imposible que las actividades bloqueadas consuman más del 95% de la CPU global entre las mismas. Únicamente suspendiendo las actividades durante unos períodos de milisegundos, aquellas sesiones en las que se están bloqueando actividades eludirán respuestas entrecortadas y difícilmente el bloqueo resultará apreciable por parte del usuario.
Se vuelve a producir el muestreo para determinar si se requiere un bloqueo adicional.
De este modo el gestor del rendimiento 26 bloqueará únicamente las actividades cuando la carga total de la CPU del sistema permanezca en el 100% del número de muestras definidas en el parámetro "samples_before_clamping". Una vez se han identificado una o más sesiones para bloquear, los medios de bloqueo 30 de las actividades de la CPU del gestor del rendimiento bloquearán cualquier actividad de dichas sesiones que utilice más de los niveles mínimos de la capacidad de la CPU (definida mediante "minimum_process_CPU" y "minimum_thread_CPU"). Bloqueará dichas actividades en la cantidad ajustada ("clamp_quantity"). Por ejemplo, si la "clamp_quantity" es de 5, el gestor del rendimiento bloqueará todas las actividades a bloquear en un 5%. Ello garantizará que todas las actividades bloqueadas se limiten al 95% de la capacidad de la CPU. Si la CPU de reserva se consume inmediatamente, el gestor de rendimiento aplicará progresivamente un bloqueo más profundo, identificado de nuevo el conjunto de actividades a bloquear, pero cada vez bloqueará una "clamp_quantity" adicional hasta que la CPU 32 no se vea saturada. Una vez se ha bloqueado la CPU 32 hasta el nivel requerido, el gestor del rendimiento 26 mantendrá el bloqueo en el mismo valor para el número de muestras definido en el parámetro "samples_to_clamp". Una vez se ha completado dicho período, el gestor del rendimiento 26 desbloqueará las actividades bloqueadas. Si, no obstante, la CPU 32 vuelve a una carga total, el gestor del rendimiento 26 volverá a aplicar el algoritmo de bloqueo inmediatamente.
En una forma de realización adicional de la presente invención, a cada usuario o grupo de usuarios se puede asignar a un factor de repartición de la CPU. Por defecto, todos los usuarios disponen de un factor de repartición de 1. Dicho factor de repartición se utiliza para determinar qué usuarios consumen demasiada CPU. El recuento del sistema cuenta asimismo el número de usuario y se le puede proporcionar asimismo un factor, que se puede ajustar por defecto a 1.
Por ejemplo, si cuatro usuarios 14 a 20 se conectan a un servidor de terminales 6 a 12, existirán cinco sesiones en total si se tiene en cuenta el recuento del sistema (no representado). Si todos los usuarios disponen de un factor de repartición de 1, el gestor de rendimiento 26 asigna el 20% (100%/5) de la capacidad de la CPU a cada uno de los mismos cuando se determina qué sesiones se han de bloquear. Por lo tanto, cada usuario puede utilizar hasta el 20% de la CPU global y el gestor de rendimiento no bloqueará ninguna actividad de dichas sesiones en particulares. A algunos usuarios se les puede asignar un factor de repartición superior o inferior, si se pretende de este modo.
A pesar de que la presente invención está destinada principalmente para ser utilizada con aplicaciones de servidores de terminales, para los que resulta particularmente ventajosa, se pueden utilizar algunas formas de realización de la misma, tal como se representa en la figura 4 de los dibujos adjuntos, con y para dispositivos de nodo de ordenador simple (por ejemplo ordenadores de sobremesa). En la figura 4, un aparato informático 34 comprende un nodo de ordenador de usuario, comprendiendo el aparato informático 34 una CPU 36 y una aplicación del gestor del rendimiento 38 para el mismo. El gestor del rendimiento 38 funciona tal como se ha descrito anteriormente para las aplicaciones de servidores de terminales, excepto en el presente caso en que se realiza el seguimiento únicamente de la utilización local de la CPU 36 (fuente de demanda de la CPU) y la CPU ejecuta las aplicaciones y los procesamientos para el aparato informático 34.
\newpage
La presente invención se puede implantar en una pluralidad de sistemas operativos, entre ellos UNIX, WINDOWS y MACINTOSH (marcas comerciales).
La presente invención no está limitada a la arquitectura del servidor de terminales descrito.
Al implantar las formas de realización preferidas de la presente invención se puede mantener el rendimiento y la respuesta de las aplicaciones.

Claims (12)

1. Aparato informático (6, 8, 10, 12) que comprende una unidad central de procesamiento (CPU) (32), unos medios para realizar el seguimiento de la carga de la CPU, y unos medios para reducir la utilización de la CPU de por lo menos una fuente de demanda de la CPU (26), reduciendo de este modo la carga de la CPU, si los medios de seguimiento de la CPU determinan que se ha alcanzado por lo menos un nivel de utilización umbral predeterminado de la CPU, en el que los medios de reducción de la utilización de la CPU comprenden unos medios de bloqueo de actividades (30); caracterizado porque los medios de reducción de las actividades se configuran para suspender temporalmente una actividad seleccionada por lo que las actividades se bloquean en un porcentaje predeterminado de la capacidad de la CPU, pudiéndose ajustar dicho porcentaje predeterminado, para reducir de este modo la carga de la CPU.
2. Aparato informático según la reivindicación 1, en el que los medios de seguimiento de la CPU comprenden un dispositivo de muestreo de la CPU (28).
3. Aparato informático según la reivindicación 2, en el que el dispositivo de muestreo de la CPU (28) obtiene muestras de la utilización de la CPU con un ritmo predeterminado.
4. Aparato informático según cualquiera de las reivindicaciones anteriores, en el que el umbral predeterminado se debe alcanzar por lo menos por una pluralidad de muestras antes de que se activen los medios de reducción (30) de la utilización de la CPU.
5. Procedimiento de gestión del rendimiento para un aparato informático (6, 8, 10, 12) que comprende una unidad central de procesamiento (CPU) (32), comprendiendo el procedimiento además las etapas de realizar el seguimiento de la utilización de la CPU (300) y de reducir la utilización de la CPU de por lo menos una fuente de demanda de la CPU (304) si la utilización de la CPU alcanza un valor umbral predeterminado (302), en el que la utilización de la CPU se reduce mediante el bloqueo de la actividad (306); caracterizado porque el bloqueo de la actividad suspende temporalmente una actividad seleccionada por lo que la actividad se bloquea en un porcentaje predeterminado de la capacidad de la CPU, pudiéndose ajustar dicho porcentaje predeterminado, para reducir de este modo la carga de la CPU.
6. Procedimiento de gestión del rendimiento para un aparato informático según la reivindicación 5, en el que se obtienen muestras de la utilización de la CPU con un ritmo predeterminado (300).
7. Procedimiento de gestión del rendimiento para un aparato informático según cualquiera de las reivindicaciones 5 ó 6, en el que se debe alcanzar el umbral predeterminado por lo menos por una pluralidad de muestras (302) antes de reducir la utilización de la CPU (304, 306).
8. Procedimiento de gestión del rendimiento para un aparato informático según cualquiera de las reivindicaciones 5 a 7, en el que se bloquea una actividad durante un período de tiempo predeterminado (306).
9. Aparato de servidor de terminales que comprende un servidor de terminales (6, 8, 10, 12) destinado a conectarse con una pluralidad de nodos de ordenadores de usuario (14, 16, 18, 20), comprendiendo el servidor de terminales (6, 8, 10, 12) una unidad central de procesamiento (CPU) (32), unos medios para realizar el seguimiento de la carga de la CPU, y unos medios para reducir la utilización de la CPU de por lo menos un usuario (26), reduciendo de este modo la carga de la CPU, si los medios de seguimiento de la CPU determinan que se ha alcanzado por lo menos un nivel de utilización umbral predeterminado de la CPU, en el que los medios de reducción de la utilización de la CPU comprenden unos medios de bloqueo de las actividades (30); caracterizado porque los medios de bloqueo de las actividades se configuran para suspender temporalmente una actividad seleccionada por lo que la actividad se bloquea en un porcentaje predeterminado de la capacidad de la CPU, pudiéndose ajustar dicho porcentaje predeterminado, para reducir de este modo la carga de la CPU.
10. Procedimiento de gestión del rendimiento para un aparato de servidor de terminales que comprende un servidor de terminales (6, 8, 10, 12) destinado a conectarse con una pluralidad de nodos de ordenadores de usuario (14, 16, 18, 20), comprendiendo el servidor de terminales una unidad central de procesamiento (CPU) (32), comprendiendo el procedimiento además las etapas de realizar el seguimiento de la utilización de la CPU (300) y de reducir la utilización de la CPU de por lo menos un usuario (304) si la utilización de la CPU alcanza un valor umbral predeterminado (302), en el que la utilización de la CPU se reduce mediante el bloqueo de la actividad (306); caracterizado porque el bloqueo de la actividad suspende temporalmente una actividad seleccionada por lo que la actividad se bloquea en un porcentaje predeterminado de la capacidad de la CPU, pudiéndose ajustar dicho porcentaje predeterminado, para reducir de este modo la carga de la CPU.
11. Programa informático (26) destinado a realizar un procedimiento según cualquiera de las reivindicaciones 5 a 8 y 10.
12. Soporte de datos que comprende un programa informático según la reivindicación 11.
ES02258408T 2001-12-06 2002-12-05 Procedimiento y aparato para repartir la carga en un sistema informatico. Expired - Lifetime ES2312527T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0129221 2001-12-06
GB0129221A GB2366891B (en) 2001-12-06 2001-12-06 Improvements in and relating to computer apparatus terminal server apparatus & performance management methods therefor

Publications (1)

Publication Number Publication Date
ES2312527T3 true ES2312527T3 (es) 2009-03-01

Family

ID=9927123

Family Applications (1)

Application Number Title Priority Date Filing Date
ES02258408T Expired - Lifetime ES2312527T3 (es) 2001-12-06 2002-12-05 Procedimiento y aparato para repartir la carga en un sistema informatico.

Country Status (6)

Country Link
US (1) US7302687B2 (es)
EP (1) EP1329811B1 (es)
AT (1) ATE408187T1 (es)
DE (1) DE60228815D1 (es)
ES (1) ES2312527T3 (es)
GB (1) GB2366891B (es)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004088518A1 (ja) * 2003-03-31 2004-10-14 Fujitsu Limited Cpu使用時間カウント方法及びこのcpu使用時間を用いるジョブ制御装置
US8237386B2 (en) * 2003-08-15 2012-08-07 Apple Inc. Methods and apparatuses for operating a data processing system
WO2005064472A2 (en) * 2003-12-23 2005-07-14 Unisys Corporation System and method for metering the performance of a data processing system
US7784054B2 (en) * 2004-04-14 2010-08-24 Wm Software Inc. Systems and methods for CPU throttling utilizing processes
WO2006029656A1 (en) * 2004-09-13 2006-03-23 Fujitsu Siemens Computers, Inc. Computer arrangement for providing services for clients through a network
US8127010B2 (en) * 2004-10-04 2012-02-28 Research In Motion Limited System and method for adaptive allocation of threads to user objects in a computer system
EP1805610A4 (en) * 2004-10-04 2008-02-13 Research In Motion Ltd Allocation of threads to user objects in a computer system
US7793291B2 (en) * 2004-12-22 2010-09-07 International Business Machines Corporation Thermal management of a multi-processor computer system
JP4367856B2 (ja) * 2005-07-07 2009-11-18 レノボ シンガポール プライヴェート リミテッド プロセス制御システム及びその制御方法
US8117505B2 (en) * 2005-11-07 2012-02-14 Microsoft Corporation Resource exhaustion prediction, detection, diagnosis and correction
JP2007199811A (ja) * 2006-01-24 2007-08-09 Hitachi Ltd プログラム制御方法、計算機およびプログラム制御プログラム
JP2008102778A (ja) * 2006-10-19 2008-05-01 Fujitsu Ltd 情報処理装置、情報処理装置の制御方法及びプログラム
US8677014B2 (en) 2006-11-27 2014-03-18 Cisco Technology, Inc. Fine granularity exchange level load balancing in a multiprocessor storage area network
US7844784B2 (en) * 2006-11-27 2010-11-30 Cisco Technology, Inc. Lock manager rotation in a multiprocessor storage area network
WO2008078329A2 (en) 2006-12-27 2008-07-03 More It Resources Ltd. Method and system for transaction resource control
US20080276299A1 (en) * 2007-04-02 2008-11-06 Samsung Electronics Co., Ltd. Wireless terminal apparatus and method of protecting system resources
US7680628B1 (en) * 2007-09-24 2010-03-16 United Services Automobile Association (Usaa) Estimating processor usage
US7725296B1 (en) 2007-09-24 2010-05-25 United Services Automobile Association (Usaa) Estimating processor usage
US7720643B1 (en) 2007-09-24 2010-05-18 United Services Automobile Association (Usaa) Estimating processor usage
US7530072B1 (en) * 2008-05-07 2009-05-05 International Business Machines Corporation Method to segregate suspicious threads in a hosted environment to prevent CPU resource exhaustion from hung threads
WO2010092483A1 (en) * 2009-02-13 2010-08-19 Alexey Raevsky Devices and methods for optimizing data-parallel processing in multi-core computing systems
US8656396B2 (en) * 2009-08-11 2014-02-18 International Business Machines Corporation Performance optimization based on threshold performance measure by resuming suspended threads if present or by creating threads within elastic and data parallel operators
US7925874B1 (en) 2010-05-18 2011-04-12 Kaspersky Lab Zao Adaptive configuration of conflicting applications
JP6056453B2 (ja) * 2012-12-20 2017-01-11 富士通株式会社 プログラム、データ管理方法および情報処理装置
US9106391B2 (en) 2013-05-28 2015-08-11 International Business Machines Corporation Elastic auto-parallelization for stream processing applications based on a measured throughput and congestion
KR102691293B1 (ko) * 2016-07-29 2024-08-05 삼성전자 주식회사 전자 장치의 전력 소모 감소를 위한 방법 및 장치
CN109344039A (zh) * 2018-09-13 2019-02-15 郑州云海信息技术有限公司 一种主机智能监控方法及装置
CN111427693B (zh) * 2020-03-26 2023-04-28 北京字节跳动网络技术有限公司 数据处理方法、系统、介质、服务系统及旁路卸载系统
CN112346933B (zh) * 2020-11-09 2023-03-17 深信服科技股份有限公司 一种恶意文件扫描方法、装置、设备及介质

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5475844A (en) * 1992-11-27 1995-12-12 Nec Corporation Heavily loaded resource evaluation system
US5752031A (en) * 1995-04-24 1998-05-12 Microsoft Corporation Queue object for controlling concurrency in a computer system
US5996083A (en) 1995-08-11 1999-11-30 Hewlett-Packard Company Microprocessor having software controllable power consumption
JPH09167141A (ja) * 1995-12-18 1997-06-24 Hitachi Ltd 負荷分散制御方法
US5809235A (en) * 1996-03-08 1998-09-15 International Business Machines Corporation Object oriented network event management framework
US6182109B1 (en) * 1996-03-08 2001-01-30 International Business Machines Corporation Dynamic execution unit management for high performance user level network server system
US6237024B1 (en) * 1998-03-20 2001-05-22 Sun Microsystem, Inc. Method and apparatus for the suspension and continuation of remote processes
US5872972A (en) * 1996-07-05 1999-02-16 Ncr Corporation Method for load balancing a per processor affinity scheduler wherein processes are strictly affinitized to processors and the migration of a process from an affinitized processor to another available processor is limited
US6026425A (en) * 1996-07-30 2000-02-15 Nippon Telegraph And Telephone Corporation Non-uniform system load balance method and apparatus for updating threshold of tasks according to estimated load fluctuation
US6067557A (en) * 1996-09-06 2000-05-23 Cabletron Systems, Inc. Method and system for allocating CPU bandwidth by prioritizing competing processes
US6581104B1 (en) * 1996-10-01 2003-06-17 International Business Machines Corporation Load balancing in a distributed computer enterprise environment
KR100209464B1 (ko) * 1996-11-30 1999-07-15 김영환 디지탈 이동통신 시스템의 동적 과부하 제어 장치 및 그 방법
US6269391B1 (en) * 1997-02-24 2001-07-31 Novell, Inc. Multi-processor scheduling kernel
US6397252B1 (en) * 1997-12-19 2002-05-28 Electronic Data Systems Corporation Method and system for load balancing in a distributed object system
US6182022B1 (en) 1998-01-26 2001-01-30 Hewlett-Packard Company Automated adaptive baselining and thresholding method and system
US6477561B1 (en) * 1998-06-11 2002-11-05 Microsoft Corporation Thread optimization
US6707792B1 (en) * 1998-06-30 2004-03-16 Cisco Technology, Inc. Overload reduction in a communication system
JP2000284976A (ja) * 1999-03-31 2000-10-13 Nec Corp Cpu負荷制御方法およびcpu負荷制御装置
JP2000322365A (ja) * 1999-05-12 2000-11-24 Hitachi Ltd サーバコンピュータの受付制限方法
US6665272B1 (en) * 1999-09-30 2003-12-16 Qualcomm Incorporated System and method for persistence-vector-based modification of usage rates
US6564328B1 (en) 1999-12-23 2003-05-13 Intel Corporation Microprocessor with digital power throttle
US6845456B1 (en) * 2001-05-01 2005-01-18 Advanced Micro Devices, Inc. CPU utilization measurement techniques for use in power management

Also Published As

Publication number Publication date
ATE408187T1 (de) 2008-09-15
EP1329811B1 (en) 2008-09-10
GB2366891A (en) 2002-03-20
GB2366891B (en) 2002-11-20
US20030126184A1 (en) 2003-07-03
DE60228815D1 (de) 2008-10-23
EP1329811A2 (en) 2003-07-23
EP1329811A3 (en) 2004-08-18
GB0129221D0 (en) 2002-01-23
US7302687B2 (en) 2007-11-27

Similar Documents

Publication Publication Date Title
ES2312527T3 (es) Procedimiento y aparato para repartir la carga en un sistema informatico.
US8352765B2 (en) Dark wake
US7418608B2 (en) Method and an apparatus for managing power consumption of a server
EP3242185B1 (en) Server rack power management
CA2522467C (en) Automated power control policies based on application-specific redundancy characteristics
US7725675B2 (en) Storage capacity management system in dynamic area provisioning storage
US8112647B2 (en) Protocol for power state determination and demotion
US7281148B2 (en) Power managed busses and arbitration
KR100968202B1 (ko) 소비전력 감소를 위한 클러스터 시스템 및 그의 전원 관리방법
US10579132B2 (en) System and method for performing distributed power management without power cycling hosts
US7873847B2 (en) Method of power state control for a server blade in a blade—server chassis system
US20160239343A1 (en) Multi-tenant monitoring
KR20100073157A (ko) 클러스터 시스템에 대한 원격 전원 관리 시스템 및 그 방법
TW201013386A (en) Central power management method and system
US9336106B2 (en) Dynamically limiting bios post for effective power management
WO2008096340B1 (en) Integrated waking/while-awake power management system
JP2005270655A (ja) 熱及び電源管理を備えたデジタル放射線検出器
CN102156532A (zh) 在维持特定的功能的同时降低消耗功率的计算机及方法
KR20130101693A (ko) 이종의 운영체제를 사용하는 가상화 시스템의 전력 관리 방법 및 장치
CA2657981A1 (en) Power management system
JP2002517032A (ja) 電力管理非活動監視のソフトウェア・エミュレーション
US8176498B2 (en) Power setting adjustments by mission operating system in response to requests from platform manager
US7856550B2 (en) System and method for hardware manipulation in a computing device
US7636861B2 (en) Bus technique for controlling power states of blades in a blade enclosure
CN111857836A (zh) 服务器开机管理系统、方法及装置