OSDev

для всех
Текущее время: 28 мар 2024, 20:01

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: memcpy
СообщениеДобавлено: 12 май 2018, 21:23 

Зарегистрирован: 04 мар 2018, 21:34
Сообщения: 55
Добрый вечер! memcpy ведет себя очень странно, он очень шустрый на виртуальной машине, но очень медленный на реальном железе. Казалось бы виртуалка ограничена по сравнению с железом, но нет. ПОнимаю что вопрос чрезвычайно смутный, но все же чем вообще могут быть связаны такие показатели скорости?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: memcpy
СообщениеДобавлено: 12 май 2018, 21:49 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
В виртуалке все устройства виртуальные, тоесть их нет на самом деле, поэтому операции с ними несколько упрощены по сравнению с настоящим железом. И да - запись в видеопамять виртуалки - это не прямая запись в видеопамять видеокарты, при этом виртуалка ещё использует драйвер системы, 2D и 3D видеоускорение.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: memcpy
СообщениеДобавлено: 12 май 2018, 21:56 

Зарегистрирован: 04 мар 2018, 21:34
Сообщения: 55
Как вывод memcpy не лучшая идея? Правильно понимаю? Или все же есть способ ускорить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: memcpy
СообщениеДобавлено: 13 май 2018, 09:41 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Да нормально.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: memcpy
СообщениеДобавлено: 13 май 2018, 12:05 

Зарегистрирован: 04 мар 2018, 21:34
Сообщения: 55
Практическим методом выяснил, что медленно работает memcpy лишь при копировании из ОЗУ в видео память, а внутри ОЗУ все норм. Какие могут быть альтернативы? По пиксельно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: memcpy
СообщениеДобавлено: 13 май 2018, 15:28 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
Никаких. Причина в расположении видеопамяти далеко от процессора (через несколько мостов) и в её загруженности доступами со стороны графического процессора (точней, той его части, которая отвечает за вывод изображения на экран). Попиксельно будет ещё медленнее.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: memcpy
СообщениеДобавлено: 13 май 2018, 15:40 

Зарегистрирован: 04 мар 2018, 21:34
Сообщения: 55
SII писал(а):
Никаких. Попиксельно будет ещё медленнее.


Если нет альтернатив, то как строить этот "мост" между озу и видеопамятью?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: memcpy
СообщениеДобавлено: 13 май 2018, 16:17 

Зарегистрирован: 10 апр 2012, 23:19
Сообщения: 277
там графические ускорители работают, на видюхе тоже есть проц.

в видео карту кажется поступает либо готовое изображение, либо оно собирается в оперативке видео карты,
а не так что перезаписываешь 50 раз одно и то же место ( фрейм видюхи).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: memcpy
СообщениеДобавлено: 13 май 2018, 21:11 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
grenders22 писал(а):
Практическим методом выяснил, что медленно работает memcpy лишь при копировании из ОЗУ в видео память, а внутри ОЗУ все норм. Какие могут быть альтернативы? По пиксельно?

Если настроишь таблицу PAT и атрибуты виртуальных страниц на видеопамяти для включения режима "Write combine", то будет достаточно быстро.
И да - memcpy нельзя делать внутри видеопамяти, т.к. видеопамять читается долго.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: memcpy
СообщениеДобавлено: 13 май 2018, 21:20 

Зарегистрирован: 04 мар 2018, 21:34
Сообщения: 55
Himik писал(а):
Если настроишь таблицу PAT и атрибуты виртуальных страниц на видеопамяти для включения режима "Write combine", то будет достаточно быстро.

Куда копать, чтобы сделать это? Я так понял PAT это страничная?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 20 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB