The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"В Mono реализована поддержка LLVM бэкенда"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Разговоры, обсуждение новостей (Public)
Изначальное сообщение [ Отслеживать ]

"В Mono реализована поддержка LLVM бэкенда"  +/
Сообщение от opennews on 17-Июл-09, 17:42 
В Mono реализована (http://tirania.org/blog/archive/2009/Jul-16.html) поддержка LLVM бэкенда, на лету транслирующего исходных код в машинные инструкции. При тестировании производительности пакетом SciMark новый код набрал 610 баллов, против 482  при использовании стандартного встроенного JIT-компилятора.

URL: http://tirania.org/blog/archive/2009/Jul-16.html
Новость: http://www.opennet.me/opennews/art.shtml?num=22638

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "В Mono реализована поддержка LLVM бэкенда"  +/
Сообщение от аноним on 17-Июл-09, 17:42 
Во-во, ровно то, что я писал в новости про Unladen Swallow - все в итоге будет завязано на LLVM.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "В Mono реализована поддержка LLVM бэкенда"  +/
Сообщение от Aleksey (??) on 17-Июл-09, 18:00 
Ну так это хорошо. LLVM это по сути тот же gcc, просто более прозрачно разбитый на компоненты.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "В Mono реализована поддержка LLVM бэкенда"  +/
Сообщение от аноним on 17-Июл-09, 20:05 
>Ну так это хорошо. LLVM это по сути тот же gcc, просто
>более прозрачно разбитый на компоненты.

LLVM не имеет ничего общего с gcc, не порите такой кошмарной ерунды.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "В Mono реализована поддержка LLVM бэкенда"  +/
Сообщение от аноним on 17-Июл-09, 20:04 
Пока они не компилят его в нативный код - нафиг не нужно. Пишут что и это, и swallow жрут памяти чуть ли не как java.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "В Mono реализована поддержка LLVM бэкенда"  +/
Сообщение от trdm (ok) on 17-Июл-09, 18:27 
А в LLVM есть свой движек для интерпретарора?
Или делать надо?
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "В Mono реализована поддержка LLVM бэкенда"  +/
Сообщение от Аноним (??) on 17-Июл-09, 20:26 
Любой интерпретатор состоит из вызова функций, а вот их уже компилируем LLVM :)
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "В Mono реализована поддержка LLVM бэкенда"  +/
Сообщение от Jack (??) on 13-Авг-09, 02:47 
Напишу как есть:

1) Есть IR. Отличается от Phoenix (Jule 2008 CTP) в худшую сторону по гибкости (в фениксе, например, спокойно можно inline-assembler для произвольной архитектуры замутить), но интерфейс более обточенный и всякий кал попрятан в pimpl/private.

2) Есть ридеры\врайтеры собственного языка который есть текстовое отражение IR. закодил что-нить через АПИ - сдампил, посмотрел. У феникса нет языка, но есть конфигуриремый дамп.

3) Есть возможность сохранить IR в файло в виде байткода, в little endian. Скомпилил в байткод под вендой, преобразовал на маке в PowerPC ассемблер и запустил, не как с байткодом трешового LUA =) Байткода у феникса разумеется тоже нет.

4) Разумеется возможность скомпилить IR в асм. в оф сайте перечислено куча процов, но на большинстве - поддержка экспериментальная =))) также есть линкер и дизассемлер. Феникс умеет x84/x64 без поддержки alloca, не умеет создавать exe & dll, умеет только инструментировать (!!! ахтунг, глубоки ковыряния и Reflector дружно сообщили что такая возможность пока именно отсутствует)

5) Есть JIT. Как раз для моно, иказы и его компании. Правда эгзипшены сформированы как C++шные, изза этого есть проблемы с интеграцией.

6) Есть куча мемликов ( и зачем тогда на С++ пишут =) ), некоторые с 2007 года поправить не могут. Но феникс жрет больше памяти, инитится очень тормознуто, на лики не тестил.

7) Версия 2.6 будет поддерживать многопочную компиляцию. Немного страшно учитывая п.6. В фениксе тоже есть, но феникс не юзабелен до поры пока из MS Research не выползет, а то местные научные сотрудники не имеют представления как правильно под .NET писать.

Написано всё на кривом С++ ( точнее на С с классами =) ), без буста, но с СТЛ. т.е. кодить еще пока ребята не до конца научились, но мозг детектед. По-идее им надо было бы юзая C# накатать макет статического компилера, довести до продакшин качества на большинстве платформ.. затем почитать Саттера, Александреску, левелапнуцца, конвертнуть всё в С++0x, угрохали бы меньше времени на написание\поддержание\дебаг\многопоточность, оптимизаций былоб больше и круче.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру