|
Принять и ПАРАЛЛЕЛЬНО распарсить поток 10Гбит/с. Как решаются такие задачи? |
|
|
|
 |
Ответов
|
Dec 29 2017, 15:45
|
Местный
  
Группа: Участник
Сообщений: 221
Регистрация: 6-07-12
Пользователь №: 72 653

|
Студент заборстроительного... 1. Что значит 10Gb? Если это просто скорость линка, то можно на 10Gb 1 килобайт принять, 3 часа обрабатывать и снова на тех же 10Gb передать. Т.е. линк получается 10Gb, а эффективная пропускная способность 1килобайт в 3 часа. Чувствуете разницу? Если нет, то проконсультируйтесь с человеком из вашей команды, который понимает, что происходит. 2. Предположим, что вы определили, что на линке 10Gb к вам приходит поток данных в 500Мбайт/сек (для примера). Для решения задачи нужно понимать суть алгоритма обработки. А именно, каковы требования по памяти, какова глубина конвейера. Исходя из этих данных уже более-менее можно будет прикинуть по ресурсам можно ли это сделать на ПЛИС, какие потребуются ресурсы, чтобы обработка на ПЛИС не стала "горлышком от бутылки" в потоке данных. Уже третья страница пошла, а вы никак не можете толком сформулировать задачу.
|
|
|
|
|
Dec 29 2017, 18:54
|
Местный
  
Группа: Участник
Сообщений: 317
Регистрация: 16-09-17
Пользователь №: 99 334

|
Цитата(Inanity @ Dec 29 2017, 18:45)  Студент заборстроительного... 1. Что значит 10Gb? Если это просто скорость линка, то можно на 10Gb 1 килобайт принять, 3 часа обрабатывать и снова на тех же 10Gb передать. Т.е. линк получается 10Gb, а эффективная пропускная способность 1килобайт в 3 часа. Чувствуете разницу? Если нет, то проконсультируйтесь с человеком из вашей команды, который понимает, что происходит. Вы думаете я совсем дурак? Вы думаете, что я просто так написал, что даже i7 захлебнётся от такого потока? Цитата(Flip-fl0p @ Dec 29 2017, 19:31)  Ещё раз. Допустим данные вы нарезаете блоками по 46 байт в кадры. Эти кадры передаёте по линку 10Gb/s. И скорость поступления кадров будет 10Gb/"размер кадра" (разделить). ... С вашей задачей ситуация аналогичная. Скорость 10Gb/s - это скорость бит в линии. Но общаетесь то вы кадрами. И обрабатывать должны кадры.
Откуда у вас 1000 потоков взялось ? А почему 46, а не 1500? Так что "КПД" канала у меня более 90% А про 1000 потоков уже объяснял, что данные представляют собой данные 1000 ОДИНАКОВЫХ устройств, которые нужно обрабатывать ОДИНАКОВО
Сообщение отредактировал Студент заборстроительного - Dec 29 2017, 18:55
|
|
|
|
|
Dec 30 2017, 07:45
|
Местный
  
Группа: Участник
Сообщений: 317
Регистрация: 16-09-17
Пользователь №: 99 334

|
Цитата(krux @ Dec 30 2017, 07:36)  ничего личного, но начинает складываться такое мнение, да. Я же писал, что я нуб в ПЛИС. Никогда с ними дело не имел. Поэтому и тему создал, чтобы у спецов спросить, можно ли такое реализовать на ПЛИС. А Вы хамить. Цитата(zombi @ Dec 30 2017, 00:23)  Без разницы какой длины кадр. Только при минимальной длине пакета "КПД" канал 4%, а при максимальной - 90%. А Вы говорите "какая разница" Цитата(zombi @ Dec 30 2017, 00:23)  Вы принимаете 1GB в секунду, нужно его обработать и отправить обратно. На работу с одним байтом можно выделить не более 1нс, с пакетом - N*1нс Ну по самым грубым прикидками где-то так. А я прикидывал так. Каждое удаленное устройство описывается дампом в 64 байта. Всего устройств - 1000. Значит данные всех устройств занимают 64 000 байт Скорость порядка 1 000 000 000 байт/сек Значит скорость обновления инфы 64 000/1 000 000 000 = 64 мкс Т.е. в дампы каждого из 1000 устройств каждые 64 мкс поступает очередная порция инфы объемом 64 байта При обработке инфы полученной от устройства нужно анализировать не только последний 64-х байтный блок, но и 9 предыдущих. Таким образом ты за 64 мкс должен обработать блок длиной 640 байт. Казалось бы не много. Но если обработку вести последовательно для всех 1000 устройств, то ты должен тратить на обработку 640-ка байтного блока: 64мкс/1000=64нс Таким образом в среднем на обработку 1 байта нужно тратить не более 0,1 нс, а не 1 нс, как Вы посчитали. А реально для улучшения точности и адекватности результатов нужно КАЖДЫЙ РАЗ анализировать не 10, а 100 последних блоков, плюс сравнить результаты с результатами других устройств. Таким образом за 64 мкс ты будешь должен для каждого устройства перелопатить не 640 байт, а, как примеру 64 кбайта. Тогда чтобы успеть обработать данные всех 1000 устройств получается, что 1 байт ты должен обрабатывать за 0,001нс А если сеть будет расти и будет не 1000 устройств, а 10000? И сеть будет не 10G, а 100G? Тогда я байт ты должен обрабатывать за 0,0001 нс Даже при тактовой 5ГГц получается, что за 1/2000 такта нужно обработать 64 кбайта. А даже при ширине шины 256 бит только чтобы прочесть 64 кбайт данных из ОЗУ потребуется минимум 2000 тактов
Сообщение отредактировал Студент заборстроительного - Dec 30 2017, 07:51
|
|
|
|
|
Dec 30 2017, 08:34
|
Местный
  
Группа: Свой
Сообщений: 377
Регистрация: 23-12-06
Из: Зеленоград
Пользователь №: 23 811

|
Студент, трудно, конечно, проникнуться вашими выкладкам... Попробуйте зайти с другого боку в своих рассуждениях.
У вас на входе поток данных, каждые 6.4нс вы принимаете 8 байт данных по 10G. Вы говорите, что блок обработчик данных имеет пропускную способность 10Мбит/c. Посмотрите на зависимость данных в вашем алгоритме, можно ли обработку разложить на N стадий последовательно идущих друг за другом. Если это так, то можно сделать pipeline который будет работать на частоте потока данных 156Мгц. Преимущество pipeline в том, что на каждом такте потребляется одна порция данных и воспроизводиться одна порция данных. Работа идет на максимальной пропускной способности сети. В таком случае, не надо ни чего параллелить, один инстанс ядра. Да, конечно, для pipeliene нужно будет правильно формировать сигналы управления.
|
|
|
|
Сообщений в этой теме
Студент заборстроительного Принять и ПАРАЛЛЕЛЬНО распарсить поток 10Гбит/с. Как решаются такие задачи? Dec 23 2017, 11:12 one_eight_seven https://www.amazon.com/Computer-Architectur...y/dp... Dec 23 2017, 11:45 Студент заборстроительного Цитата(one_eight_seven @ Dec 23 2017, 14... Dec 23 2017, 12:09  one_eight_seven Цитата(Студент заборстроительного @ Dec 23 20... Dec 23 2017, 13:36 _4afc_ Цитата(Студент заборстроительного @ Dec 23 20... Dec 23 2017, 12:09 Студент заборстроительного Цитата(_4afc_ @ Dec 23 2017, 15:09) Берёт... Dec 23 2017, 12:13 Студент заборстроительного Цитата(one_eight_seven @ Dec 23 2017, 16... Dec 23 2017, 18:28 vvvv QUOTE (Студент заборстроительного @ Dec 23 20... Dec 23 2017, 18:41 Студент заборстроительного Цитата(vvvv @ Dec 23 2017, 21:41) То что ... Dec 23 2017, 21:14  vvvv QUOTE (jcxz @ Dec 24 2017, 01:03) А может... Dec 24 2017, 03:56   Tpeck Цитата(vvvv @ Dec 24 2017, 06:56) Как люб... Dec 29 2017, 08:37 krux если потери не сильно критичны, то даже DPDK с 10 ... Dec 24 2017, 03:30 Студент заборстроительного Цитата(krux @ Dec 24 2017, 06:30) если по... Dec 24 2017, 14:15  krux Цитата(Студент заборстроительного @ Dec 24 20... Dec 24 2017, 16:33 krux при проектировании в ПЛИС, нужно знать "сколь... Dec 24 2017, 04:29 Mad_max Поддержу krux'а
подходить нужно более системно... Dec 24 2017, 08:20 Студент заборстроительного Цитата(krux @ Dec 24 2017, 07:29) далее п... Dec 27 2017, 18:44  RobFPGA Приветствую!
Цитата(Студент заборстроительног... Dec 27 2017, 19:16   Студент заборстроительного Цитата(RobFPGA @ Dec 27 2017, 22:16) Прив... Dec 27 2017, 19:57    RobFPGA Приветствую!
Цитата(Студент заборстроительног... Dec 27 2017, 20:09  krux Цитата(Студент заборстроительного @ Dec 27 20... Dec 28 2017, 04:11 Студент заборстроительного Мне говорили, что можно обойтись одной (ОДНОЙ, Кар... Dec 27 2017, 20:28 RobFPGA Приветствую!
Цитата(Студент заборстроительног... Dec 27 2017, 21:07  TRILLER Цитата(RobFPGA @ Dec 28 2017, 00:07) Прив... Dec 27 2017, 22:05  Студент заборстроительного Цитата(RobFPGA @ Dec 28 2017, 00:07) Прив... Dec 28 2017, 05:05   RobFPGA Приветствую!
Цитата(Студент заборстроительного... Dec 28 2017, 06:38 Lutovid Я на всякий случай добавлю, вдруг поможет - если о... Dec 28 2017, 11:43 Студент заборстроительного Цитата(Lutovid @ Dec 28 2017, 14:43) Я на... Dec 28 2017, 21:00  Flip-fl0p Цитата(Студент заборстроительного @ Dec 29 20... Dec 28 2017, 21:33   Студент заборстроительного Цитата(Flip-fl0p @ Dec 29 2017, 00:3... Dec 29 2017, 03:49    Flip-fl0p Цитата(Студент заборстроительного @ Dec 29 20... Dec 29 2017, 08:24     Студент заборстроительного Цитата(Flip-fl0p @ Dec 29 2017, 11:2... Dec 29 2017, 15:05 Flip-fl0p Цитата(Inanity @ Dec 29 2017, 18:45) Студ... Dec 29 2017, 16:31  Flip-fl0p Цитата(Студент заборстроительного @ Dec 29 20... Dec 29 2017, 19:12  zombi Цитата(Студент заборстроительного @ Dec 29 20... Dec 29 2017, 21:23      iosifk Цитата(Студент заборстроительного @ Dec 30 20... Dec 30 2017, 10:09       Студент заборстроительного Цитата(iosifk @ Dec 30 2017, 13:09) немно... Dec 30 2017, 11:26        Flip-fl0p Цитата(Студент заборстроительного @ Dec 30 20... Dec 30 2017, 11:50        RobFPGA Приветствую!
Цитата(Студент заборстроительног... Dec 30 2017, 13:39         iosifk Цитата(RobFPGA @ Dec 30 2017, 16:39) Ну и... Dec 30 2017, 13:46         Студент заборстроительного Цитата(RobFPGA @ Dec 30 2017, 16:39) В та... Dec 30 2017, 14:34          RobFPGA Приветствую!
Цитата(Студент заборстроительного... Dec 30 2017, 15:08          Александр77 Цитата(Студент заборстроительного @ Dec 30 20... Dec 30 2017, 15:09           Студент заборстроительного Цитата(Александр77 @ Dec 30 2017, 18:09) ... Dec 30 2017, 15:14            Александр77 Цитата(Студент заборстроительного @ Dec 30 20... Dec 30 2017, 15:40           iosifk Цитата(Александр77 @ Dec 30 2017, 18:09) ... Dec 30 2017, 15:27            Студент заборстроительного Цитата(iosifk @ Dec 30 2017, 18:27) Мне к... Dec 30 2017, 16:03             Flip-fl0p Цитата(Студент заборстроительного @ Dec 30 20... Dec 30 2017, 16:23              Александр77 Цитата(Flip-fl0p @ Dec 30 2017, 19:2... Dec 30 2017, 16:39               vvvv QUOTE (Александр77 @ Dec 30 2017, 19:39) ... Dec 30 2017, 16:58              Студент заборстроительного Цитата(Flip-fl0p @ Dec 30 2017, 19:2... Dec 30 2017, 21:23               Flip-fl0p Цитата(Студент заборстроительного @ Dec 31 20... Dec 30 2017, 21:56                Александр77 Цитата(Flip-fl0p @ Dec 31 2017, 00:5... Dec 31 2017, 05:06                 jojo Цитата(Александр77 @ Dec 31 2017, 09:06) ... Dec 31 2017, 06:18             RobFPGA Приветствую!
Цитата(Студент заборстроительного... Dec 30 2017, 17:00          zombi Цитата(Студент заборстроительного @ Dec 30 20... Dec 30 2017, 22:31  des333 Цитата(Студент заборстроительного @ Dec 29 20... Jan 2 2018, 21:19   zombi Цитата(des333 @ Jan 3 2018, 00:19) Автор ... Jan 2 2018, 21:46   Студент заборстроительного Цитата(des333 @ Jan 3 2018, 00:19) ни в к... Jan 2 2018, 22:51    des333 Цитата(Студент заборстроительного @ Jan 3 201... Jan 2 2018, 22:59 toshas Предложу такой вариант: раз пакет 64 байта, делает... Dec 30 2017, 11:51 one_eight_seven Вы нуб, но почему-то решили, что можете судить по ... Dec 30 2017, 21:56 Студент заборстроительного Цитата(one_eight_seven @ Dec 31 2017, 00... Jan 2 2018, 12:04  Александр77 Цитата(Студент заборстроительного @ Jan 2 201... Jan 2 2018, 16:09   Студент заборстроительного Цитата(Александр77 @ Jan 2 2018, 19:09) П... Jan 2 2018, 17:21    Александр77 Цитата(Студент заборстроительного @ Jan 2 201... Jan 2 2018, 18:01     Студент заборстроительного Цитата(Александр77 @ Jan 2 2018, 21:01) В... Jan 2 2018, 19:45 svedach Давайте ответим человеку. Каждый свое мнение. Он п... Dec 31 2017, 08:03 zombi Цитата(svedach @ Dec 31 2017, 12:03) Отве... Dec 31 2017, 09:02 Александр77 Это несправедливо, требовать ответа только с вариа... Dec 31 2017, 10:21 vvvv Вот одного не пойму или я полный идиот и чего то ... Dec 31 2017, 11:15 Александр77 Цитата(vvvv @ Dec 31 2017, 14:15) Что в в... Dec 31 2017, 11:31  zombi Цитата(Александр77 @ Dec 31 2017, 15:31) ... Dec 31 2017, 11:57   Александр77 Цитата(zombi @ Dec 31 2017, 14:57) А заче... Dec 31 2017, 12:23 zombi Цитата(vvvv @ Dec 31 2017, 15:15) ...с эт... Dec 31 2017, 11:33  blackfin Цитата(zombi @ Dec 31 2017, 14:33) Оказыв... Dec 31 2017, 11:46 syoma Ну в принципе ТС указал конкретные максимальные тр... Dec 31 2017, 13:55 Flip-fl0p Цитата(syoma @ Dec 31 2017, 16:55) Ну в п... Dec 31 2017, 13:57 Александр77 Цитата(syoma @ Dec 31 2017, 16:55) ... В ... Dec 31 2017, 14:29  syoma Цитата(Александр77 @ Dec 31 2017, 16:29) ... Dec 31 2017, 14:43 Александр77 Это все наши домыслы!
Одно дело фильтрация, др... Dec 31 2017, 14:52 Plain Цитата(Студент заборстроительного @ Dec 23 20... Dec 31 2017, 15:11 Inanity Алгоритм обработки для каждого из 1000 узлов одина... Jan 2 2018, 17:37 Студент заборстроительного Цитата(Inanity @ Jan 2 2018, 20:37) Алгор... Jan 2 2018, 17:40  Inanity Цитата(Студент заборстроительного @ Jan 2 201... Jan 2 2018, 18:35 syoma ИМХУется мне, что ТС вообще будет достаточно одног... Jan 2 2018, 19:07 krux с таким подходом - НЕТ.
дело в том что я был в по... Jan 2 2018, 19:55 Студент заборстроительного Цитата(krux @ Jan 2 2018, 22:55) дело в т... Jan 3 2018, 12:41  Inanity Цитата(Студент заборстроительного @ Jan 3 201... Jan 3 2018, 13:32   RobFPGA Приветствую!
Цитата(Inanity @ Jan 3 2018... Jan 3 2018, 14:15   Студент заборстроительного Цитата(Inanity @ Jan 3 2018, 16:32) Такая... Jan 3 2018, 17:40    Александр77 Цитата(Студент заборстроительного @ Jan 3 201... Jan 3 2018, 18:51
2 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|