Pull to refresh
159
0
Команда компании Promwad @Promwad

Разработка и производство электронных устройств

Send message
Мы рассказали в статье, что недавно сам Canonical начал работать над GTK-эмбеддером, но со всем сопутствующем зоопарком библиотек и своими проблемами. При тестировании лучший результат показал именно наш форк.
Это был форк одной из первых проверок концепции (PoC) при работе с wayland+flutter, там изначально ничего не было, кроме рендера. Уже потом мы туда впиливали поддержку клавиатуры/RCU, мыши, работу с AOT, вертикальную синхронизацию и т.п. Поэтому репозиторий старый, но доработки форка актуальные.
Это понятно. Вопрос был в том, насколько ощутимо шустрее он будет на целевой платформе с очень ограниченными ресурсами, поэтому мы сделали пару простых приложений. Например, запускали галереи картинок c тысячей по горизонтали, смотрели анимации с учетом всего этого и делали замеры.

image

Результат был очень ощутим, притом debug, jit_release и aot_release сильно отличаются друг от друга. Казалось бы, jit и aot могли не сильно отличаться, но практика показала иную картинку.
Пропуск кадров оценивался визуально. Возможно, kodi убивает low memory killer, но для точного ответа нужно анализировать логи.
Видимо, это говорит о том, что любовь к Linux не знает языковых барьеров. :-)
Realtek у себя на сайте заявляет, что для этой платы есть RDK build, который тоже по сути Linux. А еще есть плата Banana Pi BPI-M4 на базе того же чипа RTD1395, на ней есть образы как с Linux, так и с Android.
1,5 Mpps — это 1500000 пакетов в секунду. По коду есть параметры генерируемого потока «mode=STLTXCont(bps_L2=4500000000)»

Параметр может быть задан в pps, bps_L1, bps_L2
# pps: float
# Packets per second
#
# bps_L1: float
# Bits per second L1 (with IPG)
#
# bps_L2: float
# Bits per second L2 (Ethernet-FCS)

Что бы получить 1,5Mpps, соотвественно, необходимо задать bps_L2=1500000.
Согласны, можно разрабатывать и тестировать сетевые устройства и без DPDK. В нашем проекте реализация этой технологии была включена в список требований заказчика, благодаря чему и появилась эта заметка для Хабра. :)
Да, можно попробовать выжать до 40 Гбит/с, это заявлено на сайте разработчиков TRex. Они поддерживают интерфейсы до 100 Гбит/с, по скоростям — до 22 миллионов пакетов в секунду (mpps).

На нашем железе — Intel® Core(TM) i7-7700 CPU @ 3.60GHz — получилось максимум выжимать 10 Гбит/с. Дальше при увеличении количества потоков скорость уже не росла. Это из-за того, что процессор поддерживает всего 8 потоков работы с данными.
Вы правы, конечно, проще работать с готовыми исследованиями рынка, но они у заказчика не всегда есть. Хотя общее понимание рынка и обзорные материалы по конкурентам есть почти всегда, и это очень помогает.

Бывает, что заказчик передает проект с уже готовым ТЗ, где расписаны все подробности, в том числе и материалы по исследованиям, о которых мы рассказали на первом этапе. И тогда можно сразу начать с эскизирования. Хотя сложно себе представить дизайнера, который не выделит один-два дня на собственное «расследование». :-) Например, поиск прототипов для проекта из других сфер — это все-таки задача дизайнера, маркетолог ему тут не поможет.

Хотя сам принцип работы вы описали верно: в команде на стороне заказчика должен быть и менеджер продукта, и маркетолог.
Хотя для точности добавим еще 5 копеек. Даже сами гаранулы получают практически всегда экструзией: продавливают расплавленный материал через сито и режут ножами с охлаждением (обычно водой).
Экструзионный капролон или литьевой капролон — это своего рода жаргон, описывающий продукт, полученный тем либо иным методом. Сами гранулы исходные получают, конечно, не экструзией и не литьем.
Делимся одним из рецептов приготовления силиконовой пресс-формы :)

Для начала нужна мастер-модель, т.е. образец детали, которую мы будем в этой силиконовой форме отливать.

Берем либо готовую серийную деталь, либо делаем деталь заново — сначала в CAD-системе, а затем на 3D–принтере (у нас на сайте рассказано подробнее про материалы и технологии для изготовления прототипов).

Поверхность образца нужно тщательно обработать, определить линию разъема формы, закрыть все отверстия.

Далее монтируем опалубку для изготовления формы, в которую будет установлена наша мастер-модель. Устанавливаем литниковую систему и заливаем смесь из предварительно дегазированного силикона и отвердителя.

Оставляем залитую форму в специальной камере: там силикон остывает и происходит дополнительная дегазация.

Примерно через сутки достаем готовую форму. Вуаля! Теперь у нас есть силиконовая пресс-форма для отливки копий нашей мастер-формы.

Как видите, все гораздо проще и быстрее, чем с металической оснасткой. Но нужно учитывать ограничения этой технологии: такой формы хватит на 20—30 отливок и тонкостенные детали с форме из силикона не выльются.
JCH, а это отличная тема для следующей статьи! Спасибо за идею!
MrSGrey, спасибо, что читаете нас внимательно! :) Исправили опечатку. Верно, экструзионный капролон как раз капроном и называют.
Конечно, сode style на проекте был, но исходно его делали вручную, т.к. некоторые файлы нельзя было форматировать целиком. Это отнимало время и порождало ненужные дискуссии. Те, кто делал review коммитов, писали замечания по каждому пропущенному пробелу или переносу строки, заворачивали merge request-ы на доработку.

Разработчиков не радовало, что из-за таких пустяков приходилось возвращаться к задаче. Тем более что несвоевременно влитый merge request это ещё и merge с новыми изменениями, сделанными другими.

На проекте работала распределенная команда: часть — на стороне Promwad, часть — на стороне заказчика. Поэтому в рамках этой конкретной разработки мы договорились использовать общий инструмент для более простого и удобного форматирования.

Сейчас разработчики просто коммитят свой код, не заботясь о том, правильно ли там расставлены пробелы с переносами. Проблемы возникают только при ошибках форматера, но их гораздо проще обойти при коммите, чем потом ловить замечания от Lead-ов. :-)
Этот эффект получен за счет печати на плёнке, на той стороне, которая прилегает к изделию.
GeMir, если вам интересно почитать о работе с нестандартными материалами, заходите посмотреть на проект, который мы реализовали для CES-2018 в Лас-Вегасе: «Qoobi: прототип корпуса для беспроводного усилителя на вакуумных лампах» — там корпус сделан из кварцевого стекла.

Еще на Хабре есть наша статья про разработку гаджетов Lapka для iPhone: там корпус собран с применением шлифованного дерева твердых пород.
Спасибо за дополнение!

В этой теме и правда много тонкостей. Объем знаний такой, что настольная книга технолога по литью имеет объем в 500 страниц. Например, Роберт А. Мэллой «КОНСТРУИРОВАНИЕ ПЛАСТМАССОВЫХ ИЗДЕЛИЙ ДЛЯ ЛИТЬЯ ПОД ДАВЛЕНИЕМ». И даже она не раскрывает всех граней, т.к. технологии не стоят на месте, а книга выпускалась в начале нулевых.

Information

Rating
Does not participate
Location
Вильнюс, Литва, Литва
Registered
Activity