OSDev http://osdev.su/ |
|
memcpy http://osdev.su/viewtopic.php?f=6&t=2384 |
Страница 1 из 2 |
Автор: | grenders22 [ 12 май 2018, 21:23 ] |
Заголовок сообщения: | memcpy |
Добрый вечер! memcpy ведет себя очень странно, он очень шустрый на виртуальной машине, но очень медленный на реальном железе. Казалось бы виртуалка ограничена по сравнению с железом, но нет. ПОнимаю что вопрос чрезвычайно смутный, но все же чем вообще могут быть связаны такие показатели скорости? |
Автор: | Himik [ 12 май 2018, 21:49 ] |
Заголовок сообщения: | Re: memcpy |
В виртуалке все устройства виртуальные, тоесть их нет на самом деле, поэтому операции с ними несколько упрощены по сравнению с настоящим железом. И да - запись в видеопамять виртуалки - это не прямая запись в видеопамять видеокарты, при этом виртуалка ещё использует драйвер системы, 2D и 3D видеоускорение. |
Автор: | grenders22 [ 12 май 2018, 21:56 ] |
Заголовок сообщения: | Re: memcpy |
Как вывод memcpy не лучшая идея? Правильно понимаю? Или все же есть способ ускорить? |
Автор: | Himik [ 13 май 2018, 09:41 ] |
Заголовок сообщения: | Re: memcpy |
Да нормально. |
Автор: | grenders22 [ 13 май 2018, 12:05 ] |
Заголовок сообщения: | Re: memcpy |
Практическим методом выяснил, что медленно работает memcpy лишь при копировании из ОЗУ в видео память, а внутри ОЗУ все норм. Какие могут быть альтернативы? По пиксельно? |
Автор: | SII [ 13 май 2018, 15:28 ] |
Заголовок сообщения: | Re: memcpy |
Никаких. Причина в расположении видеопамяти далеко от процессора (через несколько мостов) и в её загруженности доступами со стороны графического процессора (точней, той его части, которая отвечает за вывод изображения на экран). Попиксельно будет ещё медленнее. |
Автор: | grenders22 [ 13 май 2018, 15:40 ] |
Заголовок сообщения: | Re: memcpy |
SII писал(а): Никаких. Попиксельно будет ещё медленнее. Если нет альтернатив, то как строить этот "мост" между озу и видеопамятью? |
Автор: | scuter [ 13 май 2018, 16:17 ] |
Заголовок сообщения: | Re: memcpy |
там графические ускорители работают, на видюхе тоже есть проц. в видео карту кажется поступает либо готовое изображение, либо оно собирается в оперативке видео карты, а не так что перезаписываешь 50 раз одно и то же место ( фрейм видюхи). |
Автор: | Himik [ 13 май 2018, 21:11 ] |
Заголовок сообщения: | Re: memcpy |
grenders22 писал(а): Практическим методом выяснил, что медленно работает memcpy лишь при копировании из ОЗУ в видео память, а внутри ОЗУ все норм. Какие могут быть альтернативы? По пиксельно? Если настроишь таблицу PAT и атрибуты виртуальных страниц на видеопамяти для включения режима "Write combine", то будет достаточно быстро. И да - memcpy нельзя делать внутри видеопамяти, т.к. видеопамять читается долго. |
Автор: | grenders22 [ 13 май 2018, 21:20 ] |
Заголовок сообщения: | Re: memcpy |
Himik писал(а): Если настроишь таблицу PAT и атрибуты виртуальных страниц на видеопамяти для включения режима "Write combine", то будет достаточно быстро. Куда копать, чтобы сделать это? Я так понял PAT это страничная? |
Страница 1 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |