Оберон-клуб «ВЄДАsoft»

Твердыня модульных языков
Текущее время: 29 мар 2024, 13:30

Часовой пояс: UTC + 2 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Blackbox vs Golang
СообщениеДобавлено: 12 мар 2018, 22:55 
Не в сети

Сообщения: 350
У меня появились возможность уделить "Яру" чуть больше ресурсов. В связи с этим вновь всплывает вопрос поиска замены платформе CL. BB выглядит одним из вариантов. Хочу цинично использовать ваши биокомпьютеры (С) на этапе выбора.

Под Blackbox я буду понимать урезанную версию BB, способную вызывать Си, но лишённую COM и графических возможностей. Пробуем составить такую анкетку-сравнение:

- простота реализации - есть ли те, кто сравнивал объём исходников BB и golang, включая размер рантайма и компилятора, за вычетом графики и COM из бб?

- объём языка - мне кажется, что golang не сильно сложнее CP. Верно ли я мыслю?

- поддержка параллельности - меня интересуют аналоги каналов в BB - насколько тяжело было бы запилить? Треды тоже хочу, но тут есть решение "несколько BB в одном образе, и каждый в своём треде" - мне кажется это оптимальным.

Вероятно, я в ближайшее время всё же продолжу потихоньку допиливать CL-версию. Но, если с ресурсами всё будет хорошо в течение полугода, вопрос о переходе на BB станет насущным.


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Blackbox vs Golang
СообщениеДобавлено: 13 мар 2018, 05:42 
Не в сети
Администратор
Аватара пользователя

Сообщения: 108
Да, треды не надо развивать. Илья давно остановил проект Active Blackbox.
http://oberoncore.ru/projects/abb

Анализ и мировая практика показывают, что надо использовать несколько параллельно запущенных приложений, организовывать обмен данными между ними.

Я пошел по пути использования библиотеки MPICH для этого. Поддерживаю и развиваю MPI для Linux.
И не я один. Смотрите, например, проект MultiBUGS:
https://github.com/MultiBUGS/MultiBUGS
Там используются возможности Microsoft MPI.

Как говорят, "Миром правят OpenMP, MPI и CUDA" :)
https://forum.oberoncore.ru/viewtopic.p ... MP#p102170


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Blackbox vs Golang
СообщениеДобавлено: 13 мар 2018, 08:35 
Не в сети

Сообщения: 203
budden писал(а):
- объём языка - мне кажется, что golang не сильно сложнее CP. Верно ли я мыслю?

Просто хотел бы напомнить, что авторы самого блекбокса давно уже сами перешли на C# и Java, а тем, кто хочет что-то в духе оберона, рекомендуют Go: http://oberspace.dyndns.org/index.php/topic,524.0.html

Цитата:
For all of us who must migrate from Windows XP before April 18, 2014
I strongly request of Oberon Microsystems Inc that all Windows 7 glitches be fixed and released
to us before that date.

Doug Danforth
Цитата:
Thanks for the reminder of Windows XP's end of support deadline, Doug.

With its release as open source software, BlackBox has reached the final stage of commercial development at Oberon microsystems back in December 2004. Consequently there will be no officially supported versions of BlackBox for Windows 7 from us.

We are really sorry about this but we have to encourage users still relying on BlackBox as their main development platform to start looking for alternatives.

At Oberon microsystems we are currently using C# and .NET for many of our mobile and embedded software projects:

http://www.mountaineer.org/mountaineer-group/

http://xamarin.com/

We also write lots of Java for Android and for our server-based software. Finally, we even have some Objective-C targeting iOS.

For a language very much in the spirit of Oberon, we suggest trying out Google's Go:

http://golang.org/

With kind regards,
Marc


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Blackbox vs Golang
СообщениеДобавлено: 13 мар 2018, 08:46 
Не в сети

Сообщения: 350
> Да, треды не надо развивать.
Я до вчерашнего вечера думал так же, как ты. Но вчера почитал на оберонкоре https://forum.oberoncore.ru/viewtopic.php?f=31&t=4475 Веселовского и мои сомнения укрепились. В полусне я подумал - вот умножение матриц. Есть у нас матрица. Можно же умножение раскидать по ядрам. Если с индексами намудришь - будет data race. Если не намудришь - будет максимально дешёвое распараллеливание без всяких мьютексов. А матрица при этом одна. Т.е. нельзя сказать "поток должен заблокировать мьютекс, чтобы написать в ячейку матрицы" - сразу производительность просядет, да и не поможет мьютекс, если код с ошибкой и два потока пишут в одну и ту же строку.

Т.е. в целом да, я принимал изначально модель, условно, "многооберонности". Но, оказывается, она не всегда решает.

Хотя если копаться дальше и учитывать, что память в кеш и из кеша может идти постранично, то может оказаться, что данное распараллеливание не сработает - данные лежат компактно и начнётся обмен кусками памяти между кешами разных ядер. Т.е. оказывается, нужно ещё знать архитектуру компьютера и она может оказать влияние даже на представление данных.

Т.е. всё не так просто. Для веб-сервисов и обычных приложений - да, многооберонность более-менее подойдёт. Для мат.моделирования - не факт.


Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Blackbox vs Golang
СообщениеДобавлено: 13 мар 2018, 08:52 
Не в сети

Сообщения: 350
geniepro писал(а):
а тем, кто хочет что-то в духе оберона, рекомендуют Go

Ну это они как честные люди указали направление движения тем, кого они бросили. Но тут критичен вопрос о размере.

Я что-то зашёл один раз в репозиторий и мне показалось, что голанг большой. И у него нет компилятора на борту.

Но я и не собираюсь использовать BB как есть. Мне нужно что-то в качестве бекенда.

Хотя блин race detector - это круто. В любой системе с параллелизмом подобный инструмент де-факто есть, хотя раньше я встречался только с определением дедлоков (они есть в SQL серверах). Там где этого нет, есть методика, как по core посмотреть стеки. Такой детектор дедлоков для бедных (или для аскетов).


Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 2 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
© VEDAsoft Oberon Club