Es un escenario un poco complicado, así que tengan paciencia conmigo:
El procesador no puede hacer nada sin que se le envíen y reciban algunos datos. Tanto los valores en los que se realizarán sus cálculos (el segmento de datos) como las instrucciones de qué hacer con él (el segmento de código). Ambos tienden a residir en la RAM (casi siempre) y, por lo tanto, deben leerse y escribirse en la RAM.
Esto significa que el tiempo que tarda la RAM en responder (latencia), así como la rapidez con que puede enviar / recibir (velocidad) afecta la rapidez con que la CPU puede obtener / enviar dichos datos. Pero también la placa base tiene un controlador y un conjunto de autobuses a lo largo de los cuales estos datos “viajan”, estos también tienen una velocidad máxima.
- Cómo expandir la RAM en un dispositivo Android
- ¿Cuál es la RAM, la placa base y la velocidad del procesador?
- ¿Aumentar la RAM de 4 GB a 8 GB en mi computadora portátil acelerará Android Studio y Docker?
- ¿Qué es diferente entre la memoria virtual y la memoria principal y la memoria primaria y la memoria secundaria?
- ¿Cuál es más duradero? 1.HP 14-r220TU Core i5-5200U Ram 4GB, 14 pulgadas 450 $ 2.Lenovo G4070 Core i7-4510U Ram 4Gb, HDD 500Gb, 14 'AMD Radeon R5 M320M 500 $
Sin embargo, una vez que la CPU tiene los datos necesarios, no necesita actualizar constantemente la RAM mientras se calcula. Es por eso que todas las CPU (o tan cerca de todas como para no hacer ninguna diferencia) tienen un caché, una pequeña memoria muy rápida directamente dentro del chip. Esto le permite leer un lote completo de datos a la vez (lo que tiende a ir más rápido que leer muchas porciones pequeñas). Mientras sus cálculos se realicen con los datos que ya están en caché, no necesita enviar / recibir nada a través de la placa base hacia / desde la RAM.
Esto tiende a significar que las CPU están bloqueadas por la velocidad con la que los datos pueden fluir hacia adentro / hacia afuera. La principal restricción es la placa base y la RAM (entre otras). Pero también podrían escribirse programas específicos de tal manera que intenten optimizar la memoria caché, intentan mantener todos sus datos en porciones contiguas para que las posibilidades de que la CPU ya tenga esa porción de datos en su memoria caché sean mejores. Lamentablemente, no todos los programas están escritos de esta manera, o incluso pueden escribirse así. Es especialmente un problema cuando hay múltiples procesos / subprocesos ejecutándose en múltiples núcleos dentro de la CPU, podría significar que un subproceso está ajustando los datos en los que está ocupado trabajando otro, lo que tiende a significar que los datos deben guardarse en la RAM y luego volver a leerse . Esta es una de las principales razones por las que múltiples núcleos no hacen que una computadora funcione más rápido (incluso podría significar que funciona de 10 a 100 veces más lento), ya que la mayor parte del tiempo se dedica a leer / escribir los datos en / desde RAM.