9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de...

31
Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases © MARIO DROGUETT C. ESCUELA DE I NGENIERÍA P ONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-1 9. Rendimiento del Sub-Sistema de E/S (Discos) El subsistema de E/S es el área más “lenta” del sistema computacional, por lo cual su rendimiento afecta de forma importante el desempeño de la memoria virtual, los procesos con I/O intensivo, etc. En términos generales, se desea optimizar: El caudal de acceso por proceso. El caudal de todo el I/O del sistema. La eficiencia de almacenamiento. Como buenos objetivos de rendimiento, estos no son necesariamente realizables simultáneamente, y en algunos casos se contraponen. El acceso a disco desde el punto de vista de los usuarios puede tener una estructura secuencial, pero para el sistema como un todo, este es distribuido en diferentes discos y zonas dentro de los mismos. Así, el criterio más importante será aquel que mejor adecúe al sistema a las necesidades de la organización. Si procesos importantes realizan accesos secuenciales y éstos son una fracción importante del caudal total de disco, optimizar el caudal por proceso es el criterio más adecuado.

Transcript of 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de...

Page 1: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-1

9. Rendimiento del Sub-Sistema de E/S (Discos)

El subsistema de E/S es el área más “lenta” delsistema computacional, por lo cual su rendimientoafecta de forma importante el desempeño de lamemoria virtual, los procesos con I/O intensivo, etc.

En términos generales, se desea optimizar:

• El caudal de acceso por proceso.

• El caudal de todo el I/O del sistema.

• La eficiencia de almacenamiento.

Como buenos objetivos de rendimiento, estos no sonnecesariamente realizables simultáneamente, y enalgunos casos se contraponen.

El acceso a disco desde el punto de vista de losusuarios puede tener una estructura secuencial, peropara el sistema como un todo, este es distribuido endiferentes discos y zonas dentro de los mismos.

Así, el criterio más importante será aquel que mejoradecúe al sistema a las necesidades de laorganización.

Si procesos importantes realizan accesos secuencialesy éstos son una fracción importante del caudal total dedisco, optimizar el caudal por proceso es el criteriomás adecuado.

Page 2: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-2

Si el mix de I/O es variado, se puede optimizar elcaudal total... o definir sistemas de archivo para cadatipo de trabajo.

La eficiencia de almacenamiento es, por otro lado,incompatible con el caudal de I/O.

En general, a mayor eficiencia de almacenamientomenor caudal de I/O. Nuevamente, podemos definirsistemas de archivos para cada objetivo.

9.1 Dispositivos de Almacenamiento

El almacenamiento requiere el uso de uno o másdispositivos de control de periféricos, y de dispositivosde almacenamiento conectados a ellos. Es así que ladisquetera es conectada a través de un FDC (FloppyDisk Controller), que en general está integrado en unMIOC (Multy Input Output Controller).

Todos estos dispositivos son accedidos a través delBIOS (Basic Input Output Services) que provee laplaca madre del equipo (a través de su ROM), loscuales interactúan con la ROM del controladorrespectivo.

El Sistema Operativo puede proveer soporte de másalto nivel a estos servicios, reemplazarlos oextenderlos. El siguiente esquema presenta una visiónglobal del IO de un sistema:

Page 3: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-3

A continuación revisaremos parte de la tecnología deDiscos Duros disponible actualmente en el mercado,incluyendo controladores y sistemas dealmacenamiento.

9.1.1 Controladores

En la tecnología de controladores de dispositivosrevisaremos tres tipos principales: IDE, EIDE y SCSI.

9.1.1.1 IDE

El controlador IDE permite utilizar sobre el mismo BUShasta dos dispositivos, en un esquema Maestro -Esclavo. Bajo este sistema sólo un disco accede al parBUS Controlador (técnicamente se habla de Canal) enun instante de tiempo, y para acceder, el discomaestro debe ceder el canal al esclavo. IDE sólosoporta Discos.

Page 4: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-4

Se conecta en BUSES ISA o EISA, por lo cual puedellegar a operar en 32 bits, a 8 MHz. Entregando tasasde transferencia de hasta 4 Mbyte por segundo.

IDE

Maestro

Esclavo

ISA o EISA

9.1.1.2 EIDE

Este controlador incluye 2 Canales, su arquitecturaprovee soporte para 4 dispositivos, 2 en cada canal enun esquema Maestro - Esclavo.

Se conecta en BUS LOCAL (VESA o PCI) lo quepermite un acceso a 32 bits (hasta 64 en PCI) de altavelocidad.

Su tasa de transferencia alcanza hasta 16 Mbyte porsegundo. Provee PIO/DMA (Physical Input Output /Direct Memory Access) para accesos masivos a altavelocidad. Los dispositivos pueden ser IDE o EIDE.EIDE soporta sólo Discos.

Page 5: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-5

EIDE

Maestro

Esclavo

ISA, EISA,VESA o PCI

Maestro

Esclavo

9.1.1.3 SCSI

SCSI (Small Component System Interface) opera enun canal base sobre el cual pueden existir hasta 7dispositivos (el controlador es uno de los dispositivosdel canal).

Existen múltiples variaciones sobre un patrón base,como características de los proveedores, por ejemplo,existen controladores bi canal que soportan hasta 13dispositivos (el mismo controlador es dispositivo enambos canales. Las tasas de transferencia van desdelos 1.5 Mbyte/s a los 20 Mbyte/s.

El controlador SCSI soporta disqueteras, CD ROMS,Arreglos de Discos, SCANNERS, Unidades deRespaldo (DAT, CARTRIDGE, Etc.), y Discos coninterfaz SCSI.

Page 6: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-6

La siguiente tabla resume las principalescaracterísticas de los controladores SCSI.

Denominación BUS Transferencia Otros

SCSI I 8 Bits 1.5 MBYTE/S Decae alaumentarel N dedispos.

SCSI II 8 a 16 10 a 20 MB/S

FAST SCSI II 8 a 16 10 a 20 MB/S 8 BitsNARROW,16 BitsWIDE.

SCSI III 8, 16 y32 Bits

Soportepara + de 7dispos. porcanal.

La siguiente figura presenta un esquema de BUSSCSI.

Page 7: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-7

ISA, EISA,VESA o PCI

Terminador

HOST SCSI

ID 1

ID 3

ID 5

ID 2

ID 4

ID 6

ID 7

9.1.2 Discos Magnéticos

La tecnología de discos magnéticos ha tenido pocavariación en los últimos años.

Básicamente, un disco esta formado por uno o másplatos concéntricos sobre un eje común. La superficiede los platos (de material magnético) es recorrida porun cabezal de lecto escritura por superficie, los cualescomparten un brazo de posicionamiento.

La siguiente figura muestra un esquema general deun disco de múltiples platos.

Page 8: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-8

Para ubicar un dato, el controlador del discodetermina el cilindro dónde este se encuentra (sellama cilindro al conjunto de pistas concéntricas a queaccede el grupo de cabezas lectorassimultáneamente) y desplaza el brazo de cabezales aesa posición (SEEK).

Luego, espera a que el disco rote (LATENCIA) hastaque el dato a leer o escribir pasa bajo el cabezal lectory finalmente opera el dato.

La organización de la información en el disco serealiza por cilindros, y cada pista de cada cilindro estadividida en sectores. Estos sectores son “numerados”por “columnas” dentro de cada cilindro.

En un mismo plato cada sector esta separado delcontiguo por un mini sector de control, el cual entregaal hardware del disco información del sector siguiente.

Page 9: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-9

PistaSector

Control

Para afinar el acceso eficiente a las “columnas”consecutivas en una pista se utiliza el concepto de“espaciamiento entre sectores”.

Dado que al terminar de leer una columna se requieretiempo para la transferencia de dicha información, lacolumna inmediatamente siguiente ya habría pasadobajo la cabeza lectora cuando el hardware del discoestuviera listo para leerla, así sería necesario esperaruna rotación completa del disco para leer la columnasolicitada.

Esto se controla definiendo el número de sectoresentre columnas consecutivas, de modo tal deminimizar la espera por rotación del disco.

La tecnología de discos ópticos y magneto ópticosopera bajo los mismos supuestos, variando sólo elmedio de almacenamiento. En lugar de materialmagnético de baja densidad se utiliza materialmagnético de alta densidad activado por laser y/omarcas de alta densidad sobre una superficie plástica.

Page 10: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-10

9.2 Configuración del Hardware de I/O.

La idea general es distribuir el trabajo.

Si el controlador soporta 2 canales, distribuir losdiscos del controlador entre los canales.

Si el I/O es crítico, existen arquitecturas como MultibusII, VMEbus, UltraFastWideSCSI-II y otras que soportanmás de 40 mb/s. Nuevos controladores basados enfibra entregan caudales mayores.

Los discos envían hasta 6-3 Mb/s a 8bits, 12-6 Mb/s a16bits.

Parámetros importantes en los discos son:

Seek Time (mínimo, promedio y máximo)

Rotational speed (3.600 RPM y discos nuevos a7.200 RPM o más)

Page 11: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-11

Raw transfer rate

Otro punto importante, pero sobre el cual existe muypoco control es la capacidad y eficiencia del disco porsu formato.

• En términos generales, con respecto al disco, lomás importante es el seek time y el número deplatos.

9.3 Sistemas RAID

Los sistemas RAID corresponden a un "ArregloRedundante de Discos Baratos".

Estos están normalmente basados en interfaces SCSI(normalmente multicanal) las que proveen porhardware diferentes configuraciones para acceder alos discos, cada una de las cuales entregancaracterísticas de capacidad, desempeño y toleranciaa fallas.

Page 12: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-12

Todas las configuraciones son complementadas conmemoria cache en el controlador para proveer mayordesempeño con latencias de lectura y escrituracercanas a cero.

Algunos sistemas operativos (Windows NT porejemplo) y administradores de bases de datos (Oracle,Sybase e Informix) proveen algunos servicios(típicamente Stripping y Mirror) por software, estos nose recomiendan desde el punto de vista deldesempeño, si es que es posible proveerlos porhardware.

Las principales configuraciones de un RAID sepresentan a continuación:

· JBOD: Just a Bunch of Disk: Solo un montón dediscos, corresponde a la configuración no RAID, cadaeje en el controlador es visible como un discoindependiente para el sistema.

Page 13: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-13

· RAID0: Data Stripping: Particionamiento de la dataen los discos de la torre. No provee tolerancia a falla,el caudal de I/O se incrementa linealmente al agregardiscos hasta la saturación del canal, el mejordesempeño se obtiene sobre I/O Random.

· RAID1: Drive Mirroring: Espejamiento de Discos. Lacapacidad de la torre es la mitad de la suma de losdiscos que la componen (número par de discos,naturalmente). El desempeño en lectura es similar alde RAID0, ya que las copias pueden ser accedidas enforma independiente, sin embargo, el desempeño enescritura es muy inferior (como el de un RAID 0 con lamitad de los discos), ya que se debe escribirsimultáneamente en cada copia. En general, RAID1entrega el mejor desempeño con tolerancia a fallas, enla mayor parte de los controladores, al costo de 50%de la capacidad de almacenamiento.

· RAID4: Data Guarding: Protección de Datos, elcontrolador de discos usa un disco dedicado, llamadodisco de paridad, para almacenar informacióncodificada. La capacidad de la torre es reducida en undisco por torre, en contraste con el 50% del RAID1. Eldesempeño de lectura se comporta como RAID0 conun disco menos, en escritura (una vez que el cache sellena), y ya que toda la información de paridad esmantenida en un solo disco, se puede realizar sólouna escritura simultáneamente. Así, en el peor caso,RAID4 en escritura se comporta como un solo disco.En general RAID4 se recomienda sólo en aplicacionescon una alta tasa de lectura sobre escritura (90:10) y

Page 14: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-14

con trasferencias de gran tamaño por operación (másde 128KByte por bloque).

· RAID5: Distributed Pariry: Paridad Distribuida, elcontrolador de disco distribuye la paridad codificadade los datos entre todos los ejes en la torre, al igualque en RAID4 la capacidad de la torre se reduce enun disco. El desempeño de lectura es equivalente alde un RAID0 con un disco menos, en escritura(después de que el cache se llena) se alcanza undesempeño similar al de RAID1, ya que cada lecturarequiere de dos discos para completarse (data yparidad) y así la tasa de escritura se reduce (en elmejor caso) a la mitad de RAID0. En general RAID5 serecomienda para aplicaciones con una alta tasa delectura sobre escritura (75:15) y un bloque promediode escritura que permita que el controlador escriba enparalelo en dos discos por cada operación de I/O(16KBytes o menos).

Algunos controladores soportan como alternativaconveniente la configuración RAID0+1 (stripping másmirror), como una buena alternativa en desempeño yconfiabilidad.

Visto todo lo anterior configurar RAID5 para manejartodas las necesidades de I/O de un sistema pareceser la opción más sencilla, pero naturalmente nosiempre es la mejor decisión. El impacto en eldesempeño puede ser sustancial si se consideran lascaracterísticas de desempeño de cada tipo de RAID

Page 15: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-15

con los patrones de la carga de trabajo que debesoportar.

Por ejemplo, un NT con Exchange Server contienearchivos de escritura intensivos (secuencial) y archivosde acceso aleatorio. En lugar de utilizar RAID5 paraambas actividades podemos separar los de escrituraintensiva en un RAID1, y los demás en RAID5, asímejoramos el desempeño del sistema completo,manteniendo un adecuado nivel de tolerancia a fallasy diponibilidad.

Para identificar que archivos ubicar donde puedeutilizar el NT puede utilizar el Performance Monitor enconjunto con el Freeware Filemon.exe de SystemsInternals, disponible en http://www.sysinternals.com

La idea es ejecutar Filemon en los períodos de usointensivo de forma de identificar los archivosespecíficos que son accedidos en cada disco.

Use el Performance Monitor para conocer la carga decada disco y así decidir, con los datos de Filemon,que mover a donde (recuerde que en NT puededestruir el sistema si los archivos no son movidossegún los requerimientos de la aplicación que losutiliza).

9.4 Particiones de disco

El uso de particiones apunta a los siguientes objetivos.

Page 16: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-16

• Minimizar el daño ante fallas

• Organización y

• Adecuación

Desde el punto de vista del kernel, el disco es vistocomo un conjunto de cilindros concéntricos. Unapartición es un grupo de cilindros consecutivos.

Unix BSD no permite definir particiones distintas alstandard, definidas en /etc/disktab, pero estos son losuficientemente flexibles para la mayoría de los casos.

La distribución exacta de las particiones depende delvendedor de S.O. y del disco, pero en generalcorresponden.

Page 17: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-17

En BSD las convenciones para el uso de lasparticiones son:

• En el disco 0 la partición a es root filesystem

• En el disco 0 la partición b siempre es swap

• El uso de c depende del fabricante (SunOs)

La idea general es tener particiones separadas para.

/usr

/usr/spool

/tmp

En unix system V, el sistema permite al usuario definirsus particiones y asignarles (indicando su tamaño porcilindro de inicio/fin).

Como regla general se recomienda particiones discosiguales de igual forma, y en discos distintos tratar de

Page 18: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-18

observar una “ortogonalidad” en la asignación detamaños.

La idea es poder mover el contenido de las particionesentre discos a un mínimo costo.

Page 19: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-19

9.5 Tipos de Sistemas de Archivos

• Principalmente, en UNIX existen dos tipos desistemas de archivos, locales, que afectan elrendimiento.

• S5 o System V file system

• UFS, BFS o BSD

9.5.1 S5

El sistema de archivos tipo S5 utiliza la particióncompleta según el siguiente esquema:

BootBlock

SuperBlock

Inode Data Blocks

Cada archivo del S5 está apuntado por un i-nodo elcual contiene punteros a los esquemas de datos delarchivo.

Page 20: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-20

El costo de acceso para archivos muy grandes esaltísimo, aun cuando estos no son comunes.

¿Qué tamaño se requiere para llegar a la 3raindirección?

La administración de la free list es compleja.

9.5.2 UFS

Existen 2 cambios principales, el uso de grupos decilindros al interior de la partición, y el uso de bloquesde fragmentación.

La partición se distribuye de la siguiente manera:

Page 21: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-21

Los i-nodos son similares (sin 3ª indirección) peropara los bloques se define un tamaño y un tamaño defragmentación. La idea es que si un bloque no seutiliza completo puede ser usado por otro i-nodo.

En general, es preferible UFS por:

• Uso del espacio

• Confiabilidad

• Características de links simbólicos y cuotas

Page 22: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-22

9.5.3 Creación y Mantención de Sistemas de Archivos

Objetivos a considerar:

− Distribución de la carga

− Administrar grupos similares enS.A. similares.

− Ajustar tamaño de bloque a losarchivos almacenados.

− Aumentar la confiabilidad.

− Facilitar respaldos.

• En general se prefiere un tamaño de bloque“grande” para particiones que contienenejecutables.

• Si el S.A. se dedica al desarrollo de aplicaciones serecomienda un tamaño de bloque “pequeño”.

• El óptimo para S.A. de datos depende de los datos.

• Mix de archivos

• Tipo de acceso

En S5 el tamaño de bloque se recomienda a 1024, enufs varía... en 4kb y 64kb... y ajustando el tamaño defragmentación.

Page 23: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-23

Los parámetros del S.A. se definen cuando es creado:

Mkfs

Newfs } destructivos

Tunefs

Mkfs y Newfs requieren un backup para modificar losparámetros del S.A.

UFS:

# newfs - s 32768 /dev/rdisk2e cdc-9715 -b:bloq /*def. = 8192 */

S5:

# mkfs /dev/rdsk/c1do53 204800–b 2048

Ojo con el número de inodos. En general el default esun i-nodo por cada 2kb de almacenamiento.

• El tamaño promedio de un i-nodo es 200 bytes

Page 24: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-24

• Todos los archivos, directorios, links, socket, pipe,etc requieren de un i-nodo.

Otra forma es un i-nodo por cada 4 unidades dealmacenamiento.

Para cambiar el número de i-nodos se debe utilizarmkfs o newfs.

En ufs se puede definir el delay rotacional...

Para controlar la fragmentación en ufs se asocia unparámetro: min free space.

Además, se puede definir la optimización del S.A.

• Space (min frag.)

• Time

Ej. :

# umount /...

# tumefs -m12 -o time /...

# mount

Para eliminar completamente la fragmentación sedebe recrear el S.A.

Page 25: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-25

En S5 se puede solicitar a fsck que reconstruya lafreelist.

# init -S

# umount /...

# fsck -S

# reboot

Nuevamente, para eliminar la fragmentación se debereconstruir el S.A.

Es necesario recordar que la fragmentación es unproblema en el tiempo...

9.6 Respaldos

• Políticas

• Objetivos

• Preguntas / Respuestas

• Una estrategia

Page 26: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-26

9.7 Carga de Trabajo en el Disco(s)

El trabajo que soportan los discos es “entregado” por:

• Acceso “raw” al disco

• Acceso por buffers

• Paginación y swap

• Sincronismo

De las herramientas obtenemos información de cómose comporta el disco, su uso frente a otros discos y elprincipal tipo de acceso que presenta pero...

• No sabemos de cual partición del disco se trata

• No sabemos quién hace los accesos.

Page 27: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-27

¿paginación o swap?

¿buffening?

En el caso de BSD no tenemos acceso a másinformación (¿aplicaciones?) Por lo cual se debeutilizar información de conocimiento del sistema.

Si bien es posible obtener información de paginación yswap a través de vmstat, no existe forma de obtenerinformación del comportamiento de los buffers delsistema o de las estadísticas de system calls (read ywrite).

En este ambiente sólo podemos computar losrequerimientos de consumo de la carga de trabajo (sa)e investigar hacia que disco están dirigidos. La idea esconocer la fracción de I/O de cada usuario hacia cadadisco, distinguiendo, cuando sea posible, el acceso através de block-device y raw-device.

Page 28: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-28

Estimando el consumo dado por la paginación (page-in v/s demand-page in y el swap, las estadísticas delos usuarios y las estadísticas de los discos podemosdefinir el cambio general que sigue al I/O.

Dependiendo de la información disponible, y haciendo“cuadrar” es que podemos estimar la infomaciónfaltante.

La idea es que, cuando el modelo esta validado, i.e.los consumidores en c/disco están individualizados,podemos tomar decisiones adecuadas sobre cómobalancear la carga de c/disco.

El buffer cache es importante en sistemas pre-SVR4 yBSD, luego la estimación correcta de su efectividad esun punto importante.

Page 29: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-29

Una efectividad del BC de menos de un 85% enlectura y 75% en escritura puede sugerir un aumentoen su tamaño, más de 95% en lectura y 85% enescritura podría permitirnos reducir su tamaño.

Es necesario también considerar los buffers quepueden utilizar algunas aplicaciones como losservidores de bases de datos.

Si la aplicación no entrega estadísticas de su I/O y desu cache podemos estimar esos valores al conocer elcaudal de I/O a través de las estadisticas de systemcalls (sar – c).

En sistemas tipo SV podemos utilizar para nuestroscálculos las estadísticas entregadas por.

• Acctcom –i

• Sar –bdpge

Recordamos que los sync automáticos están definidospor una variable de configuración del sistema.

BDFLUSR (FSFLUSHR) daemon

NAUTOUP edad

Page 30: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-30

Otras técnicas importantes son los STRIPEDFILESYSTEMS y en algunos sistemas el uso deRAMDISK.

Todo lo anterior apunta a la optimización del acceso,respecto de espacio, nuestras herramientas son:

Df

Swap – l

Du

El sistema de cuotas es de gran ayuda para conservarel espacio disponible... y por otro lado es importantehacer limpieza regularmente.

9.8 Sistemas Paralelos y I/O

¿Cómo afecta la disponibilidad de múltiples CPUs alrendimiento del disco?

♦ Arquitecturas simétricas (SMP)

♦ Procesos y threads

• Las arquitecturas SMP permiten que cualquiercódigo pueda ser ejecutado en cualquier CPU.

Page 31: 9. Rendimiento del Sub-Sistema de E/S (Discos)clgutier/iic3542_C9.pdf · 9.1 Dispositivos de Almacenamiento El almacenamiento requiere el uso de uno o más dispositivos de control

Evaluación y Afinamiento de Sistemas Computacionales Apuntes de Clases

© MARIO DROGUETT C. ESCUELA DE INGENIERÍA PONTIFICIA UNIVERSIDAD CATÓLICA DE CHILE 9-31

• El scheduler asigna los procesos a las CPU desdelas colas del sistema.

• El proceso que hace I/O se bloquea.

¿Bases de Datos?

• Los threads son como “sub tareas” de un proceso.Las arquitecturas que usan T. permiten que alrealizar I/O se bloquee sólo el T. y no el proceso.

En sistemas SMP los T pueden ejecutar en distintasCPU.