1 / 13

Framework pentru aplicaţii de calcul distribuit

Framework pentru aplicaţii de calcul distribuit. Framework-ul DCalc. Reducerea timpului de evaluare a unei probleme Maximizarea performanţelor prin execuţie paralelă şi distribuită Folosirea resurselor puţin utilizate în companii / instituţii Minimizarea costurilor

daphne
Télécharger la présentation

Framework pentru aplicaţii de calcul distribuit

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Framework pentru aplicaţii de calcul distribuit Framework-ul DCalc

  2. Reducerea timpului de evaluare a unei probleme Maximizarea performanţelor prin execuţie paralelă şi distribuită Folosirea resurselor puţin utilizate în companii / instituţii Minimizarea costurilor Alte sisteme distribuite asemănătoare: JPPF (Java Paralel Programming Framework) LAM (Local Area Multicomputer) Structură de tip framework Stabilitate Flexibilitate Extensibilitate Simplu integrabil Scopul proiectuluiPremise de implementare

  3. CPU CPU CPU CPU CALC CALC PROBLEMĂ Distribuţie Paralelism Sisteme de calcul paralel • Sisteme multi-procesor • Sisteme multi-computer

  4. Platformă şi tehnologii • Framework-ul .NET • .NET Reflection • .NET CodeDom • TCP Sockets • HTTP • XML

  5. Interfaţa IScript Interfaţa IAlgorithm Interfaţa IAlgorithmProvider Clasa ScalarSet Tipuri de date acceptate Probleme natural paralelizabile Preferarea funcţiilor pure Principiul “divide and conquer” AlgoritmiProbleme acceptate

  6. Compilarea dinamică • Interfaţa IScriptAssembler • Interfaţa ICompileScript • Clasa CSharpScriptAssembler • Clasa DotNetCompiledScript • Utilizarea unui nou Application Domain

  7. Interfaţa IRunner Clasa LocalMachineRunner Cozile de execuţie Interfaţa IWorkQueue Clasele WorkQueue şi ThreadedWorkQueue Clasa RemoteMachineRunner Conceptul de “poartă” şi interfeţele IRemoteGateClient, IRemoteGateServer Comunicarea prin protocolul HTTP Comunicarea prin protocolul TCP Împachetarea datelor Evaluarea datelorDistribuţia

  8. Echilibrarea cozilor de execuţie Echilibrarea între calculatoare Interfaţa ILoadBalancer Metoda Round-Robin Metoda “corectă” Metoda “corectă” cu puncte de penalizare Mod simplificat de acces a facilităţilor oferite de framework DataPlanner – planificatorul de date Firul de auto-reglare Moduri de rulare: Doar local Doar la distanţă Combinat Module de echilibrare Dispecerulale încărcării

  9. Principiul de funcţionare client Remote machine Algorithm Provider Load Balancing Dispatcher Runner (Http) Data Planner Algorithm Runner (Local) Queue Threaded Work Queue Script Assembler Queue Load Balancing

  10. Listener Service Client registration data store Client Output Queue Runner (Local) Queue Threaded Work Queue Script Assembler Queue Load Balancing Principiul de funcţionare server

  11. Avantajele sistemului DCalc • Distribuţia algoritmilor în forma “cod sursă” permite utilizarea unui mediu ne-omogen • Posibilitatea implementării unui număr larg de module de asamblare specifice fiecărui limbaj • Execuţia algoritmului compilat într-un Application Domain separat ce sporeşte robusteţea sistemului • Framework-ul poate fi extins pentru un număr mai larg de probleme, cum ar fi grupul de probleme MapReduce • Adăugarea noilor probleme sub formă de “plug-in” • Posibilitatea implementării unui server DCalc cu câteva linii de cod • Practic orice componentă din framework poate fi schimbată sau rescrisă

  12. Dezavantajele sistemului DCalc • Securitatea scăzută în cadrul comunicării pe reţea, se recomandă utilizarea unei reţele închise; • Are sens utilizarea acestui framework doar pentru evaluarea problemelor intensiv computaţionale; • Necesită o reţea ce permite viteze mari de transfer; • Nu poate fi utilizat în cazul problemelor ce necesită comunicare nod la nod.

  13. Concluzii • Framework-ul DCalc oferă toate facilităţile necesare rezolvării problemelor natural paralelizabile doar prin adăugarea unor noi “plug-in”-uri; • DCalc poate fi extins şi pentru rezolvarea problemelor mai complexe; • DCalc permite creşterea vizibilă a performanţelor de calcul prin adăugarea unui nod nou în reţea; • DCalc are sens utilizarea framework-ului doar pentru probleme intensiv computaţionale.

More Related