Система параллельного распределенного программирования МС#2.0

Авторы

  • А.В. Петров
  • Ю.П. Сердюк

Ключевые слова:

параллельное распределенное программирование
параллельное программирование
grid-сети
распределенный рендеринг изображений
языки программирования

Аннотация

Язык программирования MC# является универсальным высокоуровневым языком программирования, предназначенным для создания программ, работающих на всем спектре параллельных архитектур — многоядерных процессорах, кластерах и Grid-системах. Рассматриваются основные идеи и специфические конструкции языка MC#. Перечисляются отличия системы программирования MC# 2.0 от ее предыдущей версии и обсуждаются вопросы многопоточного программирования в рамках этой системы. Приводится обзор MC# Grid System — системы исполнения MC#-программ на Grid-сетях. Описывается опыт использования этой системы для распределенного рендеринга изображений с помощью пакета Povray. Формулируются основные направления дальнейшей работы и отмечается применение языка MC# в учебно-образовательных целях. Статья подготовлена по материалам докладов авторов на Всероссийской научной конференции «Научный сервис в сети Интернет: многоядерный компьютерный мир» ( http://agora.guru.ru/abrau2007 ).


Загрузки

Опубликован

2008-09-27

Выпуск

Раздел

Раздел 2. Программирование

Авторы

А.В. Петров

Ю.П. Сердюк


Библиографические ссылки

  1. OpenMP specifications (http://www.openmp.org/specs).
  2. Message Passing Interface (http://www-unix.mcs.anl.gov/mpi/).
  3. Globus Toolkit (http://www.globus.org/toolkit/).
  4. Silva V. Crunch big numbers with GT3 using a quadratic sieve (http://www-128.ibm.com/developerworks/grid/library/gr-factor/).
  5. Benton N., Cardelli L., Fournet C. Modern concurrency abstractions for C# // ACM Transactions on Programming Languages and Systems. 2004. 26, N 5. 769-804.
  6. Fournet C., Gonthier G. The join calculus: a language for distributed mobile programming // Proc. Applied Semantics Summer School. 2000. Lecture Notes in Computer Science. Vol. 2395. Berlin: Springer, 2000. 268-292.
  7. Serdyuk Yu. MC# 2.0: a language for concurrent distributed programming based on .NET» // .NET Technologies 2006, 4th International Conference, Plzen, Czech Republic, 29 May-1 June, 2006 (http://www.mcsharp.net/publications/NET2006.pdf).
  8. Guzev V., Serdyuk Yu. Asynchronous parallel programming language based on the Microsoft .NET platform // PaCT-2003. Lecture Notes in Computer Science. Vol. 2763. Berlin: Springer, 2003. 236-243.
  9. Serdyuk Yu. A formal basis for the MC# programming language (Extended Abstract) (http://www.mcsharp.net/publications/formal_basis_extended_abstract.pdf).
  10. Гузев В., Сердюк Ю. MC# Grid System: подход к Grid-вычислениям на основе параллельного, распределенного языка программирования // Тр. конференции «Научный сервис в сети Интернет: распределенные вычислительные технологии». Новороссийск, сентябрь 2005 г. 41-43.
  11. http://www.mcsharp.net
  12. http://research.microsoft.com/ crusso/joins/
  13. http://www.eecs.berkeley.edu/Pubs/TechRpts/2006/EECS-2006-183.pdf
  14. http://www.intel.com/research/platform/terascale/teraflops.htm
  15. http://www.openmp.org
  16. http://www.intel.com/cd/software/products/asmo-na/eng/294797.htm
  17. http://labs.trolltech.com/ page/Projects/Threads/QtConcurrent
  18. http://upc.gwu.edu/
  19. http://chapel.cs.washington.edu/
  20. http://titanium.cs.berkeley.edu/
  21. http://fortress.sunsource.net
  22. http://x10.sourceforge.net/x10home.shtml
  23. http://www.hpcchallenge.org/
  24. http://softwareblogs.intel.com/2006/12/18/threading-building-blocks-solution-looking-for-a-problem/
  25. http://www.globus.org/toolkit/
  26. http://gpe4gtk.sourceforge.net/
  27. http://www.moredream.org/mpich.htm
  28. http://www.mono-project.com
  29. http://cfm.gs.washington.edu/security/ssh/client-pkauth/
  30. http://www.povray.org
  31. http://www.centerspace.net/
  32. http://www.itlab.unn.ru/?doc=835
  33. http://www.microsoft.com/rus/msdnaa/curricula/Default.mspx
  34. http://parallel-brains.narod.ru/