Как стать автором
Обновить
-5
0
Ростовцев Александр @f1inx

Пользователь

Отправить сообщение
Следуя вашей логике в заголовочных файлах glibc было бы гораздо больше макросов чем мы имеем реально.
Разницы для производительности нет для static inline, а для extern inline есть. Как минимум поскольку в общем случае неизвестно, как будет собираться модуль где эта функция объявлена уже inline, ну и естественно велика вероятность, что при вызове extern inline будет сбрасываться конвейер.
Ответ нет. Ничего не мешает переопределить функцию, в glibc большая часть все равно weak алиасы. Как и во многих других реализациях libc.
Не в темплейтах т.к. это стандартная C а не C++ функция.

GCC с --std=c90 прекрасно работает с __inline__ или glibc собирается чем-то кроме gcc не поддерживающем это расширение gcc?

Поэтому ответ должен быть немного глубже.

Действительно все дело в оптимизации и довольно много кейсов когда вызов функции значительно замедляет работу. Например вам нужно удалить/заменить пробелы на что-то в большом объеме текста (простой lut даст прирост скорости в 2 раза при грамотной организации цикла) и тогда есть смысл сначала узнать доступна ли ли табличная/каноничная реализация isctype, что и делает макрос с fallback на inline либо extern int isctype(int, int) реализацию в glibc…
Тут ключевой момент именно делегировать профессионалам. Только им теперь неоткуда взяться.
Меня лично бесит наглость зарплатных ожиданий среднего фронтендера, который даже файл не может гарантированно передать по медленному, ненадежному каналу связи, а нередко и просто прочитать.
И что странно рынок нормально их отсасывает… большими пачками…
В результате все бешено стремяться в олени, а толкового System Engineer не сыщешь днем с огнем :(.

PS жаль что 30лет назад SUN толкал JAVA и JS в браузеры, а не Safe TCL это явно причина текущего кризиса ;)
Сделайте дамп MII для оригинального ядра может поможет.
По хорошему желательно весь трафик по MDIIO задампить и повторить, если дело только в phy. Но возможно какая-то ключевая инициализация проходит еще в u-boot или u-boot SPL части например включение для MAC RGMII/RMII режима. BTW почему-то по опыту не редко натыкаюсь на ошибки в u-boot инициализации MAC контроллеров или передачи параметров в ядро даже у уважаемого мной motorola AKA freescale AKA NXP.
Интересно зачем у вас в обновлении 2x кратная избыточность по времени, если можно было на уровне uboot через модификацию fdt или kernel cmdline делать switch APP и KERNEL mtd разделов?

в vocord telecom есть технология получения вполне пристойной 3D реконструкции лиц и не только по стереопаре или 4м синхронным снимкам полный цикл длится несколько секунд. К сожалению на рынке это почти никому не нужно. Я думаю можно было за 2 раза меньшие ресурсы договориться и сделать достаточно много персонажей.

Странно что назвали разработчиками outsource сервис по разметке данных для ML в котором работают обезьяны. Сейчас Индусы стали дороже Киевлян однако тенденция… врядли это кого-то удивляет к сожалению в среднем уровень доступных программистов вна Украине соответствует Индии, в основном все покруче уже свалили или работают на развитые страны система образования деградирует у нас кстати тоже увы :(.
Amazon, конечно чудаки на букву м мета информацию нельзя сливать, любой доказанный эпизод приведет к юридическим последствиям при желании жертв из СШП...

Если цель производительность/цена, то за аналогичную цену получим на 2-2.5 порядка большую производительность на GPU например используя 6 Nvidia GTX 1050-Ti.

Вот пример оптимизации библиотечной sincos с аппроксимационными полиномами
devtalk.nvidia.com/default/topic/960757/cuda-programming-and-performance/a-faster-and-more-accurate-implementation-of-sincosf-/1
по сравнению с fsin/fcos/fsincos какой выигрыш в производительности?
latency/Reciprocal throughput какой получился?
Параллельно за 1 проход сразу несколько аргументов пробовали обрабатывать (так обычно быстрее)?
Ждем статью зачем моему дрону P-IRIS…
Скоре всего проблема в latency результатов выполнения SSE команд, возможно под нагрузкой она может стать внезапно достаточно большой и в %eax будет сидеть не то что ожидается (в результате vcvttsd2si %eax,%xmm0 согласно тестам latency бывает >12тактов хотя дока утверждает 8), что вполне может быть не документировано. Такого рода «ошибки достаточно часто встречаются в intel CPU и nvidia GPU.Я бы рекомендовал попробовать встроить между этой инструкцией и сравнением %eax один или более NOP. Конечно проблема с конкретным CPU тоже не исключена.
PPPoE применяется потому, что и PPTP и L2TP это по сути надстройка над PPPoE (во всех трех случаях для доставки payload до провайдера используется PPP внутри GRE, для установки соединения свои собственные протоколы с закрытой реализацией), а чем меньше надстроек и прозрачнее система тем она надежнее. Кроме того для работы PPTP и L2TP изначально требуется наличие сконфигурированного IP адреса и уверенность, что ничего не сломается после очередного несовместимого изменения протокола от MS (как это регулярно происходило с samba).
В мире отличном от x86 достаточно частое явление отсутствие MBR при наличии GPT посмотрите на тот же Jetson K1/X1/X2. Если uboot или какой-либо другой первичный загрузчик ядра лежит в NOR/NAND/SPI/QSPI флешке то наличие lilo/grub противопоказано, а MBR, GPT и других disk label совершенно опционально.
Такие инициализаторы были доступны в GCC еще 20лет назад, а после выхода C99 они считаются deprecate и теперь нужно использовать C99 синтаксис.
С чего вы взяли что они реализованы криво и не полностью?
Если вы не знали что 90-99% новых стандартов C и C++ сначала обкатываются на GCC то это тоже, просто прэлестно. И «как ни странно» рано или поздно высокий процент расширений GCC попадают в стандарт.
Если люди упорно идут в яму и не пытаются задуматься и рассмотреть альтернативы, то туда им и дорога, для человека, который хочет изменить ситуацию, если он не может создать непреодолимую преграду (те сделать максимально неприемлемым процесс без применения своей методики) лучше смазать дорогу маслом и грязью и подтолкнуть. Чтобы на их место пришли вменяемые или единицы научились на своих ошибках.

Приведенные в статье примеры совершенно непонятны из-за полного отсутствия начальных условий, не разъясненной терминологии (которая понятна автору поскольку он участник каких-то своих процессов и часть ресурсов вовлеченных в них, а здешняя аудитория в них в лучшем случае «осознанно не компетентна»).

Непонятно также какие цели преследует автор. Что конкретно он хочет измерять и зачем, какие данные есть, какие отсутствуют, какова валидность и полнота данных, как учитывать погрешности измерений?

Из статьи я вижу что, о секрет Полишинеля надо смотреть не только на абсолютное значение Ci*Fk(t) но и на его производную, а можно еще и на вторую или третью производную, посмотреть на первый второй третий момент, дисперсию, корреляцию.

Но какой в этом смысл, если не известно можно ли вообще это потом масштабировать на время или производительность команды, ее качество или объем задач, и как начальные данные соотносятся с железным треугольником.
Вы сейчас совершили типичную ошибку, прочитали невнимательно о чем я писал не подумали :( «Вообще полное время реакции, от НОВОГО СОБЫТИЯ до действия по визуальному тракту у лучших спортсменов не меньше 300ms»
А вы попробуйте сбейте тарелочку выстрелом от бедра (само движение кстати занимает лишь 50ms а первые 250ms ничего не происходит у лучших спортсменов). Потом рассказывайте мне про 150ms.
А в вашем примере про 150-250ms речь идет только о триггере для готовой энграммы (в котором я вам и 10ms сделаю в некотором проценте, если сигнал окрашен), а ни о каком «НОВОМ СОБЫТИИ». В этом примере достижимы скорости порядка 100ms для этого и был пример известного факта из психофизических опытов про 60ms для трекинга по предсказанной траектории.
В таких ситуациях работают совершенно другие механизмы. Всегда идет работа на опережение. Вся система обучения боевым искусствам построена на предсказании действий противника и доведения до автоматизма ответных действий (вытеснение на уровень мозжечка что заметно сокращает latency, поскольку исключает работу медленных зон визуального тракта, дополнительно идет тренировка слуховых, осязательных трактов и бокового зрения).

В этой статье куча ошибок, касающихся тайминга, не уверен что автор копал достаточно глубоко. Вообще полное время реакции, от нового события до действия по визуальному тракту у лучших спортсменов не меньше 300ms. 60ms требуется глазу для ступенчатого трекинга движущегося объекта, если траектория уже предсказана.
Вам для таких целей вполне подойдет стандартное ядро linux + собранный вами бинарник функционала «слинкованый» статически.

Информация

В рейтинге
Не участвует
Откуда
Москва и Московская обл., Россия
Зарегистрирован
Активность