Open Source & Linux Lab

It's better when it's simple

User Tools

Site Tools


etc:users:zps:secr2009

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
etc:users:zps:secr2009 [2009/08/07 13:34] zpsetc:users:zps:secr2009 [2016/08/09 05:23] (current) – ↷ Links adapted because of a move operation 89.163.148.22
Line 8: Line 8:
 <note important> в стадии разработки </note> <note important> в стадии разработки </note>
  
-Современного человека все больше и больше окружают мобильные устройства: телефоны, персональные компьютеры, ноутбуки, навигаторы, всевозможные встраиваемые системы. Зачастую каждое из этих устройств имеет несколько вариантов использования, большая часть которых -- всевозможные мультимедия приложения. +Современного человека все больше и больше окружают мобильные устройства: телефоны, персональные компьютеры, ноутбуки, навигаторы, всевозможные встраиваемые системы. В первую очередь каждый тип устройств был предназначен для решения какого-то узкого набора задач. Однако, с ростом вычислительных мощностей этих устройств, количество реализованых в них функций растет. Благодаря этому росту появились такие классы устройств как смартфоны или нетбуки. Все эти устройства ограничены в своем энергопотреблении, поэтому для всех этих устройств разрабатываются специальные процессоры с низким энергопотреблениемобеспечивающие большее время работы устройства. Наиболее распротраненными с среде мобильных устройств стали процессоры с архитектурой ARM. В первую очередь это обсуловлено тем, что ARM-процесооры являются RISC процессорами, а следовательно более простыми и менее энергоемкими. Не смотря на то, что RISC архитектура более энергоэкономична, Intel продал своё подразделение по производству ARM процессоров XScale и полностью сосредоточился на развитии CISC архитектуры х86, в результате чего появились процессоры Intel Atom, не уступающие ARM процессорам в экономии энергии, при этом имеющие такую же архитектуру, как и подовляющие большинство настольных процессоров в мире.  
 +Мобильность устройства -- это то самое важное, что требуется сегоднящнему человеку
 Рассмотрим три наиболее показательных сценария применения мобильных устройств: Рассмотрим три наиболее показательных сценария применения мобильных устройств:
   * Пользователь использует свой мобильный телефон как mp3 плейер через беспроводную стерео гарнитуру, при этом, одновременно с этим он играет в любимую видео игру на этом самом же телефоне. Очевидно, что он ожидает, что музыка и звуки из игры будут выводиться одновременно без каких либо искажений и задержек.   * Пользователь использует свой мобильный телефон как mp3 плейер через беспроводную стерео гарнитуру, при этом, одновременно с этим он играет в любимую видео игру на этом самом же телефоне. Очевидно, что он ожидает, что музыка и звуки из игры будут выводиться одновременно без каких либо искажений и задержек.
Line 15: Line 16:
  
 Из вариантов использования вытекают следующие ключевые требования: Из вариантов использования вытекают следующие ключевые требования:
-  - поддержка QoS, +  - способность к быстрому реагированию на действия пользователя, не смотря на выполняемую задачу,
-  - способность к реагированию на действия пользователя,+
   - продолжительное время работы.   - продолжительное время работы.
  
-Поддержка QoS для пользователя потребует многопоточную систему. В случае использования одноядерного процессора, даже с поддержкой мультимедиа расширений, возможно он не сможет предоставить необходимый уровень загрузки и обработки данных в реальном времени, потому что вместо параллельной обработки данных, он будет использовать исключительно последовательную обработку с переключением задач. Чтобы удовлетворить требования имитации многозадочности, событий пользовательского интерфейса, одноядерный процессор должен постоянно переключаться между задачами. Данное переключение между задачами неизбежно приведет к потере медиа данных и для пользователя может быть выражено дребежащим звуком, артефактами на экране при просмотре видео или видео-звонке. +Выполнение этих требований для пользователяпотребует многопоточную систему. В случае использования одноядерного процессора, даже с поддержкой мультимедиа расширений, возможно он не сможет предоставить необходимый уровень загрузки и обработки данных в реальном времени, потому что вместо параллельной обработки данных, он будет использовать исключительно последовательную обработку с переключением задач. Чтобы удовлетворить требования имитации многозадочности, событий пользовательского интерфейса, одноядерный процессор должен постоянно переключаться между задачами. Данное переключение между задачами неизбежно приведет к потере медиа данных и для пользователя может быть выражено дребежащим звуком, артефактами на экране при просмотре видео или видео-звонке. 
 На рисунке представлена схема работы одноядерного для мобильного устройства, например, телефона. На рисунке представлена схема работы одноядерного для мобильного устройства, например, телефона.
 \\ {{etc:users:zps:1cpu_parallel_and_multicore.png?350|}} \\ \\ {{etc:users:zps:1cpu_parallel_and_multicore.png?350|}} \\
 Из риснука виндно, что с одной стороны процессору довольно часто приходится преключаться между задачами различных типов, которые в свою очередь можно делать параллельно. Так, компания Texas Instruments предложила линейку процессоров OMAP(Open Multimedia Application Platform). Данный процессор на самом деле представляет из себя несколько процессоров, каждый из которых отвечает за определенную функциональность, распараллеливая таким образом независящие задачи (см. рисунок). Из риснука виндно, что с одной стороны процессору довольно часто приходится преключаться между задачами различных типов, которые в свою очередь можно делать параллельно. Так, компания Texas Instruments предложила линейку процессоров OMAP(Open Multimedia Application Platform). Данный процессор на самом деле представляет из себя несколько процессоров, каждый из которых отвечает за определенную функциональность, распараллеливая таким образом независящие задачи (см. рисунок).
 \\ {{etc:users:zps:2cpu_parallel_and_multicore.png?350|}} \\ \\ {{etc:users:zps:2cpu_parallel_and_multicore.png?350|}} \\
-Внедрение компонентов, отвечающих за конкретные функции, например, обработку медиа-информации, позволяют реализовать практически все основные требования. Однако, под большим вопросом остается вопрос энергопотребления данного процессора. Безусловно, введение дополнительного числа процессоров увеличивает суммарное энергопотребление, но только в том случае если они все одновременно работают. Введение возможности отключать или переводить бездействующие элементы в режим энергосбережения, когда они не нужны, позволит уменьшить потребление энергии по сравнению с вариантом, когда установлен единственный процессор, обрабатывающий все данные. +Такое разделение можно назвать "гетерогенной" многоядерной архитектурой, так как на самом деле процессор состоит из нескольких различных ядер, отвечающих за конкретную функциональность. Внедрение таких компонентов, отвечающих за конкретные функции, например, обработку медиа-информации, позволяют реализовать практически все основные требования. Однако, под большим вопросом остается вопрос энергопотребления данного процессора. Безусловно, введение дополнительного числа процессоров увеличивает суммарное энергопотребление, но только в том случае если они все одновременно работают. Введение возможности отключать или переводить бездействующие элементы в режим энергосбережения, когда они не нужны, позволит уменьшить потребление энергии по сравнению с вариантом, когда установлен единственный процессор, обрабатывающий все данные. 
  
-Тем не менее, борьба за время работы устройства приводит к тому, что большинство процессоров поддерживают несколько режимов энергосбережения. При этом очевидно, что потребляемая мощность прямо-пропорциональна тактовой частоте процессора, т.е. чем больше частота работы процессора, тем больше энергии он потребляет и тем меньше время жизни устройства, в котором он установлен. Но данная формула работает только в случае если не обращать внимание на наличие режимов энергосбережния. Так в [[http://www.thg.ru/howto/core_2_duo_e7200_atom_230/index.html]] показано, что в режиме энергосбережения настольный процессор практически не уступает мобильному, имея при этом большую производительность. И действительно, как изменится время жизни мобильного устройстваесли его оснастить многоядерным процессором с поддержкой нескольких режимов энергосбережения и, например, возможностью полностью отключать второе ядро, в моменты когда устройству не требуется большой производительности? +Одновременно с "гетерогеннойархитектурой существует и омогенная" архитектура, в которой добавлется несколько идентичных процессорных ядер. В таком случае в любой момент времени любое ядро может решать любую задачу, напримерзаниматься кодированием/декодированием аудио сигнала, в то время как другое ядро процессора, например, будет обеспечивать взаимодействие с пользователем.
  
 +Тем не менее, как показала история, лучшее решение -- золотая середина. Так, следующее поколение ARM процессоров уже будет многоядерным.((http://www.physorg.com/news164386074.html)) Они будут содержать до 4х ядер на одном кристале. Логично предположить, что они будут соединены с сигнальными процессорами и через пару лет многоядерность придет в смартфоны, нетбуки и остальные мобильные устройства.
 +
 +Тем не менее, борьба за время работы устройства приводит к тому, что большинство процессоров поддерживают несколько режимов энергосбережения. При этом очевидно, что потребляемая мощность прямо-пропорциональна тактовой частоте процессора, т.е. чем больше частота работы процессора, тем больше энергии он потребляет и тем меньше время жизни устройства, в котором он установлен. Но данная формула работает только в случае если не обращать внимание на наличие режимов энергосбережния. Так в [[http://www.thg.ru/howto/core_2_duo_e7200_atom_230/index.html]] показано, что в режиме энергосбережения настольный процессор практически не уступает мобильному, имея при этом большую производительность. Но зачем мобильному устройству многоядерный вычислительный процессор? Большинство из пользователей мобильных устройств практически всегда пользуются настольными компьютерами и хотят перенести часть приложений с настольного компьютера на мобильный. Большинство современных приложений являются многопоточными и потенциально могут работать быстрее на нескольких вычислительных ядрах процессора. При этом, время работы процессора в пиковом режиме существенно меньше, что уменьшает энергопотребление. 
 +
 +Появление многоядерных процессоров в мобильных системах -- дело ближайшего будущего. Помимо улучшения технологии производства мобильных процессоров и увелечения вычислительных ядер в них, в области самих мобильных устройств активно развиваются сетевые технологии. Сети 4го поколения начинают внедрятся, появляются устройства, умеющие работать в подобных сетях. Основная идея будещего -- сеть окружает нас, все устройства находятся в единой сети. Данное предположение открывает множество дополнительных возможностей, особенно в области многоядерных систем, которые могут объединятся в вычислительные сети и предоставлять в определенные моменты времени свои ресурсы другим участникам сети. 
 +
 +Представим ситуацию, что в одной беспроводной сети объедено много устройств: как мобильных так и обычных стационарных. Мобильные устройсва соответственно ограничены своими элементами питания. Внедрение в мобильные устройства алгоритмов точного предсказания времени жизни этого устройства, позволит планировать его нагрузка, не только с учетом своей персональной батареи, но и с учетом инфраструктуры вокруг. Представим, что пользователь смотрит видео фильм. Распаковка видео потока данных требует больших вычислительных ресурсов, причем много больших нежели взаимодействие с окружающей средой и передача сигналов. В такой ситуации, устройство может делегировать вычислительные процесса менее загруженному и в тоже время, например, стационарному устройству, у которого нет батареи и ему нет необходимости экономить энергию. В таком случае мы получаем своего рода социальную сеть из устройств, загрузка которых регулируется в зависимости от окружающей их устройств и среды в целом.
 +
 +===== some stuff/ideas/questions  ==
 +
 +  * Multicore vs Cloud computing
 +  * Ambiguous computing in cloud spaces
 +  * Multicore and power efficiency
 +  *  {{etc:users:zps:10.1.1_3.pdf|Multicore for mobile phones}}
 +  *  {{etc:users:zps:27-687.pdf|Power Efficiency Study of Multi-threading Applications for Multi-core Mobile Systems }}
 +
 +== some links ==
 +  * http://www.ddj.com/architect/217500655
 +  * http://www.physorg.com/news164386074.html
  
  
Line 34: Line 53:
   - http://www.3dnews.ru/news/nokia_lider_zelenogo_reitinga_grinpis/   - http://www.3dnews.ru/news/nokia_lider_zelenogo_reitinga_grinpis/
   - http://focus.ti.com/pdfs/wtbu/TI_omap2420.pdf   - http://focus.ti.com/pdfs/wtbu/TI_omap2420.pdf
 +  - http://software.intel.com/ru-ru/blogs/2009/08/13/iii/ 
 +  - http://software.intel.com/ru-ru/blogs/2009/08/20/2001968/ (Неплохая идея про мощные вычисления, можно ее развить на мобильные девайсы, и объяснить почему многоядерность -- хорошо.)
etc/users/zps/secr2009.1249637689.txt.gz · Last modified: 2009/08/07 13:34 by zps