À l'aube d'OS X, il semblait y avoir beaucoup de brouhaha, du moins dans le monde Mac (j'étais loin d'être du calcul scientifique à l'époque) à propos du Mac OS en tant que plate-forme pour le calcul scientifique et les applications HPC.
XGrid est sorti de la boîte, Virginia Tech avait son cluster informatique basé sur Mac, Stanford faisait des choses sympas, etc. etc.
Plus récemment cependant, les choses se sont calmées. Le site Macresearch.org est essentiellement une ville fantôme remplie de zombies spammeurs, le XServe est mort, et une grande partie de la documentation marketing et similaires semblent même provenir de la zone du processeur pré-Intel. Mais XGrid est toujours là, tout le sous-système d'exploitation * nix est là, et la plate-forme semble avoir un support décent entre Python, R et certains des nouveaux langages.
Alors, de la part de personnes qui en savent plus à ce sujet que moi ... comment se porte OS X? S'agit-il d'ordinateurs viables côté client pour le calcul scientifique? Les utilise comme serveur / cluster / etc. via XGrid ou quelque chose comme ça simplement une application de nouveauté?
Réponses:
Je ne peux pas faire de commentaires sur le côté serveur des choses.
Côté client, lors de la seule réunion de science informatique à laquelle je me rends chaque année, la proportion d'utilisateurs de Mac semble avoir augmenté. Je suis passé à un Mac parce que j'en avais marre de devoir faire face à mon ordinateur portable Dell fourni par l'école en un rien de temps. Je suis passé aux Mac pour le matériel, principalement, car Consumer Reports les a hautement évalués en termes de durabilité. Je ne pense pas que les Mac soient bons pour le calcul scientifique à moins que vous exécutiez Linux sur eux. Le support Linux pour le matériel a tendance à être en retard; généralement, c'est la carte sans fil qui n'est pas prise en charge (chaque fois qu'elle la change dans un nouveau modèle). Si vous êtes prêt à accepter la pénalité de ressources associée à l'exécution d'une machine virtuelle, c'est une option intéressante (et que j'utilise personnellement).
Les Mac vous obligent à installer un grand nombre de bibliothèques et de progiciels avant de pouvoir faire du calcul scientifique sérieux. Tout ce qui a un programme d'installation Mac est facile à gérer, donc si vous faites la plupart de votre travail de développement avec Matlab, Mathematica, Maple, Python, etc., il est facile d'installer et d'exécuter ce logiciel sous OS X en mode natif. Il est plus difficile de retrouver un logiciel numérique dur doté d'un installateur Mac (pensez à des choses comme PETSc ou CLAWPACK). Les gestionnaires de packages comme MacPorts et Finkpeut aider la situation si vous souhaitez utiliser OS X uniquement. Vous devrez également compiler un grand nombre de packages à partir des sources. Si vous souhaitez exécuter votre code ailleurs, vous devrez faire attention aux problèmes de compatibilité. Étant donné que Linux bénéficie d'une utilisation répandue dans le calcul scientifique, il est plus facile du point de vue de la portabilité de développer du code sous Linux.
J'ai entendu de manière anecdotique des amis très avisés que la mise en place d'un environnement de développement sur un Mac est une énorme douleur dans le cul, d'autres ont dit que ce n'était pas si mal. Votre kilométrage peut varier.
la source
./configure && make && make install
, mais au pire, cela peut être un labyrinthe de tri de scripts, d'indicateurs et d'emplacements de bibliothèque. L'installation de PETSc 3.2 à partir d'un paquet Debian m'a pris 5 secondes (je l'ai même fait à la demande de certains développeurs); son installation depuis la source sous Linux a pris toute la journée avec les différentes options. Le fait était que les packages et les installateurs n'existent pas nécessairement pour le Mac lorsqu'ils le font pour Linux (et ils rendent Linux plus facile à utiliser).@Geoff donne une bonne réponse, mais je pense que cela vaut la peine de fournir une perspective alternative.
Je fais tout sur Mac - sous OS X, pas sur une machine virtuelle Linux - y compris beaucoup de développement de code scientifique. Je travaille principalement à Fortran et Python. Pour moi, la commodité de
vaut le coût des maux de tête spécifiques à Mac.
Les trois principaux maux de tête sont:
Absence d'un gestionnaire de packages standard OS. Il était une fois j'ai utilisé Fink, mais finalement cela a conduit à plus de maux de tête et il est maintenant obsolète. J'ai entendu de bonnes choses sur Macports et Homebrew, mais mon expérience avec Fink m'a convaincu de "rouler le mien".
Certains logiciels intégrés sont très obsolètes. En particulier, Python et gcc. Cela signifie que vous devez installer vos propres versions mises à jour, ce qui peut être un problème.
Apple n'inclut pas de compilateur Fortran!
Il me semble qu'Apple accorde de moins en moins d'attention à ses utilisateurs avancés sous Unix. Pendant ce temps, Linux continue de s'améliorer. Finalement, je serai probablement repoussé sous Linux. Mais je garderai mon Macbook jusqu'à ce que quelqu'un d'autre apprenne à fabriquer des piles décentes.
la source
Je dirais que le Mac est un meilleur environnement pour les scientifiques informatiques que pour les sciences informatiques . Je ne voudrais pas utiliser de Mac dans un environnement informatique de base; le matériel est, relativement parlant, beaucoup trop cher pour cela. Il peut être difficile de créer un environnement logiciel répondant aux conditions requises pour un package particulier, mais généralement une fois que vous l'avez compris la première fois, il est beaucoup plus facile à entretenir qu'une installation Windows comparable. (Et, selon les gestionnaires de packages, cela peut être aussi simple que Linux. MacPorts se débrouille assez bien en tant que gestionnaire pour OS X!)
Cependant, en tant que plate-forme de travail pour un scientifique en informatique occupé, je pense que le Mac offre l'avantage supplémentaire de pouvoir travailler et maintenir dans un environnement informatique unique, plutôt que d'avoir à maintenir une boîte Linux pour un travail "sérieux", et toujours besoin d'avoir une autre machine lorsque des collègues travaillant dans d'autres disciplines m'envoient (par exemple) des fichiers Office qui ont besoin de balisage, ou je dois remplir un formulaire universitaire qui n'est disponible qu'en tant que modèle RTF qui ne formatera pas correctement avec LibreOffice et sera une douleur dans le cou à recréer dans LaTeX. (Lors de travaux précédents, les propriétaires de Linux devaient à peu près avoir une machine non Linux en plus, car pour accéder à l'environnement d'entreprise plus ou moins exigé. Les propriétaires de Mac n'avaient pas vraiment besoin d'une deuxième machine.)
En outre, il existe un certain nombre de programmes Mac uniquement (comme TextMate , Scrivener , Papers , Things , OmniFocus ou BibDesk ) qui font du Mac un environnement beaucoup plus agréable dans lequel travailler que sur PC ou Linux. Je me retrouve à consacrer plus de temps à faire avancer les choses qu'à faire ce que je dois faire pour que l'environnement logiciel fasse ce que je veux (ou ai besoin!).
la source
L'utilisation d'OS X en HPC et en calcul scientifique est faible et elle doit faire beaucoup avec les avantages et les inconvénients d'OS X par rapport à l'alternative (Linux)
Avantages d'OS X:
Contre OS X:
Certains outils / programmes utiles ne fonctionnaient pas ou ne fonctionnent toujours pas sous OS X. Par exemple ...
Avantages Linux (Debian):
Contre Linux (Debian):
À quelques exceptions près, la plupart des utilisateurs et des administrateurs de cluster / système trouvent OS X plus facile pour la productivité du bureau et NON pour le calcul scientifique (compilation, utilisation, développement de choses).
OTOH la plupart des utilisateurs de Linux trouvent ce dernier plus facile que l'ancien et cela se reflète dans l'ensemble de l'écosystème HPC / informatique scientifique.
la source
Je n'utilise que des Mac sur le bureau (et l'ordinateur portable) depuis de nombreuses années, faisant entre autres du calcul scientifique et du développement de logiciels scientifiques. Comme d'autres l'ont souligné, la qualité du matériel, la haute qualité de nombreux logiciels spécifiques à Mac et la capacité de gérer Word et Excel si nécessaire, font du Mac une très belle plate-forme pour une utilisation quotidienne.
J'ai également exécuté un cluster de calcul basé sur Mac comme expérience pendant un certain temps. C'est une expérience que je ne suis pas tenté de refaire. Comparé à un cluster Linux, je ne vois aucun avantage significatif, à part la facilité d'installation du logiciel si vous avez quand même des Mac sur le bureau (installez simplement les mêmes choses). Les inconvénients ressortent clairement, surtout le manque de prise en charge GUI multi-utilisateurs appropriée. Sur un Mac, une machine équivaut à un écran et au plus un utilisateur connecté. Cela rend les outils basés sur l'interface utilisateur graphique difficiles à utiliser. Comparé à cela, même des fenêtres X simples sous Linux sont un plaisir à utiliser, et puis il y a VNC et NoMachine NX pour faire encore mieux.
Oui, je sais que le Mac prend en charge X Windows, mais la plupart des programmes GUI pour Mac utilisent l'interface native.
la source