Previous Page  2 / 9 Next Page
Information
Show Menu
Previous Page 2 / 9 Next Page
Page Background

В настоящей работе описана суть индексного алгоритма, а также

выполнена оценка его быстродействия при параллельном просеива-

нии простых чисел в диапазоне до

10

12

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

вычислительной системы.

Модификации алгоритма, приведенные в настоящей работе, за-

ключаются в использовании битовых массивов, различных алгоритмов

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

чисел, блочного подхода, параллельных вычислений.

При описании метода использованы терминология и обозначения,

приведенные в работах [1–3].

Порядок индексного алгоритма, а также порядок таблицы кольце-

вой факторизации — это количество первых простых чисел, использо-

ванных при получении примориала для формирования соответствую-

щей кольцевой факторизации.

Переменная

k

— индекс числа на строке кольцевой факторизации

с соответствующим номером — введена для формирования таблицы

кольцевой факторизации.

Паттерн — повторяющаяся схема размещения составных чисел в

таблице кольцевой факторизации, кратных одному и тому же числу.

Как и во многих других, в индексном алгоритме поиска простых

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

зволяет не рассматривать значительную часть заведомо составных чи-

сел, а из остальных чисел сформировать таблицу, в каждой колонке

которой находятся как простые, так и составные числа.

Например, при использовании кольцевой факторизации второго по-

рядка отсеивается 66,66. . . % всех составных чисел, четвертого поряд-

ка — более 77%. Применение кольцевой факторизации подробно опи-

сано в работах [1–5]. В работе [2] для поиска простых чисел применен

подход, использующий свойство симметрии кольцевой факторизации

(табл. 1) и существенно экономящий вычислительные ресурсы при ре-

ализации индексных алгоритмов. В работе [3] выполнено сравнение

быстродействия индексного алгоритма с решетом Аткина, как одним

из самых эффективных методов поиска простых чисел. В результате

обнаружено, что индексный алгоритм на исследованном отрезке на-

турального ряда работает в 12 раз быстрее. Отметим, что индексный

алгоритм разработан авторами в РФ и в настоящее время публикаций

о подобного рода подходах в зарубежной печати нет.

В табл. 1 использованы принятые ранее обозначения [1–4]:

p

1

= 2

,

p

2

= 3

, . . . , p

n

— записанные по возрастанию простые числа;

p

n

#

примориал (произведение всех простых чисел, меньших либо рав-

ных

p

n

);

p

n

+1

, . . . , p

n

+

r

, . . . , p

n

+

s

— не участвовавшие в получении

p

n

#

простые числа и их произведения, меньшие

p

n

#

/

2

и записанные по

возрастанию;

s

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

ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2015. № 6 83