Чернобровкин В.В., Каримов Р.Р. Сургутский государственный университет Метод поиска простых чисел в ограниченном диапазоне ВВГП-2012.

Презентация:



Advertisements
Похожие презентации
Программирование на языке высокого уровня Лекция 1. Введение в программирование на C#. Условный оператор. Типы данных. Цикл for. Кафедра АСОИУ ОмГТУ, 2012.
Advertisements

Вариант Презентация "Осень золотая".

Типовые расчёты Растворы
Тренировочное тестирование-2008 Ответы к заданиям КИМ Часть I.
Информатика ЕГЭ Уровень А5. Вариант 1 Определите значения переменных a, b, c после выполнения следующего фрагмента программы: a:=5; b:=1; a:=a+b; if a>10.
Тема 11 Медицинская помощь и лечение (схема 1). Тема 11 Медицинская помощь и лечение (схема 2)
ЗРИТЕЛЬНЫЕ ИЛЛЮЗИИ ОПТИЧЕСКИЕ ОБМАНЫ 1. Зрительная иллюзия – не соответствующее действительности представление видимого явления или предмета из-за особенностей.
10. Дано: Найти: К А B 4 М О С N Дано: Найти: AB O C.
Информационные технологии Выбор вариантов 2 1.Выполнение последовательности операторов. 2.Выполнение определенной последовательности операторов.

1 3 o 5 Оценка эффективности инвестиций 6 Определение затрат.
Дни недели Температура (С 0 ) 1. Сколько дней температура была выше 16 0 ? 2. Какого.
Использование модулярной арифметики в алгоритме гомоморфного шифрования Выполнила: Чечулина Дарья Научный руководитель: Кренделев С. Ф. Лаборатория современных.
ОСОБЕННОСТИ РЕАЛИЗАЦИИ ДОПОЛНИТЕЛЬНЫХ МЕРОПРИЯТИЙ ПО СНИЖЕНИЮ НАПРЯЖЕННОСТИ НА РЫНКЕ ТРУДА СУБЪЕКТОВ РОССИЙСКОЙ ФЕДЕРАЦИИ В 2011 ГОДУ РОССИЯ 2010.
Каратанова Марина Николаевна МОУ СОШ 256 г.Фокино.
Системное программное обеспечение Лекция 14 Информационная безопасность.
McDonalds Kalender 2009 January
1; 12; 14; 4; 2; 5; 27; 16; 38; 8; 3. Делители 16 1; 4; 2; 16; 8.
1 Массивы 2 Опр. Массивом называется совокупность однотипных данных, связанных общим именем. Основные характеристики массива: 1. Имя массива 2. Тип компонентов.
Транксрипт:

Чернобровкин В.В., Каримов Р.Р. Сургутский государственный университет Метод поиска простых чисел в ограниченном диапазоне ВВГП-2012

Разработка инструментария для работы с многоразрядными числами (1 млн.разрядов)

- Криптография и криптология - Задачи с необходимой высокой точностью - Моделирование физических, химических процессов - Аэродинамика, гидродинамика - Расчет оболочек ядерных реакторов

Многоразрядная арифметика Модулярная арифметика Простые числа

Примерпредставления числа A по модулю P в системе остаточных классов: Пример представления числа A по модулю P в системе остаточных классов: Пусть A = 96576, p 1 =13, p 2 =17, p 3 =19, p 4 =23 P= П p i = 13*17*19*21=96577 Тогда ((12 (mod 13), 16(mod17), 18(mod19), 22(mod23)) Со всеми остатками можно проводить арифметические операции (-,+,*, /,^). Главное чтобы результат вычислений не превосходил Пример вычисления в модулярной арифметике

Последний разряд числа: i 0 = {0, 1, 2, …, 9} 1. Число делится на 2, когда последняя цифра делится на 2: i 0 = {2, 4, 6, 8} i 0 = {2, 4, 6, 8} 2. Число делится на 5, когда последняя цифра делится на 5, т.е. если она 0 или 5: i 0 = {0, 5} i 0 = {0, 5} i 0 = {0, 2, 4, 5, 6, 8} Составные числа: i 0 = {0, 2, 4, 5, 6, 8} i 0 = {1, 3, 7, 9} Возможно простые числа: i 0 = {1, 3, 7, 9} Метода поиска простых чисел

[Z n, …, Z n+1 ] [Z n, …, Z n+1 ] Числа где i 0 =1 Числа где i 0 =3 Числа где i 0 =7 Числа где i 0 =9 Поиск простых чисел Простые числа Pi, где i 0 =1 Простые числа Pi, где i 0 =3 Простые числа Pi, где i 0 =7 Простые числа Pi, где i 0 =1 Общий файл с простыми числами Метода поиска простых чисел Поиск простых чисел

Типы данных Переменные Unsigned long FirstNum = 2^30 ( ) Unsigned long LastNum = 2^31 ( ) Массивы: a[0… N ] = {FirstNum … LastNum} (массив с числами диапазона) b[0..N] = {0, 2, 5, 13, …} (массив признака простоты): 0 – простое число, 2 … lastnum - составное 0 – простое число, 2 … lastnum - составное Программная реализация ТипМакс.значениеBytes Long Unsigned long Long long Unsigned long long

for (unsigned long i=firstnum; i

__device__ int CheckPrime(unsigned long num) { int result = 0; for (int i=2; i(dev_a, dev_b, firstnum, N); } Реализация GPU

Сравнение: CPU и GPU* Диапазон Количество чиселCPUGPURate 2^31-10^2… 2^ ,12 2^31-10^3… 2^ ,73 2^31-10^4… 2^ ,22 2^31-10^5… 2^ ,80 2^31-10^6… 2^ ,10 2^31-10^7… 2^ ,14 * ПГУ Тесла

Сравнение: Оценка Чебышева* * ПГУ Тесла Диапазон Количество чисел простые/всего (%) Количеств о простых Оценка Чебышев а Кол.прост-Чебышева /Количество простых 2^31-10^2… 2^ ,29 2^31-10^3… 2^ ,00 2^31-10^4… 2^ ,29 2^31-10^5… 2^ ,82 2^31-10^6… 2^ ,80 2^31-10^7… 2^ ,73

- Более быстрый алгоритм определения простоты числа - Числа, для которых не найден делитель на итерации k, заносить в массив и вычислять отдельно

Чернобровкин В.В., Каримов Р.Р. Сургутский государственный университет Поиск простых чисел с использованием CUDA ВВГП-2012