[ca] La demanda de major rendiment de les aplicacions cient ques es satisf a incrementant la quantitat de components. No obstant aix o, un major nombre de components implica una major probabilitat de fallada. L'abrupta caiguda dels temps mitjans entre fallades en els sistemes actuals impulsa la investigaci o de mecanismes de toler ancia a fallades per garantir l'execuci o d'una aplicaci o a un cost raonable. Message-Passing Interface (MPI), l'est andard de programaci o m es utilitzat per les aplicacions cient ques, t e un comportament fail-stop, realitzant una parada segura de tots els processos en cas de detectar una fallada en qualsevol dels nodes del cl uster. Com a consequ encia, es perd l'execuci o que s'hagu es fet en tots els nodes de processament. Els sistemes de c omput d'altes prestacions, han anat implementat mecanismes per a garantir el servei, normalment basades en t ecniques de rollback-recovery mitjan cant l' us de Checkpoint/Restart. Aquestes solucions s'han implementat a nivell d'aplicaci o, la qual cosa no es transparent, o b e, a nivell de llibreria, la qual cosa no es generalitzable a altres llibreries i es deixen fora del camp de soluci o a un divers nombre d'aplicacions. Es proposa un sistema de toler ancia a fallades transparent i autom atic per l'aplicaci o paral lela de manera que pugui utilitzar-se sense modi car l'aplicaci o i amb la llibrer a de pas de missatge que prefereixi l'usuari. Es basa en detectar els errors en las comunicacions de sockets causats per les fallades de nodes i recon gurar-los en forma autom atica per a comunicar-se amb la nova adre ca a on es migra el proc es. Funciona en conjunt amb un sistema que protegeix l'estat de c omput dels processos i, en cas de fallades, els recupera en un altre node de c omput mitjan cant t ecniques de rollback-recovery. S'ha realitzat una validaci o experimental utilitzant aplicacions Master/Worker i Single Program Multipla Data (SPMD) amb comunicacions basades en sockets i en pas de missatges Message Passing Interface (MPI). Les execucions es van realitzar en un cl uster multicore, obtenint els nivells desitjats de funcionalitat i prestacions.

[en] The demand of more performance of scienti c applications is achieved by increasing the amount of components. However, a growing number of components implies that the probability of failure increases as well. The remarkable decrease of average times between failures in the current High Performance Computing systems encourages the investigation of mechanisms of fault tolerance suitable for new architectures which allow to guarantee the execution of an application at a reasonable cost. Message Passing Interface (MPI), the standard of programming more used by scienti c application, has a fail-stop behavior, by carrying out a safe stop of all the processes in case of detecting a failure in any of the nodes of the cluster. As a consequence, the execution which could have been done in all the processing nodes until that moment is lost. High Performance Computing has implemented mechanisms in order to guarantee service, usually based on techniques of rollback-recovery by using the Checkpoint/Restart. Those solutions have been implemented at an application level which is not transparent, or, at library level, which is not extended to other libraries and leave out several applications. A transparent and automatic fault tolerance system in proposed in this thesis, in such a way that the application can be used without being modi ed and with the message passing library preferred by the user. It is based on detecting failures in the communications of the socket caused by failures of nodes and recon gure them in an automatic way to communicate with the new direction where the process is migrated. This method works along with a system which protects the status of computation of the processes and in the case of failure, they are recovered in other node of computation by using techniques of rollback-recovery. An experimental validation has been carried out by using applications Master/Worker and Single Program Multipla Data (SPMD), with communications based on sockets and on Message Passing Interface (MPI). The executions were made in a multicore cluster, obtaining the desirable levels of functionality and performance.The demand of more performance of scienti c applications is achieved by increasing the amount of components. However, a growing number of components implies that the probability of failure increases as well. The remarkable decrease of average times between failures in the current High Performance Computing systems encourages the investigation of mechanisms of fault tolerance suitable for new architectures which allow to guarantee the execution of an application at a reasonable cost. Message Passing Interface (MPI), the standard of programming more used by scienti c application, has a fail-stop behavior, by carrying out a safe stop of all the processes in case of detecting a failure in any of the nodes of the cluster. As a consequence, the execution which could have been done in all the processing nodes until that moment is lost. High Performance Computing has implemented mechanisms in order to guarantee service, usually based on techniques of rollback-recovery by using the Checkpoint/Restart. Those solutions have been implemented at an application level which is not transparent, or, at library level, which is not extended to other libraries and leave out several applications. A transparent and automatic fault tolerance system in proposed in this thesis, in such a way that the application can be used without being modi ed and with the message passing library preferred by the user. It is based on detecting failures in the communications of the socket caused by failures of nodes and recon gure them in an automatic way to communicate with the new direction where the process is migrated. This method works along with a system which protects the status of computation of the processes and in the case of failure, they are recovered in other node of computation by using techniques of rollback-recovery. An experimental validation has been carried out by using applications Master/Worker and Single Program Multipla Data (SPMD), with communications based on sockets and on Message Passing Interface (MPI). The executions were made in a multicore cluster, obtaining the desirable levels of functionality and performance.The demand of more performance of scienti c applications is achieved by increasing the amount of components. However, a growing number of components implies that the probability of failure increases as well. The remarkable decrease of average times between failures in the current High Performance Computing systems encourages the investigation of mechanisms of fault tolerance suitable for new architectures which allow to guarantee the execution of an application at a reasonable cost. Message Passing Interface (MPI), the standard of programming more used by scienti c application, has a fail-stop behavior, by carrying out a safe stop of all the processes in case of detecting a failure in any of the nodes of the cluster. As a consequence, the execution which could have been done in all the processing nodes until that moment is lost. High Performance Computing has implemented mechanisms in order to guarantee service, usually based on techniques of rollback-recovery by using the Checkpoint/Restart. Those solutions have been implemented at an application level which is not transparent, or, at library level, which is not extended to other libraries and leave out several applications. A transparent and automatic fault tolerance system in proposed in this thesis, in such a way that the application can be used without being modi ed and with the message passing library preferred by the user. It is based on detecting failures in the communications of the socket caused by failures of nodes and recon gure them in an automatic way to communicate with the new direction where the process is migrated. This method works along with a system which protects the status of computation of the processes and in the case of failure, they are recovered in other node of computation by using techniques of rollback-recovery. An experimental validation has been carried out by using applications Master/Worker and Single Program Multipla Data (SPMD), with communications based on sockets and on Message Passing Interface (MPI). The executions were made in a multicore cluster, obtaining the desirable levels of functionality and performance.