NUMA архотектура?

Тема в разделе "WASM.OS.DEVEL", создана пользователем abcd008, 13 май 2011.

  1. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    Помогите разобраться.
    я читал что numa используется в процессорах amd. но в последней документации на процессоры, описывается только стандартная smp.
    где можно подробнее почитать про numa?? что это я знаю. а вот как работает??
    интересуют вопросы:
    -когентность кеша в разных процессорах.
    -обмен данными между процами
    -пример таблици описания памяти acpi.


    короче интересует все что связано с numa. мне это надо для написания ядра. поэтому хочу знать все нюансы реализации.
    заранее благодарен за ссылки и коментарии. но просьба только по теме.
     
  2. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    неужели не кто с этим не сталкивался?
    с процессорами и памятью все более менее понятно. но как работают устройства в numa?
    как я понимаю они тоже подключены к разным узлам. как тогда например обратиться к видеопямяти с процессора не принадлежащего данному узлу. и есть ли разнитца в скорости при обращении к переферии соседнего узла(или я вообще не могу ей пользоваться с другого узла)????
     
  3. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    спасибо за помошь
     
  4. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    Вероятно, на практике с таким никто не сталкивался. Насколько понимаю, всё железо (и внешние устройства, и ОЗУ) продолжает оставаться доступным для любого из процессоров в системе, но вот скорость действительно меняется. Если склероз не изменяет, в таблицах ACPI описывается в том числе "сродство" памяти/шин с процессорами, но утверждать не берусь: никогда этим не интересовался всерьёз, а посему и не изучал.
     
  5. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    именно так и есть. остался только как например писать в видеопамять, если она принадлежит только одному узлу, а остальны получается ее тормозят.
    а самый главный вопрс это как работает dma(например ata)
     
  6. SII

    SII Воин против дзена

    Публикаций:
    0
    Регистрация:
    31 окт 2007
    Сообщения:
    1.483
    Адрес:
    Подмосковье
    По всей вероятности, работает, как обычно. Каждому из сегментов шины PCI/PCI Express (в первом приближении можно считать, что для программиста это одно и то же) назначен свой диапазон адресов. Если некое устройство-задатчик ("мастер") обращается по адресам, назначенным тому же сегменту, на котором оно само сидит, то этот запрос за пределы сегмента не уходит и выполняется в нём (ну или возникает ошибка, если запрошенным адресам никакой реальной памяти не соответствует). Если же целевой адрес принадлежит другому сегменту шины, то через мосты запрос добирается до места назначения, где и выполняется (или, опять-таки, происходит облом из-за того, что он не принадлежит никакому устройству). В общем, для программиста эта схема абсолютно прозрачна, но только с того момента, как все мосты настроены должным образом. Конечно, скорость прямого доступа зависит от того, насколько далеко запросу приходится бежать, и эффективная система должна бы это учитывать...
     
  7. MisHel64

    MisHel64 Member

    Публикаций:
    0
    Регистрация:
    9 мар 2011
    Сообщения:
    182
    Ну почему же, сталкивался. Просто постановка вопроса, явно указывает, на ненужность ответов.
     
  8. abcd008

    abcd008 New Member

    Публикаций:
    0
    Регистрация:
    8 фев 2009
    Сообщения:
    616
    MisHel64 просто твои ответы всегда одинаковы. сделать умный вид и нехрена при этом не сказать по теме))) а потом и мысли расходиться начнут....