Arhaim | ||||
Как Вы думаете, какая организация кэш памяти 2-го уровня лучше для двухъядерных процессоров - два кэша (для каждого ядра отдельный) или один общий блок памяти? | ||||
-=Велла=- | ||||
А что измениться от того, что мы считаем лучше? Фирма-производитель будет делать как мы скажем? | ||||
klll | ||||
Однозначто общий КЭШ лучше. Проц сам выбирает для каких действий ему надо больше "памяти" и для какого Кэша 1 -го уровня... | ||||
Arhaim | ||||
Однако если посмотрим на решение АМД для серверных платформ В этом случае при интенсивной загрузке обоих ядер (согласитесь, типичная ситуация для любого сервера) эффективно используется только часть памяти на каждое ядро, а время доступа к остальному объему сравнимо со временем доступа к оперативной памяти. | ||||
Arhaim | ||||
Ничего... Просто интерестно, какое архетектурное решение кажется более правильным... |
||||
Mr.Disel | ||||
Ясно что разделяемый лучше, т.к. в приложениях не оптимизированных под двуядерность(работает одно из ядер процессора), ядро может использовать весь кэш. Т.е. допустим есть два проца у первого два ядра и на каждое ядро по 1Мб кэша, у второго процессора 2Мб разделяемого кэша. То при выполнении приложений без оптимизации под двуядерность первый проц сможет задействовать только свой кэш, а это 1Мб. В то время как второй может использовать все 2Мб. Вот такая арифметика, если кто чего понял... Кстати разделяемым в ближайшее время станет кэш только 3-го уровня(так называемый L3) Это сообщение отредактировал Mr.Disel - 19-02-2007 - 15:29 |
||||
Arhaim | ||||
Ну тогда по твоей логике как раз общий и лучше. то есть если у одного проца 2 ядра и для каждого по одному кэшу (то есть он раздельный), а у другого проца 2 ядра и один кэш общий (совмесный и по емкости равен 2-м раздельным), то при простое второго ядра общий кэш весть (почти весь ![]() Но на самом деле тут вопрос глубже. Ведь есть проблемы такие как конфликты при доступе к общей памяти с одной стороны, и упрощение обмена данными между ядрами проца ![]() |
||||
Arhaim | ||||
Вообще как было замечено выше фирма интел делает общий кэш на многоядерных системах используя хитрую технологию. А решение амд для серверных систем ипользует раздельный кэш ))) Но вот что лучше... это воопрос! |
||||
Mr.Disel | ||||
Вот именно что РАЗДЕЛЯЕМЫЙ между двумя ядрами (он же общий), а не РАЗДЕЛЕННЫЙ! Не путай понятия ![]() Про сложности ты прав, имнно по этому индустрия только что и подходит к использованию раделяемого(общего) кэша. Т.к должны быть еще грамотно реализованы алгоритмы его распеделения, а это не так то просто... И что в итге лучше будет зависит именно от реализации этих алгоритмов. Но должно быть лучше, т.к. в противном случае с ним бы не связались... Это сообщение отредактировал Mr.Disel - 20-02-2007 - 14:01 |
||||
Arhaim | ||||
То есть кэш никого не интересует :( ![]() |