16
И спользование .Net F ramework для написания к россплатформенных н аучных программ Aспирант ИвГПУ, Ведущий Разработчик в компании Akvelon, Корнилов Максим

использование .Net framework

  • Upload
    jskonst

  • View
    737

  • Download
    0

Embed Size (px)

Citation preview

Использование .Net

Framework для

написания кроссплатформенных

научных программAспирант ИвГПУ, Ведущий Разработчик в

компании Akvelon, Корнилов Максим

Преимущества Разработки на .NET• CLR - общеязыковая исполняющая среда

• Кроссплатформенность – MONO

• Средства Разработки (Visual STUDIO with REsharper, MonoDevelop)

• C#

• Поддержка существующего кода

кроссплатформенные GUI Frameworks• Gtk#

• Windows.Forms

• Qyoto

• wxNet

• MonoMac

OpenGL используя OPENTK

• Поддерживает 32- и 64-разрядные версии ОС Windows, Linux и Mac OS X

• НЕ требуют неуправляемых Библиотек – Скомпилировав один раз, можно будет запустить везде

• Кроссплатформенный GLControl (Windows.Forms),GLWidget (GTK#) и WPFControl классы.

Пример использования OPENGL

Оценка производительности при использование .Net Framework• В среднем разница 7%

• Разница зависит от Квалификации Программиста

• Чем больше программа тем меньше разница (а в большинстве случаев производительность выше!)

Сравнение производительности C# (ILNumerics), FORTRAN, MATLAB and numpy• Хорошим примером является ILNumerics .NET Framework библиотека для

математического моделирования

• На следующих слайдах будет представлены результаты сравнения работы k-means алгоритма

Для правки структуры щелкните мышью

Второй уровень структуры

Третий уровень структуры

Четвёртый уровень структуры

Пятый уровень структуры

Шестой уровень структуры

• Седьмой уровень структурыClick to edit Master text styles

• Second level

• Third level

• Fourth level

• Fifth level

Для правки структуры щелкните мышью

Второй уровень структуры

Третий уровень структуры

Четвёртый уровень структуры

Пятый уровень структуры

Шестой уровень структуры

Седьмой уровень структурыClick to edit Master text styles

Для правки структуры щелкните мышью

Второй уровень структуры

Третий уровень структуры

Четвёртый уровень структуры

Пятый уровень структуры

Шестой уровень структуры

• Седьмой уровень структурыClick to edit Master text styles

• Second level

• Third level

• Fourth level

• Fifth level

Программирование для Многоядерных процессоров

Частый случай А Как должно быть

Task Parallel Library in Net Framework 4.0 and Higher

Parallel Extensions

Четырех Ядерный процессор

Одно Ядерный процессор

Возможности по расспараллеливанию вычеслений• MPAPI - для Кластерные вычисления

• OpenCL via OPENTK - Фреймворк для написания компьютерных программ, связанных с параллельными вычислениями на различных графических и центральных процессорах, а также FPGA.

Ссылки• http://ilnumerics.net/

• http://ilnumerics.net/blog/fast-faster-performance-comparison-c-ilnumerics-fortran-matlab-and-numpy-part-ii/

• http://www.codeproject.com/Articles/362996/Multi-core-programming-using-Task-Parallel-Library