В случае, если вы используете одну и ту же модель для всех процессов, рассмотрите возможность использования многопотокового вывода OV. Используя это, вы можете загрузить одну сеть и следующую, чтобы создать несколько запросов на вывод. Используя это, вы получите лучшую загрузку ЦП (если сравнивать с выполнением одного запроса на вывод по нескольким ядрам) и, как результат, лучшую пропускную способность.
Чтобы понять, как использовать многопотоковый вывод, взгляните на inference_engine / samples / python_samples / benchmark_app / benchmark sample
Также вы можете использовать образец выборки, чтобы выполнить поиск по сетке, чтобы найти оптимальный конфигурация (количество потоков, размер пакета).
Определенная проблема одного C++, которая заставляет его ужасно замедлиться, состоит в том, что, в отличие от почти любого другого языка, Вы не можете проанализировать его независимо от семантического анализа.
Компиляция является сложным процессом, который включает довольно много шагов:
(Не принимающий во внимание соединение.)
Естественно, это займет время для более длинных программ.
Дизайн языка действительно имеет эффект на производительность компилятора. Компиляторы C++ обычно медленнее, чем компиляторы C#, который имеет непосредственное отношение к дизайну языка. (Это также зависит от реализатора компилятора, Anders Hejlsberg реализовал C# и является одним из лучших вокруг.)
Упрощенная структура "заголовочного файла" C++ способствует своей более медленной производительности, хотя предварительно скомпилированные заголовки могут часто помогать. C++ является намного более сложным языком, чем C, и компиляторы C поэтому обычно быстрее.
Предварительно скомпилированные заголовки являются путем быстрее, как был известен по крайней мере с 1988.
Обычная причина компилятора C или компилятора C++ для занимания много времени состоит в том, что он имеет к #include, предварительно обработайте, и затем закон огромное количество маркеров.
Как осуществление Вы могли бы узнать, сколько времени оно берет только для выполнения, cpp по типичному набору заголовочных файлов---затем имеют размеры, сколько времени оно берет к закону вывод.
gcc-O использует очень эффективный, но несколько медленный метод оптимизации, разработанный Chris Fraser и Jack Davidson. Большинство других оптимизаторов может быть медленным, потому что они включают повторенное повторение по довольно большим структурам данных.
Они берут, пока они берут, и это обычно зависит от того, сколько постороннего материала Вы вводите в свои единицы компиляции. Я хотел бы видеть Вас ручная компиляция их немного быстрее :-)
В первый раз, когда Вы компилируете файл, у Вас не должно быть заголовков вообще. Затем добавьте их, поскольку Вам нужны они (и проверка, когда Вы закончены, нужны ли Вам все еще они).
Другие способы уменьшить то время состоят в том, чтобы сохранить Ваши единицы компиляции небольшими (даже на грани одной функции на файл, в крайнем случае) и использовать как будто сделать инструмент, чтобы гарантировать, чтобы Вы только создали то, что необходимо.
Некоторые компиляторы (IDE действительно) делают инкрементную компиляцию в фоновом режиме так, чтобы они были (почти) всегда близко к полностью скомпилированному.
Компиляция не должна занимать много времени: tcc компилирует ANSI c достаточно быстро, чтобы быть полезным как интерпретатор.
Некоторая вещь думать о: