Re[2]: C# to Native C++
От: barn_czn  
Дата: 09.09.09 07:35
Оценка:
Здравствуйте, nikov, Вы писали:

N>Здравствуйте, barn_czn, Вы писали:


_>>Кто что думает? Переходить полностью на С++ у меня нет ни желания ни времени.


N>Ты уже посмотрел профайлером, где именно самое медленное место в коде?


Конечно, dotTrace юзал.

Тормоза например на поэлементной обработке матриц (в цикле проходим по строкам и постолбцам).
Сначала делал это также как пишут в доках к OpenCv:

a_ij = ((double*)(mat.data.Ptr + mat.step * i)[j]
— медленно, главная проблема — приведение к (double*)

потом сделал для каждой матрицы предварительное формирование массива указателей строк (т.е. массив double*[])
— стало быстрее.
Перейти на double** думаю не сильно ускорит.

В общем проверено, unsafe код на .NET не компилится в эффективный нативный код (в райнтайме имею ввиду когда IL->машинный код).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.