Вопросы по теме '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 просмотров

Восстановить 3D-координаты в системе координат камеры из 2D-пикселей с боковым условием
Я пытаюсь восстановить 3D-координаты из 2D-пиксельных координат на изображении с камеры, используя побочное условие (в MatLab). У меня есть внешние и внутренние параметры камеры. Используя однородное преобразование, я могу преобразовать...
19421 просмотров

Встроенная функция _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 просмотров

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 просмотров

код не ускоряется при использовании 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