LINUX.ORG.RU

вычисления на nvidia

 , , network perfomance


1

1

Привет всем! Кто-что видел в плане переброса сетевого трафика на видеокарту? Вроде у CUDA есть что-то для этого. Мне нужно чтобы не CPU обрабатывал трафик, а GPU, есть что-то реализованное уже?

★★★

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

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от megabaks

Ну, кое-какие алгоритмы обработки изображений мне пришлось только на CPU реализовывать, т.к. время копирования на порядок было больше времени вычислений. И где это 2Г/с? У меня железо старое, там вряд ли и 1Г/с нашкребется...

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от megabaks

это совсем другая история, не находишь!?

Дык, ТС ничего про свое железо не говорил. Может, у него вообще одна из первых кудоподдерживалок?

Eddy_Em ☆☆☆☆☆
()

https://developer.nvidia.com/gpudirect но без inifiband не как не получится. TCP/IP стек использует CPU, а в inifiband TCP/IP скорее нужно по привычке, чем для реальной работы, там свои протоколы со своей адресацией всего что только можно.

AlexVR ★★★★★
()
Ответ на: комментарий от Deleted

А зачем?

Для уменьшения количества раз копирования данных. В той же оперативке в обычной ситуации, это минимум два раза на узел, не считая копирования в память GPU.

AlexVR ★★★★★
()
Ответ на: комментарий от Eddy_Em

на самом деле меня не интересует какая видяха будет стоять, я хочу прокачать в нате 10 гигабит трафона, щас у меня 2 цпу пашут по 8 ядер, не справляется, потолок 4 гигабита

init_ ★★★
() автор топика
Ответ на: комментарий от init_

Ищи аппаратные решения. Ну а потолок похож на упор в частоту процессоров.

AlexVR ★★★★★
()

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

AlexVR ★★★★★
()
Ответ на: комментарий от init_

10 гигов не прокачает. В том смысле что латентность большая будет. Насколько я понимаю на данный момент нет возможности связать напрямую «память» сетевой карты и память видеокарты. Для таких скоростей Network processors хорошо, но дорого.
Intel активно пилит dpdk и скоро возможно все будет хорошо.

b_a
()
Ответ на: комментарий от AlexVR

у тебя на GPU ядер очень много маленьких, то есть количество потоков очень большое (по сравнению с обычным процессором), на нем можно было бы считать эти сетевые пакеты. Я так понимаю все упирается в conntrack (количество трекинговых пакетов)

init_ ★★★
() автор топика
Ответ на: комментарий от init_

Нет. Ты не правильно понимаешь архитектору вычислений на GPU. И совсем не понимаешь как работает стек TCP/IP. Забудь о том, что бы сделать NAT через GPU, это не реально. Как и на автобусе нельзя одновременно развести 20 людей в разные концы города. Он вроде и вмещает толпу народа, но везет их по одному маршруту.

AlexVR ★★★★★
()
Ответ на: комментарий от init_

Что они считают? Если ты про NVidia GPUDirect, то на GPU считают какие-нибудь диф.уравнения, а InfiniBand используют для передачи данных с узла на узел с минимизацией затрат на CPU, за счет почти прямой записи из памяти одной GPU в память другой GPU.

AlexVR ★★★★★
()
Ответ на: комментарий от init_

И ещё, infiniband-у tcp/ip не нужен при передачи данных, у него свои протоколы.

AlexVR ★★★★★
()
Ответ на: комментарий от init_

на самом деле меня не интересует какая видяха будет стоять, я хочу прокачать в нате 10 гигабит трафона, щас у меня 2 цпу пашут по 8 ядер, не справляется, потолок 4 гигабита

Я думаю это будет тебе интересно по твоей проблеме: http://www.redhat.com/promo/summit/2008/downloads/pdf/Thursday/Mark_Wagner.pdf

AlexVR ★★★★★
()

Вроде бы в hdmi_1.4 есть эзернет, а значит можно его пользовать, но соблюла ли нвидиа стандарт - это еще тот вопрос.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.