SlideShare a Scribd company logo
1 of 20
“Система высокоуровневого
параллельного
программирования MC#
для вычислительных
архитектур
на базе процессора Cell”
Петров Александр
РГАТА, СКБ ИТ СУ
gmdidro@gmail.com
Актуальность
Основная причина недостаточного
внедрения процессора Cell в практику
высокопроизводительных вычислений –
отсутствие достаточного количества
 системного и
 прикладного
программного обеспечения.
Актуальность
Разработка прикладного ПО для Cell
является трудоемкой задачей в силу
 специфики самой архитектуры
процессора,
 ограниченного набора средств его
программирования, включающего
компиляторы с языков C++ и Фортран и
библиотеку libspe2 для управления SPE-
процессорами.
Альтернативный инструментарий
Высокоуровневые средства
программирования для процессора Cell:
 системы на базе языка C/C++,
 системы на базе байт-ориентированных
(managed) языков Java и C#.
С/С++
Система MARS ( Multicore Application
Runtime System ) – библиотека для
построения приложений для процессора
Cell в терминах “задач” (tasks),
автоматически распределяемых по SPE-
процессорам во время исполнения
планировщиком.
Java Virtual Machine и Cell BE
Системы на базе языка Java:
 CellVM ( University of California, Irvine )
 Cacao VM for Cell ( IBM ).
Состояние реализации – прототип.
.NET Framework и Cell BE
Система на базе языка C# - CellDotNetCellDotNet:
 JIT-компилятор для генерации кода для SPE-
процессоров,
 Runtime-система поддержки исполнения C#-
программ на PPE- и SPE-процессорах
 Библиотека CellDotNet сама полностью написана
на C# и базируется на системе Mono –
свободной реализации платформы .NET для
Linux.
Почему не только
C++ + libspe2
Цели переноса байт-ориентированных
систем программирования на платформу
Cell:
 имеется достаточно большое количество
приложений, написанных на языках Java и
C#, например, финансовых приложений,
которые, будучи портированными на Cell,
будут более быстродействующими в
несколько раз.
Цель проекта =
Адаптация системы программирования на
базе высокоуровневого, объектно-
ориентированного языка MC# (www.
mcsharp.net), разработанного в Институте
программных систем РАН (г.Переславль-
Залесский), к вычислительным
архитектурам на базе процессора Cell,
включая кластерные системы.
+ CellCell BEBE
Идея проекта
Базовый механизм параллельности в языке MC#
 async- методы
 movable- методы
 взаимодействие посредством каналов и
обработчиков.
Основная идея адаптации – введение нового
модификатора spe в объявлении метода,
предназначенного для выполнения на SPE-
процессоре.
База адаптации – библиотека CellDotNet.
Пример
public async aintegrate ( int seed, int iterations,
channel (float) sendResult )
{
sendResult ! ( integrate ( seed, iterations ) );
}
public spe float integrate ( int seed, int iterations )
{
< Тело метода >
}
Преимущества принятого
подхода
 сокрытие подробностей использования
библиотеки CellDotNet от прикладного
программиста;
 сохранение единой асинхронной модели
программирования, принятой в языке
MC#.
Цели начального проекта
а) проверка работоспособности системы
Mono на серверах QS;
б) определение функциональных
возможностей и доработка библиотеки
CellDotNet;
c) разработка тестовых последовательных и
параллельных приложений на языках C# и
MC#, соответственно.
Результаты
 доработана библиотека CellDotNet (в
оригинальном виде она разрабатывалась и
тестировалась на PlayStation 3 и была
неработоспособна на серверах QS),
 разработано несколько тестовых параллельных
приложений на языке MC# (пока без доработки
MC#-компилятора – необходимые операторы
для запуска SPE-метода готовятся самим
программистом внутри async-метода).
Последовательные
программы на языке C#
Sparse Matrix Multiply ( умножение
разреженной матрицы на вектор)
Параллельные программы
на языке MC#
Численное интегрирование – вычисление числа π
методом Монте Карло
(2 000 000 000 итераций)
Параллельные программы
на языке MC#
Задача NQueens – расстановка ферзей на доске
N x N:
(N=17)
Параллельные программы
на языке MC#
Вычисление множества Мандельброта
(построение фрактала)
Ложка дегтя
 наличие ошибок в ядре Linux, влияющих на
работоспособность системы Mono на процессоре
PowerPC;
 исходная неработоспособность библиотеки
CellDotNet на серверах QS;
 ограниченность средств языка, поддерживаемых
в текущей версии библиотеки CellDotNet;
 отсутствие возможности доступа на 2 или более
машины с процессором Cell ( и Mono версии
1.9.1) для тестирования кластерных MC#-
приложений.
Перспективы
 доработка библиотеки CellDotNet для повышения
ее эффективности и расширение набора
поддерживаемых средств языка C#,
 CELL ClustersCELL Clusters: тестирование распределенных
MC#-приложений на кластере из Cell-машин,
 разработка новых приложений, включая простой
рендеринг изображений на основе трассировки
лучей,
 доработка компилятора MC# для поддержки spe-
методов.

More Related Content

Viewers also liked

Viewers also liked (13)

Futbol Base Gallego Horarios
Futbol Base Gallego HorariosFutbol Base Gallego Horarios
Futbol Base Gallego Horarios
 
Entrevista laura
Entrevista lauraEntrevista laura
Entrevista laura
 
Infantil workshop
Infantil workshopInfantil workshop
Infantil workshop
 
Dissertation Final Year 3
Dissertation Final Year 3Dissertation Final Year 3
Dissertation Final Year 3
 
Example Book Project
Example Book ProjectExample Book Project
Example Book Project
 
Дорожная карта "Повышение доступности энергетической инфраструктуры"
Дорожная карта "Повышение доступности энергетической инфраструктуры"Дорожная карта "Повышение доступности энергетической инфраструктуры"
Дорожная карта "Повышение доступности энергетической инфраструктуры"
 
Texto, hipertexto e multimídia
Texto, hipertexto e multimídiaTexto, hipertexto e multimídia
Texto, hipertexto e multimídia
 
MCAS - Olga Nikitina2
MCAS - Olga Nikitina2MCAS - Olga Nikitina2
MCAS - Olga Nikitina2
 
Beachange 2010 karjalainen
Beachange 2010 karjalainenBeachange 2010 karjalainen
Beachange 2010 karjalainen
 
Twittercensus live
Twittercensus liveTwittercensus live
Twittercensus live
 
Connecting standards users_by_using_internet_tools_haim_oren
Connecting standards users_by_using_internet_tools_haim_orenConnecting standards users_by_using_internet_tools_haim_oren
Connecting standards users_by_using_internet_tools_haim_oren
 
Presentation to DUP Conference 2013
Presentation to DUP Conference 2013Presentation to DUP Conference 2013
Presentation to DUP Conference 2013
 
Maths presentation 31st may 2011
Maths presentation   31st may 2011Maths presentation   31st may 2011
Maths presentation 31st may 2011
 

Similar to Cell и MC#

Сущность библиотеки анализа кода VivaCore
Сущность библиотеки анализа кода VivaCoreСущность библиотеки анализа кода VivaCore
Сущность библиотеки анализа кода VivaCoreTatyanazaxarova
 
Технология предметно ориентированного программирования гетерогенных многоядер...
Технология предметно ориентированного программирования гетерогенных многоядер...Технология предметно ориентированного программирования гетерогенных многоядер...
Технология предметно ориентированного программирования гетерогенных многоядер...CEE-SEC(R)
 
Hpc Visualization with WebGL
Hpc Visualization with WebGLHpc Visualization with WebGL
Hpc Visualization with WebGLMichael Karpov
 
C++ весна 2014 лекция 2
C++ весна 2014 лекция 2C++ весна 2014 лекция 2
C++ весна 2014 лекция 2Technopark
 
Семинар 1. Многопоточное программирование на OpenMP (часть 1)
Семинар 1. Многопоточное программирование на OpenMP (часть 1)Семинар 1. Многопоточное программирование на OpenMP (часть 1)
Семинар 1. Многопоточное программирование на OpenMP (часть 1)Mikhail Kurnosov
 
Теория языков программирования некоторые слайды к лекциям
Теория языков программирования некоторые слайды к лекциямТеория языков программирования некоторые слайды к лекциям
Теория языков программирования некоторые слайды к лекциямSergey Staroletov
 
Доклад в Mail.ru 01.11.12
Доклад в Mail.ru 01.11.12Доклад в Mail.ru 01.11.12
Доклад в Mail.ru 01.11.12Alex Tutubalin
 
Программный комплекс "НейроКС"
Программный комплекс "НейроКС"Программный комплекс "НейроКС"
Программный комплекс "НейроКС"kulibin
 
C++ STL & Qt. Занятие 11.
C++ STL & Qt. Занятие 11.C++ STL & Qt. Занятие 11.
C++ STL & Qt. Занятие 11.Igor Shkulipa
 
Машинное обучение с MATLAB
Машинное обучение с MATLABМашинное обучение с MATLAB
Машинное обучение с MATLABMATLAB
 
Другая виртуализация
Другая виртуализацияДругая виртуализация
Другая виртуализацияYandex
 
Отчет по проектах ЦПИКС
Отчет по проектах ЦПИКСОтчет по проектах ЦПИКС
Отчет по проектах ЦПИКСARCCN
 
основы ооп на языке C#. часть 1. введение в программирование
основы ооп на языке C#. часть 1. введение в программированиеосновы ооп на языке C#. часть 1. введение в программирование
основы ооп на языке C#. часть 1. введение в программированиеYakubovichDA
 
Экспорт алгоритмов и создание независимых приложений
Экспорт алгоритмов и создание независимых приложенийЭкспорт алгоритмов и создание независимых приложений
Экспорт алгоритмов и создание независимых приложенийMATLAB
 
Embarcadero All-Access
Embarcadero All-AccessEmbarcadero All-Access
Embarcadero All-AccessSerghei Urban
 
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ LibraryИнтервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ LibraryTatyanazaxarova
 
ОЛЕКСІЙ ГОЛУБЄВ «Electron. Як використовуючи WEB framework’і створити багатоп...
ОЛЕКСІЙ ГОЛУБЄВ «Electron. Як використовуючи WEB framework’і створити багатоп...ОЛЕКСІЙ ГОЛУБЄВ «Electron. Як використовуючи WEB framework’і створити багатоп...
ОЛЕКСІЙ ГОЛУБЄВ «Electron. Як використовуючи WEB framework’і створити багатоп...WDDay
 
"Electron. How the most modern framework works" Oleksii Holubiev
"Electron. How the most modern framework works" Oleksii Holubiev"Electron. How the most modern framework works" Oleksii Holubiev
"Electron. How the most modern framework works" Oleksii HolubievFwdays
 
Диаграмма развертывания
Диаграмма развертыванияДиаграмма развертывания
Диаграмма развертыванияDEVTYPE
 

Similar to Cell и MC# (20)

Net framework
Net frameworkNet framework
Net framework
 
Сущность библиотеки анализа кода VivaCore
Сущность библиотеки анализа кода VivaCoreСущность библиотеки анализа кода VivaCore
Сущность библиотеки анализа кода VivaCore
 
Технология предметно ориентированного программирования гетерогенных многоядер...
Технология предметно ориентированного программирования гетерогенных многоядер...Технология предметно ориентированного программирования гетерогенных многоядер...
Технология предметно ориентированного программирования гетерогенных многоядер...
 
Hpc Visualization with WebGL
Hpc Visualization with WebGLHpc Visualization with WebGL
Hpc Visualization with WebGL
 
C++ весна 2014 лекция 2
C++ весна 2014 лекция 2C++ весна 2014 лекция 2
C++ весна 2014 лекция 2
 
Семинар 1. Многопоточное программирование на OpenMP (часть 1)
Семинар 1. Многопоточное программирование на OpenMP (часть 1)Семинар 1. Многопоточное программирование на OpenMP (часть 1)
Семинар 1. Многопоточное программирование на OpenMP (часть 1)
 
Теория языков программирования некоторые слайды к лекциям
Теория языков программирования некоторые слайды к лекциямТеория языков программирования некоторые слайды к лекциям
Теория языков программирования некоторые слайды к лекциям
 
Доклад в Mail.ru 01.11.12
Доклад в Mail.ru 01.11.12Доклад в Mail.ru 01.11.12
Доклад в Mail.ru 01.11.12
 
Программный комплекс "НейроКС"
Программный комплекс "НейроКС"Программный комплекс "НейроКС"
Программный комплекс "НейроКС"
 
C++ STL & Qt. Занятие 11.
C++ STL & Qt. Занятие 11.C++ STL & Qt. Занятие 11.
C++ STL & Qt. Занятие 11.
 
Машинное обучение с MATLAB
Машинное обучение с MATLABМашинное обучение с MATLAB
Машинное обучение с MATLAB
 
Другая виртуализация
Другая виртуализацияДругая виртуализация
Другая виртуализация
 
Отчет по проектах ЦПИКС
Отчет по проектах ЦПИКСОтчет по проектах ЦПИКС
Отчет по проектах ЦПИКС
 
основы ооп на языке C#. часть 1. введение в программирование
основы ооп на языке C#. часть 1. введение в программированиеосновы ооп на языке C#. часть 1. введение в программирование
основы ооп на языке C#. часть 1. введение в программирование
 
Экспорт алгоритмов и создание независимых приложений
Экспорт алгоритмов и создание независимых приложенийЭкспорт алгоритмов и создание независимых приложений
Экспорт алгоритмов и создание независимых приложений
 
Embarcadero All-Access
Embarcadero All-AccessEmbarcadero All-Access
Embarcadero All-Access
 
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ LibraryИнтервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
Интервью с Анатолием Кузнецовым, автором библиотеки BitMagic C++ Library
 
ОЛЕКСІЙ ГОЛУБЄВ «Electron. Як використовуючи WEB framework’і створити багатоп...
ОЛЕКСІЙ ГОЛУБЄВ «Electron. Як використовуючи WEB framework’і створити багатоп...ОЛЕКСІЙ ГОЛУБЄВ «Electron. Як використовуючи WEB framework’і створити багатоп...
ОЛЕКСІЙ ГОЛУБЄВ «Electron. Як використовуючи WEB framework’і створити багатоп...
 
"Electron. How the most modern framework works" Oleksii Holubiev
"Electron. How the most modern framework works" Oleksii Holubiev"Electron. How the most modern framework works" Oleksii Holubiev
"Electron. How the most modern framework works" Oleksii Holubiev
 
Диаграмма развертывания
Диаграмма развертыванияДиаграмма развертывания
Диаграмма развертывания
 

More from Alexander Petrov

учебное оборудование для вуза сатэк
учебное оборудование для вуза сатэкучебное оборудование для вуза сатэк
учебное оборудование для вуза сатэкAlexander Petrov
 
Язык программирования SocLang (VKLang)
Язык программирования SocLang (VKLang)Язык программирования SocLang (VKLang)
Язык программирования SocLang (VKLang)Alexander Petrov
 
робототехника - проблемы и перспективы (СМП-2014)
робототехника - проблемы и перспективы (СМП-2014)робототехника - проблемы и перспективы (СМП-2014)
робототехника - проблемы и перспективы (СМП-2014)Alexander Petrov
 
портативный тифлоплеер с голосовым управлением
портативный тифлоплеер с голосовым управлениемпортативный тифлоплеер с голосовым управлением
портативный тифлоплеер с голосовым управлениемAlexander Petrov
 
Стенд РТК ТАДиОМ
Стенд РТК ТАДиОМСтенд РТК ТАДиОМ
Стенд РТК ТАДиОМAlexander Petrov
 
Стенд РТК РМСИ
Стенд РТК РМСИСтенд РТК РМСИ
Стенд РТК РМСИAlexander Petrov
 
Автономный мобильный робот (АМР-1)
Автономный мобильный робот (АМР-1)Автономный мобильный робот (АМР-1)
Автономный мобильный робот (АМР-1)Alexander Petrov
 
Биржа инновационных проектов
Биржа инновационных проектовБиржа инновационных проектов
Биржа инновационных проектовAlexander Petrov
 
Программа моделирования алгоритма параллельных подстановок и пример его реали...
Программа моделирования алгоритма параллельных подстановок и пример его реали...Программа моделирования алгоритма параллельных подстановок и пример его реали...
Программа моделирования алгоритма параллельных подстановок и пример его реали...Alexander Petrov
 
Сайт кафедры мпо эвс
Сайт кафедры мпо эвсСайт кафедры мпо эвс
Сайт кафедры мпо эвсAlexander Petrov
 
Верификация управляющих программ в системе автоматизации РТК (Iron hand)
Верификация управляющих программ в системе автоматизации РТК (Iron hand)Верификация управляющих программ в системе автоматизации РТК (Iron hand)
Верификация управляющих программ в системе автоматизации РТК (Iron hand)Alexander Petrov
 
Проект "Стенд" для проведения лабораторных работ по физике
Проект   "Стенд" для проведения лабораторных работ по физикеПроект   "Стенд" для проведения лабораторных работ по физике
Проект "Стенд" для проведения лабораторных работ по физикеAlexander Petrov
 
Проект системы управления гидродинамическим стендом.
Проект системы управления гидродинамическим стендом.Проект системы управления гидродинамическим стендом.
Проект системы управления гидродинамическим стендом.Alexander Petrov
 
Устройство микроджойстик
Устройство микроджойстикУстройство микроджойстик
Устройство микроджойстикAlexander Petrov
 
Разработка охранной сигнализации «СКАТ»
Разработка охранной сигнализации «СКАТ» Разработка охранной сигнализации «СКАТ»
Разработка охранной сигнализации «СКАТ» Alexander Petrov
 
Презентация бакалаврской работы Артема Лебедева
Презентация бакалаврской работы Артема ЛебедеваПрезентация бакалаврской работы Артема Лебедева
Презентация бакалаврской работы Артема ЛебедеваAlexander Petrov
 

More from Alexander Petrov (20)

учебное оборудование для вуза сатэк
учебное оборудование для вуза сатэкучебное оборудование для вуза сатэк
учебное оборудование для вуза сатэк
 
Язык программирования SocLang (VKLang)
Язык программирования SocLang (VKLang)Язык программирования SocLang (VKLang)
Язык программирования SocLang (VKLang)
 
робототехника - проблемы и перспективы (СМП-2014)
робототехника - проблемы и перспективы (СМП-2014)робототехника - проблемы и перспективы (СМП-2014)
робототехника - проблемы и перспективы (СМП-2014)
 
портативный тифлоплеер с голосовым управлением
портативный тифлоплеер с голосовым управлениемпортативный тифлоплеер с голосовым управлением
портативный тифлоплеер с голосовым управлением
 
Стенд РТК ТАДиОМ
Стенд РТК ТАДиОМСтенд РТК ТАДиОМ
Стенд РТК ТАДиОМ
 
Стенд РТК РМСИ
Стенд РТК РМСИСтенд РТК РМСИ
Стенд РТК РМСИ
 
Стенд РТК МЛС
Стенд РТК МЛССтенд РТК МЛС
Стенд РТК МЛС
 
Автономный мобильный робот (АМР-1)
Автономный мобильный робот (АМР-1)Автономный мобильный робот (АМР-1)
Автономный мобильный робот (АМР-1)
 
Биржа инновационных проектов
Биржа инновационных проектовБиржа инновационных проектов
Биржа инновационных проектов
 
Программа моделирования алгоритма параллельных подстановок и пример его реали...
Программа моделирования алгоритма параллельных подстановок и пример его реали...Программа моделирования алгоритма параллельных подстановок и пример его реали...
Программа моделирования алгоритма параллельных подстановок и пример его реали...
 
Сайт кафедры мпо эвс
Сайт кафедры мпо эвсСайт кафедры мпо эвс
Сайт кафедры мпо эвс
 
Верификация управляющих программ в системе автоматизации РТК (Iron hand)
Верификация управляющих программ в системе автоматизации РТК (Iron hand)Верификация управляющих программ в системе автоматизации РТК (Iron hand)
Верификация управляющих программ в системе автоматизации РТК (Iron hand)
 
Проект "Стенд" для проведения лабораторных работ по физике
Проект   "Стенд" для проведения лабораторных работ по физикеПроект   "Стенд" для проведения лабораторных работ по физике
Проект "Стенд" для проведения лабораторных работ по физике
 
проект стенд__
проект   стенд__проект   стенд__
проект стенд__
 
Проект системы управления гидродинамическим стендом.
Проект системы управления гидродинамическим стендом.Проект системы управления гидродинамическим стендом.
Проект системы управления гидродинамическим стендом.
 
Устройство микроджойстик
Устройство микроджойстикУстройство микроджойстик
Устройство микроджойстик
 
Разработка охранной сигнализации «СКАТ»
Разработка охранной сигнализации «СКАТ» Разработка охранной сигнализации «СКАТ»
Разработка охранной сигнализации «СКАТ»
 
Презентация бакалаврской работы Артема Лебедева
Презентация бакалаврской работы Артема ЛебедеваПрезентация бакалаврской работы Артема Лебедева
Презентация бакалаврской работы Артема Лебедева
 
Satek easy mcu - english
Satek easy mcu - englishSatek easy mcu - english
Satek easy mcu - english
 
верификация
верификацияверификация
верификация
 

Cell и MC#

  • 1. “Система высокоуровневого параллельного программирования MC# для вычислительных архитектур на базе процессора Cell” Петров Александр РГАТА, СКБ ИТ СУ gmdidro@gmail.com
  • 2. Актуальность Основная причина недостаточного внедрения процессора Cell в практику высокопроизводительных вычислений – отсутствие достаточного количества  системного и  прикладного программного обеспечения.
  • 3. Актуальность Разработка прикладного ПО для Cell является трудоемкой задачей в силу  специфики самой архитектуры процессора,  ограниченного набора средств его программирования, включающего компиляторы с языков C++ и Фортран и библиотеку libspe2 для управления SPE- процессорами.
  • 4. Альтернативный инструментарий Высокоуровневые средства программирования для процессора Cell:  системы на базе языка C/C++,  системы на базе байт-ориентированных (managed) языков Java и C#.
  • 5. С/С++ Система MARS ( Multicore Application Runtime System ) – библиотека для построения приложений для процессора Cell в терминах “задач” (tasks), автоматически распределяемых по SPE- процессорам во время исполнения планировщиком.
  • 6. Java Virtual Machine и Cell BE Системы на базе языка Java:  CellVM ( University of California, Irvine )  Cacao VM for Cell ( IBM ). Состояние реализации – прототип.
  • 7. .NET Framework и Cell BE Система на базе языка C# - CellDotNetCellDotNet:  JIT-компилятор для генерации кода для SPE- процессоров,  Runtime-система поддержки исполнения C#- программ на PPE- и SPE-процессорах  Библиотека CellDotNet сама полностью написана на C# и базируется на системе Mono – свободной реализации платформы .NET для Linux.
  • 8. Почему не только C++ + libspe2 Цели переноса байт-ориентированных систем программирования на платформу Cell:  имеется достаточно большое количество приложений, написанных на языках Java и C#, например, финансовых приложений, которые, будучи портированными на Cell, будут более быстродействующими в несколько раз.
  • 9. Цель проекта = Адаптация системы программирования на базе высокоуровневого, объектно- ориентированного языка MC# (www. mcsharp.net), разработанного в Институте программных систем РАН (г.Переславль- Залесский), к вычислительным архитектурам на базе процессора Cell, включая кластерные системы. + CellCell BEBE
  • 10. Идея проекта Базовый механизм параллельности в языке MC#  async- методы  movable- методы  взаимодействие посредством каналов и обработчиков. Основная идея адаптации – введение нового модификатора spe в объявлении метода, предназначенного для выполнения на SPE- процессоре. База адаптации – библиотека CellDotNet.
  • 11. Пример public async aintegrate ( int seed, int iterations, channel (float) sendResult ) { sendResult ! ( integrate ( seed, iterations ) ); } public spe float integrate ( int seed, int iterations ) { < Тело метода > }
  • 12. Преимущества принятого подхода  сокрытие подробностей использования библиотеки CellDotNet от прикладного программиста;  сохранение единой асинхронной модели программирования, принятой в языке MC#.
  • 13. Цели начального проекта а) проверка работоспособности системы Mono на серверах QS; б) определение функциональных возможностей и доработка библиотеки CellDotNet; c) разработка тестовых последовательных и параллельных приложений на языках C# и MC#, соответственно.
  • 14. Результаты  доработана библиотека CellDotNet (в оригинальном виде она разрабатывалась и тестировалась на PlayStation 3 и была неработоспособна на серверах QS),  разработано несколько тестовых параллельных приложений на языке MC# (пока без доработки MC#-компилятора – необходимые операторы для запуска SPE-метода готовятся самим программистом внутри async-метода).
  • 15. Последовательные программы на языке C# Sparse Matrix Multiply ( умножение разреженной матрицы на вектор)
  • 16. Параллельные программы на языке MC# Численное интегрирование – вычисление числа π методом Монте Карло (2 000 000 000 итераций)
  • 17. Параллельные программы на языке MC# Задача NQueens – расстановка ферзей на доске N x N: (N=17)
  • 18. Параллельные программы на языке MC# Вычисление множества Мандельброта (построение фрактала)
  • 19. Ложка дегтя  наличие ошибок в ядре Linux, влияющих на работоспособность системы Mono на процессоре PowerPC;  исходная неработоспособность библиотеки CellDotNet на серверах QS;  ограниченность средств языка, поддерживаемых в текущей версии библиотеки CellDotNet;  отсутствие возможности доступа на 2 или более машины с процессором Cell ( и Mono версии 1.9.1) для тестирования кластерных MC#- приложений.
  • 20. Перспективы  доработка библиотеки CellDotNet для повышения ее эффективности и расширение набора поддерживаемых средств языка C#,  CELL ClustersCELL Clusters: тестирование распределенных MC#-приложений на кластере из Cell-машин,  разработка новых приложений, включая простой рендеринг изображений на основе трассировки лучей,  доработка компилятора MC# для поддержки spe- методов.