2009-05-18 4 views
1

Depuis longtemps, je m'intéresse à la construction d'un groupe de nœuds hétérogènes dans le but d'avoir un superordinateur domestique, car je suis très intéressé par la recherche en IA. Cependant, le problème est bien que j'ai une myriade de matériel, (2x 2 serveurs montés en rack quadruples, 8 285GTX Gpus, 6x PS3s 2x Hacked 360s (ils peuvent exécuter linux) l'accès à des tonnes de PC communs ainsi que quelques postes de travail) Je n'ai pas de grand ensemble de données qui doit être croqué, ou même n'importe quel logiciel que je peux exécuter distribué. Je me suis trompé avec la compilation de code distribué, mais au mieux ses builds de mon noyau ont passé de 10 minutes (au pire) à 30 secondes (et je pense que 20 de ces secondes sont juste configurées).Projet de traitement distribué "débutant"

Alors, par où commencer? J'ai une sous-estimation décente de Obj-C/C/C++ donc ça ne devrait pas être trop difficile d'écrire quelque chose, mais que dois-je écrire?

Répondre

1

Si vous voulez que les données crunch, il y a beaucoup là-bas:

Quant à «que devrais-je construire», la vraie question est: qu'est-ce qui vous intéresse?

+0

Bien que d'avoir un ensemble de données aide, je ne suis pas sûr de ce que je devrais essayer et croquer avec ce système. Voyez-vous, je voudrais des données qui viendraient à une réponse concluante afin que je puisse évaluer mon système, mais comme je l'ai mentionné dans le PO, je n'ai rien trouvé qui prend plus de quelques secondes. – edude05

+0

D'accord, je répondais principalement à votre commentaire précédent de ne pas avoir de grands ensembles de données. Si vous voulez des idées sur les problèmes à résoudre, peut-être essayer les défis précédents de la Coupe KDD? (Ce ne sont pas des problèmes strictement distribués, mais ils ont généralement à voir avec l'analyse de grands ensembles de données.) Http: //www.sigkdd.org/kddcup/ Les problèmes «dures» canoniques sont les tests d'affacturage et de primalité; peut-être courir mprime ou quelque chose? http://www.mersenne.org/various/freeware.htm Ou peut-être calculer Pi? (Si vous voulez un problème de réponse connue ...) http://defcon1.hopto.org/pi/ – Stobor

0

Eh bien, je pense qu'il est préférable de déterminer quel sous-ensemble du matériel dont vous disposez vous allez développer votre application. Le logiciel de la PS3 nécessite une attention particulière et nécessitera un développement séparé de quelque chose construit pour fonctionner sur des serveurs linux typiques.

Vous devrez peut-être également faire des recherches sur la façon dont vous pourriez développer une application pour la 360; Je ne suis pas sûr que ça te donne vraiment ce que tu cherches pour être honnête. Une fois que vous avez décidé du sous-ensemble de matériel que vous avez besoin de développer, il serait bon de commencer par un développement de base pour vous assurer que vous pouvez créer une fondation qui permet la communication. Avec une base solide, vous serez en mesure d'élargir votre code pour soutenir une variété de projets distribués.

J'espère que je comprends votre question correctement!

Vive

+0

Je pense que votre légèrement hors piste. L'idée est que je veux écrire un logiciel qui fonctionnera sur tous ces appareils comme un moyen de faire des recherches sur ce qui "fonctionne" en termes de traitement distribué – edude05

0

Si vous êtes-vous vraiment aventureux pouvez essayer le portage soit/les deux Sprite (Unix-y) et/ou Plan 9 (tout simplement bizarre) à chacune des saveurs du matériel que vous avez (Plan 9 fonctionne déjà sur PC).