Seventeen or Bust

Цель этого проекта — с помощью технологии распределённых вычислений, решить задачу Серпинского.

Эта задача связана с так называемыми числами Прота(Proth), т.е. числами вида N = k * 2n + 1, где k и n — нечётны и больше единицы.

Если для какого-то значения k любое из возможных значений n приводит к получению составного(не простого) числа N, то это значение k считается числом Серпинского. Задача Серпинского состоит в нахождении самого маленького такого числа из всех существующих.

40 лет назад Джон Селфридж доказал, что k = 78,557 — число Серпинского. Большинство учёных, занимающихся теорией чисел считают, что это число и есть самое маленькое, однако, это до сих пор не доказано. Чтобы доказать это, нужно доказать, что все значения k меньшие 78,557 не являются числами Серпинского. Для этого, необходимо найти какое-то значение n, которое делает результат выражения k * 2n + 1 простым. Когда проект стартовал, это уже было сделано для всех значений k кроме семнадцати — отсюда и название проекта. В процессе работы, проект сумел вычислить ещё 11 значений — осталось 6.

Высокая производительность расчётов (и, можно сказать, сама возможность существования такого проекта) достигнута благодаря ручной оптимизации кода клиентской программы. Расчётные функции клиента написаны на ассемблере, c использованием расширенных наборов инструкций — prefetch, MMX, 3Dnow!, SSE и SSE2. Однако клиент будет работать и на процессорах, которые эти инструкции не поддерживают.

Другие страницы об этом проекте

Ссылки


pro/sob.txt · Последние изменения: 2007-11-17 20:16 rm
Personal Tools