En los albores de OS X, parecía haber una gran cantidad de bullicio, al menos en el mundo Mac (no estaba cerca de la informática científica en ese momento) sobre Mac OS como plataforma para la informática científica y las aplicaciones de HPC.
XGrid salió de la caja, Virginia Tech tenía su elegante clúster de computación basado en Mac, Stanford estaba haciendo cosas geniales, etc., etc.
Más recientemente, sin embargo, las cosas han estado tranquilas. El sitio Macresearch.org es esencialmente una ciudad fantasma llena de zombis spammers, el XServe está muerto, y una gran cantidad de la literatura de marketing y similares parece ser incluso del área del procesador anterior a Intel. Pero XGrid todavía está allí, todo el apuntalamiento del sistema operativo * nix está allí, y la plataforma parece tener un soporte decente entre Python, R y algunos de los lenguajes más nuevos.
Entonces, de las personas que saben más sobre esto que yo ... ¿cómo le va a OS X? ¿Son computadoras viables del lado del cliente para la computación científica? Los está utilizando como servidor / clúster / etc. a través de XGrid o algo así simplemente una aplicación novedosa?
Respuestas:
No puedo comentar sobre el lado del servidor de las cosas.
Del lado del cliente, en la única reunión de ciencias computacionales a la que voy cada año, la proporción de usuarios de Mac parece haber aumentado. Me cambié a una Mac porque me cansé de tratar con la falla de mi laptop Dell suministrada por la escuela. Me cambié a Mac para el hardware, principalmente, ya que Consumer Reports los calificó altamente en términos de durabilidad. No creo que las Mac sean buenas para la informática científica a menos que ejecutes Linux en ellas. El soporte de Linux para el hardware tiende a retrasarse; por lo general, no se admite la tarjeta inalámbrica (siempre que la cambien en un nuevo modelo). Si está dispuesto a aceptar la penalización de recursos que viene con la ejecución de una máquina virtual, es una opción atractiva (y una que yo personalmente uso).
Las Mac requieren que instales una gran cantidad de bibliotecas y paquetes de software antes de que puedas hacer computación científica seria. Cualquier cosa que tenga un instalador de Mac es fácil de administrar, por lo que si realiza la mayor parte de su trabajo de desarrollo con Matlab, Mathematica, Maple, Python, etc., es fácil instalar y ejecutar ese software en OS X de forma nativa. Es más difícil rastrear el software numérico de núcleo duro que tiene un instalador de Mac (piense cosas como PETSc o CLAWPACK). Administradores de paquetes como MacPorts y Finkpuede ayudar a la situación si solo quieres usar OS X. También tendrás que compilar muchos paquetes desde la fuente. Si desea ejecutar su código en otro lugar, deberá tener cuidado con los problemas de compatibilidad. Dado que Linux disfruta de un uso generalizado en la informática científica, desde el punto de vista de la portabilidad es más fácil desarrollar código en Linux.
He escuchado anecdóticamente de amigos muy obstinados que establecer un entorno de desarrollo en una Mac es un gran dolor de cabeza, otros han dicho que no es tan malo. Su experiencia puede ser diferente.
fuente
./configure && make && make install
, pero en el peor, puede ser un laberinto de ordenar guiones, banderas y ubicaciones de la biblioteca. La instalación de PETSc 3.2 desde un paquete Debian me llevó 5 segundos (incluso lo hice a instancias de algunos de los desarrolladores); instalarlo desde la fuente en Linux tomó todo el día con las diversas opciones. El punto era que los paquetes e instaladores no necesariamente existen para Mac cuando lo hacen para Linux (y hacen que Linux sea más fácil de usar).@Geoff da una buena respuesta, pero creo que vale la pena proporcionar una perspectiva alternativa.
Hago todo en Mac, en OS X, no en una VM Linux, incluido un gran desarrollo de código científico. Principalmente trabajo en Fortran y Python. Para mí, la conveniencia de
vale la pena el costo de los dolores de cabeza específicos de Mac.
Los tres dolores de cabeza principales son:
Falta de un administrador de paquetes estándar del sistema operativo. Érase una vez que usé Fink, pero finalmente me causó más dolores de cabeza y ahora está obsoleto. He escuchado cosas buenas sobre Macports y Homebrew, pero mi experiencia con Fink me convenció de simplemente "rodar la mía".
Parte del software incorporado está muy desactualizado. Particularmente, Python y gcc. Esto significa que necesita instalar sus propias versiones actualizadas, lo que puede ser una molestia.
¡Apple no incluye un compilador Fortran!
Me parece que Apple está prestando cada vez menos atención a sus usuarios avanzados basados en Unix. Mientras tanto, Linux sigue mejorando. Eventualmente, probablemente seré empujado nuevamente a Linux. Pero mantendré mi Macbook hasta que alguien más aprenda a fabricar baterías decentes.
fuente
Yo diría que la Mac es un mejor entorno para los científicos computacionales que para la ciencia computacional . No quisiera usar Mac en un entorno informático básico; el hardware es, relativamente hablando, demasiado caro para eso. Puede ser una molestia lograr que el entorno del software coincida con las condiciones necesarias para un paquete en particular, pero generalmente una vez que lo ha descubierto la primera vez, es mucho más fácil de mantener que una instalación comparable de Windows. (Y, dependiendo de los administradores de paquetes, puede ser tan fácil como Linux. ¡MacPorts funciona bastante bien como administrador de OS X!)
Sin embargo, como plataforma de trabajo para un científico informático ocupado, creo que la Mac ofrece la ventaja adicional de poder trabajar y mantenerse en un solo entorno informático, en lugar de tener que mantener una caja de Linux para el trabajo "serio", y aún necesito tener otra máquina cuando mis colegas que trabajan en otras disciplinas me envían (por ejemplo) archivos de Office que necesitan marcado, o tengo que completar un formulario de la Universidad que solo está disponible como una plantilla RTF que no se formateará correctamente con LibreOffice y será Un dolor en el cuello para recrear en LaTeX. (En trabajos anteriores, los propietarios de Linux tenían que tener además una máquina que no era Linux, porque para acceder al entorno corporativo más o menos lo exigían. Los propietarios de Mac realmente no necesitaban una segunda máquina).
Además, hay una serie de programas solo para Mac (como TextMate , Scrivener , Papers , Things , OmniFocus o BibDesk ) que hacen de la Mac un entorno mucho más agradable para trabajar que en la PC o Linux. Me encuentro pasando más tiempo concentrándome en hacer las cosas, que en lo que necesito hacer para que el entorno de software haga lo que quiero (¡o necesito!) Que haga.
fuente
El uso de OS X en HPC y la informática científica es bajo y tiene que ver mucho con los pros y los contras de OS X wrt la alternativa (Linux)
OS X Pros:
Contras OS X:
Algunas herramientas / programas útiles tradicionalmente no se ejecutaban o aún no se ejecutan en OS X. Por ejemplo ...
Linux (Debian) Pros:
Contras de Linux (Debian):
Exponiendo algunas excepciones, la mayoría de los usuarios y administradores de clúster / sistema encuentran OS X más fácil para la productividad del escritorio y NO para la computación científica (compilar, usar, desarrollar cosas).
OTOH, la mayoría de los usuarios de Linux encuentran que este último es más fácil que el anterior y esto se refleja en todo el ecosistema de computación científica / HPC.
fuente
He estado usando nada más que Mac en el escritorio (y la computadora portátil) durante muchos años, haciendo computación científica y desarrollo de software científico, entre otras cosas. Como otros han señalado, la calidad del hardware, la alta calidad de gran parte del software específico de Mac y la capacidad de manejar Word y Excel cuando sea necesario, hacen de la Mac una plataforma muy agradable para el uso diario.
También he estado ejecutando un clúster de cómputo basado en Mac como experimento durante un tiempo. Es un experimento que no tengo la tentación de volver a hacer. En comparación con un clúster de Linux, no veo ninguna ventaja significativa, aparte de la facilidad de instalación del software si tiene Macs en el escritorio de todos modos (solo instale las mismas cosas). Las desventajas se destacan claramente, sobre todo la falta de soporte GUI multiusuario adecuado. En una Mac, una máquina equivale a una pantalla y, como máximo, un usuario conectado. Eso hace que las herramientas basadas en GUI sean difíciles de usar. Comparado con eso, incluso X-windows simple bajo Linux es un placer de usar, y luego está VNC y NoMachine NX para hacerlo aún mejor.
Sí, sé que Mac es compatible con X Windows, pero la mayoría de los programas GUI para Mac usan la interfaz nativa.
fuente