×
10.05.2018
218.016.4e08

Результат интеллектуальной деятельности: Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах

Вид РИД

Изобретение

№ охранного документа
0002652460
Дата охранного документа
26.04.2018
Аннотация: Изобретение относится к средствам для выполнения операции умножения чисел, представленных в модулярно-индексном формате с плавающей точкой, на универсальных многоядерных процессорах. Техническим результатом является повышение скорости вычисления. В способе, выполняемом на универсальном многоядерном вычислителе, содержащим q k разрядных вычислительных ядер, осуществляют операции алгебраического умножения и n параллельно выполняемых операций сложения по модулю q-разрядных знакопозиций чисел в индексной системе счисления в остаточных классах, причем q≈t/n. 1 ил., 1 табл.

Изобретение относится к вычислительной технике и предназначено для выполнения операции умножения чисел, представленных в модулярно-индексном формате с плавающей точкой на универсальных многоядерных процессорах.

Известен итерационный способ умножения чисел, представленных в одном из позиционных двоичных форматов с плавающей точкой, определенных стандартом IEEE-754. В этом способе умножение состоит из последовательности сложений с накоплением мантисс сомножителей, которые выполняются последовательно, сложения порядков и сложения по модулю два знаков сомножителей. Последовательность сложений с накоплением мантисс сомножителей выполняется следующим образом. При сдвигах мантиссы множителя освободившиеся разряды заполняются нулями. Если первый бит t-разрядной позиционной мантиссы множителя равен единице, то первое слагаемое является мантиссой множимого, иначе первое слагаемое равно нулю. Если второй бит мантиссы множителя равен единице, то второе слагаемое является мантиссой множимого, сдвинутой на один разряд влево, иначе второе слагаемое равно нулю. К сумме первого и второго слагаемого прибавляется мантисса множимого, сдвинутая на два разряда влево, если второй бит мантиссы множителя равен единице, иначе прибавляется нуль. Затем к полученной сумме прибавляется мантисса множимого, сдвинутая на три разряда влево, если третий бит мантиссы множителя равен единице, иначе прибавляется нуль. И так далее до t-го разряда мантиссы множителя, к накопленной сумме прибавляется мантисса множимого, сдвинутая на ν разрядов влево, если t-й бит мантиссы множителя равен единице, иначе прибавляется нуль. В итоге накопленная сумма является искомым произведением мантисс сомножителей. Далее выполняется сложение смещенных позиционных порядков сомножителей, тем самым получается порядок результата. Знак результата определяется сложением по модулю два знаков сомножителей.

Недостаток итерационного способа умножения позиционных двоичных чисел с плавающей точкой состоит в том, что, во-первых, при умножении мантисс выполняется (t-1) операций суммирования t-разрядных операндов. Если принять, что операция суммирования t-разрядных операндов выполняется за t тактов процессора, то общее время выполнения операции умножения мантисс позиционных операндов с плавающей точкой составит t⋅(t-1) тактов. Во-вторых, процесс формирования суммы является последовательным процессом.

Наиболее близким к заявленному способу является способ организации выполнения операции умножения двух чисел в модулярно-позиционном формате представления с плавающей точкой на универсальных многоядерных процессорах (А.С. RU №2509345. БИ №7, 10.03.2014), в котором операция умножения t-разрядных позиционных мантисс сомножителей заменяется n параллельно выполняемыми операциями умножения q-разрядных знакопозиций чисел в системе счисления в остаточных классах. Недостаток данного способа состоит в том, что необходимо выполнение операции умножения по модулю на каждом вычислительном ядре. Если принять за время суммирования пары q-разрядных чисел q тактов работы процессора, то операция умножения q-разрядных чисел может быть выполнена посредством q⋅(q-1) тактов. Операция умножения по модулю в случае, если произведение также имеет разрядность q, также может быть выполнена за q⋅(q-1) тактов. В случае, если произведение имеет разрядность больше, чем q, необходимо выполнить процедуру нахождения остатка от деления на целое число, что является достаточно трудоемкой операцией.

Техническим результатом применения способа организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах является повышение скорости вычисления за счет замены операции умножения t-разрядных позиционных мантисс сомножителей n параллельно выполняемыми операциями сложения по модулю q-разрядных знакопозиций чисел в индексной системе счисления в остаточных классах, причем q≈t/n. Если принять за время суммирования пары t-разрядных чисел t тактов работы процессора, а за время суммирования пары q-разрядных чисел q тактов работы процессора, то, при условии, что число вычислительных ядер универсального многоядерного процессора не меньше n, а операция сложения по модулю q-разрядных чисел может быть выполнена посредством двух операций сложения q-разрядных чисел, то предельное ускорение вычислений S составляет: По сравнению со способом организации выполнения операции умножения двух чисел в модулярно-позиционном формате представления с плавающей точкой на универсальных многоядерных процессорах предельное ускорение S составляет

Описание способа организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах: реализация способа осуществляется посредством подачи набора электрических, нейронных либо других сигналов на устройства управления каждого вычислительного ядра многоядерного процессора универсального назначения, которые, в соответствии с данными сигналами, формируют управляющие команды для операционных устройств соответствующих вычислительных ядер.

В позиционных двоичных форматах с плавающей точкой стандарта IEEE-754 любое вещественное число представляется трехэлементным набором:

где М - рациональная мантисса, е - порядок числа, emin=2-2w-1 и еmax=2w-1-1, s - знак числа.

Величина чисел, записанных в таком формате, выражается формулой -1s⋅М⋅2е. Машинными представлениями чисел вида (1) являются (w+t+1)-разрядные двоичные векторы, где разряды с d1 по dt отводятся под представление рациональных двоичных мантисс М=dtdt-1 … d2d1, разряды с r1 по rw отводятся под представление целочисленных двоичных порядков е, записанных в форме с избытком Е=rwrw-1 … r2r1=e+emax, разряд s выражает знак числа.

Определим целочисленную мантиссу М'=dtdt-1 … d2d1 как t-разрядное неотрицательное целое двоичное число, такое, что М=М'⋅21-t. Определим перемещенный порядок λ как целое двоичное число со знаком, такое, что λ=е-t+1, где е - w-разрядный порядок числа, представленного в двоичном формате (1).

Зададим n целочисленных положительных q-разрядных оснований системы остаточных классов р1, р2, …, рn, таких, что q≤k где - наибольший общий делитель для и и , k - размер разрядной сетки процессора.

Целочисленную мантиссу М'=dtdt-1 … d2d1 преобразуем в систему остаточных классов с заданными основаниями р1, р2, …, рn, получая тем самым модулярную мантиссу

где mi∈[0, pi-1], i=1, 2, …, n - q-разрядные цифры (модулярные разряды) модулярной мантиссы q - разрядность оснований р1, р2, …, pn, - операция получения остатка от деления М' на i-е основание рi.

Определим индекс im числа m следующим образом:

где m∈[1, р-1], im∈[0, р-2], g - первообразный корень р.

Тогда

ind m=im,

ind 0=х,

где m∈[1, р-1], im∈[0, р-2], γ - специальный символ, обозначающий индекс нуля. Индексы вычисляются для каждого основания рi, i=1, 2, …, n заранее и хранятся в соответствующих таблицах.

Индексы обладают следующими свойствами:

γ+im=im+γ=γ,

Пример. Вычислим индексы для модуля р1=7. Первообразными корнями числа 7 являются числа 3 и 5. Выберем в качестве первообразного корня число 3. Тогда согласно определению индекса:

, , , , , .

Соответствующие индексы будут равны:

ind 0=7, ind 1=0, ind 2=2, ind 3=1, ind 4=4, ind 5=5, ind 6=3.

Преобразуем полученную модулярную мантиссу в модулярно-индексное представление:

где ind (mi) - операция выборки данных из таблицы индексов по модулю рi, imi ∈{0, 1, 2, …, pi-2, γ} - q-разрядные индексы (разряды модулярно-индексной мантиссы).

Таким образом, число с плавающей точкой вида (1) можно преобразовать к следующему модулярно-индексному формату:

∈{-1,0,1}],

где - набор знакопозиций (модулярно-индексных разрядов) модулярно-индексной мантиссы , при этом для представления индекса нуля γ используется значение 2q-1, ind (0)=2q-1=111…112 (данный код может быть использован, поскольку ни одно из оснований p1, p2, …, рn не равно 2q), λ - позиционный перемещенный порядок, представляющий собой целое двоичное число со знаком, σ - знак числа (двухразрядное двоичное число со знаком), причем если σ=-1, то число отрицательное, α=1 - положительное, α=0 - машинный ноль.

Диапазон допустимых значений индексных мантисс в системе остаточных классов с основаниями p1, p2, …, pn определяется интервалом , таким образом, t-разрядная позиционная мантисса М=dtdt-1 … d2d1 может быть представлена в системе остаточных классов набором из n взаимно независимых q-разрядных знакопозиций , причем q≈t/n (для случая, если все основания pl, р2, …, рn q-разрядные).

Примеры преобразования позиционных чисел с плавающей точкой в модулярно-индексный формат: пусть числа представлены в 10-разрядном двоичном формате вида (1), в котором под смещенный порядок Е, отводится четыре бита (максимальный порядок еmax=24-1-1=7, соответственно е=Е-7), под дробную часть мантиссы - пять бит (т.е. t=6, причем целая часть d6 рациональной мантиссы М в явном виде не записана) и под знак числа - один бит. Пусть для представления модулярно-индексных мантисс в модулярно-индексном формате используются три основания: р1=7, р2=13, р3=31. Предварительно вычисленные индексы для оснований представлены в табл. 1.

Пример 1: необходимо перевести число X=2.2510=[1.125,1,0]=-10⋅1.125⋅21, представленное в двоичном формате [M,e,s], в модулярно-индексный формат

С учетом принятых характеристик двоичного формата [М, e,s], число X будет записано в памяти ЭВМ в виде двоичного вектора . Для его преобразования в модулярно-индексный формат (2) необходимо выполнить следующие действия:

1. Выделить составные части числа X: знак числа s=0, дробная часть рациональной мантиссы d5 … d2d1=001002, смещенный (избыточный) порядок Е=10002=8.

2. Восстановить целую часть d6 мантиссы М=d6d5 … d2d1: d6=1, т.к. Е>0, следовательно М=1.001002.

3. Определить порядок е:е=Е-еmax=8-7=1, т.к. Е>0.

4. Определить знак σ, перемещенный позиционный порядок λ и целочисленную мантиссу М':σ=1,λ=е-t+1=1-6+1=-4, М'=d6d5 … d2d1=1001002=36.

5. Найти модулярную мантиссу : .

6. Найти модулярно-индексную мантиссу Для этого осуществить выбор индексов по таблицам (табл. 1) (первообразные корни соответственно 3,2,3):

В результате получается число X, представленное в модулярно-индексном формате с плавающей точкой:

Пример 2: необходимо перевести число X=0,01367187510=[0.875, -6,1]=-11⋅0.875⋅2-6 из двоичного формата [M,e,s] в модулярно-индексный формат

С учетом принятых характеристик двоичного формата [M,e,s], число X будет записано в памяти ЭВМ в виде двоичного вектора Для его преобразования в модулярно-индексный формат (2) необходимо выполнить следующие действия:

1. Выделить составные части числа X: знак числа s=1, дробная часть d5 d2d1=111002, смещенный порядок Е=00002=0.

2. Восстановить целую часть d6 мантиссы М=d6d5 … d2d1: d6=0, т.к. Е=0, следовательно, М=0.111002.

3. Определить порядок е: е=emin=2-24-1=-6, т.к. Е=0.

4. Определить знак σ, перемещенный порядок λ и целочисленную мантиссу М': σ=-1, λ=e-t+1=-6-6+1=-11, М'=d6d5 … d2d1=0111002=28.

5. Найти модулярную мантиссу .

6. Найти модулярно-индексную мантиссу Для этого осуществить выбор индексов по таблицам (табл. 1) (первообразные корни соответственно 3,2,3):

В результате получается число X, представленное в модулярно-индексном формате с плавающей точкой:

Пусть - числа, представленные в модулярно-индексном формате с плавающей точкой, где и - модулярно-индексные мантиссы чисел A и В соответственно. Тогда способ умножения С=А⋅В чисел А и В, представленных в модулярно-индексном формате с плавающей точкой (2), на универсальном k-разрядном процессоре, содержащем g вычислительных ядер, определяется следующим образом.

1. Множитель и множимое , представленные в модулярно-индексном формате с плавающей точкой, загружают в универсальный k-разрядный процессор, содержащий g вычислительных ядер, следующим образом:

1.1. Если число g вычислительных ядер процессора превышает число n оснований p1, p2, …, pn системы остаточных классов, используемых для представления модулярно-индексных мантисс и чисел А и В соответственно, то:

- в первое ядро универсального многоядерного процессора загружают q-разрядные двоичные представления первых знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно, а также основание системы остаточных классов р1, разрядность q которого не превышает размер k разрядной сетки процессора;

- параллельно с этим во второе ядро универсального многоядерного процессора загружают q-разрядные двоичные представления вторых знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно, а также основание системы остаточных классов р2, разрядность q которого не превышает размер k разрядной сетки процессора;

- и т.д.;

- параллельно с этим в n-е ядро универсального многоядерного процессора загружают q-разрядные двоичные представления n-ых знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно, а также основание системы остаточных классов рn, разрядность q которого не превышает размер k разрядной сетки процессора;

- параллельно с этим в (n+1)-е ядро универсального многоядерного процессора загружают k-разрядные двоичные порядки λА и λB, а также знаки σА и σB чисел А и В соответственно.

1.2. Если число n оснований p1, p2, …, pn системы остаточных классов, используемых для представления модулярно-индексных мантисс и , равно числу g вычислительных ядер универсального вычислителя либо превышает его, то:

- q-разрядные двоичные представления первых знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно, а также q-разрядное основание системы остаточных классов р1 загружают в первое ядро универсального многоядерного процессора;

- параллельно с этим q-разрядные двоичные представления вторых знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно, а также q-разрядное основание системы остаточных классов р2 загружают во второе ядро универсального многоядерного процессора;

- и т.д.;

- параллельно с этим q-разрядные двоичные представления (g-1)-х знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно, а также q-разрядное основание системы остаточных классов рg-1 загружают в (g-1)-е ядро универсального многоядерного процессора;

- q-разрядные двоичные представления g-х знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно, а также q-разрядное основание системы остаточных классов рg загружают в первое ядро универсального многоядерного процессора;

- q-разрядные двоичные представления (g+1)-х знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно, а также q-разрядное основание системы остаточных классов рg+1 загружают во второе ядро универсального многоядерного процессора;

- и т.д., пока не будут загружены n-е знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно;

- параллельно с этим k-разрядные двоичные порядки λА и λB, а также знаки σА и σB чисел А и В соответственно загружают в g-e ядро универсального многоядерного процессора.

2. После того, как множитель и множимое , представленные в модулярно-индексном формате с плавающей точкой, загружены в универсальный k-разрядный процессор, содержащий g вычислительных ядер, операция их умножения выполняется следующим образом:

2.1. Если число g вычислительных ядер процессора превышает число n оснований p1, p2, …, pn системы остаточных классов, используемых для представления модулярно-индексных мантисс и чисел А и В соответственно, то:

- в первом вычислительном ядре процессора выполняется операция целочисленного сложения по модулю p1-1 q-разрядных двоичных представлений знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно следующим образом:

если то ,

если , то ,

если то

если , то ,

все операции являются целочисленными и выполняются в позиционной двоичной системе счисления;

- параллельно с этим во втором вычислительном ядре процессора выполняется операция целочисленного сложения по модулю р2-1 q-разрядных двоичных представлений знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно; все операции являются целочисленными и выполняются в позиционной двоичной системе счисления;

- и т.д.;

- параллельно с этим в n-м вычислительном ядре процессора выполняется операция целочисленного сложения по модулю рn-1 q-разрядных двоичных представлений знакопозиций и модулярно-индексных мантисс и чисел А и В соответственно; все операции являются целочисленными и выполняются в позиционной двоичной системе счисления;

- параллельно с этим в (n+1)-м вычислительном ядре процессора выполняется сложение двоичных порядков λА и λB, а также умножение σCА⋅σB знаков σА и σB чисел A и В соответственно.

2.2. Если число n оснований p1, p2, …, pn системы остаточных классов используемых для представления модулярно-индексных мантисс и , равно числу g вычислительных ядер универсального вычислителя либо превышает его, и в каждое j-е вычислительное ядро из первых (g-1) вычислительных ядер процессора загружено wj знакопозиций и i=0,1, …, wj-1, то:

- в первом вычислительном ядре процессора последовательно выполняются операции сложения по модулям pi⋅(g-1)+1-1, i=0, 1, …, w1-1, q-разрядных двоичных представлений всех w1 загруженных в него знакопозиций и , i=0, 1, w1-1 модулярно-индексных мантисс и чисел А и В соответственно следующим образом:

если то

если то

если то

если то

все операции являются целочисленными и выполняются в позиционной двоичной системе счисления;

- параллельно с этим во втором вычислительном ядре процессора последовательно выполняются операции сложения по модулям pi⋅(g-1)+2-1, i=0, 1, …, w2-1, q-разрядных двоичных представлений всех w2 загруженных в него знакопозиций и w2-1 модулярно-индексных мантисс и чисел А и В соответственно; все операции являются целочисленными и выполняются в позиционной двоичной системе счисления;

- и т.д.;

- параллельно с этим в (g-1)-м вычислительном ядре процессора последовательно выполняются операции сложения по модулям pi⋅(g-1)+g-1-1, i=0, 1, …, wg-1-1, q-разрядных двоичных представлений всех wg-1 загруженных в него знакопозиций и i=0, 1, …, wg-1-1 модулярно-индексных мантисс и чисел A и В соответственно; все операции являются целочисленными и выполняются в позиционной двоичной системе счисления;

- параллельно с этим в g-м вычислительном ядре процессора выполняется сложение двоичных порядков λА и λB, а также умножение σCА⋅σB знаков σА и σB чисел А и В соответственно.

В результате выполнения данных операций получается произведение чисел и , представленное в модулярно-индексном формате с плавающей точкой.

Пример. Необходимо выполнить операцию умножения С=А⋅В в модулярно-индексном формате с плавающей точкой на универсальном процессоре, содержащем четыре 5-разрядных вычислительных ядра. Для представления мантисс операндов заданы следующие 5-разрядные основания системы остаточных классов: используется три основания: р1=7, р2=13, р3=31. Р=р1⋅р2⋅p3=2821 - произведение оснований (верхний предел допустимого диапазона представления модулярно-индексных мантисс). Сомножители заданы в модулярно-индексном формате следующим образом:

1. Множитель и множимое загружаем в универсальный 5-разрядный процессор, содержащий четыре вычислительных ядра, следующим образом:

- в первое ядро загружаем первые знакопозиций и модулярно-индексных мантисс и а также основание системы остаточных классов р1=7;

- параллельно с этим во второе ядро загружаем вторые знакопозиций и модулярно-индексных мантисс и а также основание системы остаточных классов р2=13;

- параллельно с этим в третье ядро загружаем третьи знакопозиций и модулярно-индексных мантисс и а также основание системы остаточных классов р3=31;

- параллельно с этим в четвертое ядро универсального многоядерного процессора загружаем 5-разрядные двоичные порядки λА=-4 и λA=-11, а также знаки σА=1 и σB=-1.

2. Так как число вычислительных ядер процессора превышает число оснований p1, p2, …, pn системы остаточных классов, используемых для представления модулярно-индексных мантисс и чисел А и В соответственно, то операцию умножения выполняем следующим образом:

- в первом вычислительном ядре процессора выполняем операцию целочисленного сложения по модулю р1-1: Поскольку ,

- параллельно с этим во втором вычислительном ядре процессора выполняем операцию целочисленного сложения по модулю р2-1: ;

- параллельно с этим в третьем вычислительном ядре процессора выполняем операцию целочисленного сложения по модулю р3 - 1: ;

- параллельно с этим в четвертом вычислительном ядре процессора выполняем сложение двоичных порядков λА и λB, а также умножение σCА⋅σB знаков σА и σB чисел А и В соответственно: λCАB=-4+(-11)=-15, σCА⋅σB=1⋅(-1)=-1.

Получен результат в модулярно-индексном формате с плавающей точкой, соответствующий позиционному числу -11⋅1.96875⋅2-6.

Если принять за время сложения пары q-разрядных остатков q тактов работы универсального процессора, содержащего g k-разрядных вычислительных ядер, причем q≤k, то время вычисления произведения t-разрядных мантисс чисел с плавающей точкой А и В, при t≈q⋅n, при условии, что время вычитания равно времени сложения, по описанному способу равно q+q=2⋅q тактов, тогда как время умножения итерационным способом равно t⋅(t-1)≈q⋅n⋅(q⋅n-1) тактов. Для вычисления порядков и знаков операндов потребуется k+1 тактов: (k-1) такт для суммирования порядков, и 2 такта для суммирования знаков), причем их вычисление будет осуществляться параллельно с вычислением знакопозиций модулярных мантисс, поэтому время на вычисление порядков и знаков результата умножения операндов с плавающей точкой не учитывается. Таким образом, время умножения чисел с плавающей точкой на базе описанного способа в раз выше по сравнению с быстродействием известного итерационного способа умножения позиционных чисел с плавающей точкой и в раз выше по сравнению со способом организации выполнения операции умножения двух чисел в модулярно-позиционном формате представления с плавающей точкой на универсальных многоядерных процессорах.


Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Способ организации выполнения операции умножения двух чисел в модулярно-индексном формате представления с плавающей точкой на универсальных многоядерных процессорах
Источник поступления информации: Роспатент

Showing 11-20 of 50 items.
25.08.2017
№217.015.baaa

Способ получения порошков интерметаллидов самария и кобальта

Изобретение относится к электрохимическому синтезу магнитных материалов. Получают порошок интерметаллидов самария и кобальта. Ведут электролиз солевого расплава, содержащего эвтектическую смесь хлоридов лития и калия, дихлорид кобальта и трихлорид самария, в трехэлектродной кварцевой ячейке,...
Тип: Изобретение
Номер охранного документа: 0002615668
Дата охранного документа: 06.04.2017
25.08.2017
№217.015.bf8b

Способ повышения жаростойкости медных деталей

Настоящее изобретение относится к защите цветных металлов от коррозии, а именно к нанесению металлических покрытий методом химико-термической обработки, и может быть использовано для повышения жаростойкости деталей, изготовленных из меди и медных сплавов, например сопла горелок для...
Тип: Изобретение
Номер охранного документа: 0002617069
Дата охранного документа: 19.04.2017
25.08.2017
№217.015.c5f9

Способ получения композиционного электрохимического покрытия на стали

Изобретение относится к области гальванотехники и может быть использовано для получения композиционного электрохимического покрытия на основе отходов фторполимеров. Способ включает приготовление раствора для нанесения слоя никель - фосфор и электролита для нанесения слоя кобальт -...
Тип: Изобретение
Номер охранного документа: 0002618679
Дата охранного документа: 10.05.2017
25.08.2017
№217.015.d28e

Молотковая дробилка

Изобретение предназначено преимущественно для измельчения объемных материалов с небольшой удельной массой, в частности соломы, опил, лузги и других. Молотковая дробилка содержит основную и вспомогательную загрузочные горловины, молотковый ротор (6) и вентилятор (4). Молотковый ротор состоит из...
Тип: Изобретение
Номер охранного документа: 0002621567
Дата охранного документа: 06.06.2017
25.08.2017
№217.015.d368

Способ управления топологией мобильной самоорганизующейся сети

Изобретение относится к области беспроводных мобильных сетей передачи данных. Технический результат заключается в повышении скорости передачи данных в сети. В способе узлы сети разбивают на две части; узлы, входящие в первую часть, разбивают на группы; узлы, входящие в группу, делят на две...
Тип: Изобретение
Номер охранного документа: 0002621604
Дата охранного документа: 06.06.2017
26.08.2017
№217.015.dd0b

Композиционный сорбент для газовой среды (варианты)

Изобретение относится к области очистки газов от органических и неорганических химических веществ и может быть использовано для очистки воздушной среды. Предложен новый композиционный сорбент для газовой среды, содержащий силикагель или гидролизный лигнин в качестве основы, при этом на...
Тип: Изобретение
Номер охранного документа: 0002624444
Дата охранного документа: 04.07.2017
26.08.2017
№217.015.e4f2

Система регулирования дизеля

Изобретение может быть использовано в двигателестроении. Система регулирования дизеля содержит центробежный датчик (1) с подвижной муфтой (4), главный рычаг (5), установленный с возможностью взаимодействия с подвижной муфтой (4), рычаг (3) управления, связанный через пружину (2) с главным...
Тип: Изобретение
Номер охранного документа: 0002626524
Дата охранного документа: 28.07.2017
26.08.2017
№217.015.ed1b

Молотковая дробилка

Изобретение относится к устройствам для измельчения материалов и может быть использовано в сельском хозяйстве для измельчения фуражного зерна и стебельных кормов. Молотковая дробилка содержит загрузочную и выгрузную горловины, вентилятор и молотковый ротор, состоящий из осей, дисков и молотков....
Тип: Изобретение
Номер охранного документа: 0002628574
Дата охранного документа: 21.08.2017
20.11.2017
№217.015.ef90

Топливная композиция

Изобретение относится к топливной композиции для дизелей на основе дизельного топлива с добавлением спирта, эмульгатора, воды, смеси мыл диэтаноламина и олеиновой кислоты, при этом топливная композиция дополнительно содержит присадку ЦД-7К при следующих соотношениях компонентов, мас.%: этанол...
Тип: Изобретение
Номер охранного документа: 0002629021
Дата охранного документа: 24.08.2017
29.12.2017
№217.015.f30c

Смеситель топлив

Смеситель топлив относится к области машиностроения, преимущественно двигателестроения, и может быть использован в системах питания двигателей внутреннего сгорания. Смеситель топлив, представляющий собой тело вращения, содержит корпус, окна входа основного и дополнительного топлив, окно выхода...
Тип: Изобретение
Номер охранного документа: 0002637904
Дата охранного документа: 07.12.2017
Showing 11-16 of 16 items.
20.07.2015
№216.013.652b

Устройство для определения знаков чисел в системе остаточных классов

Изобретение относится к вычислительной технике и предназначено для выполнения операции определения знака числа, представленного в системе остаточных классов. Техническим результатом является повышение быстродействия и обеспечение контроля корректности определения знака. Устройство содержит...
Тип: Изобретение
Номер охранного документа: 0002557446
Дата охранного документа: 20.07.2015
10.08.2015
№216.013.69b4

Способ организации параллельно-конвейерных вычислений в однородной вычислительной среде с коммутационно-потоковым управлением

Изобретение относится к вычислительной технике и предназначено для построения быстродействующих многооперандных параллельно-конвейерных сумматоров для обработки массивов целых положительных чисел. Техническим результатом является повышение быстродействия. Ячейки каждой подобласти однородной...
Тип: Изобретение
Номер охранного документа: 0002558613
Дата охранного документа: 10.08.2015
08.07.2018
№218.016.6d98

Способ оценки силы межмолекулярных взаимодействий в модельной системе "функционализированная полистироловая микросфера-функционализированное стекло" методом оптической ловушки

Изобретение относится к области иммунохимии и биомеханики и может быть использовано при изучении силы межмолекулярных взаимодействий в системах «антиген-антитело», «лиганд-рецептор» с использованием оптического пинцета. Способ количественной характеристики межмолекулярного взаимодействия в...
Тип: Изобретение
Номер охранного документа: 0002660556
Дата охранного документа: 06.07.2018
09.09.2018
№218.016.857d

Способ организации выполнения операции умножения двух чисел в модулярно-логарифмическом формате представления с плавающей точкой на гибридных многоядерных процессорах

Изобретение относится к вычислительной технике и предназначено для выполнения операции умножения двух чисел в модулярно-логарифмическом формате с плавающей точкой. Техническим результатом является упрощение выполнения операции умножения. Способ осуществляется на гибридных многоядерных...
Тип: Изобретение
Номер охранного документа: 0002666285
Дата охранного документа: 06.09.2018
29.06.2019
№219.017.9ff8

Ячейка однородной вычислительной среды и устройство для сжатия двоичных векторов на базе ячеек однородной вычислительной среды

Изобретение относится к вычислительной технике и предназначено для построения однородных вычислительных сред, выполняющих сжатие массивов двоичных векторов в конвейерном режиме. Техническим результатом является повышение надежности однородной вычислительной среды за счет сокращения числа связей...
Тип: Изобретение
Номер охранного документа: 0002450327
Дата охранного документа: 10.05.2012
29.08.2019
№219.017.c4aa

Устройство для сравнения чисел в системе остаточных классов

Изобретение относится к вычислительной технике. Технический результат изобретения заключается в повышении быстродействия устройства для сравнения чисел в системе остаточных классов. Технический результат достигается за счет использования целочисленных интервалов, при этом не требуется...
Тип: Изобретение
Номер охранного документа: 0002698413
Дата охранного документа: 26.08.2019
+ добавить свой РИД