Python cluster de calcul
Serait-il possible de faire un python de cluster, par la rédaction d'un serveur telnet, puis telnet-ment les commandes et la sortie de va-et-vient? Est-ce quelqu'un a une meilleure idée pour un python cluster de calcul?
PS. De préférence pour python 3.x, si quelqu'un sait comment.
Pour une utilisation interactive, ou comme un simple point de départ, essayer de ipython.
OriginalL'auteur Joe | 2009-10-21
Vous devez vous connecter pour publier un commentaire.
Le Python wiki accueille une liste exhaustive des Python de clusters de calcul d'outils et de bibliothèques. Vous pourriez être intéressé notamment dans En Parallèle Python.
Edit: Il y a une nouvelle bibliothèque qui est à mon humble avis très bon à clustering: execnet. Il est petit et simple. Et il semble avoir moins de bugs que, par exemple, la norme
multiprocessing
module.OriginalL'auteur Andrey Vlasovskikh
Vous pouvez voir la plupart de la troisième partie des paquets disponibles pour Python 3 ci ici; pertinent pour cluster de calcul est mpi4py -- la plupart des autres répartis sur les outils informatiques tels que pyro sont encore Python-2 seulement, mais MPI est un leader de la norme pour le groupe de calcul distribué et bien à la recherche en (je n'ai pas d'expérience directe dans l'utilisation mpi4py avec Python 3, encore, mais par ouï-dire, je crois que c'est une bonne mise en œuvre).
La principale alternative est Python intégré dans multitraitement, qui s'adapte aussi très bien si vous n'avez aucun intérêt dans l'interfaçage des nœuds existants dans le respect de l'IPM des normes, mais ne peut pas être codé en Python.
Il n'y a pas de réelle valeur ajoutée dans le déploiement de votre propre (comme Atwood dit, ne pas réinventer la roue, à moins que votre but est simplement de mieux comprendre les roues!-) -- utiliser l'un de solide, testé, la généralisation des solutions, déjà testé, de débogage et optimisé sur votre nom!-)
multiprocessing
.OriginalL'auteur Alex Martelli
Regarder dans ces
http://www.parallelpython.com/
http://pyro.sourceforge.net/
J'ai utilisé les deux et les deux sont exellent pour le calcul distribué
pour une liste plus détaillée des options voir
http://wiki.python.org/moin/ParallelProcessing
et si vous voulez auto exécuter quelque chose sur la machine distante , la meilleure alternative à telnet ssh est comme dans http://pydsh.sourceforge.net/
OriginalL'auteur Anurag Uniyal
Ce genre de choses que vous voulez faire? Vous pourriez vouloir vérifier hadoop. Le backend, le gros du travail est fait en java, mais il a un python interface, de sorte que vous pouvez écrire des scripts python de créer et d'envoyer de l'entrée, ainsi que de traiter les résultats.
OriginalL'auteur nstehr
Si vous avez besoin d'écrire des scripts d'administration, jetez un oeil à la ClusterShell bibliothèque Python trop, ou/et parallèle à la coque clush. C'est utile lorsque vous traitez avec nœud définit également (homme nodeset).
OriginalL'auteur Yan Hu
Je pense que IPython.en parallèle est le chemin à parcourir. Je l'ai beaucoup utilisé pour la dernière année et demie. Il permet de travailler de manière interactive avec autant de nœuds de travail comme vous le souhaitez. Si vous êtes sur AWS, StarCluster est un excellent moyen pour obtenir IPython.en parallèle et exécuter rapidement et facilement avec autant EC2 nœuds que vous pouvez vous permettre. (Il peut aussi installer automatiquement Hadoop, et une variété d'autres outils utiles, si nécessaire.) Il y a quelques astuces pour l'utiliser. (Par exemple, vous ne voulez pas envoyer de grandes quantités de données à travers le IPython.en parallèle de l'interface elle-même. Mieux distribuer un script qui va tirer vers le bas des blocs de données sur chaque moteur individuellement). Mais dans l'ensemble, j'ai trouvé remarquablement facile de faire le traitement distribué (FAÇON mieux que Hadoop!)
OriginalL'auteur user2913120
"Serait-il possible de faire un python cluster"
Oui.
J'aime les questions oui/non. Tout ce que vous voulez savoir?
(Notez que Python 3 a quelques bibliothèques de tiers, de sorte que vous pouvez veux rester avec Python 2 pour le moment.)
OriginalL'auteur Lennart Regebro