Question

Je cherche à faire une force brute tout à fait utilisation intensive du processeur de traitement pour la correspondance de chaîne. J'ai couru mon prototype dans un environnement multithread et la performance par rapport à une mise en œuvre à l'aide GridGain avec un couple de noeuds (également multithread).

La performance j'ai observé était que ma mise en œuvre GridGain réalisé plus de temps à ma mise en œuvre multithread. Il pourrait être le cas qu'il y avait une faille dans ma mise en œuvre de GridGain, mais ce fut seulement un prototype, et je pensais que les résultats sont révélateurs. Donc, ma question est la suivante:

Quels sont les avantages d'avoir à apprendre et construire une mise en œuvre d'une plate-forme de réseau particulier (Hadoop, GridGain ou EC2 si vous allez hébergé - autres suggestions bienvenues), où l'on pouvait mettre assez facilement ensemble une plate-forme de grille de calcul léger une courbe d'apprentissage beaucoup moins profond? ... à savoir qu'avons-nous gratuitement avec ces plates-formes cloud / grille qui méritent d'avoir / difficile à mettre en œuvre?

(S'il vous plaît noter, je n'ai pas besoin d'une grille de données)

Cheers,

-James

(p.s. Heureux de faire ce wiki communautaire si des needbe)

Était-ce utile?

La solution

Quel genre de grille vous occupez-vous? Un hôtes douzaine exécutant le même système d'exploitation serait assez simple pour exécuter une grille pour - tout ce que vous avez vraiment à traiter est l'envoi de travail à chaque hôte, peut-être un équilibre peu de charge, peut-être prendre en compte ce qu'il faut faire si un hôte tombe en panne, peut-être faire face à distribuer le nouveau code de service aux hôtes lorsque vous mettez à jour votre service, mais si vous ne traitez pas l'un de ceux qu'il est pas un gros problème car la grille est une taille gérable. Si vous avez affaire à 1000s des armées, ou avec un service qui ne devrait jamais être en panne ou des erreurs en raison de simples hôtes vont alors vous avez bas soudainement à vous soucier de:

  • ne pas surcharger tout seul hôte
  • distribuer un nouveau code de service
  • détecter lorsqu'un hôte ne répond pas et ne l'envoyer de nouveaux travaux, ainsi que réémission ce qu'il travaillait sur
  • éventuellement travailler sur différents systèmes d'exploitation et les architectures (petits par rapport big endian)
  • économies d'énergie - en train de fermer les hôtes en basse charge et les ramener pour une charge élevée
  • mise à l'échelle - si vous ajoutez 100 hôtes à votre grille demain combien de temps faut-il pour les obtenir connectés et fonctionnent
  • fiabilité - certains services peuvent en fait effectuer des calculs sur les différents hôtes 2-3 et seulement retourner une réponse que tous les hôtes d'accord sur

C'est une courte liste de choses que la plupart des logiciels de la grille devrait faire pour vous si vous en avez besoin. Si vous travaillez sur quelque chose de petit ou non critique, puis par tous les moyens, rouler votre propre. Si vous travaillez sur quelque chose qui doit travailler, ou est assez grand que d'avoir des étapes manuelles dans un processus de déploiement serait un cauchemar d'entretien alors vous voudrez probablement aller avec quelque chose qui existe déjà.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top