Anime d"erGuiri

21 diciembre, 2020

CISC vs RISC y la revolución M1 de Apple y ARM

 
La tecnología de los móviles ha alcanzado a la de escritorio, con Apple de mediador, de una manera devastadora, con resultados visibles innegables, hasta el punto de poder destruir al PC (x86) como lo conocemos, al menos que Intel, AMD y Microsoft muevan ficha de aquí a unos años.

La tecnología de los móviles ha alcanzado a la de escritorio, con Apple de mediador, de una manera devastadora, con resultados visibles innegables, hasta el punto de poder destruir al PC (x86) como lo conocemos, al menos que Intel, AMD y Microsoft muevan ficha de aquí a unos años.
 
Ese es el párrafo resumen. Pueden irse si quieren.
 
¿Siguen aquí? OK jejeje. Apple la ha armado de nuevo haciendo las cosas a su manera, y posiblemente creando un revuelo en la industria que nos haga llegar mejor hardware a nosotros simples mortales sin dinero. ¿Podrán Intel y AMD contraatacar?

Intentaré aclarar muy por encima los principales puntos para entenderlo, basándome en una serie de artículos de este señor noruego: https://erik-engheim.medium.com/ que lo explica muy bien y al detalle.
 
Lo haré "al revés". Empezaré por el tejado. Es más ameno así.

M1 NO es una CPU

No es simplemente una cpu ARM, es un SoC. "System on a chip". Es una cpu+ gpu + otros procesadores MUY ESPECIALIZADOS, que se llevan de maravilla entre ellos al punto de parecer una única cosa. Además, la memoria también está "integrada" y compartida haciéndolo más rápido aún.

Lo de "llevarse muy bien entre ellos" es lo revolucionario. Esto de separar las cosas ya lo sabíamos desde hace tiempo por las tarjetas gráficas como nvidia y compañía. Pues imaginen otras como por ejemplo codificar/descodificar h265... a resumidas cuentas hardware especializado para las principales tareas del software de hoy en día. Pero lo revolucionario no es que estén "juntas" como pueden estar en una ALU Ryzen o Intel.. lo revolucionario es que se lleven bien.

CISC vs RISC, y sus Instrucciones

Los no técnicos me tendrán que perdonar. Llegamos ya al fondo de asunto (wow that was quick), y explicaré qué eso de que se lleven bien, pero tendré que ponerme técnico.

Los ARM son RISC, los x86 son CISC (lo dejo de chuleta aquí).
 
RISC es más moderno que CISC, aunque ambos lleven décadas entre nosotros. Lo que quiero decir es que RISC se inventó para ganarle a CISC. Como Git se inventó para arreglar los problemas de subversion, o Linux los de Windows, etc. CISC se diseñó para humanos, RISC para compiladores. No sé por qué han tardando tanto. Supongo que por inercia del mercado, demasiadas personas con PCs con windows.

El tamaño de cada instrucción de CISC es variable, y el de RISC es fijo. De ahí parte todo. Las CPU efectúan operaciones pequeñitas mediante instrucciones. Pues las de ARM tiene tamaño fijo, y las de x86 son variables. Y eso es la causa de todo. Partiendo de esa base de tamaño fijo se pueden optimizar cosas, se puede hacer magia. Jajajaja la verdad es que no quiero ahondar en los entresijos... lo que quiero dejar claro es que Intel ha contraatacado durante décadas, con pobres resultados. Es una cuestión de base. Las mejoras tecnológicas (transistores más pequeños, memorias más rápidas, SSDs) han beneficiado más arquitecturas fijas que a las variables.

¿Por qué se llevan bien todos los mini procesadores esos de la M1? Pues porque sus instrucciones tienen todas siempre el mismo tamaño. Estoy super-sobresimplificando. Pero créanme. Lo importante a tener en cuenta es que los x86 no pueden competir por una cuestión de base. Lo han intentado durante décadas sin éxito, y por fin ARM y Apple han conseguido darles una buena bofetada.

Para los más técnicos, para que mis palabras no sean todas tan mágicas: Es principalmente por los pipeline. Los de ARM le pegan paliza siempre a los de x86 por muchos vueltas, parches que intenten hacer los de Intel/AMD.

El lado oscuro

No todo es bueno. Hay un lado muy muy oscuro a esto. No sé si se habrán percatado. El M1 hace muy bien las tareas que tiene programadas por hardware... pero ¿qué pasa con las que no? o con algoritmos nuevos que se inventen? Pues... las tendrá que hacer la CPU... pero no te preocupes.. pasa por caja y te compras el nuevo Mac con M2, M3. Casa perfectamente con la filosofía de Apple.

¿Qué nos depara el futuro?

Esto no cuadra con la filosofía PC.

Al menos que Intel y AMD se saquen un as de la manga, veo la cosa cruda. Aún creando un nuevo procesador RISC y creando algún emulador de x86, como ha hecho Apple, esta filosofía no cuadra con la filosofía "todo unido y compatible" de componentes de los PC. O sea, una gráfica, expandir memoria, etc. Es algo que ya estamos viendo en los PCs portátiles, prácticamente no puedes cambiarle nada. ARM+Apple ganan porque es hardware a medida que se lleva perfectamente y está hecho todo en uno por el mismo fabricante con su Sistema Operativo propio.
 
Esta filosofía sí beneficia a fabricantes, como pueden ser HP, ASUS, Samsung, etc. O sea.. ¿Qué ganan Intel y AMD con esta filosofía? Nada, no les va.

¿Y ARM  qué gana? Pasa que no es como Intel o AMD que fabrican chips. ARM sólo vende "diseños". Luego a quien se lo venda, puede fabricarlos. Esto es lo que ha hecho Apple. Nadie puede comprarle/clonar el M1 a ARM y crear los suyos, ya q no es de ARM, es de Apple!! A ARM le da igual esta batalla, ellos a lo suyo, a vender diseños.
 
Preveo que alguien creará una nueva plataforma. Un fabricante. Una especie de Android para escritorio (al fin y al cabo es lo que ha hecho Apple). Un fabricante, con experiencia en RISC. Al igual que podemos comprarnos el móvil Android que queramos y las apps sean compatibles, nos podremos comprar un PC de escritorio... pero por favor.. que no sea Android++. Google no, por favor!!! Algo nuevo y basado en RISC-V. Save us Microsoft!

Tendremos Macs y móviles cada vez más potentes en comparación con PCs x86 hasta el punto que muchos nuevos usuarios preferirán un Mac si se van a comprar un ordenador de escritorio... ya hoy en día los únicos que compran PCs con un punto de vista friki son gamers, desarrolladores, y diseñadores (y estos dos últimos saltándose a macs). La presión será tal, que la gente irá pasando de x86 porque es de tontos seguir con uno..
 
. .. ya digo .. al menos que Intel/AMD se saquen un as de la manga... pero es que no he hablado del consumo, del gasto energético. El M1 no gasta nada... prácticamente todos los ARM son diseñados para móviles y tablets! Intel muerto? y ¿Microsoft? ¿Qué pasará con Microsoft?

And the winner is...

NVIDIA compró/absorbió a ARM este año. Fabricante número 1 de chips gráficos/juegos, ahora con empresa de procesadores. Pelotazo del año.

5 comentarios:

nikos3194 dijo...

Vine buscando cobre y encontré oro.jpg

En verdad no estaba enterado de esta situación con RISC y ARM, siendo que una vez más tengo que reconocer que Apple merece un buen aplauso por tomar la iniciativa de esta nueva revolución.

El único problema que veo es que por cuestiones monetarias, al momento que pueda abandonar mi PC x86 por esta nueva tecnología, ya iremos a por los procesadores de 128 bits XD, ya que no porque sea libre va a significar que sea económicamente accesible, tal como sucede con esa HiFive Unmatched que lanzaron hace poco al estilo de Raspberry Pi.

Pero (fuera de tema) lo que más me sigue molestando luego de años es la promesa que hicieron con el grafeno y los supuestos transistores de escala atómica que tendríamos junto a esta tecnología, cosa que al final parece que no veremos en esta vida.

Sobre que pasará con Microsoft, pareciera que está tomando un perfil cada vez más bajo. Desde 2014 que se han quedado estancados en Windows 10 (situación que en realidad me reconforta ya que no me gusta andar cambiando de sistema) pero tampoco piensan siquiera en competir por mejorar sus aplicaciones en la nube (como el Office 365 que ya ha sufrido más de una caída). Tal y como si su época dorada hubiera llegado a su ocaso. Ojalá no termine como IBM y tantos otros colosos que acabaron sobre el margen :s

erGuiri dijo...

Feliz año nuevo.

No conocía HiFive... pero por ahí estaría el camino. Hasta ahora no ha hecho falta, pero si Apple aprieta, las corporaciones actuales no van a quedarse de brazos cruzados.

Grafeno. Eso es culpa de la prensa, que no tienen nada mejor que hacer que inflar noticias científicas. Descubren agua en marte, y dicen que en X años harán parques acuáticos de esos.

Microsoft por lo visto ya está trabajando en procesador, pero es para servidores, como los powerPC de IBM.

No olvidemos que Apple ya tenía RISC antes de pasarse a Intel.. y entonces eran superiores. Pero no TAN superiores como ahora. Ya eremos qué ocurre cuando todo el software sea nativo, a ver si vuela... y entonces será cuando quien use ese software no querrá saber nada de x86

nikos3194 dijo...
Este comentario ha sido eliminado por el autor.
nikos3194 dijo...

Oh! felíz año igualmente (^w^)7

Espero que sea tal cual dijiste, es decir, que Apple pueda presionar de alguna manera.

"Grafeno. Eso es culpa de la prensa, que no tienen nada mejor que hacer que inflar noticias científicas. Descubren agua en marte, y dicen que en X años harán parques acuáticos de esos."

LOL XD
Muy cierto

Uf, en tema de servidores no estoy muy metido, salvo por la polémica que hubo por las unidades SSD que no podían ser usadas en servidores por el marcador de TBW (TeraBytes Written) por corta duración por uso de escritura, lo cual deja en evidencia la obsolescencia programada porque si tienen unidades de SSD dedicadas especial a servidores con TBW extendido y por ende de mayor duración pero de muy alto precio. Pero si tienen esa tecnología ¿por qué no la hacen el estándar? ¿por qué hacer unidades SSD de corta duración cuando tienen los medios para hacerlas bien? Maldita obsolescencia programada -_-

Si, cierto que en tema de software hay que considerar todo lo que habrá que recompilar para RISC... ya me imagino la mitad de las apps emuladas con virtualización, ok no XD eso sería traumático ;_;
Sin duda el tener que adaptar todo el software a la plataformava va abrir un buen mercado en ese sector :3

PD: eliminé el comentario anterior y ahora lo republiqué para corregir la ortografía :p

nikos3194 dijo...

Mierd*, todavía me quedaron errores. Como se ve que la resaca de las fiestas de año nuevo me dejaron con dislexia e_e