The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"v4l2 cuda ускорение копирования кадра в память GPU"
Версия для распечатки Пред. тема | След. тема
Форум Программирование под UNIX
Исходное сообщение [ Отслеживать ]

. "v4l2 cuda ускорение копирования кадра в память GPU" +/
Сообщение от vsw (ok), 27-Июн-16, 00:11 
Пробовал memcpy из простого буфера в простой:

uchar * pIn{ new uchar[ size ]};
uchar * pOut{ new uchar[ size ]};
memcpy( pOut, pIn, size );
delete [] pIn;
delete [] pOut;

Тоже около 200мс.

Пока получается, что на Tegra TK1 4224х3156х2 байт копируются с такой скоростью.
Но это учитывая, то, что там драйвер камеры и подсистема V4L2 делает.
Буду разбираться.

Сделал вариант с OpenMP, реально на 4 поделилось время:

static void memcpy_openmp( uchar * pOut, const uchar * pIn, const int size ) {

    //omp_set_dynamic( 0 );
    omp_set_num_threads( 4 );
    //int blockSize{ 1666368 };
    int blockSize{ size / 4 };
    int th_id, nthreads;
    #pragma omp parallel for
        for( int i = 0; i < size / blockSize; i++ ){
            int offset{ i * blockSize };
            memcpy( pOut + offset, pIn + offset, blockSize );
            th_id = omp_get_thread_num();
            nthreads = omp_get_num_threads();
            qDebug() << th_id << nthreads;
        }

}

Где-то 70-80мс.

Вопрос открыт.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
v4l2 cuda ускорение копирования кадра в память GPU, vsw, 19-Июн-16, 16:13  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру