Page 1 of 1
Есть ли в Колибри SSE ?
Posted: Sat Feb 04, 2006 10:06 pm
by EXIS
Купил новый AMD с поддержкой SSE.

Может мне показалось но раньше кто-то говорил что в МЕОС поддерживается SSE. Делаю примитивную прогу с SSE, запускаю ее и ядро выдает ошибку.

Если всетаки ядро поддерживает SSE, привидите примитивный пример на асме.
Posted: Sun Feb 05, 2006 9:16 am
by Chugumoto
SSE vsmisle? Vrode nebilo ego podderzhki...
Posted: Sun Feb 05, 2006 10:55 am
by EXIS
Да SSE ошибся. Жаль что нет, очень мощная штука.
Posted: Sun Feb 05, 2006 1:40 pm
by EXIS
Хотя еще не факт ща пробовал SSE в DOS
Оказывается для операций типа addsp,subsp,divsp и пр. требуется что-бы адрес переменной был кратен 16-ти типа align 16
Попробовал тоже самое в МЕОС и прога заработала.
Примитивный пример.
movups xmm0,[indata]
addps xmm0,[indata]
....
align 16
indata:
dd 1.0
dd 2.0
dd 5.0
dd 8.0
Вообщем сначало потренируюсь в DOS а потом перейду к МЕОС.
Posted: Sun Feb 05, 2006 5:22 pm
by sid1333
Прога наверно не работала, потомучто данные не выровненй были, соответственно исключение проскакивало... А вот есть ли в меосе его обработчик... не знаю, этот вопрос к нашим дорогим ядерщикам.
Posted: Sun Feb 05, 2006 5:38 pm
by mike.dld
Использовать SSE можешь сколько угодно, но так как в ядре при сохранении контекста процесса регистры SSE не сохраняются - никто не даёт гарантий сохранности данных в регистрах при использовании SSE другой программой.
Posted: Sun Feb 05, 2006 11:44 pm
by sid1333
А если SSE юзает тока 1 прога, и больше никто, почему глючит то? Регистры же никто не меняет (наверно)
Posted: Mon Feb 06, 2006 7:14 pm
by EXIS
По этой теме все очевидно ясно. Сид1333 если одна прога использует SSE то она глючить не будет, только если ядро не будет использовать SSE в своих функциях...