Вообще, в Linux driver development базовой книге по написанию драйверов предлагается следующий подход по написанию драйвера как основной:
As a programmer, you are able to make your own choices about your driver, and choose an acceptable trade-off between the programming time required and the flexibility of the result. Though it may appear strange to say that a driver is «flexible,» we like this word because it emphasizes that the role of a device driver is providing mechanism, not policy.
The distinction between mechanism and policy is one of the best ideas behind the Unix design. Most programming problems can indeed be split into two parts: «what capabilities are to be provided» (the mechanism) and «how those capabilities can be used» (the policy). If the two issues are addressed by different parts of the program, or even by different programs altogether, the software package is much easier to develop and to adapt to particular needs.
Как следует из названия «Image processing unit», это блок для обработки изображения, аналог которого например есть в IMX6
И да, тот блок у Google не умеет во float:
Though the chip supports 32-bit integers, the native operations are done on a much simpler logic that operates on 8-bit and 16-bit integers, thus larger data sizes will operate at half throughput. The basic primitive of the stencil operations is the multiply-accumulate which can accumulate 32 bits and multiply 16 bits.
Это связано с тем, что на вину конкретной личности легко указать. В случае ИИ, виноватого за ошибку алгоритма указать гораздо сложнее. Если похожий процесс еще 50 лет назад был как в фильме «Бойцовский клуб», то сейчас цена жизни в развитых странах гораздо выше.
Производители мобильных чипов начали добавлять в них матричные ускорители с 2017 года.
Приведите конкретные примеры, когда в процессоры для мобильного телефона установили ускорители для нейронок и это были не simd и GPU общего назначения (которые используются чаще всего для графики и обычных вычислений), а блоки для работы только с нейронками
Давайте разделять. Если вы имеете ввиду блоки аналогичные simd и GPU(разного рода), то это не конкретно для использования нейронок в процессорах. Если нет, то приведите конкретные примеры.
Однако, много ли мобильных телефонов с TPU на борту? Долго ли такие телефоны способны жить без заряда? Подобные чипы в основном для серверного применения.
Я так и не могу понять. Яндекс.Такси позиционирует себя как сервис такси или как агрегатор, который коммутирует клиентов и таксистов и не является при этом сам службой такси?
Вот идеальный пример почему так. От партии цена меняется в разы. Поэтому китайцы могут даже девайс разработанный вами, продавать дешевле вас.
По ценам еще вопрос в плане требований. Raspberry не может в режиме реального времени транслировать, рескейлить, кодировать и делать снимки видеопотока для 1080p50Hz. Да и PCIe я не помню у нее.
Работал над вторым решением. В описанном кейсе реализуемо достаточно дешево, но не просто в силу плохо документации, либо наоборот достаточно просто, но не дешево)
Это только из-за плеера?
PH800480T013-IHC08 — работает сразу на HDMI, А его можно подключить сразу к USB плееру.
И да, тот блок у Google не умеет во float:
Приведите конкретные примеры, когда в процессоры для мобильного телефона установили ускорители для нейронок и это были не simd и GPU общего назначения (которые используются чаще всего для графики и обычных вычислений), а блоки для работы только с нейронками
В таких случаях рекомендую вам пользоваться uart интерфейсом, в него передаются все параметры загрузки, и кроме того через него можно войти в систему
По ценам еще вопрос в плане требований. Raspberry не может в режиме реального времени транслировать, рескейлить, кодировать и делать снимки видеопотока для 1080p50Hz. Да и PCIe я не помню у нее.
Уже очень многое сделано. Надо только поискать.