Как будут развиваться дальше процессоры?

 
1 2 3 4
RU Alesandro #15.01.2004 11:18
+
-
edit
 

Alesandro
Серокой

координатор
★★★
Wyvern, 14.01.2004 23:43:10:
Есть идея(нахожуся? :rolleyes: ) получше. Процессор - набор исполнительных элементов, типа сдвигатели, сумматоры, умножители, делители(а почему нет? у нас же МИЛЛИАРД транзисторов!) и т.д.+матрица-коммутатор.
 

И вернулись мы в 70-е - к микропроцессорным секциям.
Больше не раскалятся ваши колосники. Мамонты пятилеток сбили свои клыки. ©  
RU Dem_anywhere #15.01.2004 14:08
+
-
edit
 

Dem_anywhere

аксакал

А давайте сначала всё-таки подумаем, а зачем нам эти процессоры будут нужны?
В "оффисе" тексты набивать - с этим и 486 справлялся
А обработка аудио/видео - для неё не скорость нужна, а количество операций в секунду - задача вполне распарралеливаемая.
Не случайно же все расширения MMX/SSE/3Dnow - это в основном параллельная обработка.
Т.е. может пойдёт в сторону увеличения ширины шины? Например четырёхкилобайтная шина позволит за раз обработать строку видеокартинки
 
Balancer, 15.01.2004 09:21:15:
Дык, основные команды 486 итак за такт делает, а сложные - не реализуешь в базовом конструктиве. Не проще ли от них отказаться и получить классический RISC типа того же ARM (сейчас опять его нелюбители на меня наедут )

Зачем велосипед изобретать, когда давно уже полно массовых RISC-процессоров. И 400МГц у XScale - это ширпотреб давно При копеечном на своременном уровне энергопотреблении (1000мАч с ЖКД с подсветкой у рекордсменов на 15 с лишним часов хватает)
 

Ну хорошо, RISC. Стандартизировали систему команд, напихали на плату разъемов.

И чего дальше?

Интеркоммуникации все загубят. И на мягком уровне, и в железе. Если память общая - по причине ее тормознутости, если у каждого своя - то потому, что раздать исходные данные и собрать потом результаты в кучу - отдельная, ресурсоемкая задача. Выигрыш в таких системах будет только если вычислений надо много, а данных для них - относительно мало. Ну, сжатие видео по ну очччень крутому формату (даже дивкс - уже сомнительно), например.

Чем больше процов в системе, тем большие ресурсы тратятся на интеркоммуникацию в широком смысле. Это шины, шины - на плате, они занимают площадь, мощные высокочастотные шины усложняют разводку. Это все стоит денег. Под процессоры нужны разъемы. Разъемы занимают площадь. Это тоже стоит денег... ну и т.д. Когда я покупаю атлон, в нем все это унутри, оптом. Атлон тоже неэффективен, просто неэффективен иначе. Тут площадь платы требуется тратить на шины и снижать быстродействие шин, там площадь чипа требуется тратить довольно неэффективно под тупой кэш - из соображений рассеваимой энергии.

Далее. Смотрим. Сколько процов можно воткнуть в систему - из соображений распараллеиваимости задач, коммуникации, объема и прочего? Ну, скажем, порядка полусотни. 64, например. Больше уж точно в одну кучу разумным образом не связать и в задачах нормального пользователя не использовать. Выигрываем в производительности - ну, скажем, раз в 10. ОК, супероперационка, очень привыкшие программеры, заточенные под транспьютерность языки - в 20 раз. А оно того стоит? Не, серьезно? Это ж от силы три-четыре года нормального развития технологии покроют такую разницу с лихвой... А нам ведь для достижения такого результата надо перестраивать всю структуру софтварной индустрии как минимум, и с хардварой много чего менять... а если деньги потратим на это, меньше денег пойдет в другое место. Например, на техпроцессы.
Это даже если мы забудем о совместимости с виндами/линуксом/х86 как о страшном сне.

И наконец. ОК. Добились своего - стоит у нас в нормальном бытовом проце н процессоров. А дальше?
Хорошо сейчас сравнивать последний ARМ с последним Атлоном - эк он здорово выглядит, как мало кушает и какие мипсы на один бакс. А продолжим развивать систему. Производительность растет, скорости коммуникаций - тоже, как-то вот и кэш появился, и обвязка усложняется и все больше кеширует, и система команд слабенькая - того нет, сего нет, расширить надо бы, разрядность кислая... а совместимость - держать! держать! не зря ж страдали! Эффективность чипов на квадратный сантиметр падает, падает и в какой-то момент - оп! Чем-то проц "новой архитектуры" напоминает по эффективности на кв. см. Атлон дветыщимохнатого года выпуска, но стоит он уже в системе, масса ресурсов которой тратится на взаимодействие, распараллеливание, разрешение конфликтов и проч, проч, проч. Возникает вопрос: а нафига бы?

Вот те кто финансировал траснпьютерщиков - очень вовремя это осознали. Тупик.

Не, конечно, если дан некий уровень технологии, а вычислять хочется все больще и больше - тогда куда, нафиг, денешься: воткнешь кучу процов, смиришься. Да и то ведь, что интересно, суперкомпы из пачки АРМов не набирают... все как-то больше что-то многомегагерцевое сунут норовят, хотя задачи у суперкомпьютерщиков - вычислять не перевычислять. Белки считать - петабайты не ворочать.

Дык, вот оно как видится.
 
+
-
edit
 

Balancer

администратор
★★★★☆
Guest, 15.01.2004 16:00:30:
Чем больше процов в системе, тем большие ресурсы тратятся на интеркоммуникацию в широком смысле. Это шины, шины - на плате, они занимают площадь, мощные высокочастотные шины усложняют разводку.
 

И апофигеоз этого - ПЛИС

>Выигрываем в производительности - ну, скажем, раз в 10. ОК, супероперационка, очень привыкшие программеры, заточенные под транспьютерность языки - в 20 раз. А оно того стоит? Не, серьезно? Это ж от силы три-четыре года нормального развития технологии покроют такую разницу с лихвой...

Твоими бы устами, да медку Четре года назад - это 2000-й год. Это массовые Celeron ~400МГц, топовые - ~600МГц P3. С тез пор только частота процессора поднялась всего в 5 раз. Но уж никак не в 20. А быстродействие системы в целом - дай Бог вдвое-втрое Память-то со 100/133МГц и слово/такт перешла на 133..200МГц два/четыре слова за такт. А латентность даже и ухудшилась. Учитывая всё возрастающие сложности роста частот - через 3-4 года, если не будет каких-то прорывов, дай Бог 10ГГц у топовых моделей будет. А поднять скорость в 20 раз - это частоту раз в 100 задрать нужно

>А нам ведь для достижения такого результата надо перестраивать всю структуру софтварной индустрии как минимум, и с хардварой много чего менять...

Это, как раз, не сложно. Уже не раз делалось Главное производителя заинтересовать.

>Это даже если мы забудем о совместимости с виндами/линуксом/х86 как о страшном сне.

Мостки к этому уже есть и делаются новые. Если Java можно назвать не очень удачной попыткой, то .NET - это очень серьёзная заявка на межплатформенную переносимость

>а совместимость - держать! держать! не зря ж страдали!

Уже сейчас правильно написанный .NET-exe-шник из под Win32 идёт без переделок и под Linux/x86 и WinCE/ARM

>Да и то ведь, что интересно, суперкомпы из пачки АРМов не набирают... все как-то больше что-то многомегагерцевое сунут норовят, хотя задачи у суперкомпьютерщиков - вычислять не перевычислять. Белки считать - петабайты не ворочать.

Напихивают не в одну, ведь, систему, а кластеры делают. Ты готов дома сотню полноценных системных блоков поставить? Вот и придётся думать, или поставить десяток-другой процессоров попроще в один системный блок, или строить из гигагерцовых топовых процессоров, но целый цех. Кому нужна скорость сегодня за объёмами не стоят

Кстати, скорости обмена там на порядки ниже тех, кто возможны в пределах одной системной платы. И этого хватает на сегодня
 
EE Татарин #15.01.2004 18:29
+
-
edit
 

Татарин

координатор
★★★☆
2 Балансер:
>И апофигеоз этого - ПЛИС :D
Кто бы спорил?
Не я. :) Но крайность подхода дает переход, новое качество.
Кроме того, вовсе не предлагалось делать всю систему на ПЛИС. Это так, приятный довесок, который позволяет сократить вечный разрыв между потребностями софта и железом.

>Твоими бы устами, да медку :) Четре года назад - это 2000-й год. Это массовые Celeron ~400МГц, топовые - ~600МГц P3. С тез пор только частота процессора поднялась всего в 5 раз. Но уж никак не в 20. А быстродействие системы в целом - дай Бог вдвое-втрое :) Память-то со 100/133МГц и слово/такт перешла на 133..200МГц два/четыре слова за такт. А латентность даже и ухудшилась. Учитывая всё возрастающие сложности роста частот - через 3-4 года, если не будет каких-то прорывов, дай Бог 10ГГц у топовых моделей будет. А поднять скорость в 20 раз - это частоту раз в 100 задрать нужно :)

Эээ... не, так сравнивать нечестно. Теоретические выигрыши на несуществующем софте и реальную производительность в сегодняшних приложениях. Давайте делать долгое обратное фурье! И вот тогда посмотрим, какая там разница между 400МГц целероном-2 и 2.5ГГц целероном-4.
Кроме того, я взял выигрыш упакованной процессорами "по максимуму" системы и сегодняшней рядовой системы на одном процессоре. А одно и то же ли это по стоимости? Не-ее...

Правда, я тут сам виноват. Сравнивать стоит только производительность равных по цене систем.

>Это, как раз, не сложно. Уже не раз делалось :) Главное производителя заинтересовать.
Не вижу, однако, в этом случае способов. :)

>Мостки к этому уже есть и делаются новые. Если Java можно назвать не очень удачной попыткой, то .NET - это очень серьёзная заявка на межплатформенную переносимость :)
>Уже сейчас правильно написанный .NET-exe-шник из под Win32 идёт без переделок и под Linux/x86 и WinCE/ARM :)

В чем принципиальная разница между JVM и CLR?

А про переносимость... ню-ню. :) Жить ей - такой переносимости - 3 года от силы. :) Могу поспорить на 100$. Си и Юникс - ладно, фиг с ними. Но попробуй исполнить сервлет "яву ентерпрайз едишн", в смысле, на КПК. Не засада, нет?
И хочу отметить - это для системы, у которой чуть ли не единственный козырь - переносимость и межплатформенность. Ну еще и язык продуманный, приятный язык, да. Против массы серьезных недостатков. Ан не удержались от сегментирования, пустили по бороде всю идею... идея идеей, а жизнь свое берет.

И с дот-нетом так будет.

>Напихивают не в одну, ведь, систему, а кластеры делают. Ты готов дома сотню полноценных системных блоков поставить? :) Вот и придётся думать, или поставить десяток-другой процессоров попроще в один системный блок, или строить из гигагерцовых топовых процессоров, но целый цех. Кому нужна скорость сегодня за объёмами не стоят :)
Если потребуется такая вычислительная мощность - готов. Почему нет? Более того, в конторах этих блоков на гектар - туева хуча... Ну и что?
Вот, кстати, хороший пример. Офис. Десятки компов, соединенные локалкой, 99% суммарной мощности которых простаивает. Ну возьмите же - перераспределите задачи между ними, коли это с софтом заморочек принциаивльных нет. Каждый комп станет мощнее раз в десять минимум. Сколько радости забесплатно! Это ж насколько быстрее у бухгалтера годовой отчет покажется? Что нам, под код такого дело пару метров винта жалко? Оперативки? И нечего на ОС кивать. В виндах с незапяматных есть поддержка: замечательнейший DCOM, сам писал - прелесть в этом смысле, уж куда прозрачней и мощнее? И СОМ ведь, отмечу, пользуют интенсивно, не сказать, что технология заморочная... Почему не пользуют распределение задач по локалке?

ИМХО, очень серьезные проблемы с софтом и организацией взаимодействия, и оно того просто не стОит. Больше ничего. Сдохнешь, пока напишешь ворд, бухгалтерию или игрушку, которые смогут использовать десяток процессоров. С толком использовать... просто использовать-то несложно. :)


>Кстати, скорости обмена там на порядки ниже тех, кто возможны в пределах одной системной платы. И этого хватает на сегодня :)
Сказал бы - "на порядок", я бы даже сильно спорить не стал с неточностью, ну "сэм-восэм, гдэ-то так". :)
А вот "на порядки" - это перебор. Разве что на двоичные. :)

Дело в том, что нас не устроит разделяемая шина, так как требования к ней будут расти как квадрат от количества процов - известное дело. Это в кластере легко "каждый с каждым" сделать. А на плате, не ой? Нет? :)
Херофобия - это иррациональный, неконтролируемый страх или тревожное переживание в момент предстоящего, а также существующего веселья. А вовсе не то, о чём Вы подумали.  
Это сообщение редактировалось 15.01.2004 в 18:45

au

   
★★
hcube, 14.01.2004 20:57:12:
. Гораздо лучше конфигурация на уровне функций, больших ячеек с качественно разработанной структурой, которые можно произвольно соединять шинами (тоже качественно разработанными).

А вот не получится Понадобится сверхбольшая альтера, и ВСЕ РАВНО она будет программироваться поячеечно. Плюс менеджмент конфликтов. Если уж так хочется сверхпроизводительности - продолжить тему гипертрединга - просто сделать процессор очень маленьким и очень простым, со встроенной памятью мегабайт в 10, а на мамке сделать не одно гнездо, а 16 - 64 штуки Нужно почту читать - воткнул 1 процессор. Нужно рендерить - 64 . А прибыль получать не на процессорах, а на мамках - дешевые microATX на 1-4 процессора - подешевле продавать, а дорогие ATX на 64 процессора - подороже. Ну, и операционку мультипроцессорную подо все это...
 

Вы или не поняли, или не слушаете.

Поячеечно предлагается разрабатывать функции, как сегодня потранзисторно разрабатываются GPU. Но одна модель чипсета+мамки может конфигурироваться под нужны заказчика. Кто-то гоняет игры, и ему пригодятся одни функции, а кто-то гоняет матлаб, и ему нужны другие.
Для справки: в последних моделях FPGA встроено до 4 ядер PowerPC, плюс десятки аппаратных умножителей.
 

au

   
★★
Alesandro, 14.01.2004 23:33:33:
Может возникнуть вопрос, а зачем нафиг тогда ПЛИС нужна.
 

А как вы думаете, почему нередко под разными названиями процев скрывается один и тот же чип, или практически идентичный? Один набор масок (или на 95% общий), один корпус, один цикл тестирования, и только наклейки разные. Так с FPGA или платформой с его участием можно сделать одну или несколько моделей компа, и с помощью конфигурации получить практически персональный дизайн. Сейчас, например, ноут при покупке конфигурируется на уровне компонентов — это выгодно фирме и удобно покупателю. Программируемые чипы намного увеличили бы эти возможности.
 

MIKLE

старожил

Оптика всё равно быстрей даже без заморочек с голографией. На порядки.
Модифицированым комплексам модифицированые танки. (С) VooDoo ХАЧУУУ МАТАЦИКЛ!!!!!!  

au

   
★★
MIKLE, 16.01.2004 16:17:22 :
Оптика всё равно быстрей даже без заморочек с голографией. На порядки.
 


Да... а ядерный реактор — мощней и внушительней. Тоже на порядки. Даже маленький. И пользы от него для вычислений на практике примерно столько же.
 

au

   
★★
Татарин, 15.01.2004 18:29:15:
Это в кластере легко "каждый с каждым" сделать. А на плате, не ой? Нет?
 

Может вам будет интересно почитать про интеловский парагон. Там межпроцессорные коммуникации очень хорошо развиты были (интересно в плане концепции и реализации). А так, маленькие компы идут по колее больших. Почитал я книжку о суперкомпах, а понял откуда у всех этих ММХ клонов ноги растут. Только вот с массивной параллельностью заминка вышла — нужны развитые программисты, а их очень мало, намного меньше чем требуется. Есть чипы с сотней процессоров на борту, но нет программистов чтобы их эффективно использовать. Просто люди научены писать на С, и они будут писать на С хоть вы их палками бейте. Как доказательство могу привести постоянные потуги перетащить на С с HDL разработку чипов. Никому из разработчиков это не нужно, VHDL и Verilog всех удовлетворяют, и в развитии не останавливаются, но при этом лепят каких-то горбатых Систем-С и т.п.

Так что можно и каждый с каждым. "Рыба есть. Ловить надо уметь!" (С)
 
RU asoneofus #16.01.2004 18:24
+
-
edit
 

asoneofus

старожил

au, 16.01.2004 16:02:13:
Вы или не поняли, или не слушаете.

Поячеечно предлагается разрабатывать функции, как сегодня потранзисторно разрабатываются GPU. Но одна модель чипсета+мамки может конфигурироваться под нужны заказчика. Кто-то гоняет игры, и ему пригодятся одни функции, а кто-то гоняет матлаб, и ему нужны другие.
Для справки: в последних моделях FPGA встроено до 4 ядер PowerPC, плюс десятки аппаратных умножителей.
 

Вёртексы 2 про - говно на лопате. Всё одно - заказной проц и быстрее, и круче.

Не надо всё по интелям мерить: в 15 ватт потребления вталкивают большую производительность чем интЕль .

ПЛИСуёвины - всё одно избыточней, тормознутей: соответственно дороже и прожорливей...
"... аще где в книге сей грубостию моей пропись или небрежением писано, молю Вас: не зазрите моему окаянству, не кляните, но поправьте, писал бо не ангел Божий, но человек грешен и зело исполнен неведения ..."  
EE Татарин #16.01.2004 21:31
+
-
edit
 

Татарин

координатор
★★★☆
au, 16.01.2004 17:14:01:
Может вам будет интересно почитать про интеловский парагон. Там межпроцессорные коммуникации очень хорошо развиты были (интересно в плане концепции и реализации).
 

Я читал, да. Там гиперкуб+чего-то там, но вовсе не каждый с каждым. Нам не подойдет - как ни дико звучит, из-за произвольности задач у нас требования к шине больше. Ну и связб нодов, кстати, им недешево обошлась.

А так, маленькие компы идут по колее больших. Почитал я книжку о суперкомпах, а понял откуда у всех этих ММХ клонов ноги растут. Только вот с массивной параллельностью заминка вышла — нужны развитые программисты, а их очень мало, намного меньше чем требуется. Есть чипы с сотней процессоров на борту, но нет программистов чтобы их эффективно использовать. Просто люди научены писать на С, и они будут писать на С хоть вы их палками бейте. Как доказательство могу привести постоянные потуги перетащить на С с HDL разработку чипов. Никому из разработчиков это не нужно, VHDL и Verilog всех удовлетворяют, и в развитии не останавливаются, но при этом лепят каких-то горбатых Систем-С и т.п.

Так что можно и каждый с каждым. "Рыба есть. Ловить надо уметь!" (С) :)
 

Знаете... с массивной параллельностью все хорошо... Пока писать не начнешь.

И ладно вычислительные задачи...
А вот бухгалтерию в такой системе написать слабО?
Херофобия - это иррациональный, неконтролируемый страх или тревожное переживание в момент предстоящего, а также существующего веселья. А вовсе не то, о чём Вы подумали.  

Rada

опытный

Почитал я книжку о суперкомпах, а понял откуда у всех этих ММХ клонов ноги растут. Только вот с массивной параллельностью заминка вышла — нужны развитые программисты, а их очень мало, намного меньше чем требуется.
 
Строго говоря, MMX и прочие присадки не попадают в разряд массивно-параллельных вычислений, это ближе к векторным вычислениям - то есть ворочаем охапками данных, а не по одиочке. Такие методы являются очень эффективными для задач, насыщенных вычислениями, но к сожалению, далеко не все являются таковыми.

По поводу собственно параллелизма. Не стоит забывать про какой именно тип параллелизма мы говорим - на уровне инструкций, или на уровне потоков. По последнему пункту программисты как раз более-менее натасканы - только ленивый сейчас не разбивает проги на потоки. Но проблема в том, что толку от ещё более сильного распараллеливания в существующих ценовых рамках ПК общего назначения мала - тут Татарин аболютно прав - это только кажется что воткнули горсть дешёвых камней и всё стало тип-топ. И не в программерах дело даже, а в том что нет пока преемлевого способа разрешить аппаратные взаимодествия дёшево - доступ к памяти (если она общая то пропускная способность каждого процессора падает согласно 1/N, если она раздельная то надо их как-то синхронизировать, поддерживать логическую целостность, а это опять же убивает пропускную способность), то же самое по кэшам. То есть держать высокую скалабильность N процессоров очень не просто, а без этого смысла нет во всей идее.

Более привлекательным я считаю параллелизм на ур-не инструкций - VLIW, EPIC. Вон Интел привёл VLIW в божеский вид и имеет успешный продукт. Главный геморрой здесь компиляторы, а прикладное программирование такое же как и на обычных машинах. Многие задачи содержат достаточно такого параллелизма чтобы держать широкий процессор загруженным.
С себя можно начать когда все остальное будет в порядке.  
RU CaRRibeaN #17.01.2004 02:17
+
-
edit
 

CaRRibeaN

координатор

Татарин>Например, прошиваем себе систему, которая за один такт аппаратно свертку Винограда делает и потом пользуем как нормальную команду проца.

На пересылках больше потеряем. Плюс прешивать каждый такт никак не получиться, 100к вентилей Спартан 2 прошиваеться в лучшем случае 100 мс (за это время сколько сверток можно сделать?). А что делать с многозадачностью? А цена всего этого? Сколько вентилей может понадобиться на все про все? Например ДФП 1024 точки + умножитель полеченного за на 50 киловентилях нужной скорости только на 100 мгц достиг. ДСП - быстрее!!
Shadows of Invasion.  

hcube

старожил
★☆
Народ, я совершенно не зря 10 мегабайт (а точнее - 'сколько влезет') памяти упомянул. Каждый процессор - это АВТОНОМНЫЙ ВЫЧИСЛИТЕЛЬ. В него грузят ЗАДАЧУ, и она в нем считается. Обмен МЕЖДУ процессорами идет через общую память или диск, тут да, будет геморрой. Но вычисления в потоке идут именно ВНУТРИ процессора. То есть при работе допустим на разжатие divx мы имеем входной поток и выходной поток. ВСЕ. Все остальное - внутри процессора. Там же может быть многозадачность... если влезет. Конечно, процессор должен обмениваться с внешней памятью. Но задача в том, чтобы этот обмен минимизировать.
Убей в себе зомби!  
RU asoneofus #17.01.2004 13:25
+
-
edit
 

asoneofus

старожил

Про "свёртку винограда" круто заколбасили

Не факт, что БПФ по алгоритму винограда будет самым быстрым
"... аще где в книге сей грубостию моей пропись или небрежением писано, молю Вас: не зазрите моему окаянству, не кляните, но поправьте, писал бо не ангел Божий, но человек грешен и зело исполнен неведения ..."  
RU asoneofus #17.01.2004 13:26
+
-
edit
 

asoneofus

старожил

hcube, 17.01.2004 03:36:50:
Народ, я совершенно не зря 10 мегабайт (а точнее - 'сколько влезет') памяти упомянул. Каждый процессор - это АВТОНОМНЫЙ ВЫЧИСЛИТЕЛЬ. В него грузят ЗАДАЧУ, и она в нем считается. Обмен МЕЖДУ процессорами идет через общую память или диск, тут да, будет геморрой. Но вычисления в потоке идут именно ВНУТРИ процессора. То есть при работе допустим на разжатие divx мы имеем входной поток и выходной поток. ВСЕ. Все остальное - внутри процессора. Там же может быть многозадачность... если влезет. Конечно, процессор должен обмениваться с внешней памятью. Но задача в том, чтобы этот обмен минимизировать.
 

А потом начинаются траблы с синхронизацией задач и.т.п.
"... аще где в книге сей грубостию моей пропись или небрежением писано, молю Вас: не зазрите моему окаянству, не кляните, но поправьте, писал бо не ангел Божий, но человек грешен и зело исполнен неведения ..."  
+
-
edit
 

Balancer

администратор
★★★★☆

Гарвардский университет создал нанопроцессор

Инженеры и ученые из Гарвардского университета и компании MITRE Corporation создали первый в мире программируемый нанопроцессор, способный выполнять последовательности простых арифметических или логических действий. Исследователи назвали спроектированный процессор «наноэлектронной машиной с конечным числом состояний». // lenta.ru
 
 32.0.1700.7632.0.1700.76

Последние действия над темой
1 2 3 4

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru