ivdon3@bk.ru
В представленной работе исследуется актуальная задача использования графических процессоров (GPU) в вычислительных процессах, которые традиционно выполняются на центральных процессорах (CPU). С развитием технологий и появлением специализированных архитектур и библиотек, GPU стали незаменимыми в областях, требующих интенсивных вычислений. Статья подробно рассматривает преимущества использования GPU по сравнению с традиционными CPU, обосновывая это их способностью к параллельной обработке и высокой пропускной способности, что делает их идеальным инструментом для работы с большими объемами данных.высоким уровнем травматизма. Наблюдаются несчастные случаи, вызванные нарушением правил и норм на рабочих площадках, среди них случаи, связанные с несоблюдением правил ношения защитных касок. В статье исследуются методы и алгоритмы для распознавания защитных шлемов и касок, оценивается их эффективность.
Ключевые слова: графические процессоры, GPU, CUDA, OpenCL, cuBLAS, CLBlast, rocBLAS, параллельная обработка данных, математические вычисления, оптимизация кода, управление памятью, машинное обучение, научные исследования
2.3.1 - Системный анализ, управление и обработка информации , 2.3.3 - Автоматизация и управление технологическими процессами и производствами
Исследование представляет обширный анализ методов низкоуровневой оптимизации алгоритма умножения матриц для вычислительных систем с общей памятью. Опираясь на сравнение различных подходов, включая блочную оптимизацию, параллельное выполнение с OpenMP, векторизацию с AVX и использование библиотеки Intel MKL, выявляются значительные улучшения в производительности полученных программных реализаций. В частности, блочная оптимизация сокращает количество кеш-промахов, параллелизм эффективно задействует многоядерность, а векторизация и Intel MKL демонстрируют максимальное ускорение за счет более эффективных программных оптимизаций. Полученные результаты подчеркивают важность тщательного выбора оптимизационных методов и их соответствия архитектуре вычислительной системы для достижения требуемых параметров эффективности проектируемого программного обеспечения.
Ключевые слова: низкоуровневая оптимизация, блочная оптимизация, параллельное выполнение, OpenMP, векторизация, AVX, Intel MKL, производительность, бенчмаркинг, умножение матриц
2.3.1 - Системный анализ, управление и обработка информации , 2.3.3 - Автоматизация и управление технологическими процессами и производствами