The OpenNET Project / Index page

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

Компания Imagination опубликовала код для поддержки процессорных ядер Meta ATP и HTP в Linux

06.12.2012 10:24

Компания Imagination Technologies опубликовала в списке рассылки ядра Linux набор из 44 патчей с реализацией поддержки работы ядра Linux на 32-разряных процессорах Meta ATP (Meta 1) и HTP (Meta 2), примечательных поддержкой дополнительного набора DSP-инструкций и обеспечением аппаратной многопоточности (виртуальных процессоров). Представленный набор патчей позиционируется как готовый вариант, пригодный для включения в состав ядра Linux (месяц назад была опубликована первая версия патчей, которая позиционировалась как начальный прототип для сбора замечаний и отзывов).

Процессоры Meta нацелены на использование во встраиваемых системах, работа которых требует высокопроизводительной обработки сигналов в режиме реального времени, например, цифровых радиоприёмниках. Поддержка аппаратной многопоточности позволяет одновременно выполнять разные операционные системы на разных аппаратных нитях. Например, в цифровых радиоприёмниках для декодирования DAB-потоков (Digital Audio Broadcasting) и обработки звука может использоваться RTOS-система MeOS, которой выделены три аппаратных нити. Параллельно, на четвёртой нити может выполняться Linux, который будет обеспечивать работу пользовательского интерфейса, сетевого доступа и вспомогательных функций.

В случае использования процессоров Meta HTP, Linux может работать в режиме SMP, с выделением одновременно нескольких аппаратных нитей. При этом в отличие от традиционных многоядерных систем, переключение контекста между нитями производится в непрерывном цикле, исключая простои процессора (в каждом цикле нить использует все доступные ресурсы CPU, в то время как при высокой нагрузке на одно ядро в многоядерных системах остальные ядра могут простаивать). Каждая нить может быть настроена для выполнения обычных вычислений или работать как DSP с предоставлением доступа к дополнительным регистрам и ресурсам ALU (Arithmetic logic unit), позволяющим выполнять расширенные алгоритмы по обработке сигналов, применяемые в таких областях, как аудиокодеки и модемы. Кроме того, допускается гибкое управление выделяемыми каждой нити ресурсами.



  1. Главная ссылка к новости (https://lkml.org/lkml/2012/12/...)
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/35520-meta
Ключевые слова: meta, cpu, linux, kernel, embedded
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (14) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, анонимус (??), 11:41, 06/12/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Какая прелесть!
     
  • 1.5, sasa (??), 12:12, 06/12/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    > 2-разряных процессорах Meta ATP (Meta 1) и HTP (Meta 2), примечательных
    > поддержкой дополнительного набора DSP-инструкций и обеспечением аппаратной
    > многопоточности (виртуальных процессоров)

    Какой-то ремейк Hyperthreading с плюшками

    > Компания Imagination Technologies опубликовала в списке рассылки ядра Linux
    > набор из 44 патчей
    > Memory Management Unit Optimised for Linux

    вот что Android животворящий и отец его Google творит, а вы все "ред хет, ред хет!"

     
     
  • 2.7, Аноним (-), 12:39, 06/12/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Какой-то ремейк Hyperthreading с плюшками

    Скорее аппаратный тасксвичер.

    > вот что Android животворящий

    Загвоздка только в том что под эту платформу нет никакого андроида :)

     
     
  • 3.8, sasa (??), 12:56, 06/12/2012 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Скорее аппаратный тасксвичер

    Сколько бы плюшек там ни добавили - это всего лишь развитие идей Intel HT Technology

    > Threads share the processor’s core resources such as
    > register execution units (ALUs, multiplier, accumulator
    > etc) and coprocessor ports, but have some discrete
    > resources such as read/write ports.
    > Although the processing resources are shared, to
    > accommodate multiple thread contexts, each execution unit
    > holds a local register state, an execution pipeline and a
    > program counter (PC) for each thread. A separate control
    > unit holds mode bits and control registers for each thread.

     
     
  • 4.11, Аноним (-), 13:49, 06/12/2012 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не особо похоже. HT - это прежде всего фэйковые ядра для более полной прогрузки исполняющих элементов за декодером, за счет чего и наступает некий профит. Для этого декларируется больше ядер, дабы спровоцировать софт на генерацию добавочных потоков команд, которые можно будет пытаться выполнить параллельно. А тут утверждается что все выполняющие элементы отдаются именно 1 потоку. По поводу чего и не похоже на HT. Просто железячный тасксвичер.
     
     
  • 5.13, sasa (??), 13:57, 06/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > А тут утверждается что все выполняющие элементы отдаются именно 1 потоку.

    Где это тут ?

    > Each thread can use different processor resources at the
    > same time, or one thread can use all of the processor’s
    > resources

     
     
  • 6.14, Аноним (-), 14:35, 06/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > or one thread can use all of the processor’s resources

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

     
     
  • 7.17, sasa (??), 15:11, 06/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > Вот здесь

    Но там написано совсем другое - не надо пол предложения выкидывать. Отдавать все ресурсы на поток - это вообще идиотская затея, в чем тогда профит расшаривания ресурсов процессора ? а это здесь основное - более эффективная работа процессора, а при необходимости все что нужно отдается приоритетному потоку - в этом случае он не отличается от обычного процессора.

     
     
  • 8.18, Аноним (-), 22:16, 06/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Напротив Иногда бывает так что задача не параллелится вообще Поэтмоу даже инте... текст свёрнут, показать
     

  • 1.12, nur (?), 13:54, 06/12/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    хотелось бы вкратце понять, как это отразится на евреях^W^W^W
    что полезного это дает конечному клиенту... ну или хотя бы серверу
    расширенная виртуализация?
     
     
  • 2.15, sasa (??), 14:37, 06/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > что полезного это дает конечному клиенту... ну или хотя бы серверу
    > расширенная виртуализация?

    много полезного, в том числе и для полной виртуализации, но больше по-моему подходит для embedded - то что на ARM например требует написание дополнительного монитора для разделения ресурсов RTOS/GPOS (здесь например наглядно описано http://www.toppers.jp/en/safeg.html), тут делается аппаратно - достаточно потоку с RTOS назначить более высокий приоритет.

     
  • 2.16, Аноним (-), 14:38, 06/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    > что полезного это дает конечному клиенту... ну или хотя бы серверу

    Больше линукса во всяких радиоприемниках и чего там еще :)


     
     
  • 3.19, Ы (?), 08:22, 07/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    ... вообще то - на ракетах и торпедах. Но в принципе - тоже приемники.
     
     
  • 4.20, Аноним (-), 20:11, 07/12/2012 [^] [^^] [^^^] [ответить]  
  • +/
    Как пример приводился радиоприемник :)
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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