HetNOS Threads: Programação Multithreaded Distribuída

  • Vinicius Mantay UFRGS
  • Cláudio Fernando Resin Geyer UFRGS

Resumo


O pacote de programação HetNOS Threads visa a união de duas importantes tecnologias de desenvolvimento de aplicações paralelas e distribuídas, que são os pacotes de programação multithreaded e a utilização de programação distribuída em redes de computadores com alta velocidade de comunicação. O modelo de programação adotado tem por objetivo oferecer ao desenvolvedor desta classe de aplicações ferramentas para a exploração de paralelismo tanto de alta quanto de baixa granulosidade. Essas metas são alcançadas com a combinação de um pacote de programação multithreaded, as Pthreads, com o sistema operacional de rede HetNOS. São oferecidas primitivas de comunicação entre processos e threads distribuídos via troca de mensagens, manipulação remota destas entidades e variáveis de sincronização distribuídas, de maneira a proporcionar as funcionalidades necessárias ao desenvolvimento de aplicações paralelas distribuídas aliandofacilidade de uso, programação intuitiva e desempenho eficiente.

Palavras-chave: comunicação, programação multithreaded, threads

Referências

BARCELLOS, A. M. P. HetNOS - Um Sistema Operacional de Rede como Ferramenta de Apoio ao Desenvolvimento de Sistemas Distribuídos. Porto Alegre, Relatório de Pesquisa, UFRGS, 1994.

BRIAT, J., CARISSIMI, A. S. Intégration de Threads et Communication: Etude de Cas. Grenoble, LMC-IMAG, 1998.

BUTLER, R., LUSK, E. Monitors, Messages, and Clusters: The P4 Parallel Programming System. Parallel Computing, vol. 20, pp. 547-64. 1994.

CARISSIMI, A., PASIN, M. Athapascan: An Experience on Mixing MPI Communications and Threads. Grenoble, APACHE Project, 1998.

GEIST, A., BEGUELIN, A., DONGARRA, J., JIANG, W., MANCHECK, R., SUNDERAM, V. PVM: Parallel Virtual Machine. MIT press, 1994.

BAL, H. E., BHOEDJANG, R., HOFMAN, R., JACOBS, C., LANGENDOEN, K., RÜHL, T., KAASHOEK, M. F. Performance Evaluation of the Orca Shared-Object System. New York, ACM Transactions on Computer Systems, vol. 16, nr. 1, pp. 1-40, 1998.

FOSTER, I., KESSELMAN, C., TUECKE, S. The Nexus Approach to Integrating Multithreading and Communication. Journal of Parallel and Distributed Computing, vol. 37, nr. 1, pp. 70-82, 1996.

HAINES, M., CRONK, D., MEHROTA, P. Chant: Lightweight Threads in a Distributed Memory Environment. Journal of Parallel and Distributed Programming, 1996.

LEVINE, D. POSIX Programmer's Guide - Writing Portable UNIX Programs. Sebastopol, O'Reilly & Associates, 1991.

LEWIS, B., BERG, D. J. Multithreaded Programming with Pthreads. Mountain Yiew, Prentice Hall, 1998.

MALACARNE, J., GEYER, C. F. R. Ambientes de Programação Visual Paralela e Distribuída. Porto Alegre, CPGCC, UFRGS, 1999.

Message Passing Interface Forum. Document for a Standard Message Passing Interface. International Journal of Supercomputer Applications and High Performance Computing Tech., vol. 8, 1994.

ONVURAL, R. Asynchronous Transfer Mode Networks. Performance Issues. Norwood, Artech House, 1995.

PAKIN, S., LAURIA, M., CHIEN, A. High Performance messaging on workstations: Illinois Fast Message for Myrinet. In Proceedings of SuperComputing '95, IEEE Computer Society Press, 1996.

POSIX P1003.4a. Threads Extension for Portable Operating Systems. IEEE, 1990.

PROVENZANO, C. Pthreads: an implememation of POSIX 1003.1.c. Disponível em http://www.mit.edu:8001/people/proven/pthreads

RIYIERE, M. Introduction to Concurrent Programming Thread and Communication Libraries. IMAG - LMC, 1997.

SUNSOFT. POSIX.1c / D10 Summary. Mountain Yiew, Sun Microsystems, 1995.

SUZUKI, N. Shared Memory Multiprocessing. MIT Press, 1992.

TANENBAUM, A. S. Modem Operating Systems. Englewood Cliffs, Prentice Hall, 1992.
Publicado
29/09/1999
Como Citar

Selecione um Formato
MANTAY, Vinicius; GEYER, Cláudio Fernando Resin. HetNOS Threads: Programação Multithreaded Distribuída. In: INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD), 11. , 1999, Natal. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 1999 . p. 127-132. DOI: https://doi.org/10.5753/sbac-pad.1999.19781.