1. et Framework
льзование .N
Испо
я написания
дл
х научных
атформенны
кросспл
программ
омпании Akvelon,
ий Разработчик в к
Aспирант ИвГПУ, Ведущ
Корнилов Максим
2. Преимущества Разработки на .NET
• CLR - общеязыковая исполняющая среда
• Кроссплатформенность – MONO
• Средства Разработки (Visual STUDIO with REsharper, MonoDevelop)
• C#
• Поддержка существующего кода
4. OpenGL используя OPENTK
• Поддерживает 32- и 64-разрядные версии ОС Windows, Linux и Mac OS X
• НЕ требуют неуправляемых Библиотек – Скомпилировав один раз, можно будет
запустить везде
• Кроссплатформенный GLControl (Windows.Forms),GLWidget (GTK#) и WPFControl классы.
6. Оценка производительности при
использование .Net Framework
• В среднем разница 7%
• Разница зависит от Квалификации Программиста
• Чем больше программа тем меньше разница (а в большинстве случаев
производительность выше!)
7. Сравнение производительности C#
(ILNumerics), FORTRAN, MATLAB and
numpy
• Хорошим примером является ILNumerics .NET Framework библиотека для
математического моделирования
• На следующих слайдах будет представлены результаты сравнения работы k-means
алгоритма
8.
9.
10. структуры
Программирование для
Седьмой уровень
Многоядерных процессоров
структурыClick to edit Master
А Как должно быть
text styles
Частый случай
Для правки структуры щелкните
мышью
−
Второй уровень структуры
Третий уровень структуры
−
Четвёртый уровень
структуры
Пятый уровень
структуры
Шестой уровень
Шестой уровень
структуры
Для правки структуры щелкните
мышью
−
Второй уровень структуры
Третий уровень структуры
−
Четвёртый уровень
структуры
Пятый уровень
структуры
Шестой уровень
15. Возможности по
расспараллеливанию
вычеслений
•
MPAPI - для Кластерные вычисления
• OpenCL via OPENTK - Фреймворк для написания компьютерных программ, связанных с
параллельными вычислениями на различных графических и центральных процессорах,
а также FPGA.
{"11":"Цель данного слайда показать, как это просто писать приложения для многоядерных систем. \nWaiting on Tasks.\nExecute another Async task when the current task is done.\nIn real world scenarios, we often have multiple operations which we want to perform asynchronously. Look at the following code snippet and see how you can model it alternatively.\n","7":"ILNumerics is a mathematical class library for Common Language Infrastructure (CLI) developers.\n","2":"CLR - C#, Managed C++, Visual Basic .NET, IronPython, Мне известны компиляторы для APL, Caml, COBOL, Eiffel, Forth, Fortran, Haskell и т. д.\nMONO - платформа Mono была официально признана реализацией .NET на Unix-подобных операционных системах (Linux, Mac OS X и других). Реализации Mono существуют для следующих операционных систем: Windows, Linux, BSD (FreeBSD, OpenBSD, NetBSD), Solaris, Mac OS X, Apple iOS, Wii[3]. Поддерживаются платформы: s390, SPARC, PowerPC, x86/x86-64, IA64, ARM, Alpha, MIPS, HPPA\nСредства Разработки – Visual Studio, MonoDevelop\nC# - является самым популярным языком для написания приложений для .Net Framework\n","3":"GTK# is a .NET binding for the Gtk+ toolkit. The toolkit is written in C for speed and compatibility, while the GTK# binding provides an easy to use, object oriented API for managed use. \nWindows.Forms is a binding developed by Microsoft to the Win32 toolkit. The Mono implementation is written in C# to allow it to work on multiple platforms.\nThe Qyoto/Kimono languages bindings allow C# and any other .NET language to be used to write Qt/KDE programs.\nMonoMac is aimed at .Net/Mono developers that want to allow their users to have a native Mac OS X application experience. MonoMac allows developers to access the whole range of MacOS X APIs from C#, it is not limited to the AppKit GUI APIs.\n","15":"Message Passing Interface (MPI, интерфейс передачи сообщений) — программный интерфейс (API) для передачи информации, который позволяет обмениваться сообщениями между процессами, выполняющими одну задачу. Разработан Уильямом Гроуппом, Эвином Ласком (англ.) и другими.\nMPI является наиболее распространённым стандартом интерфейса обмена данными в параллельном программировании, существуют его реализации для большого числа компьютерных платформ. Используется при разработке программ для кластеров и суперкомпьютеров.\n","4":"Supports 32- and 64-bit versions of Windows, Linux and Mac OS X. No need for unmanaged libraries - compile once, run everywhere!\nCross-platform GLControl (Windows.Forms),GLWidget (GTK#) and WPFControl classes. Native, high-performance GameWindow designed specifically for games.\n","10":"На сегодня многими производителями процессоров, в частности Intel, AMD, IBM, ARM дальнейшее увеличение числа ядер процессоров признано как одно из приоритетных направлений увеличения производительности.\n"}