Перейти к содержанию
    

Можно ли прикрутить к Кортесу-М АМДшную графическую карту?

Добрый день,

 

наткнулся на AMD Adelaar и захотелось мне его прикрутить к моему агрегату - места катастрофически мало, изменяя корпус в 37мм могу влезть. Вопрос в том, можно ли как-то кормить последовательностями программных ядер и данных этот Аделаар из чего-то микроконтроллерного, например, Cortex-M7. Программировать на OpenCL умею, более того, ключевая часть решалки, которая работает у меня в аппарате уже давно мной портированна на OpenCL.

 

На Аделааре пик 768ГФлопс на одинарной точности, у меня обычно решалки дают 40% от пика, то есть думаю, что 300ГФлопс на одинарной, и 60ГФлопс на двойной я тут получу (двойная как две одинарные, но сдвинутые на мантиссу, родная двойная на аделааре совсем медленная).

 

То есть как я понимаю, мне надо имплементировать PCIe, чтобы общаться с этой картой.

 

Вдруг кто знает легко ли, и если не сильно заморочно, с чего начать?

 

PS: понятно, что идеально для меня было бы купить вообще процессор с графическим ускорителем, но в габариты 40мм, а лучше меньше, я ну ни как не влезу...

 

Спасибо!

 

ИИВ

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

PCIe программно реализовать не удастся, она должна быть реализована аппаратно. Сомневаюсь, что в природе имеются Кортексы-М со встроенным мостом на PCIe. Таковые встречаются в некоторых Кортексах-А, например, во фрискейловских i.MX6, но там и графический ускоритель встроенный имеется.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

корпус в 37мм

Туда не влезет блок питания и радиатор, чтобы отвести 37 ват тепла.

 

 

SII - Это новая железяка, рекламируют как могут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2SII спасибо, да, предвидел, что PCIe может быть такой проблемой, большой A9 кортекс не хотелось бы ставить, конечно можно плиску поставить но гемора будет неподецки.

 

Туда не влезет блок питания и радиатор, чтобы отвести 37 ват тепла.

у меня штатно в железке есть водяное охлаждение.

 

SII - Это новая железяка, рекламируют как могут.

если февраль 2014 года - это новая, тогда ой... Кроме того, я работаю в фирме, которая является официальным консультантом нвидии, наверное вы понимаете, что рекламировать своих злейших конкурентов очень не хорошо :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы хотите установить большой жидкостный ракетный ускоритель на свой велосипед... Оно может-быть и будет двигаться, но исключительно по прямой.

Cortex-M7 и даже А9 - бесконечно слабые камни для такой графической карты. И проблема в том что они не в состоянии нагрузить полезной нагрузкой такой ускоритель.

 

Естественно, можно написать очень маленький рекурсивный код - который повесит абсолютно любую машину, но смысла в этом мало.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы хотите установить большой жидкостный ракетный ускоритель на свой велосипед...

не такой уж он и ракетный, жалкие 768ГФлопс на сингле - это несказанно мало по современным меркам, у меня на столе стоят 23ТФлопса и почти не греются :)

 

Также, как я писал, структура алгоритмов мне позволяет проводить вычисления с такого рода картами. Мне надо на каждом шаге скармливать около 100кбайт данных с моей переферии на карту, и запускать последовательно несколько программ-ядер (они сейчас около 20кбайт суммарной длины), и наружу забирать несколько чисел, и так примерно 10-20 раз в секунду, то есть даже хилый М4 должен потянуть трафик.

 

Посему давайте оставим алгоритмические аспекты мне самому на растерзание, они разумны и проходимы, мне хочется понять как разумно все это реализовать в железе.

 

ЗЫ: в общем-то меня даже E6460 может устроить, он, кстати еще меньше, но еле-еле, поэтому хотелось иметь производительности чуток с запасом и я на Аделаар ориентируюсь. Удивительно, что АМДшник до сих пор ничего нового с февраля 2014 года не выпустил.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прошу прощения, это что не шутка???

Да, есть ARM процессоры, обладающие PCIe интерфейсом, для которых есть драйвера для ОС Linux, и скорее всего именно для AMD удастся подобное. Ключевой момент в поддержке ОС Linux и именно аппаратном PCIe.

 

Но... Cortex-M??? Без порта PCIe, без полновесной ОС, поверх которых драйвера? Вы себе представляете уровень сложности этого?

 

 

большой A9 кортекс не хотелось бы ставить, конечно можно плиску поставить но гемора будет неподецки.
Серьезно??? Такой вариант даже в шутку нельзя писать. Хотя, потратив 5 лет, ПЛИС с PCIe можно было бы заставить стать хостом, а затем натянуть AMDшные драйвера с OpenCL поверх Linux. Да узнайте что вообще с драйверами для не-x86 у AMD, этот экзотический AMD Adelaar вообще на ARM полетит?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прошу прощения, это что не шутка???

я как раз именно без оси хотел, чтобы проще реал-тайм иметь. Вот и пытаюсь оценить проходимо ли железное кодирование от какого-то кортекса на очень простые операции по PCIe.

 

Серьезно??? Такой вариант даже в шутку нельзя писать. Хотя, потратив 5 лет, ПЛИС с PCIe можно было бы заставить стать хостом, а затем натянуть AMDшные драйвера с OpenCL поверх Linux

необходимый функционал OpenCL умещается в операциях 1. копирования по памяти, 2. старте ядер и 3. ожидании синхронизации. Сами ядра OpenCL ессно можно компилить на чем-то более удобоваримом. Тем более, как я понимаю, там есть вероятность поддержки AMDшного ROCm, что может сильно упростить жизнь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Прошу прощения, но вижу жестокую недооценку автором темы сложности того что он хочет.

Всё не так как в фильме "железный человек", где в пещере хоп хоп и готов реактор. Можно примотать скотчем кортекс-м и эту видеокарту... Можно, разрешаю :)

 

Начиная с аппаратного интерфейса PCIe, заканчивая открытыми драйверами OpenCL...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

к stm32 какой-то radeon вроде подключали через i2c :)

http://hackaday.com/2012/10/08/stm32-drivi...cie-video-card/

а там ещё и jtag должен быть. для мегабайта в секунду наверное хватит. и без PCIe.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

PCIe - эволюция компьютерной шины PCI.

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

ни один производитель сейчас не выпустит проц с PCIe, не обеспечив соответствующей поддержки со стороны операционки.

То есть если у проца торчит PCIe - то у него гарантированно будет операционка с поддержкой PCIe.

далее, допустим вы решили врукопашную запустить bare-metal PCIe скажем, на уровне "без операционки", и даже смогли написать поддержку всех стандартных операций по шине PCIe. Далее возникает вопрос поддержки конкретной железки, с которой вы собираетесь работать - т.е. вам нужна карта регистров AMD-шной железки, алгоритм загрузки-выгрузки данных в неё (это всё нужно будет каким-то образом получить от производителя),, далее, нужно будет написать функции по поддержке работы с OpenCL.

итого стек "ваши функции std PCIe"-"ваши функции AMD-карты"-"ваши функции OpenCL" - это всё должен быть ваш код. боюсь, что вам 3 лет на это всё не хватит.

 

1. копирования по памяти, 2. старте ядер и 3. ожидании синхронизации.

ой.

если бы всё было так просто как вы об этом пишете, то эта ниша уже была бы занята - уже были бы выпущены "AMD-карты OpenCL со встроенным процессором" и вам не пришлось бы ничего выдумывать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

не такой уж он и ракетный, жалкие 768ГФлопс на сингле - это несказанно мало по современным меркам, у меня на столе стоят 23ТФлопса и почти не греются :)

23Тфлопса? Полный коробок процессоров на столе стоят?

 

... Кроме того, я работаю в фирме, которая является официальным консультантом нвидии, ...

Топовый графический ускоритель "нвидии" GeForce GTX 1080 TDP 180W 8 ТФЛОПС

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 _pv - огромное спасибо за наводку!

 

Топовый графический ускоритель "нвидии" GeForce GTX 1080 TDP 180W 8 ТФЛОПС

сейчас вроде Tesla P40 из оных самая шустрая, 11ТФлопсов.

А мои 23терафлопса состоят из двух R9 295x2 (по 11терафлопсов) и еще один терефлопс в четырех 16 ядерных оптеронах. Да, стоят и не греются, но я же не уточнял, что с водяным охлаждением :) я конечно понимаю, что выглядит колхозненько, но мне же считаться надо, а не светодиодами мигать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 _pv - огромное спасибо за наводку!
По ссылке результат на уровне мифов и легенд. К тому же речь только лишь о выводе изображения, или там можно задействовать и что-то более сложное типа OpenCL? Сомневаюсь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вопрос к автору. что Вы такое там считаете на тех картах? аж интересно стало

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...