выдрал давеча из MPlayer/libvo код функции fast_memcpy. Подразумевается, что во время компиляции она оптимизируется для конкретного процессора. Поддержка определённых инструкций определяется дефайнами типа HAVE_MMX2, HAVE_3DNOW и т.д. Потестировал на боевом приложении по сравнению с обычной memcpy на процессоре Duron-1600. Оказалось, что реально быстрее memcpy оказалась _только_ fast_memcpy() с 3dnow. Все остальные инструкции как то mmx, mmx, sse... оказались медленнее. Время мерял с помощью Qt класса QTime (QTime::start() + QTime::elapsed()). Флаги оптимизации брал как в MPlayer для своего процессора - athlon4.
Получается, что fast_memcpy() вовсе не fast, или в чём я не прав ?
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от TaranSergey
Ответ на:
комментарий
от alex_custov
Ответ на:
комментарий
от alex_custov
Ответ на:
комментарий
от krum
Ответ на:
комментарий
от krum
Ответ на:
комментарий
от alex_custov
Ответ на:
комментарий
от anonymous
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.