The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Компания NVIDIA объявила о покупке ARM"
Отправлено n00by, 16-Сен-20 15:32 
>>> полагаю, те кому он адресован - вопрос бы увидели.
>> Полагать то можно, а что бы утверждать, необходим опыт успешного поиска.
> пару раз везло. Вдруг тот кто мне нужен все же мимо пробегает.

Не. Он спит и видит ответы на Опеннете от ника пох, от чего просыпается в холодном поту.)) Если серьёзно, то мало кто читает длинные ветки.

> Не ломиться же в личные контакты к совершенно незнакомым людям.

Значит настолько надо.

>> Набор команд должен быть документирован и открыт.
> ну вот и хотелось услышать тех кто по тем ссылкам читал и
> работал - если вообще такие бывают.
> А то мало ли, чего кто кому должен.

По тем ссылкам читать нечего (правда, до конца не докрутил). Читать можно по "arm instruction set reference" (внезапно, на втором слове поисковик сам доставляет нужные) https://static.docs.arm.com/100076/0100/arm_instruction_set_...

B1.1 Architecture support for Advanced SIMD

Advanced SIMD is an optional extension to the Armv8 and Armv7 architectures.
All Advanced SIMD instructions are available on systems that support Advanced SIMD. In A32, some
of these instructions are also available on systems that implement the floating-point extension without
Advanced SIMD. These are called shared instructions.

>> стало быть и инструкции должны быть в определённой мере унифицированы на уровне интринсиков
> будет немного обидно если они вместо 64 или 128 битных чисел при
> этом оперируют их половинками ;-)

Это отчасти так для AArch32 и AArch64:

In AArch32 state, the Advanced SIMD register bank consists of thirty-two 64-bit registers, and smaller
registers are packed into larger ones, as in Armv7.
In AArch64 state, the Advanced SIMD register bank includes thirty-two 128-bit registers and has a new
register packing model.

А когда написано "r8", например я не знаю, что имеется ввиду, поскольку там бывает 32 и 64. Спецы по ARM может по частоте использования как-то сориентируются.

Но общий размер регистра это одно, а хранимые там данные -- другое. Если операции над F32, то не принципиально важно, сколько их за раз обрабатывается. А типов типа F128/U128 при беглом просмотре не наблюдаю.

B1.12 Advanced SIMD vectors

In A32/T32 Advanced SIMD instructions, the size of the elements in an Advanced SIMD vector is
specified by a datatype suffix appended to the mnemonic. In A64 Advanced SIMD instructions, the size
and number of the elements in an Advanced SIMD vector are specified by a suffix appended to the
register.

Doubleword vectors can contain:
• Eight 8-bit elements.
• Four 16-bit elements.
• Two 32-bit elements.
• One 64-bit element.

Quadword vectors can contain:
• Sixteen 8-bit elements.
• Eight 16-bit elements.
• Four 32-bit elements.
• Two 64-bit elements

При этом я в талмуд полез, поскольку это для меня тема новая, потому было интересно узнать. Кто про это и так в курсе -- ему надо для затравки либо фрагмент кода, либо ещё какую-то предметную инфу.

>[оверквотинг удален]
> регистр отдельно, математикой отдельно (не забуть сохранить state, если дальше тебе
> нужен еще и переход по нему), сохранением отдельно, и отдельно еще
> правильно (это не байты!) сдвинешься на следующий операнд. (Немного похоже на
> операции с плавающей точкой, только тут нет стека, регистры доступны напрямую
> и все) Зато каждая операция - ровно один такт.
> Программировать ТАК на ассемблере стало "неможк неудобно", даже при наличии большего числа
> регистров, вместо одной удобочитаемой даже в двоичных кодах команды - простыня
> на пол-экрана, но нам обещали что "эти мелочи возьмет на себя
> оптимизирующий компилятор, надо только немного подождать, пока его напишут". До сих
> пор ждем ;-)

Если не всё, то многое можно реализовать макросами fasm (этим транслятором даже фракталы генерируют развлечения ради). Но на сишечке то дешевле, и писать, и поддерживать. Вот и имеем что имеем.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, [email protected] (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру