You are on page 1of 71

Tema1:Introduccin:paralelismoe incrementodeprestaciones Contenidos

Leccin1:ConceptodeArquitecturade Computadores(AC) Leccin2:Evolucindelasarquitecturas Leccin3:Evaluacindelasprestaciones

Primeraaparicindeltrmino,en1964(Amdahl):

Estructuradeuncomputadorqueelprogramadoren lenguajemquinadebeconocersiquiereescribirun programacorrectoparadichocomputador Registrosymemoria Conjuntodeinstruccionesysuformato Modosdedireccionamiento

Esdecir,ACengloba:

Noconsideralaformaenqueseimplementany ejecutanlasinstrucciones.

BellyNewell,en1970,introdujeronuna descripcinmultiniveljerrquica:

Niveldecircuitoelctrico Niveldediseolgico Niveldeprogramacin(secorrespondeconla definicindeAmdahl) Niveldeconmutacinprocesadormemoria

Leccin1:ConceptodeAC

Descripcindeniveles paraunaarquitecturavonNeumann

NiveldeComponente:estcompuestoporlos transistores,resistencias,etc.creadosusando componentesfsicostalescomolos semiconductores,metales,etc.

NiveldeCircuitoElectrnico:usandolosbloques delacapaanterior,seconstruyenbiestables, puertaslgicas,etc. Niveldelgicadigital:atravsdecircuitos combinacionalesysecuencialesseforman memorias,contadores,etc.

NiveldeTransmisinderegistros(RT): realizaunestudiodelcomportamientodelasunidadesdelnivel deabstraccindecircuitoscombinacionalesysecuencialesala horadetransmitirymodificarlainformacin. Incluyeelniveldemicroprogramacin,solapndosedeeste modoloselementoshardwareconelsoftware. NiveldeSistemaComputador: especificaloscomponentes,suinterconexinylaoperacindel sistemacompleto. Incluyelaprogramacinenensambladoryaqueeslaqueopera directamentesobreelsistema. NiveldeSistemaOperativo:englobalainterfazentreel hardware(nivelesanteriores)yelsoftware(aplicaciones).

Ventajasdeunadescripcinenniveles:

Posibilidaddeensamblarbloquespropiosdeunnivel paraconstituirbloquesdeunniveldeabstraccin superior.

Posibilidaddeimplementacindecadaniveldeforma casiindependientedelosdemsniveles.Enalgunos casos,paraoptimizarunnivelhabrquesaber exactamentequeexisteenlosnivelesinferiores.

Ej.Eldesarrollodecompiladoresparalosnivelessuperiores, dependedelaarquitecturaconcretadeloselementos hardwaredelcomputador.

Cadaniveltienesucorrespondiente:

Arquitecturaconcreta(Implementacin):

Describelosmdulosquecomponenelnivel,ylaformaen queestninterconectados.

Arquitecturaabstracta(Funcin):

Especificalaoperacin(funcin)querealizacada componenteindividualdelnivel,comopartedelaestructura.

Ej.Procesador:

Uncomponentedelaarquitecturaconcretadelnivel SC Tieneunaarquitecturaabstracta(arquitectura)parael programadorquesedefinecomo:conjuntode instrucciones,recursosycaractersticasalasquedebe ajustarselamicroarquitectura. Suarquitecturaconcretaesdenominada microarquitecturaysedefinecomo:conjuntode recursosymtodosutilizadosparasatisfacerlas especificacionesqueestablecelaarquitectura.

LaArquitecturadeComputadoresabarcalasabstraccionesdelas interfacesentrehardware/softwareyusuario/sistema,ylaestructura yorganizacinquepermitenimplementardichasabstracciones, proporcionandoprestacionesacostesrazonablesenlaejecucin delosprogramasdelcomputador.Estoincluye:

Ellenguajemquinadelcomputador,lamicroarquitecturadel procesador,ylainterfazparalosprogramasenlenguaje mquina(lasarquitecturasabstractayconcretadelprocesador) Loselementosdelcomputadorycomointeractan(la arquitecturaconcretadelcomputador,esdecir,suestructuray organizacin)

Lainterfazqueseofrecealosprogramasdealtonivelylos mdulosquepermitencontrolarelfuncionamientodelcomputador (sistemaoperativoylaarquitecturaabstractadelcomputador)

Losprocedimientoscuantitativosycualitativosparalaevaluacinde lossistemas(benchmarking) Lasalternativasposiblesylastendenciasensuevolucin.

LosobjetivosdelaACson:

Evaluarlascaractersticasyprestacionesdel computadoryanalizarsucomportamiento, identificandolosposiblescuellosdebotellaque limitaranlasprestaciones. Diseary/oconfigurarunsistemaparaqueseajuste alosrequisitosestablecidos.

Aprovecharlascaractersticasdelcomputadorpara escribirprogramas,sistemasoperativosycompiladores eficaces.

Aplicacindelosconocimientosdelaarquitectura dadounproblemaconsucorrespondiente aplicacin:

sercapacesdedeterminarsiserposiblesuejecucin enunaarquitectura. buscarestrategiasdeoptimizacindecdigopara optimizarlaejecucin. poderdecidirentrevariasposiblesarquitecturas evaluandosuscomponentes.

MOVEBX,[MEM1] INCEBX ADDEAX,[MEM2] ADD[MEM3],EAX

1uop(D0) 1uop(D1) 2uops(D0) 4uops(D0)

Tarda3ciclos

ADDEAX,[MEM2] MOVEBX,[MEM1] INCEBX ADD[MEM3],EAX

2uops(D0) 1uop(D1) 1uop(D2) 4uops(D0)

Tarda2ciclos

arrayarconregistrosque ocupan6bytescomenzando unaposicinarbitraria

Sisedeseaaccedera ar[1]yar[2]hayque traerlas3lneasde memoriaacach

/*Asignacionoriginalquenogarantizaalineamiento*/ ar=(structex_struct*)malloc(sizeof(structex_struct) *TAMA~O); /*Nuevocodigoquegarantizaelalineamientode estructurasparabloquesdeBLOCKbytes*/ ar=(structex_struct*)malloc(sizeof(structex_struct) *SIZE+BLOCK); ar=(structex_struct*)((((int)ar+BLOCK1)/BLOCK )*BLOCK);

Tema1:Introduccin
Contenidos

Leccin1:ConceptodeArquitecturade Computadores(AC) Leccin2:Evolucindelasarquitecturas Leccin3:Evaluacindelasprestaciones

1Generacin19461955 Tecnologa:

Vlvulaelectrnicadevaco.

Modelos:
ENIAC(1946):18.000vlvulas,30toneladas,1400m2,100 Kw,5.000sumasporsegundo. EDSAC(1949):primerordenadorconprogramaalmacenado. UNIVAC:primercomputadorcomercial.

Personasdestacadas:

JonhVonNeumannestableceunmodelodelaestructurade uncomputador.

2Generacin:19551965 Tecnologa:
Transistor(BardeenBrattain,1947).Ventajas:menor espacio,menorconsumo,msbaratoymayorfiabilidad.Esto hacedisminuirelprecioytamaodeloscomputadores. Primercomputadorcontransistoren1954

Modelos:

PDP1deDIGITAL

Mododefuncionamiento:
Lenguajesdealtonivel:FORTRAN,COBOL,ALGOL,PL/1. Seescribeelprogramaenpapel,seperforaentarjetas,se llevaaloperador,serecogeellistadodeimpresora. Sistemadeprocesamientoporlotes(conS.O.)

3Generacin:19651980

Tecnologa:

CircuitosintegradosSSI(hasta100)yMSI(1003000) IBMsistema360yPDP8(DIGITAL)

Modelos:

Mododefuncionamiento:
LenguajesdealtonivelBASICyPASCAL S.Oconmultiprogramacin:

Divisindelamemoria. Procedimientosdespooling(operacinsimultneadeperifricos conectadosenlnea). Tiempocompartido.

4Generacin:19801990 Tecnologa:
SeintegralaUCPenunslochip:elmicroprocesador. CircuitosintegradosLSI(300030000)yVLSI(msde30000)

Modelos:

IBMPC(1981),IBMPCXT(1982),IBMPCAT(1984),IBM PS/2(1987),VAX(DIGITAL,1980),CRAYXMP(1983)

Mododefuncionamiento:
Softwarefcildeusar. SistemasoperativosMSDOS,UNIX.. Sistemasoperativosderedysistemasoperativos distribuidos.

5Generacin:1990... Tecnologa:
Circuitosconmsdeunmillndecomponentes. Nuevasarquitecturas:clustersdecomputadores. Tecnologaptica.

Modelos:

IntelParangon,mquinamasivamenteparalela.Beowulf (1994). Inteligenciaartificialysistemasexpertos.

Mododefuncionamiento:

Originariamente,loscomputadoresestaban destinadosparaclculocientficoyeran financiadosporentidadespblicas. Loscomputadoreseranutilizadosporunreducido grupodeespecialistas.

Factorescomolaampliacindelgrupodeusuarios finales,laparticipacindeempresasprivadasen investigacinydesarrollodetecnologayel mercadogenerado,hanmodificadolaevolucin deldiseodelasarquitecturas.

Ej:AplicacionesMultimedia

Muchasdelasnuevasaplicacionesdistribuidasutilizan procesamientoconjuntodevdeoyaudiocontinuos.Esto tieneunaseriedeimplicacionesenlaarquitectura: Almacenamientoyrecuperacindelainformacinen tiemporeal:

Lacapturadeimgenesdebehacerseaunavelocidad determinadayelalmacenamientodeberealizarsedeforma quelosdatosnosesobrescriban.Lassealesutilizadas (vdeo,audio,..)debenestarsincronizadas

Debeproporcionarformasrpidasyeficacesde almacenar,recuperaryprocesarlainformacin Lascachesnosonlosuficientementegrandespara manejareficazmentelosvolmenesdedatosutilizados

Lainfluenciadelasaplicacionesmultimediahapropiciadola aparicindebusescadavezmsrpidos,debido,sobre todo,alaumentodeanchodebandanecesariopara lasaplicacionesbasadasenvdeoy3D.

Fuente:http://www.interfacebus.com

Ej.ComputadoresEmpotrados Loscomputadoresembebidossustituyenla electrnicaanalgicaenmuchosaparatosy dispositivos(mviles,DVDs,videojuegos,etc.) Enestossistemasseexige:


Consumodepotenciareducido Prestacioneselevadasespecficasparalaaplicacin Costereducido Memoriareducida,estoimplicareducircdigoydatos (usodeoptimizacionesenensamblador)

Arquitecturaspropuestas:VLIW,DSPs

Ritmodemejoradelatecnologa:

DensidaddeTransistores:35%anual(DRAMs:40% 60%anual) VelocidaddeTransistores:16%anual(DRAMs:latencia un33%yanchodebandaporchipun66%en10 aos) Tamaodeldado:10%20%anual NmerodeTransistores/Chip:55%anual

LeydeMoore(1979):ElnmerodeTransistoresporCircuitoIntegradosedobla cada1824meses(asumiendoprecioconstantedelCI),estoimplicaunamejora deentreun40%yun57%demejoraanual

Losavancesenlatecnologa(actual)estn limitados:

conformesedisminuyeeltamaodelostransistores aumentasuvelocidad,perotambinaumentalaresistencia delaslneasdeconexinentreellos,yportantoelretardo delascomunicacionesdentrodelchip>sepuedeacceder amenorreadelchipporciclo alaumentarladensidaddetransistoresporchipe incrementarlasfrecuenciascausaunincrementodela potenciadisipada.

Estoimplicaquelamejoradeprestacionestiene quevenirdadapor:

Paralelismo Localidad

Consisteenacercarlosdatosylasinstruccionesquese vayananecesitar,demodoqueelprocesadoraccedaaellos rpidamente. Seimplementausandolajerarquadememoria,manteniendo uncosterazonable.

Localidad

Localidad Debidoalaspropiedadesdelocalidadespacial ytemporal,sepuedehacerusodememorias mspequeasperomsrpidasentreel procesadorylamemoriaprincipal. Localidadespacial:lasiguienteinstruccin sueleestarcerca Localidadtemporal:lasiguienteinstruccin suelehaberseejecutadohacepoco Losnivelesmsrpidossonlosmsprximos enlajerarqua

Paralelismo(sistemasmonoprocesador)

Consisteenrealizarvariascosasalmismotiempo. Lasposiblesformasdedotardeparalelismoaun sistemamonoprocesadorbasadoenlaarquitectura vonNeumannson:


Multiplicidaddeunidadesfuncionales Segmentacinencauzada(pipelining) SolapamientodeoperacionesdeE/SyCPU Equilibradodelosanchodebandadelossubsistemas Multiprogramacinytiempocompartido

Paralelismo(sistemasmonoprocesador)(II)

Multiplicidaddeunidades funcionales

Inicialmente1ALU PosibilidaddevariasALUs,Ej: CDC6000 10ALUs IBM360/912ALUS(1 comafija,1comaflotante) Actualmente,casitodostienen mltiplesunidades funcionales.

Paralelismo(sistemasmonoprocesador)(III)

Segmentacinencauzada

Fasesdeejecucindeunainstruccin Captacindelainstruccin Decodificacin(ycaptacindeoperandos) Ejecucinoperacin Almacenamientoderesultados Estasetapasseejecutanunatrasotra Sepuedeestaralavezejecutandodistintas instrucciones,perocadaunaestarenunaetapa distinta

Paralelismo(sistemasmonoprocesador)(IV)

SolapamientodelasoperacionesdeE/SyCPU

LasoperacionesdeE/Ssonmuchomslentaquelos clculos(dependendeldispositivo) UtilizandocontroladoresdeE/Ssepuedeevitarelque laCPUtengaqueesperaraquerespondael dispositivo. ElDMApuedeutilizarseparatransmitirdirectamente lainformacindesdelosdispositivosdeE/Shastala memoriadelsistema.

Paralelismoensistemasmonoprocesador(V)

Equilibradodelanchodebandaenlossubsistemas

SiconsideramosTpcomoeltiempodeciclodelaCPU,TmLel delamemoriayTeseldelosdispositivosdeE/S,generalmente secumplelasiguienterelacin: T >T >T es m p Estasdiferenciasseequipararanaprovechando: lalocalidad:introduccindecachsentreproc.ymem. elsolapamiento:controladoresdeE/SyDMA

Multiprogramacin Sesolapanprocesosyseestablecenalgoritmosde planificacinparaaccederalprocesador.

Tiposdeparalelismo:

Paralelismofuncional:Aquelquesereflejaenlalgica delasolucindeunproblema(enlosdiagramasde flujoy,portanto,enelcdigo). Paralelismodedatos:Seconsiguemedianteelusode estructurasdedatosquepermitenoperaciones paralelassobresuselementos(vectores,matrices)

Nivelesdeparalelismo:

Aniveldeinstruccin(finegrained) Aniveldebucleohebra(middlegrained) Aniveldeprocedimiento(middlegrained) Aniveldeprograma(coarsegrained)

Arq. S.O..

Clasificacindearquitecturasparalelas

TaxonomadeFlynn

Sebasaenelnmerodeunidadesdecontrolyde procesadoresdisponiblesenelcomputador Introdujolasnocionesde: Flujodeinstruccionessimple(SI):Laarquitecturatiene unanicaunidaddecontrolqueproduceunnicoflujo deinstrucciones Flujodeinstruccionesmltiple(MI):Laarquitecturatiene mltipleunidadesdecontrol,cadaunaproduciendoun flujodistintodeinstrucciones Flujodedatossimple(SD):Slohayunprocesadorque ejecutaunnicoflujodedatos Flujodedatosmltiple(MD):Hayvariosprocesadores, cadaunodeellosejecutandounflujodedatosdistinto.

Clasificacindearquitecturasparalelas

SISD.Lossistemasmonoprocesadores SIMD.Lamismainstruccinseejecutaenvariosprocesadoressobre datosdistintos.Cadaprocesadortienesupropiamemoriadedatos,pero lamemoriaparaalmacenarlasinstruccionesylaunidaddecontrolson nicas.Ej:procesadoresvectoriales MISD.Nosehaconstruidoningunaarquitecturacomercial. MIMD.Cadaprocesadorcogesusinstruccionesyoperaconsuspropios datos


Taxonomia de Flynn SISD Paralelismo funcional Proc. Segmentados Proc. Superescalares Proc. VLIW Proc. Vectoriales Proc. Matriciales Proc. Sistlicos Multiprocesadores Multicomputadores Clusters Paralelismo de datos

SIMD

MIMD

Clasificacindearquitecturasparalelas

SISD

Representaalamayoriadeloscomputadoresactuales. Lasinstruccionesseejecutansecuencialmente,aunquepuedenestar solapadassusetapasdeejecucin. UncomputadorSISDpuedetenermsdeunaunidadfuncional,aunque todasbajolasupervisindeunanicaunidaddecontrol.

DescripcinEstructural

DescripcinFuncional

Ejecucinsecuencialdetodaslasoperaciones Fori=1to4do C[i]=A[i]+B[i] F[i]=D[i]E[i]; i[I]=K[I]*H[i]; end

Clasificacindearquitecturasparalelas

SIMD

Secorrespondeconloscomputadoresmatriciales. Haymltiplesunidadesdeproceso,supervisadasporunanicaunidad decontrol. Todoslosprocesadoresrecibenlamismainstruccin,perocadauno operasobredatosdistintos.

Descripcin Estructural

Descripcin Funcional

Aprovechanelparalelismodedatos ProcesadoresMatriciales ForallEP(i=1to4) C[i]=A[i]+B[i] F[i]=D[i]E[i]; i[I]=K[I]*H[i]; end Procesadores Vectoriales: ADDVC,A,B SUBVF,D,E MULVI,K,H

SistemasSIMD

EnlosSIMD,unanicaunidaddecontrolproporcionauna nicasecuenciadeinstruccionesqueseejecutan sncronamenteoperandosobredistintosflujosdedatos. LosSIMDrequierenmenosmemoriapuestoqueejecutan elmismocdigo.Sonmsapropiadosparalosproblemas quepresentenunmayorparalelismodedatos. Alejecutartodoslosprocesadoreselmismocdigode formasncrona,habrprocesadorestrabajandoyotros desocupados,dependiendodelosdatosqueestn procesando. Eldiseodelosprogramasesmssencillo.

Clasificacindearquitecturasparalelas

MISD

Haynprocesadoresconsuscorrespondientesunidadesdecontrol. Cadaprocesadorrecibeunainstruccindiferenteperooperansobreel mismoconjuntodedatos.Lasalidadeunprocesadoreslaentradadel siguiente. Nohayningunamquinacomercialquesigaestaarquitectura.

Clasificacindearquitecturasparalelas

MIMD

EnlosMIMDcadaunidaddeprocesamientofunciona independientemente.Cadaprocesadorpuedeejecutarsuspropios programasdeformaasncrona. LosMIMDpresentanunamayorescalabilidadpuestoquesepueden agregardistintasunidadesdeprocesamiento. Haydostipos:memoriacompartida(multiprocesadores)ymemoria distribuida(multicomputadores).

Descripcin Funcional

DescripcinEstructural CorrespondealosMultiprocesadoreyMulticomputadores,aprovechanparalelismo funcional Proc1 Fori=1to4do c[i]=a[i]+b[i]; end Proc2 Fori=1to4do F[i]=D[i]E[i]; end Proc3 Fori=1to4do G[i]=K[i]+H[i]; end

Aplicacionesdelprocesamientoparalelo

Modelizacinpredictivaysimulaciones

Lamodelizacindelasuperficieterrestreodelaatmsferasuponeunagrancarga computacional(unos1000millonesdeMFLOPS) P.ej.Laprediccindeltiempoa24horasvista,conprecisinde160000km2 (400x400)suponeunos100billonesdeoperaciones(100minutosenunCray1). Siqueremosprecisinde40.000km2,senecesitaran14horas. Anlisisdeelementosfinitos,aerodinmicacomputacional,inteligenciaartificial Modelizacindeyacimientos,seguridaddereactoresnucleares Tomografacomputerizada,sntesisdeprotenas,

Diseoyautomatizacindeproyectosdeingeniera

Exploracinderecursosenergticos

Investigacinmdica

Tema1:Introduccin:paralelismoe incrementodeprestaciones Contenidos

Leccin1:ConceptodeArquitecturade Computadores(AC) Leccin2:Evolucindelasarquitecturas Leccin3:Evaluacindelasprestaciones

MedidasTiempo Eltiempoderespuestaesaquelquetranscurre desdequeselanzalaaplicacinhastaquesta termina.Sedivideen:


TiempodeCPUdeusuario:tiempoquelaCPUinvierte enejecutarelprograma. TiempodeCPUdesistema:tiempoquelaCPUinvierte enejecutarlastareasquerealizaelSOnecesarias paraejecutarelprogramal. Tiempodeespera:asociadoalasesperasdebidasa I/Ooalaejecucindeotrosprogramas simultneamente.

TiempodeEjecucin

TCPU=NIxCPIxTCICLOC NI=nmerodeinstruccionesenelprograma. TCICLOC=tiempodeciclo=1/frecuenciadereloj. CPI=ciclosporinstruccin: SuponemosquehayntiposinstruccionesyIiesel nmerodeinstruccionesdeltipoi. CPI=ciclos_del_programa/NI n dondeciclos_del_programa= CPI i xI i


n i= 1

/ NI CPI= CPI i xI idondeCPIieselnmerodeciclos i= 1 querequierelainstruccindeltipoi.

TiempodeEjecucin(II)

EltiempodeejecucinTCPUpuedereescribirseteniendo encuentaloselementosdelaarquitecturaconcreta: TCPU=NIx(CPE/IPE)xTciclo

donde: CPE:eselnmerodeciclosentrelaemisindeuna instruccinylaemisindelasiguienteinstruccin. IPE:eselnmerodeinstruccionesquepueden emitirse (CPE/IPE)=CPI

Tiempodeejecucin(III)

Tiempodeejecucin(VI)

Otraformadeexpresarloesteniendoencuentasi unainstruccinpuedecodificarvariasoperaciones:
TCPU=(Noper/Op_instr)xCPIxTciclos

donde:
Nopereselnmerodeoperacionesdelprograma Op_instreselnmerodeoperacionesquepuedenser codificadasporinstruccin Noper/Op_instr=NI

Elementosqueinfluyeneneltiempodecomputacin Tecnologa:

CPI Tciclo CPI Tciclo NI CPI NI CPI

Estructurayorganizacin:

Repertoriodeinstrucciones:

Compilador:

Ejemplo:Consideremos2alternativasparaunainstruccindesalto condicional: CPUA.Unainstruccindecomparacininicializauncdigode condicinyesseguidaporunsaltoqueexaminaelcdigode condicin CPUB:Seincluyeunacomparacinenelsalto EnambasCPU,lainstruccindesaltocondicionalemplea2ciclos derelojylasdemsinstrucciones1.EnlaCPUA,el20%detodas lasinstruccionesejecutadassonsaltoscondicionales;comocada saltonecesitaunacomparacin,otro20%delasinstruccionesson comparaciones.DebidoaquelaCPUAnoincluyelacomparacin enelsalto,sucicloderelojesun25%msrpidoqueeldelaCPU B. QuCPUesmsrpida? YsiconseguimosqueladuracindelosciclosderelojdeB sereduzcaenun10%?

Evaluacindelrendimientodeunaarquitectura Lanicamedidafiabledelrendimientoeseltiempodeejecucinde losprogramasreales. Otrasmedidas,utilizadasprincipalmenteporlascasascomerciales:

MIPS(millonesdeinstruccionesporsegundo) MIPS=Frecuenciadereloj/(CPI106)Dacifrasmsmanejables Fcildeentender Problemas: Dependendelrepertoriodeinstrucciones Varanentreprogramasenelmismocomputador Puedenvariarinversamentealrendimiento Posiblesolucin: UtilizarMIPSrelativosaunamquinadereferencia MIPSrelativos=(Tr/Tt)xMIPSr(Tr=Tiempoenlamquinade referencia,Tr=Tiempoenlamquinaquesetestea,MIPSr=MIPSenla mquinadereferencia)

MFLOPSesunamedidasimilaralasMIPS,perohacereferenciasloa lasoperacionesencomaflotante.

MFLOPS=(Noperacionesdepuntoflotantedeunprograma)/(Tejecucinx106)

Dependendelprogramaydelamquina. EltrminoMFLOPShacereferenciaaoperaciones,noainstrucciones. Supuestamentedeberadarigualentodaslasmquinas,perono: Cray2notieneinstruccindedividir Motorola68882tienedivisin,razcuadrada,senoycoseno Notodaslasoperacionesenpuntoflotantetardanlomismo>usar MFLOPSnormalizados

Benchmarks:conjuntodeprogramas(benchmarks) seleccionadosdeformaquerepresentenlacarga detrabajousualdelasmquinasaevaluar, ejercitandolosdistintoselementosdelcomputador deformasimilar. Permitencompararcomputadoresdeformafiable, evaluarsusprestacionescuandoejecutanun benchmark.

TiposdeBenchmarks:

Aplicacionesreales(CompiladoresdeC,Word,Photoshop...).Pueden presentaproblemasdeportabilidadrelacionadosconladependenciadel compiladorodelS.O.Avecesseutilizanaplicacionesmodificadas (scriptedapplications)parasimularinteraccionesmultiusuariocomplejas (servidores),oquitaroperacionesdeI/Oparamedirbienel comportamientodelaCPU.... Kernels(BuclesdeLivermoore,Linpacks).Pequeostrozosdeprogramas realesseleccionadosparaevaluarcaractersticasespecficasdeuna mquinaoexplicarlascausasdelasdiferenciasentremquinasdistintas. Simples(Toys)(CribadeEratstenes,Puzzle,Quicksort).Programas pequeos(10100lneas),fcilesdeescribir,yderesultadoconocido. Sintticos(Dhrystone,Whetstone).Programasquereproducenlos porcentajesdeinstruccionesyusoderecursosdecargasdetrabajo reales.

BechmarkSuites:conjuntosdeBenchmarksquemidenlas prestacionesdeloscomputadoresatravsdeunconjuntode aplicacionesdistintas.Laslimitacionesdeunbenchmarkse suplenconlapresenciadeotros. Secambianperidicamenteparaevitaroptimizaciones realizadasconelnicoobjetivodemejorarlosresultadosdel conjuntodebenchmark. Computadoresdesobremesa:StandardPerformance EvaluationCorporation(SPEC) Servidores:SPECyTransactionProcessingCouncil(TPC) Embebidos:EDNEmbeddedMicroprocessorBenchmark Consortium(EEMBC)

Linpack

EsunconjuntodesubrutinasFortranderesolucinyanlisisde ecuacioneslineales,sistemasdemnimoscuadradosylas transformacionesSVDyQR,dondelasmatricesasociadaspueden sergenerales,abandas,simtricasindefinidasydefinidaspositivas, ycuadradastridiagonales. Sediseparaserutilizadoenelmbitodelossupercomputadores delos70ycomienzodelos80,actualmenteexisteLAPACKque incorporarutinasdiseadasparaserejecutadaseficientementeen procesadoresvectorialesymemoriacompartida. LalistaTOP500,queincluyelos500computadoresmsrpidos utilizaLinpackcomobenchmark

Lagananciaderendimientoquesepuedeobtenerconlamejoradeun elementodeuncomputadorenunfactorpsepuedecalcularconlaLey deAmdahl:

LeydeAmdahl

GananciadeVelocidad=Sp=Vp/V1=T1/Tp

Vp=Velocidaddelamquinaconunamejoradep V1=Velocidaddelamquinabase Tp=Tiempodeejecucinenlamquinamejorada T1=Tiempodeejecucinenlamquinabase

Lamejoradevelocidad,S,quesepuedeobtenercuandosemejoraun recursodeunamquinaenunfactorpestlimitadapor:

S p=

p 1+f p1

1 S p= 1 f +f / p

feseslafraccindeltiempodeejecucinduranteelquenosepuede aplicaresamejoraenlamquina

Ejemplo:

Siunprogramapasaun25%desutiempode ejecucinenunamquinarealizandoinstruccionesde comaflotante,ysemejoralamquinahaciendoque estasinstruccionesseejecutenenlamitaddetiempo, Culeslaganancia?

p=2; f=0.75;(10.25) S2/(1+0.75)= 1.14

Supongamosqueestamosconsiderandolamejoradeun procesadordeunservidorweb.LanuevaCPUes10 vecesmsrpidacalculandoquelaoriginal.Suponiendo quelamquinaoriginalestun40%deltiempohaciendo clculos,yun60%conoperacionesdeE/S,Culesla mejoradevelocidadqueseobtiene?

CostedeunComputador

Elcostedeloscomponentesdeuncomputadordecrececoneltiempo (aunquenohayamejorasimportantesenlatecnologa).Elloesdebidoa lallamadacurvadeaprendizaje(learningcurve)queocasionamejorasen elrendimientodelosprocesosdefabricacin(sisedoblaelrendimiento deunprocesoseconsiguereduciralamitadelcoste)

Ejemplo(MemoriasDRAM):Alargoplazo,elcosteporMegabyteseha reducidoun40%alao(5000$en1977y6$en1995,endlaresde 1977).

You might also like