Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Temas relacionados > Debates
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #4  
Antiguo 30-11-2019
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.941
Poder: 27
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Mientras mas componentes y puntos de "contacto" MENOR sera la velocidad LINEAL del proceso.

Eso es de lo mas obvio y elemental.

Lo que se puede mejorar (y eso es un posible que depende de...) es la ESCALABILIDAD de tipo HORIZONTAL, o sea, la capacidad de distribuir entre multiples procesos/equipos la carga. Pero eso aumenta la complejidad.

Hay carias "capas" y si uno tiene encuenta la arquitectura de los equipos de computo:

https://gist.github.com/jboner/2841832

Cita:
Latency Comparison Numbers (~2012)
----------------------------------
L1 cache reference 0.5 ns
Branch mispredict 5 ns
L2 cache reference 7 ns 14x L1 cache
Mutex lock/unlock 25 ns
Main memory reference 100 ns 20x L2 cache, 200x L1 cache
Compress 1K bytes with Zippy 3,000 ns 3 us
Send 1K bytes over 1 Gbps network 10,000 ns 10 us
Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD
Read 1 MB sequentially from memory 250,000 ns 250 us
Round trip within same datacenter 500,000 ns 500 us
Read 1 MB sequentially from SSD* 1,000,000 ns 1,000 us 1 ms ~1GB/sec SSD, 4X memory
Disk seek 10,000,000 ns 10,000 us 10 ms 20x datacenter roundtrip
Read 1 MB sequentially from disk 20,000,000 ns 20,000 us 20 ms 80x memory, 20X SSD
Send packet CA->Netherlands->CA 150,000,000 ns 150,000 us 150 ms

Notes
-----
1 ns = 10^-9 seconds
1 us = 10^-6 seconds = 1,000 ns
1 ms = 10^-3 seconds = 1,000 us = 1,000,000 ns

Credit
------
By Jeff Dean: http://research.google.com/people/jeff/
Originally by Peter Norvig: http://norvig.com/21-days.html#answers
O escalado:
Cita:
If L1 access is a second, then:

L1 cache reference : 0:00:01
Branch mispredict : 0:00:10
L2 cache reference : 0:00:14
Mutex lock/unlock : 0:00:50
Main memory reference : 0:03:20
Compress 1K bytes with Zippy : 1:40:00
Send 1K bytes over 1 Gbps network : 5:33:20
Read 4K randomly from SSD : 3 days, 11:20:00
Read 1 MB sequentially from memory : 5 days, 18:53:20
Round trip within same datacenter : 11 days, 13:46:40
Read 1 MB sequentially from SSD : 23 days, 3:33:20
Disk seek : 231 days, 11:33:20
Read 1 MB sequentially from disk : 462 days, 23:06:40
Send packet CA->Netherlands->CA : 3472 days, 5:20:00
Si fuera la MAXIMA velocidad, lo que hay que hacer:
  • Mantener todo lo posible en la CACHE de la CPU, con un mínimo de alocaciones
  • Usar SIMD si es posible (1er nivel de paralelismo)
  • Usar codigo sequencial y predecible (para que el branch predictor de la CPU sea feliz).
  • Procesar en "batch", lo anterior
  • Usar hilos (2d nivel de paralelismo) SI VALE LA PENA
  • Saturar todos los canales (CPU, DISCO, MEMORIA)


Lo cual apunta a un esquema 1/2 niveles maximo. 3 y mas es para explotar el 3/4 nivel de paralelismo (equipos y centros de datos).

Pero si manejas POQUITOS DATOS, como menos de lo que cabe en RAM o disco local, osea, poquito como terabytes? Mejor simple que complejo.
__________________
El malabarista.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
IntraWeb.. PROS y CONTRAS kodiak Debates 2 16-04-2010 21:00:54
Los pro y las contras del trabajo "freelance" rretamar Debates 32 23-10-2008 15:19:29
Pros y contras de esta versión rretamar Debates 3 06-03-2008 17:33:30
Pros y contras Delphi-MySql-PHP Hell_Raiser MySQL 2 30-01-2007 06:28:37
El auto ecológico más veloz.....180km/h sakuragi La Taberna 2 06-09-2006 13:08:51


La franja horaria es GMT +2. Ahora son las 18:42:43.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi