Вопросы по теме 'intrinsics'
Как мне подделать вход пользователя в систему для модульного тестирования, используя fakeiteasy в asp.net mvc 2
Я только начал изучать и использовать ASP.NET MVC 2, а также стал больше участвовать в модульном тестировании своего кода. Мой вопрос в целом заключается в том, как смоделировать вход пользователя в систему, передав учетные данные в моем тесте.
Я...
1758 просмотров
schedule
09.11.2023
128-битное деление, встроенное в Visual C ++
Мне интересно, действительно ли в Visual C ++ нет встроенной функции 128-битного деления?
Существует встроенная функция умножения 64x64 = 128 бит, называемая _umul128() , которая хорошо соответствует инструкции ассемблера MUL x64....
6168 просмотров
schedule
19.05.2024
Восстановить 3D-координаты в системе координат камеры из 2D-пикселей с боковым условием
Я пытаюсь восстановить 3D-координаты из 2D-пиксельных координат на изображении с камеры, используя побочное условие (в MatLab). У меня есть внешние и внутренние параметры камеры.
Используя однородное преобразование, я могу преобразовать...
19421 просмотров
schedule
07.02.2024
Встроенная функция _mm_extract_epi8(), которая принимает небуквенное целое число в качестве аргумента.
В последнее время я использую встроенный SSE int _mm_extract_epi8 (__m128i src, const int ndx) , который, согласно ссылке, «извлекает целочисленный байт из упакованного целочисленного элемента массива, выбранного по индексу». Это именно то, что я...
1648 просмотров
schedule
24.02.2024
Как суммировать __m256 по горизонтали?
Я хотел бы горизонтально суммировать компоненты вектора __m256 , используя инструкции AVX. В SSE я мог бы использовать
_mm_hadd_ps(xmm,xmm);
_mm_hadd_ps(xmm,xmm);
чтобы получить результат в первом компоненте вектора, но это не...
9533 просмотров
schedule
16.02.2024
Векторизация сложения части матричного умножения с использованием встроенных функций?
Я пытаюсь векторизовать матричное умножение, используя блокировку и векторные внутренние функции. Мне кажется, что часть сложения в векторном умножении не может быть векторизована. Не могли бы вы посмотреть, смогу ли я улучшить свой код для...
683 просмотров
schedule
01.03.2024
SIMD / SSE: краткое точечное произведение и краткое максимальное значение
Я пытаюсь оптимизировать точечный продукт двух массивов в стиле c: contant и small size и типа short.
Я прочитал несколько документов о встроенных функциях SIMD и множество сообщений / статей в блогах об оптимизации точечных продуктов с...
516 просмотров
schedule
11.01.2024
Недокументированные встроенные подпрограммы
В Delphi есть этот список: Внутренние процедуры Delphi Но этот список неполный. .
Что такое 7 недокументированных встроенных функций, с каких пор и какова их цель?
2879 просмотров
schedule
23.10.2022
функция minloc в фортране
Я хочу найти местоположение минимального значения элемента в 2D-массиве. Массив сложный, а первый индекс для первого измерения равен нулю. Однако я хочу, чтобы функция выполняла поиск элементов массива с индексами больше нуля. Могу ли я сделать это...
68 просмотров
schedule
20.09.2022
Загрузить __m64 из 64-битного целочисленного типа?
Я переношу подпрограмму, написанную с использованием встроенных функций Intel SSE2, на 32-разрядные платформы Microsoft. Он отлично работает под GCC, Clang и 64-битной Windows. Исходный код эффективно выполняет следующее:
typedef unsigned...
1370 просмотров
schedule
23.11.2022
код не ускоряется при использовании Intel Intrinsics
Я использую встроенные функции для ускорения работы кода openCV. Но после того, как я заменил код на Intrinsics, стоимость кода во время выполнения почти такая же или, может быть, даже хуже. я не могу понять, что и почему это происходит. Я искал...
144 просмотров
schedule
31.03.2024
Почему существуют 128-битные функции загрузки для SSE?
Я ковыряюсь в чужом коде и сейчас пытаюсь понять, почему _mm_load_si128 существует.
По сути, я попытался заменить
_ra = _mm_load_si128(reinterpret_cast<__m128i*>(&cd->data[idx]));
с
_ra =...
588 просмотров
schedule
30.01.2024
Загрузка векторов через указатели, приведения и разыменования?
Руководство по OpenPower | Типы векторных данных запрещают загружать элементы вручную и использовать приведения векторов:
Предпочтительный способ доступа к векторам по определенному приложением адресу — использование указателей на вектор и...
145 просмотров
schedule
08.12.2022
Эффективно накапливать знаковые биты в ручном неоне
У меня есть цикл, который выполняет некоторые вычисления, а затем сохраняет знаковые биты в вектор:
uint16x8_t rotate(const uint16_t* x);
void compute(const uint16_t* src, uint16_t* dst)
{
uint16x8_t sign0 = vmovq_n_u16(0);
uint16x8_t...
814 просмотров
schedule
10.10.2022
Как преобразовать 32-битное число с плавающей запятой в 8-битный знаковый символ?
Что я хочу сделать:
Умножьте введенное число с плавающей запятой на фиксированный коэффициент.
Преобразуйте их в 8-битные символы со знаком.
Обратите внимание, что большинство входных данных имеют небольшой абсолютный диапазон значений,...
1657 просмотров
schedule
04.12.2022
Поиск имени для __rotatel4 не нашел объявления
Я работаю над GCC111 из фермы компиляции. Машина AIX 7.1, POWER7 с IBM XLC 12.1. Я пытаюсь использовать __rotatel4 :
$ cat test.cxx
#include <cstdlib>
unsigned int Foo (unsigned int x)
{
return __rotatel4(x, 4U);
}
Результат...
171 просмотров
schedule
09.11.2023
Переместите int64_t в старшие четверные слова вектора AVX2 __m256i
Этот вопрос аналогичен [1]. Однако я не совсем понял, как это решает вставку в старшие четверные слова ymm с помощью георадара. Кроме того, я хочу, чтобы операция не использовала никаких промежуточных обращений к памяти.
Можно ли это сделать с...
260 просмотров
schedule
23.11.2023
Умножайте векторы 32-битных целых чисел, беря только старшие 32 бита
Я хочу перемножить два 512-битных __m512i вектора из 16 беззнаковых 32-битных целых чисел вместе и взять только старшие 32 бита из 64-битного результата умножения. Хотя в руководстве Intel по встроенным функциям говорится, что _mm512_mulhi_epu32...
155 просмотров
schedule
04.11.2023
перетасовка старших 32 бит с младшими 32 битами в m128
Сейчас я работаю со встроенными функциями C (только SSE/SSE2), и у меня есть значение m128 с 4 числами с плавающей запятой. Есть ли возможность сдвига/перетасовки/перемещения самых старших 32 битов в самые младшие 32 бита?
Пример: у меня есть...
39 просмотров
schedule
19.12.2023
Чтобы скомпилировать внутреннюю и обратную сборку Intel, но не работает
Я использую Ubuntu 21.04 на процессоре Intel® Core™ i3-6157U с частотой 2,40 ГГц × 4 на основной книге CHUWI. Я сделал этот исходный код и скомпилировал.
#include <immintrin.h>
__m512i test__mm512_add_epi8 (__m512i a, __m512i b)
{...
55 просмотров
schedule
14.01.2024