OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Среда, 24 Апрель, 2019 17:06

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




Начать новую тему Ответить на тему  [ Сообщений: 22 ]  На страницу 1, 2  След.
Автор Сообщение
СообщениеДобавлено: Четверг, 05 Сентябрь, 2013 14:30 

Зарегистрирован: Среда, 04 Июль, 2007 16:43
Сообщения: 233
(модератор) выделено из viewtopic.php?f=114&t=3836 согл. п. 3.3

Не уверен, стоит ли создавать новую тему, но утверждение в Blackbox-List
Иван Денисов писал(а):
The ifort Intel compiler is 50 times!!! faster than BlackBox in for loops tasks and 10 times faster than XDS Oberon Compiler with maximum optimisation. That can make sense then you make physics science.

хотелось бы уточнить, например посмотреть на пример такого FOR лупа. 50 раз это все-таки очень много. Или речь идет о тривиальной оптимизации, типа выноса вычислений из тела цикла?


Последний раз редактировалось Евгений Темиргалеев Пятница, 06 Сентябрь, 2013 22:08, всего редактировалось 1 раз.
пометка о разделении


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Четверг, 05 Сентябрь, 2013 14:32 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2178
Откуда: Нижний Новгород
QWERTYProgrammer писал(а):
Не уверен, стоит ли создавать новую тему, но утверждение в Blackbox-List
Иван Денисов писал(а):
The ifort Intel compiler is 50 times!!! faster than BlackBox in for loops tasks and 10 times faster than XDS Oberon Compiler with maximum optimisation. That can make sense then you make physics science.

хотелось бы уточнить, например посмотреть на пример такого FOR лупа. 50 раз это все-таки очень много. Или речь идет о тривиальной оптимизации, типа выноса вычислений из тела цикла?


Скорее всего векторизация + более внятное использование регистров процессора.
Вот тут немного экспериментального материала: http://oberspace.dyndns.org/index.php/topic,484.0.html


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 18:41 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2301
QWERTYProgrammer писал(а):
Не уверен, стоит ли создавать новую тему, но утверждение в Blackbox-List
Иван Денисов писал(а):
The ifort Intel compiler is 50 times!!! faster than BlackBox in for loops tasks and 10 times faster than XDS Oberon Compiler with maximum optimisation. That can make sense then you make physics science.

хотелось бы уточнить, например посмотреть на пример такого FOR лупа. 50 раз это все-таки очень много. Или речь идет о тривиальной оптимизации, типа выноса вычислений из тела цикла?

Стоит вынести в отдельную тему «Сравнение компиляторов f95, ifort, xds, blackbox»

Вот код для фортрана, который использовался для небольшой рабочей проверки, про которую я говорил.
Код:
program bench;

DOUBLE PRECISION, DIMENSION (1000,1000) :: x
INTEGER :: i,j,k,n,m
DOUBLE PRECISION, DIMENSION (1000) :: f
DOUBLE PRECISION :: summ

do i=1,1000
   do j=1,1000
      x(i,j) = 0
   end do
end do
do k=1,1000
   f(k) = 0
end do
n = 1
m = 1
do i=1,1000
   do j=1,1000
      x(i,j) = m*m+n*n+1
      do k=1,1000
         f(k)=f(k)+x(i,j)/(x(i,j)+2.0/m)
      end do
      m = m + 1
   end do
   n = n + 1
end do
summ = 0
do k=1,1000
   summ = summ + f(k)
end do
write(*,*) summ
end program bench


Код не претендует на сколько-либо внятный тест. Делалось для себя, чтобы понимать достоинства, недостатки и область применимости инструмента BlackBox.

Компилятор ifrot успешно ставил как на Ubuntu, так и на Red Hat, он доступен бесплатно для академической работы с сайта Intel. Для XDS и компонентного паскаля у меня код не сохранился, к сожалению.

Привожу свою цитату из нашего рабочего блога от 12.05.2013.
Цитата:
После семинара в эту субботу у ZIM в очередной раз возник вопрос, почему я использую Компонентный Паскаль для своих приложений. Ну и слово за слово, решили сравнить скорость с языком Фортран-95. Точнее сравниваются в данном случае не языки, а компиляторы. Написали один пример, который использует массивы, циклы, сложение, умножение, деление. При этом в тест не вошли работы с указателями, обращение к процедурам и т.п.

Результаты таковы: Блэкбокс выполнил процедуру на Компонентном Паскале за 17355мс, приложение с использованием компилятора F95 потратило такое-же время в 17352. Удивительно точное совпадение времени, конечно.

Затем в ход пошли оптимизаторы кода. Для оптимизации компилятора F95 использовался ключ -O3 (оптимизация доступа к памяти и циклов), для получения оптимизированного кода для языка Оберон-2 использовался компилятор XDS (кстати, Новосибирская разработка). Так Фортран улучшил свои показатели примерно в 22 раза (~773мс), а Оберон-2 примерно в 14 раз (~1250мс).

Как видно отсюда, по рутиной производительности Оберон-2 вполне соревнуется с Фортраном-95. Технический результат проделанной работы в том, что действительно имеет смысл переносить часть вылизанного кода в оптимизированные библиотеки собранные в XDS, например.

ZIM подготовил приложение на платном компиляторе фирмы Интел (за 60000р, хотя есть и академический вариант), что дало колоссальный прирост скорости примерно в 50 раз! Что конечно супер. Если потребуется разрабатывать суперэффективные приложения для процессоров Intel, то очевидно надо выбирать ifort для разработки наиболее поддающихся оптимизации кусков вычислений. Или с тем-же успехом переносить код на C++ и компилировать его для графических процессоров с использованием технологии CUDA.

Но язык это не только заготовка для компилятора, язык программирования еще и Язык. И если Фортран-95 отягощен 60-летним мусором и только начинает поддерживать ООП. То Компонентный Паскаль (наследник Оберона-2) — очень компактный и современный язык, поддерживающий как ООП, так и КОП. Подробное сравнение с Фортраном-90 и С++ сделано Берндом Мёсли [Mösli B. A Comparison of C++, FORTRAN 90 and Oberon-2 for Scientific Programming // GISI. 1999. Vol. 95. P. 740–748].

Поэтому пока не буду спешить со сменой инструмента, ну а потом видно будет. Про известные недостатки Оберона скажут лучше его недоброжелатели.

Статьи по Оберону находятся на этом сайте: http://www.oberon2005.oberoncore.ru/.

Оберон — «простой как автомат Калашникова» берет начала в Высшей Политехнической школе ETH в Цюрихе, где учились Альберт Эйнштейн и Джон фон Нейман. Автор языка Никлаус Вирт.


После того как я попробовал компилятор ifort, я просто не поверил, что можно посчитать это так быстро. http://software.intel.com/en-us/non-com ... evelopment
мое письмо коллеге :) писал(а):
Не Андрей не может быть 0m0.302s :) он наверное все заранее посчитал и выдает результат. Если это оптимизирующий компилятор, то такое возможно, ведь эта процедура не от чего не зависит. Надо делать тогда программу с входными параметрами, чтобы он не мог заранее посчитать.

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

Поскольку я прекрасно понимаю, что такая штука хорошо оптимизирует только циклы, то не спешу списывать BlackBox. Для науки у них немного разные задачи.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 19:40 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9115
Откуда: Россия, Орёл
Вы учитывайте, что Интеловские компиляторы используют полное знание о внутренней архитектуре проца.
Ведь внутри Интела сидит RISC со своей системой команд - а над ним крутится микропрограмма. Зная нутро, очень легко сделать такие оптимизации, которые никто из внешнего мира не сделает.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 19:47 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2178
Откуда: Нижний Новгород
Иван Денисов писал(а):
QWERTYProgrammer писал(а):
Не уверен, стоит ли создавать новую тему, но утверждение в Blackbox-List
Иван Денисов писал(а):
The ifort Intel compiler is 50 times!!! faster than BlackBox in for loops tasks and 10 times faster than XDS Oberon Compiler with maximum optimisation. That can make sense then you make physics science.

хотелось бы уточнить, например посмотреть на пример такого FOR лупа. 50 раз это все-таки очень много. Или речь идет о тривиальной оптимизации, типа выноса вычислений из тела цикла?

Стоит вынести в отдельную тему «Сравнение компиляторов f95, ifort, xds, blackbox»


Я правильно понимаю, что f95 это gcc?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 19:51 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2301
Илья Ермаков писал(а):
Вы учитывайте, что Интеловские компиляторы используют полное знание о внутренней архитектуре проца.
Ведь внутри Интела сидит RISC со своей системой команд - а над ним крутится микропрограмма. Зная нутро, очень легко сделать такие оптимизации, которые никто из внешнего мира не сделает.
Верно говорите, этот компилятор под очень узкие задачи, например считать физику на кластере или что-то типа того. Еще забыл уточнить, что проверка проводилась на достаточно современных интеловских процессорах. В то время как оптимизация XDS сделана для достаточно старых моделей. Илья, интересно, а возможна ли какая-то оптимизация в BlackBox компиляторе? Скажем, коды XDS открыты, если перетащить оттуда алгоритмы, или заново, по литературе разбираясь, додумывать...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 19:54 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2301
Alexey Veselovsky писал(а):
Я правильно понимаю, что f95 это gcc?

Затрудняюсь ответить. Встроенный в Ubuntu компилятор... Вот что мне про него сказали «Gfortran очень ущербный.» Команда f95 входит в пакет gfortran.

Вот что выдает информация о нем
Код:
divan@hp:~$ f95 -v
Используются внутренние спецификации.
COLLECT_GCC=f95
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-linux-gnu/4.6/lto-wrapper
Целевая архитектура: i686-linux-gnu
Параметры конфигурации: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --enable-targets=all --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=i686-linux-gnu --host=i686-linux-gnu --target=i686-linux-gnu
Модель многопоточности: posix
gcc версия 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 20:22 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2178
Откуда: Нижний Новгород
Иван Денисов писал(а):
Alexey Veselovsky писал(а):
Я правильно понимаю, что f95 это gcc?

Затрудняюсь ответить. Встроенный в Ubuntu компилятор... Вот что мне про него сказали «Gfortran очень ущербный.» Команда f95 входит в пакет gfortran.

Вот что выдает информация о нем
Код:
divan@hp:~$ f95 -v
Используются внутренние спецификации.
COLLECT_GCC=f95
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-linux-gnu/4.6/lto-wrapper
Целевая архитектура: i686-linux-gnu
Параметры конфигурации: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --enable-targets=all --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=i686-linux-gnu --host=i686-linux-gnu --target=i686-linux-gnu
Модель многопоточности: posix
gcc версия 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)


gcc и есть. По моему опыту (я кидал ссылку) gcc оптимизирует лучше чем MSVS (по крайней мере в случае С++). Там где MSVS не может сделать векторизацию цикла, там gcc справляется. Не знаю что там с фортрановский фронтендом у gcc конечно... Скажем на Аде - та же картина. GNAT'овский код рвет C++/MSVS как тузик грелку (в 4 раза). С gcc/c++ gcc/ada (gnat) идет ноздря в ноздрю (если проверки у Ады поотключать). Но если при этом gcc все еще считается ущербным...

В общем, вы меня побудили скачать пробную версию интеловского компилятора (для С++) и погонять там мои актуальные (далеко не те что по ссылке) алгоритмы. Мне как раз сейчас требуется их ускорить хотя бы разика в 4, а лучше в 10.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 20:37 

Зарегистрирован: Пятница, 26 Август, 2011 23:42
Сообщения: 339
Откуда: Россия, Самара
Те кто используют фортран, знают для чего его использовать. Фортран не только язык, но и множество библиотек с отлаженными и проверенными функциями. Здесь ещё нужно ставить вопрос, не только языка, но и окружения.

Такие алгоритмы можно и на руби или питоне писать, если скорость не важна. Плюс автоматом кросплатформенность. Ну и java есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 20:45 

Зарегистрирован: Пятница, 26 Август, 2011 23:42
Сообщения: 339
Откуда: Россия, Самара
Если пускать ББ под wine, вся производительность тю тю. Нужно ещё учитывать, под какой системой будут разрабатывать.

К языку притензий нет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 20:48 

Зарегистрирован: Пятница, 26 Август, 2011 23:42
Сообщения: 339
Откуда: Россия, Самара
Цитата:
Поэтому пока не буду спешить со сменой инструмента, ну а потом видно будет. Про известные недостатки Оберона скажут лучше его недоброжелатели.


Да не в языке дело. На данный момент, среда ББ как спущенный якорь. Доделать консольный вариант проще и быстрее, чем разбираться в ББ, как оно там функционирует. Писать можно и в нотепаде.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 20:57 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2296
Откуда: Россия, Санкт-Петербург
Иван Денисов писал(а):
Скажем, коды XDS открыты
Неужели?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 21:05 

Зарегистрирован: Пятница, 26 Август, 2011 23:42
Сообщения: 339
Откуда: Россия, Самара
Поправка. Под wine скорость не упадёт.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 21:48 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2301
Александр Ильин писал(а):
Иван Денисов писал(а):
Скажем, коды XDS открыты
Неужели?
Туплю :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 21:56 
Аватара пользователя

Зарегистрирован: Четверг, 08 Октябрь, 2009 15:00
Сообщения: 2301
Jordan писал(а):
Цитата:
Поэтому пока не буду спешить со сменой инструмента, ну а потом видно будет. Про известные недостатки Оберона скажут лучше его недоброжелатели.

Да не в языке дело. На данный момент, среда ББ как спущенный якорь. Доделать консольный вариант проще и быстрее, чем разбираться в ББ, как оно там функционирует. Писать можно и в нотепаде.
Jordan, без этого вам ненавистного каркаса, ББ уже бы давно никто не использовал, на мой взгляд. Консольный компилятор на основе ББ сделать не представляет большого труда, и уже пара рабочих у народа есть, если ничего не путаю. По крайней мере, я видел уже один ConsCompiler в работе viewtopic.php?f=34&t=1159&p=74483&hilit=ConsCompiler#p74483 от Александра Ширяева.
Jordan писал(а):
Поправка. Под wine скорость не упадёт.
Иногда даже шустрее работает. 99% времени работаю с ББ через Wine.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Пятница, 06 Сентябрь, 2013 22:57 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2178
Откуда: Нижний Новгород
Ну что я могу сказать? Волшебства не произошло - на боевой задаче интеловский компайлер показал ту же производительность что и мелкомягкий.

Так что придется думать головой (и возможно на IPP переписывать часть алгоритмики).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Понедельник, 09 Сентябрь, 2013 22:00 

Зарегистрирован: Среда, 04 Июль, 2007 16:43
Сообщения: 233
Иван Денисов писал(а):
Вот код для фортрана, который использовался для небольшой рабочей проверки, про которую я говорил.
...

Как говорится, я не собираюсь критиковать, но я просто не понимаю, как с помощью этого бессмысленного теста можно сделать какие-бы то ни было выводы о работе компиляторов вообще:-(

1) при вычислении m*m очевидно происходит целочисленное переполнение.

2) поскольку суммируемые элементы внутреннего цикла не зависят от k, выносом этого цикла наружу достигается ускорение по сравнению с исходной оптимизированной (-O3) программой еще в 10 раз:
Код:
program bench;
IMPLICIT NONE
DOUBLE PRECISION, DIMENSION (1000,1000) :: x
INTEGER :: i,j,k,n,m
DOUBLE PRECISION, DIMENSION (1000) :: f
DOUBLE PRECISION :: sum
do i=1,1000
   do j=1,1000
      x(i,j) = 0
   end do
end do
n = 1
m = 1
f(1) = 0
do i=1,1000
   do j=1,1000
      x(i,j) = m*m+n*n+1
      f(1)=f(1)+x(i,j)/(x(i,j)+2.0d0/m)
      m = m + 1
   end do
   n = n + 1
end do
do k=2,1000
   f(k) = f(1)
end do
sum = 0
do k=1,1000
   sum = sum + f(k)
end do
write(*,*) sum, x(1000,1000)
end program bench

При этом код работает одинаково быстро как при компиляции с оптимизацией (-O3) так и без нее (-O0) - около 0.09 сек.

3) поскольку в фортране массивы хранятся по столбцам изменение очередности i и j циклов должно бы привести к дополнительному ускорению работы программы.

Для теста использовался gfortran.

И векторизация тут похоже не при чем.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Четверг, 12 Сентябрь, 2013 10:58 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8057
Откуда: Троицк, Москва
Иван Денисов писал(а):
оптимизация XDS сделана для достаточно старых моделей.
Оптимизация XDS сделана на "логическом" уровне (логика формул в программе и логика FP стека, которая не меняется с новыми процами), а оптимизации, опирающиеся на знание микропроцессора -- обычно крайне специфические (инженеры и делают процы с учетом стандартных тестов, чтобы можно было получить цифру).

Иван Денисов писал(а):
возможна ли какая-то оптимизация в BlackBox компиляторе?
ББ компилятор трогать отнюдь не полезно.

Оптимизирующий компилятор для КП может присутствовать как внешняя тулзовина. XDS могут это сделать, но нужно оплатить команде сколько-то месяцев (<= года) работы.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Четверг, 12 Сентябрь, 2013 11:00 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8057
Откуда: Троицк, Москва
Alexey Veselovsky писал(а):
Волшебства не произошло - на боевой задаче интеловский компайлер показал ту же производительность что и мелкомягкий.
История упорно повторяется уже лет 30-40.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Красноярская сборка BlackBox 1.6rc6
СообщениеДобавлено: Четверг, 12 Сентябрь, 2013 16:21 

Зарегистрирован: Вторник, 26 Январь, 2010 09:31
Сообщения: 677
Откуда: Барнаул
Иван Денисов писал(а):
а возможна ли какая-то оптимизация в BlackBox компиляторе?
"какая-то" там уже есть


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

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


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

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


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

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2019, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB