jueves, 25 de abril de 2019

Ordenador Dual Xeon X5680


Proyecto que completé a principios de este año (como auto-regalo de reyes) y que hacía tiempo que quería montar por varios motivos, principalmente por trabajo, ya que los ordenadores que tengo (alguno con más de doce años) se están quedando desfasados para algunos programas que necesito, por ampliar conocimientos y además como hobbie. La mayoría de ordenadores que uso en el despacho son de la plataforma intel con socket 775, con procesadores Quad Core 9400 y 9550, que para ofimática, cad e internet son más que suficientes con un disco duro SSD principal para sistema operativo y programas, pero cuando necesito hacer renders o calcular estructuras se empieza a notar que falta velocidad.
La opción más inmediata es seguir la corriente, y comprar no el último procesador, sino el que está dos o tres escalones por debajo (léase un par de años), y lo normal habría sido ir a por un Intel core i7 6700. Pero como las necesidades de uno no son las de la mayoría y no todo reside en la velocidad del reloj, centré la búsqueda en otro tipo de procesador y equipo que permite aumentar la productividad de los programas que tengo, y aquí es donde entra la gama Xeon de Intel. y no tanto por velocidad sino por número de núcleos y threads (hilos), en definitiva, entrar en el terreno de las estaciones de trabajo.
Había visto varios videos de youtube sobre la caída de precios que tenían los Xeon de la serie X56xx, con casi diez años de antigüedad y cuyas prestaciones siguen siendo válidas hoy en día. En su momento eran la base para servidores de altas prestaciones, con un valor que superaba los 1.000 euros por procesador, y que a día de hoy rondan los 50-60 euros cada uno de segunda mano y de antiguos stocks. El modelo que he elegido para este equipo ha sido el Intel Xeon X5680, y conseguí por ebay una pareja por 82 euros. La ventaja de este procesador es que cuenta con 6 núcleos y hasta 12 hilos por procesador, que en programas de render y cálculo de estructuras implica multiplicar por 3 respecto a un quad core de los que tengo (a igualdad de velocidad de proceso). Además tiene otra ventaja, y es que se pueden disponer dos procesadores en una placa (no en una placa cualquiera, sino una placa de servidor), con lo que la potencia total en paralelo es la de 24 procesadores: 12 físicos, 24 hilos. La placa elegida para este equipo ha sido la supermicro X8DTL-IF, y como placa dual tiene el inconveniente de ser más cara de lo normal y necesitar memoria ECC (con corrección de errores), afortunadamente se pueden conseguir también de antiguos stocks y segunda mano a buen precio.
Normalmente un procesador de segunda mano, si no ha sufrido “overclocking” o no ha estado sometido a mucho estrés (juegos, atmósferas de trabajo adversas, problemas de fluctuaciones de tensión o sobre-tensión, propietarios descuidados, etc.), es una de las piezas más duraderas del ordenador. Las placas base de segunda mano no son muy aconsejables, pero en este caso dada la calidad de los componentes que tienen las placas de servidor y el poco uso que tenía, merecía la pena probar ( de hecho la placa estaba completamente nueva y sin signos de uso). Eso sí, el problema de comprar cosas de segunda mano o remanufacturadas es que en ocasiones quien lo envía no es muy cuidadoso a la hora de embalar los artículos, y por lo visto tampoco en la cadena de transporte hay quien ponga especial cuidado en manipular las cajas. El caso es que la primera placa llegó en una caja rota y en su interior encontré una placa partida por una esquina, afortunadamente con las fotos de rigor y la correspondiente reclamación en ebay, el vendedor admitió que no había tomado las medidas oportunas para embalar adecuadamente la placa y accedió a enviarme otra sin coste alguno. Y “afortunadamente” esta llegó sana, pero visto como habían embalado la siguiente placa fue un milagro que no hubiera llegado rota también.
"Fragile with care", con una caja tan ceñida y sin material para absorber impactos las palabras no sirven de gran cosa.
Este ordenador, mejor dicho “estación de trabajo”, lo fui montando poco a poco, a medida que me iban llegando piezas (en buen estado) iba encargando las restantes, ya que habría dejado estar el proyecto de no haber salido bien lo de la placa base. El principal problema al que me enfrentaba era montar un “pequeño monstruo” bastante especial, muy diferente de los últimos equipos que había montado un par de años antes, con placas micro ATX y cajas de ordenador reducidas. De entrada la placa para soportar dos procesadores es tamaño extra ATX, lo que implica buscar una caja holgada para meter dentro tanto la placa como los componentes.
Otro problema es que cada procesador consume hasta 130W, por lo que hacen falta dos cosas muy importantes, una fuente de alimentación potente y dos buenos disipadores de calor para los procesadores. Los disipadores para 130W o más ya entran dentro de la gama “tocha” de coolers, afortunadamente encontré los Enermax ETS-N30 que con ventiladores de 90mm y una altura total de 135mm encajaban con precisión en la placa que iba a montar, y con unas prestaciones de disipación de calor equivalentes a modelos más grandes de otras marcas. La torre para meterlo todo dentro es la Aerocool Aero-800, grande sin ser del todo aparatosa. La fuente de alimentación es de 750W, EVGA  750 BQ plus bronce, y aunque los procesadores son de 130W no consumen esa barbaridad salvo que tengan que poner en marcha todos los núcleos, así que en régimen a ralentí o con programas menos exigentes apenas se consume un 30% de los 260W.
Aunque los ventiladores traen múltiples adaptadores para cualquier tipo de zócalo...al final siempre toca hacer algún apaño.


Encaje al milímetro, en algunos ejemplos que habia visto empleaban ventiladores más grandes pero en paralelo, de manera que el aire caliente de uno pasa al otro procesador, ésta es la posición más adecuada. La caja tiene una gran rejilla en la parte superior, así que todo el aire caliente sale al exterior. Tras unas pruebas de funcionamiento al 100% los procesadores no superan los 70ºC.
Para este equipo no requiero una gráfica muy potente, no es un equipo gaming, y las aplicaciones de render con las que trabajo hacen más uso de procesador que de núcleos GPU, así que en este caso el consumo eléctrico del apartado gráfico también es bajo (tarjeta gráfica Zotac 450). La memoria ECC también la localicé a buen precio de segunda mano, eso sí ...rebuscando bastante entre los modelos certificados por el fabricante para esta placa, ya he tenido mala experiencia con memorias no verificadas por el fabricante, especialmente en las placas de socket 775 con chipset G41.
Al final con tanto componente es inevitable tener muchos cables por el medio. Los hay muy puristas que les gusta tener todos los cables muy recogidos, pero mi criterio es que no molesten a la hora de mover o sacar componentes y que no estén en la zona de los ventiladores y fluya bien el aire, y lo más importante: que no estén forzados ni doblados en exceso para evitar males mayores a los conectores o a los propios cables, cualquier otra consideración es irrelevante.
Para almacenamiento hace años que uso los discos sólidos SSD, que con los vetustos intel Quad (desde el Q6600 al Q9550)  hacen que los equipos funcionen estupendamente y bastante fluidos. Por lo general uso un disco de 120gb para programas y sistema operativo y otro de 120 ó 240 para archivos de trabajo reciente y de uso diario, y en copia otro disco duro de 500gb como almacenamiento a largo plazo. En este caso los discos van en la parte inferior de la caja, cosa que no me ha acabado de gustar mucho, porque los cables SATA han de salir a la parte lateral de la caja y bajar al compartimiento inferior, y los conectores de este tipo son muy delicados, y encima han de ser de los que encajan a 90º en el disco.
 Lo bueno de la caja es que todos los conectores están en el frontal, otro modelo de la gama los tenía en la parte superior de la tapa, lo cual es un inconveniente porque se llenan de polvo y se estropean más.

Problemas que me he ido encontrando sobre la marcha.
Placa base. Es de servidor y funciona de manera un tanto especial, y al principio me dio un susto, que gracias a internet pude resolver. Hace dos arranques, en el primero está como medio minuto chequeando cosas con la pantalla en negro, se apaga y se vuelve a encender, y en el segundo arranca la bios. El susto es que una vez accedía a la bios para configurar cosas al cabo de unos minutos se apagaba. Echando mano de internet otra vez, tras un par de días de búsqueda y en foros en inglés (no todo es tan fácil de buscar ni está en castellano) localicé el error del apagado en un jumper de la placa que había que desconectar, función “watch dog”...lo dicho, cosas raras de las placas para servidores, primer problema solucionado...

Un servidor es un equipo “zombie” que vive en la oscuridad, se alimenta de datos (y los vomita) y se enfría con potentes ventiladores que hacen mucho ruido, así que en general este tipo de placa carece de todo lo que tienen las placas base normales, no tiene audio integrado, ni puerto paralelo,... tiene USB, pero es 2.0..., así que para las pequeñas cosas que hacen  falta para que pueda parecerse a un ordenador normal, y en mi caso para conectar una llave de protección del programa de estructuras, hay que añadirle unos extras.
Para acabar de complicar las cosas están los puertos PCI aparentemente “normales” en los que uno no se fija. Tenía dos tarjetas de otros ordenadores que quería aprovechar para el puerto paralelo y sonido...y no pude instalarlas porque éstos puertos funcionaban a 3,3V y no a los 5V de las tarjetas antiguas (el slot es diferente para que no se pueda dañar la placa o la tarjeta en cuestión), parecen puertos PCI normales... pero no, los slots están como del revés. En esto la informática es como la sabia naturaleza, si no entra es que no va ahí (que es la segunda parte de “si no entra ...dale la vuelta”), así que a comprar más piezas.
Como sistema operativo he instalado windows 7 profesional 64bits (porque no me quedaba otra opción),  porque el windows 10 me pone de los nervios, y ya me hubiera gustado que el XP a 64 bits lo hubieran desarrollado como Dios manda en su día, pero lo dejaron en un experimento, qué se le va a hacer!!  Podría escribir otra entrada en el blog sobre “windows XP forever”...pero más adelante.
 Con un sai de 750VA es suficiente para mantener el equipo en marcha en caso de fallo de suministro eléctrico.
Así con todo el ordenador ha salido por unos 600 euros, que es más o menos lo que he tenido que desembolsar cada vez que he montado un ordenador nuevo (en los tiempos que uno seguía religiosamente la ley de Moore para no quedarse desfasado). Con un conmutador D-Link DKVM-2K  puedo compartir una de las  pantallas y el teclado del ordenador principal con éste, así que no necesito más periféricos. Eso sí, tengo un ratón en cada ordenador porque en algunas consultas rápidas de un ordenador a otro no necesito a veces estar cambiando con el conmutador. También tengo un antiguo switch de puerto paralelo de impresora para compartir la llave de protección del programa de cálculo y mediciones, sin tener que ir conectando y desconectando del zócalo de un ordenador al otro.
Como ventaja cabe indicar que con un precio similar a un ordenador core i7 6700K o equivalente actual tengo en teoría un rendimiento 50% superior, por el contrario, si es que se puede poner un pero, para realizar una tarea equivalente a la de aquel este equipo va a consumir el doble de watios, ...pero eso es el mal menor. Comprobar que puedo ejecutar cálculos 4 veces más rápido que en los equipos que tenía me compensa el pequeño incremento en gasto eléctrico.

Benchmarks, aunque la mayoría son orientativos y cada programa aprovecha la potencia de un procesador de forma diferente, lo importante es que permiten comparar en términos generales en cuanto a porcentajes de rendimiento. El principal problema de comparar los procesadores más antiguos con los actuales es que las arquitecturas cambian y la cantidad de procesos que se pueden realizar por cada ciclo de reloj varía, de manera que no se puede comparar directamente la velocidad de un Xeon de hace 10 años con un core i7 actual, y al final la mejor prueba es la que hace uno mismo con los medios y programas de que dispone y el uso que le va a dar. Lo que está claro es que no he montado el equipo para hacer “overcloking” ni para fardar de puntos en un foro, en mi trabajo (y en el de cualquiera) hacer un cálculo en una hora o en tres supone una gran diferencia, que permite ganar tiempo para mí y para hacer más cosas. Comparando con los resultados de los benchmarks de internet, mi dual xeon saca una puntuación de 1530 frente a los 1000 de un core i7 6700K overclocleado o un i7 3930K, lo cual está bastante bien para unos componentes de hace diez años (ahora si voy a fardar un poco).

He de decir que también llevaba el seguimiento a varios equipos de prestaciones similares de estaciones de trabajo Dell, modelo T5500 de segunda mano, y que para una configuración de 24gb con una gráfica media o parecida en prestaciones a la que he puesto tenían precios similares, pero a esos modelos les veía muchas pegas. El principal problema que veía era que el segundo procesador iba en un slot aparte, no integrado en la placa, y todo el conjunto estaba constreñido en la caja de forma milimétrica, muchas piezas ad-hoc..., y para más desconfianza el hecho de ser equipos de marca implica sucumbir a los dictados la misma en cuanto a repuestos, configuraciones, compatibilidades...en resumen: problemas el día que algo se rompa y no pueda repararlo por mi cuenta o porque no encuentre el reemplazo adecuado.
Como conclusión añadir que estoy más que contento y satisfecho con el resultado, pero como todo esto de la informática tiene sus misterios ocultos e inexplicables...este caso no iba a ser diferente. En el programa de cálculo de estructuras, en el que apenas había tenido problemas en otros equipos, estoy experimentando errores inesperados del programa en una fase concreta de la comprobación de secciones, que testeado el mismo archivo en otro equipo con la misma versión  del programa no ocurre. Algunas aplicaciones no se instalaban fácilmente (software del SAI), o daban errores al instalarlas, quizá con  el programa de cálculo ha pasado lo mismo, ya que depende de otras aplicaciones para funcionar (net framework),... así que como todo, a medida que vaya rodando un poco más con él se irán solucionando cosas.


Actualización 19 octubre de 2019
Después de varios meses de uso he seguido experimentando problemas con el programa Tricalc 7.4 de cálculo de estructuras con Windows 7 profesional. Inicialmente pensé que era problema de actualizaciones, o de permisos de administrador, etc... etc. Todo lo que en la web pude encontar al respecto para solucionar el error APPCRASH lo he probado, y todo inútil. Incluso pensé que era algún problema al instalar windows o el propio programa, así que cogí otro disco duro, instalé todo de nuevo, sin actualizaciones...y otra vez el problema.
El error (para conocimiento de los programadores de Arktec, que no sé si en versiones más recientes del programa estará solventado) generalmente ocurre en un módulo particular del programa, el cálculo de secciones de hormigón armado,.. y no siempre, a veces se puede calcular bien, otras permite calcular un par de veces en ese módulo del programa antes de que se cierre inesperadamente, otras es nada más intentarlo la primera vez. Si se cierra el programa y se vuelve a abrir el archivo no da el error la primera vez ...pero luego sí... Al principio pensaba que el archivo en cuestión era más complejo de lo normal o tenía algún error, probé en otro ordenador Quad 9400, y sin problemas (de hecho es el ordenador con el que calculo actualmente porque sé que nunca me da errores el programa). Tampoco he conseguido que detecte el SAI y se conecte a su módulo de servicio, lo cual en el ordenador Quad tampoco sucede.
Revisé con programas de testeo la memoria y los procesadores, porque el fallo tiene pinta de error de memoria o algo similar, pero nada, todo correcto. La única explicación es que por algún motivo especial ese módulo del programa tiene algún problema con los procesadores Xeon o con la configuración de dos núcleos reales. Tampoco entiendo porqué no se emplean en este módulo todos los núcleos disponibles para el cálculo de secciones (o al menos en esta versión es así), es uno de los módulos que más tiempo tarda en hacer cálculos y es una de las pocas operaciones informáticas en que es fácil programar las comprobaciones repartiendo las secciones entre todos los núcleos, ya que es como repartir cartas con cálculos aislados a cada núcleo o thread.

Tras nueve meses he tenido la oportunidad de montar otro equipo similar en prestaciones, pero más moderno. Si alguien está interesado en montar Xeons por experimentar (como yo) y por tener un equipo potente...pues vale, pero si lo necesita para trabajo y rendimiento creo que lo mejor es ir a un equipo nuevo, y el equivalente sería un Ryzen 7 2700. Tiene menos núcleos (8 núcleos y 16 threads en un único procesador) pero en cinebench da el mismo rendimiento, incluso un poco superior, de manera que es una buena alternativa, y prácticamente por el mismo precio con la gran ventaja de ser más moderno, tener RAM más rápida y un menor consumo del procesador...ser una placa más pequeña , caber en una caja más pequeña, fuente de menor potencia...etc.



Actualización 9 abril 2020
Respecto al error APPCRASH que experimentaba en el módulo de cálculo de armado de secciones del Tricalc finalmente he dado con el problema, o más bien con la solución. El caso es que con los 24 hilos de los dos procesadores el resto de los módulos del progama funcionan bien y sin problemas. Analizado detenidamente el comportamiento del módulo de cálculo de armado en el administrador de tareas se veía que sólo uno de los núcleos, un hilo para ser más exacto, estaba en funcionamiento. En alguno de los últimos foros que he visitado otro usuario tenía un problema similar con un ordenador dual Xeon pero con otro programa, la solución en su caso para evitar el APPCRASH era reducir de 24 a 18 el número de hilos...en mi caso la única opción ha sido bajar de 24 a 1 sólo hilo...y problema solucinado! (más bien quebradero de cabeza).
Lo bueno es que esa opción la puedo activar directamente en el programa y no he de estar trasteando con las opciones avanzadas del sistema, ni reiniciar el ordenador ni cosas por el estilo, y siendo que realmente no pierdo potencia de ordenador, puesto que el programa tan sólo usa un hilo en ese módulo, la única precaución que he de tomar es la de cambiar el número de hilos que quiero en cada caso.
Supongo que el problema, que se da de forma aleatoria, obedece al uso también aleatorio que hace windows de los núcleos, y que al pasar de un hilo a otro provoque el error  porque salte también de un procesador físico al otro, ya que en los ordenadores de un sólo procesador y varios hilos no tengo este error...En fin, misterios de la informática.

No hay comentarios: