Page 2 of 5

Re: Google Summer of Code 2012

Posted: Sat Feb 18, 2012 10:02 am
by SoUrcerer
Зачем нам инкскейп? Свой векторный редактор зафигачим. Ну, я на это надеюсь. И на свежие силы - тоже :)

Re: Google Summer of Code 2012

Posted: Sat Feb 18, 2012 6:17 pm
by ilya
11. What criteria did you use to select your mentors for this year's program? Please be as specific as possible.
People who themselves are willing to help others and have required knowledge to do so are selected as mentors. (Нужны проекты чтобы отвечать подробно)
12. What is your plan for dealing with disappearing students?
Additional mentors and other students(if they agree) may be assigned to help if students experience lack of documentation on their projects or lack of help. But not much can be done if students loose interest.
If the unfortunate event happens without any chance to get the student back then mentors will try to finish students project given that his project is close to completion.
13. What is your plan for dealing with disappearing mentors?
This normally doesn't happen as our mentors are very dedicated and responsible people. In a rare event when this does happen we will try to find a replacement.
14. What steps will you take to encourage students to interact with your project's community before, during and after the program?
Wiki page contains documentation on Kolibri internals and Kolibri API. The source code is available through SVN including the web access.
Students can ask questions real-time on our IRC channel or chat. Question on forum are answered promptly as there is always a number of knowledgeable members hanging around. Our forum members gladly accept and reply private messages.

Re: Google Summer of Code 2012

Posted: Tue Feb 21, 2012 11:19 pm
by Serge
Придумал тему.

В многоядерных конфигурациях стартовать одно физическое ядро и использовать его для выполнения всех графических операций.

Обоснование.

Для большого числа систем низкая скорость обмена с видеопамятью является ключевым фактором, ограничивающим быстродействие системы. Например для моего i5-2400+H67 отрисовка 30 кадров в секунду с разрешением 1280*1024*32bpp приводит к 100% загрузке процессора. При этом скорость обмена с видеопамятью составляет всего 150Мb в секунду. 100% загрузка в этом случае означает лишь то, что процессор подавляющую часть времени проводит в ожидании завершения операции обмена с видеопамятью.Его можно сравнить с автомобилем, стоящим в пробке с выключенным мотором.

Перенос графических операций на другое физическое ядро:
1. Освободит основной процессор для выполнения полезной работы.
(То есть он будет спать на hlt 99% времени, как ему и положено )
2. Снизит нагрузку на L1 и L2 кеш.
Все графические операции в ядре выполняются с проверкой принадлежности пикселя при помощи байтовой карты окон. Это приводит к тому, что при выполнении графических операций полезные данные из L1 и L2 вытесняются данными оконной карты. При этом низкая скорость видеопамяти существенно снижает пользу от кеширования оконной карты. Физические ядра современных процессоров имеют индивидуальные L1/L2 кеши. Таким образом выполнение графических операций другим ядром значительно снизит нагрузку на кеш-память основного ядра. (И мы сможем убить кеш битмапами )

PROFIT реализатора идеи.
Практические навыки определения числа физических ядер в MP системе, инициализации AP и принципов работы LAPIC.
Глубокое понимание механизмов синхронизации доступа к данным, необходимости синхронизации TLB, а также блокировки и взаимной блокировки ядер.
Бесценный опыт трассировки и отладки многопоточного кода в SMP версии Bochs.

P.S. Я убрал смайлики.

Re: Google Summer of Code 2012

Posted: Tue Feb 21, 2012 11:29 pm
by Leency
Звучит нереально круто. Если мнение плохих программистов и скромных дизайнеров важно, то я за.

Re: Google Summer of Code 2012

Posted: Wed Feb 22, 2012 12:12 am
by Serge
Для студентов изучающих SMP самое то. Это на порядок проще чем реализация полноценной SMP системы, но все подводные камни MP присутствуют и испытываются на собственной шкуре.
Race conditions, deadlock, TLB inconsistency ( всех этих слов на русском нет ©Наше всё). Если хочешь по настоящему научиться, Колибри самый подходящий вариант. Ядро достаточно простое, своего SMP нет, а все необходимые условия для запуска AP есть. Эмуляция виртуального GPU задача не самая сложная. Можно посмотреть на VMware или придумать свой API. Реально получить опыт, который не даст ни один учебный курс и штудирование всего Open source SMP кода.

Re: Google Summer of Code 2012

Posted: Wed Feb 22, 2012 1:12 am
by art_zh
Serge
Задачка что надо: сложная, интересная, оригинальная, полезная.
И еще - покажет преимущества Колибри как идеальной среды для low-level экспериментов.
Таким образом выполнение графических операций другим ядром значительно снизит нагрузку на кеш-память основного ядра. (И мы сможем убить его битмапами )
в самую точку :D

Re: Google Summer of Code 2012

Posted: Wed Feb 22, 2012 1:17 am
by Mario
Из хобби ос перемещаемся в сегмент обучения студентов. Жаль только в ту пору прекрасную жить не придется ни мне ни тебе в России так и будут плодить дельфи-программистов.

Re: Google Summer of Code 2012

Posted: Wed Feb 22, 2012 1:20 am
by Serge
art_zh
Кеш: Такая уж наша боярская доля.

Re: Google Summer of Code 2012

Posted: Wed Feb 22, 2012 1:28 am
by Mario
Кстати замечание насчет кеша процессора не совсем справедливо. Очень много моделей с общим кешем, так что могут быть и накладки в производительности.

Re: Google Summer of Code 2012

Posted: Wed Feb 22, 2012 1:33 am
by Serge
Mario
Надо смотреть. Всё относилось только к физическим ядрам. L1 там как правило индивидуальный. Всякие гипертрейдинги и бульдозерные модули не в счёт. Хотя и с них должен быть профит.
Единственный непонятный момент это контроллер памяти. Как он обрабатывает такие медленные запросы и не встанет ли на них. Чего я не не понимаю, так это почему у меня такая низкая скорость записи. Ведь это физически та же двухканальная DDR3 что и системная память. Откуда такие тормоза ?

Re: Google Summer of Code 2012

Posted: Thu Feb 14, 2013 11:51 am
by yogev_ezra
Прошёл год... Встречайте Google Summer of Code 2013. В этот раз вы как хотите, а заявку я подам :-)

Re: Google Summer of Code 2012

Posted: Thu Feb 14, 2013 12:57 pm
by XVilka
Поддерживаю, заявка на SummerCode нужна. Однако нужна страница, например как у QEMU http://wiki.qemu.org/Google_Summer_of_Code_2012 или у других проектов участвующих в GSoC

Re: Google Summer of Code 2012

Posted: Thu Feb 14, 2013 1:08 pm
by yogev_ezra
XVilka wrote:Поддерживаю, заявка на SummerCode нужна. Однако нужна страница, например как у QEMU http://wiki.qemu.org/Google_Summer_of_Code_2012 или у других проектов участвующих в GSoC
Так вот зачем ты мне вчера вечером админа на Вики предлагал :lol: Ну давай теперь админа, что уж.

Re: Google Summer of Code 2012

Posted: Thu Feb 14, 2013 2:41 pm
by Leency
Клёвая идея!

Re: Google Summer of Code 2012

Posted: Sun Mar 17, 2013 1:32 am
by XVilka
Время поджимает. Надо заполнять эту страницу http://wiki.kolibrios.org/wiki/Google_S ... _Code_2013 содержанием, и создать отдельную страницу для собственно идей/возможных проектов. См., например, как это сделано у coreboot http://www.coreboot.org/GSoC и http://www.coreboot.org/Project_Ideas

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